the bootloader
The bootloader is the small program that sits between the firmware and the operating system kernel - its one job is to find the kernel, put it in memory in a runnable state, and hand control over to it. Think of it as the usher who, after the firmware unlocks the building, walks to the right room, wakes up the kernel, and points it at the stage. It is too small to be the OS, but just big enough to load the OS.
Concretely, on a PC the firmware (UEFI or BIOS) hands control to the bootloader (GRUB is the classic Linux example). The bootloader knows enough about the disk and filesystem to locate the kernel image - which is often stored compressed to save space - so it loads that image into memory and decompresses it. It also prepares what the kernel needs to start cleanly: the kernel command line (boot-time options like which disk is the root filesystem), often an initial RAM filesystem (initramfs) holding early drivers, and on many systems a description of the hardware. Then it jumps to the kernel's entry point, transferring control for good. Many bootloaders also present the menu that lets you choose between multiple kernels or operating systems.
Two practical points make the bootloader worth understanding. First, it is a notorious single point of failure: corrupt or misconfigure it and the machine cannot reach an otherwise perfectly healthy kernel - so 'fix the bootloader' is a common recovery task. Second, the security of the whole system can hinge here: features like UEFI Secure Boot have the firmware cryptographically verify the bootloader, and the bootloader verify the kernel, forming a chain of trust so that malware cannot quietly substitute a tampered kernel before the OS even starts.
GRUB menu -> selected entry sets kernel cmdline 'root=/dev/sda2' -> loads vmlinuz (compressed) + initramfs into RAM -> decompresses -> jumps to kernel entry point. Control never returns to GRUB.
The bootloader locates, loads, and decompresses the kernel, sets up its command line and initramfs, then jumps in for good.
A bootloader is not the firmware and not the kernel - it is the bridge. Confusing them leads to mis-diagnosis: a black screen right after power-on is usually firmware, a missing menu or 'kernel not found' is the bootloader, and a panic after the menu means the kernel itself started but failed.