Lesson 051

CPU Scheduling

Who runs next?

1:00

How operating systems decide which process runs next — FCFS, SJF, Round Robin, Priority, and MLFQ — and how to measure and compare their performance.

By the end, you can

  • Explain why an OS needs a CPU scheduler and what the short-term scheduler and dispatcher each do.
  • Distinguish preemptive from non-preemptive scheduling and name one algorithm of each type.
  • Calculate turnaround time, waiting time, and response time for a set of processes given a schedule.
  • Trace the FCFS and SJF execution order for a set of jobs arriving at the same time, and compute average waiting time for each.
  • Explain the convoy effect and why SJF eliminates it.
  • Describe why pure SJF cannot be implemented in practice and what SRTF is.
  • Explain starvation in priority scheduling and how aging prevents it.
  • Describe how Round Robin works, compute waiting time under a given quantum, and predict how quantum size affects behavior.
  • Explain how MLFQ adapts to job behavior without knowing burst lengths, and why it periodically boosts all jobs to the top queue.
  • Describe per-core run queues, work stealing, and processor affinity in multicore scheduling.
Up next in Computer Architecture & Operating Systems
Questions or feedback?