본문 바로가기

컴퓨터공학/운영체제

CPU 스케줄링(gantt chart)

CPU 스케줄링을 gantt chart로 계산해보자.

 

 

Q. FCFS인 경우 평균 시간을 어떻게 될까?

 

 

FCFS의 경우, 순차적으로 프로세스가 실행되므로 평균 시간은 각 프로세스의 시작 시간과 같다. 간단히 직관적으로 이해될 것이다.

 

 

 

Q. 라운도 로빈(RR)의 경우 평균 시간은 어떻게 될까?

 

 

위의 그림을 이해해보자, P2는 4초에 시작하고 7초에 모두 마무리된다. P3도 7초에 시작해서 10초에 마무리된다. 하지만 P1은 0 ~ 4초까지 실행이 되고, 10초에 다시 시작되므로 대기시간이 (10 - 4)가 존재한다. 따라서 (P1의 대기시간 + P2의 대기시간 + P3의 대기 시간) / 3을 한 값이 평균 대기 시간이 된다.

 

 

다양한 CPU 프로세스 알고리즘이 존재한다. 어떤 방식이든 평균 대기 시간이라는 것은, 프로세스가 끝나지 못한 상태일 때, 다시 시작할 때까지 누적되는 합을 의미한다.

 

 

이 원리만 기억하면, 어떤 알고리즘이든 쉽게 평균 대기 시간을 구할 수 있다.

'컴퓨터공학 > 운영체제' 카테고리의 다른 글

디스크 스케줄링(디스크 구조, 기법)  (0) 2021.04.11