본문 바로가기
이론/운영체제

라운드 로빈(Round Robin) 스케줄링

by 사과잼빵 2015. 10. 6.

라운드 로빈 스케줄링은 CPU를 하나의 프로세스가 종료될 때까지 배정하는 것이 아니라 여러 프로세스들이 CPU를 조금씩 돌아가며 할당받아 실행되는 방식이다.

프로세스들은 시간 할당량(time quantum) 동안 CPU를 할당받아 실행되며 이 시간 동안 모든 일을 완료하지 못하면 운영체제에 의해 준비 상태로 쫓겨나고 준비 큐의 다른 프로세스에게 중앙처리장치를 할당한다.

라운드 로빈 방식에서는 시간 할당량의 크기가 성능에 큰 영향을 미친다. 만약 프로세스들의 실행이 종료될 수 있을만큼 시간할당량이 커지면 FCFS 스케줄링과 비슷해지므로 프로세스들의 평균 대기 시간이 길어지게 된다. 반면 시간 할당량이 매우 적으면 문맥 전환이 자주발생하므로 실행보다 문맨 전환하는데 많은 시간을 소모하게 된다. 따라서 적절한 시간 할당량을 결정해야 하는데, 일반적으로 10 ~ 100ms로 하고 있다.


'이론 > 운영체제' 카테고리의 다른 글

우선순위 스케줄링  (0) 2015.10.06
FCFS 스케줄링  (0) 2015.10.06
스레싱(Thrashing)이란  (0) 2015.10.01
함수호출규약  (0) 2015.09.08