자격증/정보처리기사

chapter 11. 응용 SW 기초 기술 활용 (1)

yeonx 2022. 5. 4. 00:52
728x90

리눅스/유닉스 계열의 기본 명령어

리눅스/유닉스 운영체제의 파일 접근 권한 관리 [2020년 2회]

① 리눅스/유닉스 운영체제의 파일 접근제어 개요

  • 리눅스/유닉스 시스템에서 사용자 혹은 프로세스가 파일을 읽거나 실행하면 open(), read(), write()와 같은 시스템 호출이 수행되고, 각 파일의 정보가 저장된 i-node 값을 읽게 된다.
  • i-node에는 각 파일의 물리적 위치, 생성/수정/사용 날짜 등의 정보와 더불어 파일 소유자/그룹, 접근 권한 등의 파일 접근제어와 관련된 정보가 수록되며, 해당 정보를 이용하여 DAC 기반 접근제어를 수행한다.

② 리눅스/유닉스 파일 접근제어 매커니즘

접근 권한 설명
User 파일을 사용하고 있는 사용자(Owner)
Group 소유자를 제외하고 파일과 같은 그룹에 속해있는 모든 사용자 모임
Other 그 밖의 사용자
User Group Other
R W X R W X R W X
4 2 1 4 2 1 4 2 1
  • Read, Write, eXcute로 파일을 읽거나(r), 쓰거나(w), 실행(x)할 수 있는 3가지 모드로 구분한다.
  • 즉, 파일이 'rwx'모드를 지원한다면 그 파일을 읽고, 쓰고, 실행할 수 있다는 것을 의미한다.

③ 접근 권한 변경(chmod)

㉮ 명령어

chmod [-R] permission file_name1 | directory_name1 [file_name2|directory_name2..]
  • chmod 명령은 기존 파일 또는 디렉터리에 대한 접근 권한을 변경할 때 사용한다.
명령어 설명
옵션 -R 하위 디렉토리와 파일의 권한까지 변경
permission 기호나 8진수로 접근 권한을 지정
  • 해당 파일의 소유주나 슈퍼 유저 root만이 실행할 수 있다.

㉯ 접근 권한을 기호로 기술하는 방법

구분 기술 방법
대상 u(user), g(group), o(other), a(all)
연산자 +(추가), -(제거), =(지정)
접근 권한 r(읽기), w(쓰기), x(실행)

 

㉰ 접근 권한을 숫자로 기술하는 방법

파일의 접근 권한을 세 개의 8진수로 기술한다.

구분 기술 방법
r(읽기) 4
w(쓰기) 2
x(실행) 1

 

운영체제 핵심 기능

메모리 관리 기법

메모리 배치 기법 [2020년 3회]

메모리 배치 기법에는 최초 적합, 최적 적합, 최악 적합이 있다.

 

㉮ 최초 적합(First-fit)

  • 프로세스가 적재될 수 있는 가용 공간 중에서 첫 번째 분할에 할당하는 방식

㉯ 최적 적합(Best fit)

  • 가용 공간 중에서 가장 크기가 비슷한 공간을 선택하여 프로세스를 적제 하는 방식이다.

㉰ 최악 적합(Worst-fir)

  • 프로세스의 가용 공간들 중에서 가장 큰 공간에 할당하는 방식이다.

 

프로세스 스케줄링 알고리즘

선점형 스케줄링 알고리즘

알고리즘 유형 동작 방식 특징
라운드 로빈
(Round Robin)
- 프로세스는 같은 크기의 CPU 시간을 할당, 프로세스가 할당된 시간 내에 처리 완료를 못하면 준비 큐 리스트의 가장 뒤로 보내지고, CPU는 대기 중인 다음 프로세스로 넘어감 - 균등한 CPU 점유시간
- 시분할 시스템을 사용
SRT (Shortest
Remaining Time
First)
- 가장 짧은 시간이 소요되는 프로세스를 먼저 수행하고, 남은 처리 시간이 더 짧다고 판단되는 프로세스가 준비 큐에 생기면 언제라도 프로세스가 선점됨 - 짧은 수행시간 프로세스 우선 수행
다단계 큐
(Multi Level
Queue)
- 작업들은 여러 종류 그룹으로 분할, 여러 개의 큐를 이용하여 상위 단계 작업에 의한 하위단계 작업이 선점 당함
- 각 큐는 자신만의 독자적인 스케줄링을 가짐
- 독립된 스케줄링 큐
다단계 피드백 큐
(Multi Level
Feedback Queue)
- 입출력 위주와 CPU 위주인 프로세스의 특성에 따라 큐마다 서로 다른 CPU 시간 할당량을 부여
- FCFS(FIFO)와 라운드 로빈 스케줄링 기법을 혼합한 것으로, 새로운 프로세스는 높은 우선순위, 프로세스의 실행시간이 길어질수록 점점 낮은 우선순위 큐로 이동하고 마지막 단계는 라운드 로빈 방식을 적용
- 큐마다 다른 시간 할당량
- 마지막 단계는 라운드 로빈 방식 처리

비선점형 스케줄링 알고리즘 [2020년 1회]

알고리즘 유형 동작 방식 특징
우선순위
(Priority)
- 프로세스별로 우선순위가 주어지고, 우선순위에 따라 CPU를 할당함
- 동일 순위는 FCFS
- 주요/긴급 프로세스에 대한 우선 처리
- 설정, 자원 상황 등에 따른 우선순위 선정
기한부
(Deadline)
- 작업들이 명시된 시간이나 기한 내에 완료되도록 계획 - 요청에 명시된 시간 내 처리를 보장
FCFS
(First Come
First Service)
- 프로세스가 대기 큐에 도착한 순서에 따라 CPU를 할당함
- FIFO 알고리즘이라고도 함
- 도착한 순서대로 처리
SJF
(Shortest Job
First)
- 프로세스가 도착하는 시점에 따라 그 당시 가장 작은 서비스 시간을 갖는 프로세스가 종료 시까지 자원 점유
- 준비 큐 작업 중 가장 짧은 작업부터 수행, 평균 대기 시간 최소
- CPU 요구 시간이 긴 작업과 짧은 작업 간의 불평등이 심하여, CPU 요구 시간이 긴 프로세스는 기아 현상 발생
- 기아 현상 발생 가능성
HRN
(Highest
Response
Ratio Next)
- 대기 중인 프로세스 중 현재 응답률(Response Ratio)이 가장 높은 것을 선택
- SJF의 약점인 기아 현상을 보완한 기법으로 긴 작업과 짧은 작업 간의 불평등 완화
- HRN의 우선순위 = (대기시간 + 서비스시간) / 서비스 시간
- 기아 현상 최소화 기법

 

 

 

[참고 : 수제비 2022]