Computer Science/운영체제
2022. 5. 30.
Chapter 05. CPU Scheduling
1. CPU 스케줄링 이란? CPU를 멀티프로그래밍에 있어 프로세스 간에 교환을 시켜 CPU를 최대한 효율적으로 쓰게 하는 것. 즉, 어떤 프로세스가 대기할 경우 회수해서 다른 프로세스에 할당함 (최신 운영체제에서는 프로세스가 아닌 커널 수준 스레드를 한다.) 2. CPU I/O Burset Cycle 프로세스는 CPU Burst로 시작하고 뒤이어 I/O Burst가 나온다. 이를 지속적으로 사이클을 통해 반복한다. I/O Bound Job은 burst duration 즉 프로세서가 할당하는 시간이 짧지만 빈도수가 매우 잦다. 반면에, CPU Bound Job은 프로세서가 할당하는 시간은 길지만 빈도수가 적다. 3. CPU Scheduler CPU가 아무것도 하지 않을 때 OS에서 Ready Queue(..