CPU Scheduling

CPU Scheduling 은 OS 가 어떤 Process 또는 thread 에 CPU 실행 시간을 줄지 결정하는 정책이다. 여러 작업이 동시에 실행되는 것처럼 보이게 하려면, OS 는 짧은 시간 단위로 실행 대상을 바꾸고 Context Switching 을 수행한다.

B) 무엇을 최적화하나

Scheduling 정책은 보통 다음 목표 사이에서 trade-off 를 가진다.

목표의미
Throughput단위 시간에 끝내는 작업 수
Turnaround time작업 제출부터 완료까지 걸리는 시간
Waiting timeready queue 에서 기다린 시간
Response time요청 후 첫 응답까지 걸리는 시간
Fairness특정 작업이 굶주리지 않게 하는 정도

C) Related