정의
실행 특성에 따른 우선순위 조정을 위해 프로세스를 큐 간 이동시키는 CPU 스케줄링 기법
IT 백과사전 › 운영체제 › 프로세스 관리
정의
실행 특성에 따른 우선순위 조정을 위해 프로세스를 큐 간 이동시키는 CPU 스케줄링 기법
조건: CPU 1개, 준비 큐 3개(위 큐부터 실행). 시간 할당량(한 번 실행될 때 쓸 수 있는 최대 시간)은 큐 0이 1ms, 큐 1이 2ms, 큐 2가 4ms다. P1~P4의 도착과 실행 시간은 다른 스케줄링 예시와 같다. 프로세스를 바꾸는 데 드는 시간은 0으로 친다. (ms: 1000분의 1초)
0 / 11
MLFQ(Multi-Level Feedback Queue) 스케줄링
다단계 피드백 큐(MLFQ) 스케줄링도 MLQ처럼 준비 큐를 여러 개로 나누지만, 프로세스가 큐 사이를 옮겨 다닌다. 새 프로세스는 가장 위 큐에서 시작하고, 그 큐의 할당량 안에 끝내지 못하면 운영체제가 실행을 멈추고(선점) 한 단계 아래 큐로 내린다. 아래 큐일수록 늦게 실행되는 대신 할당량이 크고, 가장 아래 큐는 RR 방식으로 실행한다. 아래 큐 프로세스가 실행 중이어도 위 큐에 새 프로세스가 오면 운영체제가 실행을 멈춘다.
은행으로 치면: 창구는 하나이고 줄이 셋 있다. 모든 손님은 먼저 '1분 줄'에 서고, 1분 안에 못 끝내면 '2분 줄'로, 거기서도 못 끝내면 '4분 줄'로 옮긴다. 위 줄이 비어야 아래 줄 손님 차례가 온다.