Round - Robin Scheduling
round - robin scheduling은 프로세스 마다 time quantum을 둔다.
※Time Quantum = 프로세스마다 CPU를 점유할 수 있는 시간을 정해 두는 것.
실행중이던 프로세스가 타임퀀텀에 의해 종료되면 Ready Queue의 제일 뒤쪽으로 옮겨진다.
Time Quantum이 너무 클 경우에는 FCFS Scheduling과 같은 알고리즘이 되고, 반면에 Time Quantum이 너무 작을 때에는 너무 잦은 Context-switch가 일어나 오버헤드가 발생, Time Quantum이 Context-switch보다 작을 때는 프로세스환경을 셋팅하다가 타임퀀텀이 끝나버려서 정작 프로세스의 실행을 하지 못하고 다시 CPU를 반환해야 한다.
일반적으로 Time Quantum = CPU Burst time 의 80%를 기준으로 한다.
만약 Ready Queue에 N개의 프로세스가 있고 Time Quantum 을 p라 한다면, 프로세스가 CPU를 점유하기 위한 최대 시간은 (N-1)*q이다.
'O.S' 카테고리의 다른 글
Process Scheduling - Multilevel Queue scheduling,Multilevel feedback Queue Scheduling (0) | 2012.04.22 |
---|---|
Process Scheduling (0) | 2012.04.19 |
Process Scheduling - Priority (0) | 2012.04.19 |
Process Scheduling - SJF (0) | 2012.04.19 |
Process Scheduling - FCFS (0) | 2012.04.19 |