`start_kernel` and the Initcall Order
What the kernel brings up and in what order, and why driver initialisation order is a level rather than a list.
What the kernel brings up and in what order, and why driver initialisation order is a level rather than a list.
Mounting the real root, the three constantly-confused ways to change it, and what makes PID 1 special.
GRUB 2, systemd-boot, and direct EFI stub boot — and the four things any boot loader must do.
x86-64 from 16-bit entry through protected mode and early page tables into long mode, and the far simpler arm64 equivalent.
What the firmware does before anything Linux exists, and why UEFI made boot loaders simpler and boot debugging harder.
Every handoff between pressing the power button and a login prompt, with the artefact each stage passes to the next.
Why a root filesystem needs a root filesystem, and how the chicken-and-egg is broken.
The layout of a compressed kernel image, and why vmlinux, vmlinuz, and bzImage are three different things.
There is a gap between the moment power reaches the chip and the moment your first instruction executes, and firmware engineers habitually treat it as empty. It is not. In that gap the supply supervisor decides whether the rail is trustworthy, a pulse generator stretches whatever event caused the reset into a signal long enough for every block on the die to see it, an option-byte loader runs, boot-mode pins are sampled and latched, an address decoder is reconfigured so that a completely different memory appears at address zero, and only then does the CPU fetch two words and start running.
The chain of trust from firmware keys to a signed kernel and signed modules, and what it does and does not protect against.
Socket activation, journald, and unit supervision, then the playbook for a machine that will not finish booting.
Units, the separation of dependency from ordering, targets instead of runlevels, and the transaction computed at every boot.
The whole handoff sequence in one diagram, with the exact artefact passed at each step and where each one lives on disk.
How parameters reach the kernel, how they are parsed, and the dozen worth knowing — the most useful boot debugging tool there is.