-
운영체제(프로세스 관리 및 스케줄링)개발/정보처리기능사 실기 2023. 3. 17. 13:48728x90
● 프로세스의 정의
- 프로세서(처리기,CPU)에 의해 처리되는 사용자 프로그램, 즉 실행중인 프로그램을 의미한다. 작업 또는 태스크라고도 한다.
- 프로세스는 다음과 같이 여러 형태로 정의할 수 있다.
- 실기억장치에 저장된 프로그램
- 프로세서가 할당되는 실체
- 프로시저가 활동중인 것
- 운영체제가 관리하는 실행 단위
- 실행중인 프로그램
- PCB를 가진 프로그램
- 비동기적 행위를 일으키는 주체
● 프로세스 상태 전이
- 프로세스 상태 전이는 프로세스가 시스템 내에 존재하는 동안 프로세스의 상태가 변하는 것을 의미하며, 프로세스의 상태를 다음과같이 상태 전이도로 표시할 수 있다.
프로세스의 상태는 제출, 접수, 준비, 실행, 대기(보류), 상태로 나눌 수 있다.
이 중 주요 세가지 상태는 준비, 실행, 대기 상태이다.
- 제출(Submit) : 작업을 처리하기 위해 사용자가 작업을 시스템에 제출한 상태이다.
- 접수(Hold) : 제출된 작업이 스풀 공간인 디스크의 할당 위치에 저장된 상태이다.
- 준비(Ready) : 프로세스가 CPU를 할당받기 위해 기다리고 있는 상태, 준비상태 큐에서 실행을 준비한다.
- 실행(Run) : 준비상태 큐에 있는 프로세스가 CPU를 할당받아 실행되는 상태이다.
- 대기(Wait),보류,블록(Block) : 프로세스에 입/출력 처리가 필요하면 현재 실행중인 프로세스가 중단되고, 입/출력 처리가 완료될 때까지 대기하고 있는 상태이다.
- 종료(Terminated, Exit) : 프로세서의 실행이 끝나고 프로세스 할당이 해제된 상태이다.
* 준비상태 큐 : 여러 프로세스가 CPU를 할당받기 위해 기다리는 장소.
● 스케줄링
- 프로세스가 생성되어 실행될 때 시스템의 여러 자원을 해당프로세스에게 할당하는 작업.
- 프로세스가 생성되어 완료될 때까지 여러 종류의 스케줄링 과정을 거친다.
- 비선점 스케줄링과 선점 스케줄링이 있다.
● 비선점 스케줄링
이미 할당된 CPU를 다른 프로세스가 강제로 빼앗아 사용할 수 없는 스케줄링 기법이다.
FCFS = FIFO 준비상태 큐에 도착한 순서에 따라 차례로 CPU를 할당 SJF 준비상태 큐에서 대기중인 프로세스들 중에서 실행 시간이
가장 짧은 프로세스에게 먼저 CPU 할당HRN 실행 시간이 긴 프로세스에 불리한 SJF 기법을 보완하기위해
대기시간과 서비스(실행)시간을 이용하는 기법.우선 순위 준비상태 큐에서 대기중인 프로세스마다 우선순위 부여,
가장 높은 프로세스에게 먼저 CPU할당.● 선점 스케줄링
하나의 프로세스가 CPU를 할당받아, 실행하고 있을 때 우선순위가 높은 다른 프로세스가 CPU를 강제로 빼앗아
사용할 수 있는 스케줄링 기법.
SRT 현재 실행중인 프로세스의 남은 시간과 준비상태 큐에 새로 도착한 프로세스의 실행 시간을 비교하여,
가장 짧은 시간을 요구하는 프로스세에게 CPU할당.라운드 로빈(RR, Round Robin) 규정 시간 또는 시간 조각을 미리 정의,
CPU 스케줄러가 준비상태 큐에서 정의된 시간만큼
각 프로세스에 CPU를 제공하는 시분할 시스템에 적절한
스케줄링 기법.다단계 큐 프로세스를 특정 그룹으로 분류할 수 있을 경우
그룹에 따라 각기 다른 준비상태 큐를 사용하는 기법.다단계 피트백 큐 특정 그룹의 준비상태 큐에 들어간 프로세스가 다른 준비상태
큐로 이동할 수 없는 다단계 큐 기법을 준비상태 큐사이를
이동할 수 있도록 개선한 기법.출처:시나공
728x90'개발 > 정보처리기능사 실기' 카테고리의 다른 글
데이터베이스(DBMS) (0) 2023.03.20 데이터베이스(개념) (0) 2023.03.20 운영체제(기억장치 관리) (0) 2023.03.15 운영체제(기본 명령어) (0) 2023.03.15 운영체제(UNIX / LINUX) (0) 2023.03.15