Scope#
What sits below an application process: the Linux kernel, CPU scheduling, memory, storage, networking, containers, debugging, and virtual machines. The sequence starts with ordinary process behavior, defines each hardware or kernel term when it first matters, then follows failures through the same layers.
Reading path#
- The kernel boundary separates programs, processes, threads, system calls, descriptors, credentials, and kernel policy.
- CPU scheduling and locality follows a runnable task onto a CPU and then to cache and NUMA-resident data. Its final concurrency sections are optional.
- Virtual memory explains the address translation and page-fault path previewed by LL2, then follows allocation, reclaim, and memory pressure.
- Linux storage and I/O follows bytes through filesystems, the page cache, block devices, durability barriers, and asynchronous I/O.
- Linux networking follows a socket through DNS, routing, TCP, namespaces, Netfilter, and optional eBPF hooks.
- Containers and cgroups assembles the earlier process, filesystem, network, and resource controls into a container runtime path.
- Observing and debugging a Linux workload is the synthesis checkpoint for LL1–LL6. It turns process identity, clocks, counters, profiles, traces, pressure, and crash state into one diagnostic method.
- KVM, QEMU, and virtio starts the advanced virtualization track by adding a guest kernel, second-stage memory translation, and virtual devices.
- MicroVMs and Kata compares smaller VMMs and follows Kata's container-to-guest path after the general VM model is established.
- Devices and nested virtualization contains two independent capstones: direct device and GPU assignment, then an L1 hypervisor running an L2 guest. Either half can be read first after LL8.
Cloud notes can be read before this collection because they define their service-level contracts locally. Use this collection as the under-the-hood path: LL5 deepens cloud networking, LL4 deepens cloud storage, LL6 deepens Kubernetes resource enforcement, and LL7 deepens observability and incident diagnosis.
Useful background#
- Comfort reading short shell transcripts and configuration snippets
- Experience writing or debugging an ordinary application
- Basic command-line use; process, TCP/IP, container, and virtualization terms are introduced here
- No kernel development or assembly experience required