CPU Scheduling
Stub. The CPU-scheduling problem and its classical policies, the multi-level feedback queue (MLFQ) as a practical approximation to "shortest job first without knowing the future," lottery (proportional-share) scheduling, and the added complications of scheduling across multiple CPUs.
Given many runnable processes and one CPU (or a few), which process runs next? Covers the classical policies and their tradeoffs (turnaround time vs. response time), MLFQ as the practical scheduler that learns a process’s likely behavior from its past use of the CPU rather than requiring it up front, lottery scheduling as a fundamentally different (randomized, proportional-share) approach to fairness, and multi-CPU scheduling, where cache affinity and load balancing across cores/queues become first-order concerns.
Outline (TODO — flesh out each)
- The scheduling problem — metrics (turnaround time, response time)
- Classical policies (FIFO, SJF, STCF, round robin)
- Multi-level feedback queue (MLFQ)
- Lottery (proportional-share) scheduling
- Multi-CPU scheduling — cache affinity, single-queue vs. multi-queue