m³OS docs GitHub

Component explorer

Scheduler

The scheduler decides which runnable work executes next and turns a single control flow into a real operating system.

Responsibilities

  • Track runnable tasks.
  • Select the next unit of work to execute.
  • Coordinate task switching and reclamation.

The scheduler is introduced in Tasking and later touched by 12 phase(s).

Key files

  • kernel/src/task/scheduler.rs — kernel/src/task/scheduler.rs — IPC scheduler primitives
  • kernel/src/task/mod.rs — The Task struct in kernel/src/task/mod.rs is unchanged — it already has pid
  • kernel-core/tests/scheduler_props.rs — Proptest scheduler invariants