Systems is the study of how software meets hardware - how processes get scheduled, memory gets managed, packets get routed, and machines coordinate at scale. The notes below are grouped by concept cluster; start with an anchor note and follow links into specifics.
OS Fundamentals
- Processes & Threads - execution units, context switching, scheduling
- File Systems - inodes, journaling, B-tree indexes
- Process Scheduling Algorithms - how the scheduler decides who runs next
- Context Switching - saving and restoring execution state, and what it costs
- System Calls and the Kernel Boundary - the controlled crossing into privileged code
- Interrupts and Traps - how hardware and software force the kernel’s attention
Memory & Storage
- Virtual Memory - address spaces, paging, TLB
- File Systems - on-disk layout and reliability
- Memory Hierarchy and Caching - the latency pyramid and why locality decides performance
- Cache Coherence - keeping per-core caches agreeing on shared memory
Concurrency & Parallelism
- Processes & Threads - OS-level concurrency primitives
- Concurrency Models - threads, locks, actors, and beyond
- Concurrency Primitives - mutexes, semaphores, condition variables
- Deadlock - the four conditions, and prevention against detection
- Inter-Process Communication - pipes, message queues, shared memory
Kernel design
- Kernel Architectures - monolithic against microkernel, what moves to user space, and the isolation/performance trade
- I/O Devices and Drivers - how the kernel talks to hardware, and polling against interrupts against DMA
Memory management
- Memory Allocators and Fragmentation - how allocators work, and internal against external fragmentation
- Page Replacement Algorithms - FIFO, LRU, clock, optimal as a bound, and Bélády’s anomaly
- NUMA and Multiprocessor Memory - non-uniform access, locality across sockets, and the scheduling consequence
Storage
- RAID and Storage Redundancy - the standard levels, what each trades, and why RAID is not a backup
Virtualization
- Virtualization, VMs, and Containers - two different things people call the same word
Networking
- Network Protocols - OSI/TCP-IP, TCP vs UDP, DNS, HTTP
- DNS - The Domain Name System - hierarchical, cached, distributed name resolution
- TLS and the HTTPS Handshake - authenticated, encrypted connections over an open wire
- BGP and Internet Routing as Control - path-vector routing, trust-by-default, and route hijacking
- The Physical Layer of the Internet - submarine cables, exchange points, and chokepoints
- Content Delivery Networks - edge caching, anycast, and centralization
Distributed Systems
- Distributed Consensus - CAP theorem, Paxos/Raft, Byzantine faults
- CAP Theorem - the consistency/availability choice under partition, and PACELC’s latency extension
- Consistency Models - the spectrum from linearizable down to eventual, and its cost in latency
- Logical Clocks: Lamport and Vector - ordering events by causality without synchronized time
- Two-Phase Commit and Distributed Transactions - atomic commit across nodes, the blocking problem, 3PC and sagas
- Replication and Quorums - primary-backup vs multi-primary, and the R + W > N quorum rule
- Blockchain Consensus & Sanctions Evasion - Byzantine agreement without a central party, and money outside the state
Security
- TLS and the HTTPS Handshake - public-key bootstrap, certificate trust, and forward secrecy
- Onion Routing & Anonymity Networks - layered encryption, the traffic-confirmation limit, and the anonymity trilemma
- End-to-End Encryption & the Lawful-Access Debate - endpoint keys, key escrow, and why a backdoor cannot be selective
The full file listing follows below, generated automatically by Quartz.