스케줄링

    [운영체제] 스케줄링 알고리즘(2)

    [운영체제] 스케줄링 알고리즘(2)

    지난 포스팅의 선입 선처리 스케줄링과 최단 작업 우선스케줄링에 이어 나머지 스케줄링 알고리즘에 대하여 알아보려고 한다. [라운드 로빈 스케줄링] 라운드 로빈 스케줄링에서 모든 프로세스들은 똑같은 cpu 작업 시간을 할당 받는다(Time Quantum) n개의 프로세스, q의 작업 시간을 갖는다고 하면 각 프로세스는 1/n의 cpu 작업 시간을 할당 받고 (n-1)q 이상 기다리지 않는다. 이 경우에 만약 한 프로세스가 q시간에 작업을 끝내지 못내도 다음 프로세스로 전환된다. 여기서 발생할 수 있는 문제점은 만약 q가 문맥 교환시간보다 작다면 overhead가 너무 커져버린다. 평균 대기 시간을 계산해보자. P1은 (10-4), P2는 4, P3는 7밀리초를 기다린다. 따라서 17 / 3 = 5.66 밀리..