Schedule

See below for the tentative class schedule!

CPUs: Pipelines, virtual memory, and interrupts

Synchronization: Ensuring correctness on single-core and multi-core machines

Interacting with hardware devices: Storage devices, file systems, DMA, memory-mapped IO

Security, Resource Isolation, and Advanced Systems Programming