[CS] 운영체제 - CPU 스케줄링
·
Computer Science/Operating System
CPU Scheduler: Ready 상태의 프로세스 중에서 CPU를 줄 프로세스를 고른다. Dispatcher: CPU의 제어권을 CPU 스케줄러에 의해 선택된 프로세스에게 넘긴다. 이 과정을 context switch라고 한다. (실제로 CPU를 주는 과정이다.) CPU 스케줄링이 필요한 경우는 프로세스에게 다음과 같은 상태 변화가 있는 경우이다. Running에서 Blocked로 갈 때 (ex) I/O 요청하는 시스템 콜이 일어날 때) Running에서 Ready로 갈 때 (ex) 할당 시간 만료로 timer interrupt가 발생할 때) Blocked에서 Ready로 갈 때 (ex) 1번 완료후 인터럽트) terminate될 때 nonpreemptive: 비 선점형, 강제로 빼앗지 않고 자진해서..