Operating Systems: Three Easy Pieces (OSTEP)
The companion lectures for OSTEP, one of the best free OS textbooks ever written.
About This Course
Operating Systems: Three Easy Pieces (OSTEP) by Remzi and Andrea Arpaci-Dusseau at the University of Wisconsin-Madison is a widely used, freely available operating systems textbook organized around three conceptual themes.
The textbook and associated lectures break OS concepts into digestible pieces, making complex topics approachable.
What You Will Learn
Part 1: Virtualization
- CPU Virtualization: Processes, limited direct execution, scheduling (MLFQ, lottery)
- Memory Virtualization: Address spaces, segmentation, free-space management, paging, TLBs, swapping
Part 2: Concurrency
- Threads: Creation, API, locks, condition variables
- Concurrency Bugs: Common patterns, deadlock, prevention strategies
- Semaphores: Implementation and classic problems (producer-consumer, readers-writers)
Part 3: Persistence
- I/O Devices: Hardware interface, device drivers
- File Systems: VSFS, FFS, journaling, log-structured file systems
- Data Integrity: RAID, checksums, crash consistency
Prerequisites
C programming experience. Basic computer architecture knowledge.
External Links
Textbook freely available online. Content belongs to the authors.