Skip to main content

Scheduling as an executable contract

This required 20–28-hour package replaces the former two-hour simulator exercise: lessons and prediction 5–7, implementation and experiments 10–14, assessment and delayed repair 5–7. These are author estimates awaiting pilots. Original process APIs, PCB/state reasoning, SJF/SRTF/MLFQ, priorities, real-time and multi-core exercises remain required. See the reconciled semester workload.

Prerequisite bridge​

From Semester 04 bring interval arithmetic, queue operations, checked input contracts and the distinction between model assumptions and measurements. Before coding, draw a deque, explain a half-open interval and compute completion minus arrival. Use 1–2 hours of the lesson allocation to repair those gaps if needed.

Route​

  1. Events and queue order.
  2. Metrics and conservation.
  3. Overhead and model boundaries.
  4. Prediction practice, runnable lab, PS1–PS6 and calibration.

Selective primary resources​

Use OSTEP Scheduling: Introduction for the workload-assumption method and comparisons of policy objectives, then return to your own traces. Use the Linux kernel EEVDF documentation to distinguish historical CFS explanations from the fair-scheduler transition beginning with Linux 6.6. Record the actual kernel version before making implementation claims. CFS and MLFQ are distinct approaches; CFS is not simply an MLFQ implementation.

Sources checked on 2026-10-23. Existing OSTEP and Operating System Concepts selections remain the book backbone; no purchase is required. This simulator is original teaching code, not a reproduction of a textbook program or Linux scheduling implementation.