Overview
Computer Systems explores the full hardware-software stack—bridging physical silicon and digital logic with modern operating system kernels and low-level systems software. This module traces how electronic signals transform into boolean logic gates, how CPUs execute instruction sets, how operating systems manage concurrent hardware resources, and how systems programmers leverage C to write performant software.
Core Book Modules
1. Digital Systems
Combinational and sequential logic design, boolean algebra, arithmetic logic units (ALUs), flip-flops, finite state machines (FSMs), register-transfer level (RTL) design, and CPU hardware construction.
2. Computer Architecture & Foundations
Instruction set architectures (ISAs), microarchitecture principles, binary integer representation, floating-point data standards, and the Unix command-line execution environment.
3. Operating Systems
Kernel architecture, dual-mode protection, interrupt vectors, process/thread scheduling, concurrency primitives, synchronization patterns, virtual memory management, file system reliability, storage mechanics, and virtual machine hypervisors.
4. System Programming
Low-level software development in C, explicit dynamic memory management (malloc, heap layouts, struct padding), pointer arithmetic, bitwise masking, UTF-8 codepoint parsing, process control, and socket-based network I/O.