
[OS] CPU 스케줄링
·
CS/OS
CPU 스케줄링은 multiprogrammed 운영체제에서 기저가 되며, CPU를 여러 프로세스들이 스위칭하며 사용하기 때문에 보다 생산적이다.5.1 Basic ConceptsCPU 스케줄링을 하는 목적은 CPU utilization을 최대화하기 위함이다.I/O 요청과 같은 일을 처리하기 위해서 프로세스는 기다리며 시간을 낭비하게 된다.이를 idle time이라고 하는데, CPU가 idle일 때 다른 프로세스를 처리하도록 스케줄링하므로써 CPU utilization을 극대화 할 수 있다. CPU SchedulerCPU가 idle이 되면, 운영체제는 ready queue에서 프로세스를 하나 선택하여 실행하게 된다.이 선택을 하는 것이 CPU schduler이다.ready queue는 꼭 FIFO 형태로 구..