Operating Systems
Updated 24 August 2026
A complete, self-contained learning track. No prior operating-systems theory assumed — only that you have used Linux.
Every module builds strictly on the ones before it, and every concept carries a runnable exercise with the expected output hidden behind a toggle, so you can attempt it before you peek.
🗺️ The track
🟢 Foundation
- 01 · Kernel, User Space & the Syscall Boundary
- 02 · Processes, fork/exec & Process States
- 03 · File Descriptors, Inodes & Filesystems
- 04 · Signals, Sessions & Job Control
- 05 · Boot & Init — Firmware to systemd
🟡 Intermediate
- 06 · Threads, Races & Deadlock
- 07 · CPU Scheduling, nice & Load Average
- 08 · Virtual Memory, Paging & Page Faults
- 09 · Page Cache, Swap & the OOM Killer
- 10 · I/O, the Block Layer & iowait
🔴 Advanced
- 11 · IPC — Pipes, Sockets & Shared Memory
- 12 · Namespaces, cgroups & Containers
- 13 · Isolation — Capabilities & seccomp
- 14 · Performance Methodology & Tracing
- 15 · Full Interview Simulation
📖 Modules
Module 01 — Kernel, User Space & the System Call BoundaryModule 02 — Processes, fork/exec & Process StatesModule 03 — File Descriptors, Inodes & FilesystemsModule 04 — Signals, Sessions & Job ControlModule 05 — Boot & Init: Firmware to systemdModule 06 — Threads, Races & DeadlockModule 07 — CPU Scheduling, nice & Load AverageModule 08 — Virtual Memory, Paging & Page FaultsModule 09 — Page Cache, Swap & the OOM KillerModule 10 — I/O, the Block Layer & iowaitModule 11 — IPC: Pipes, Sockets & Shared MemoryModule 12 — Namespaces, cgroups & ContainersModule 13 — Isolation: Capabilities & seccompModule 14 — Performance Methodology & TracingModule 15 — Full Interview SimulationEvery section carries a 🧩 analogy, and each one ends by saying where it breaks down — that limit is usually the most important sentence in the section, because it is the point at which the everyday intuition stops predicting what the machine does.
The modules are ordered by dependency, not by difficulty. Nothing is ever used before it has been taught, so reading them out of order will cost you more than it saves. If a module mentions something you do not recognise, it was taught in an earlier module — go back rather than pushing on.
Every bash block is meant to be run, not read. Several exercises are designed to fail on purpose: the error message is the lesson, so do not skip them.
Mermaid diagrams: open each diagram block's menu and switch it to Preview to see the rendered picture. The Notion API cannot set that mode, so they arrive as code.