Core Fundamentals

  1. 1.Why Build a Kernel? Processes, Memory & the Illusion of Multitasking
  2. 2.Physical Memory: A Byte Array and a Free-List Allocator
  3. 3.Virtual Memory: Address Translation & Page Tables
  4. 4.Processes & the Process Control Block
  5. 5.Context Switching: Saving & Restoring Execution State
  6. 6.Interrupts & System Calls: The Boundary Between User and Kernel
  7. 7.Cooperative Scheduling: A Simple Round-Robin Scheduler
  8. 8.Preemptive Scheduling & Timer Interrupts
  9. 9.Priority Scheduling & the Starvation Problem
  10. 10.Capstone: A Working Multi-Process Kernel