Skip to content

Build an OS Kernel

Build an educational kernel like xv6: boot in QEMU, set up paging + virtual memory, implement processes/threads, schedule with round-robin/MLFQ/CFS, dispatch system calls, handle interrupts, build a simple file system, and explore the gap between toy and Linux.

advanced24 lessons4 chapters24 graded exercisesPython

No sign-up needed for lesson 1 · certificate on completion · sign up to save progress

What you’ll have built

Chapter by chapter. Every step is a graded exercise.

  • Boot & Memory
  • Processes & Scheduling
  • System Calls & I/O
  • File Systems & Beyond
Starts in Python — solve in the language you choose in the editor, same tests either way.

Curriculum

4 chapters, 24 lessons. Each lesson is a short read, one graded exercise, and a quiz.

  1. 1What an OS Kernel DoesRead · exercise · quiz
  2. 2Boot ProcessRead · exercise · quiz
  3. 3The VGA Text ConsoleRead · exercise · quiz
  4. 4Virtual Memory & PagingRead · exercise · quiz
  5. 5GDT, IDT & Mode SwitchingRead · exercise · quiz
  6. 6The Physical Frame AllocatorRead · exercise · quiz
  7. 7Kernel Heap AllocatorsRead · exercise · quiz
Loading reference solution…
Build an OS Kernel