Loading the OS
Linux is the kernel, that one file in /boot . Everything else, the rest of the GNU/Linux operating system, runs on top of that kernel. The kernel is the core of the OS: it sits between the hardware and the rest of the software and everything passes through it, but it’sn’t the complete OS. So where exactly is the operating system? Remember the root= parameter that the bootloader passed to the kernel? That’s where everything else starts. It starts with a program called init, found in /sbin by default. Init’s the first program the kernel runs, it always has the process ID of 1, everything else is a child of it. This is one of the factors cited in the arguments against systemd, in that it runs as init, as PID1, and such a critical part of the system shouldn’t be messed with. While /sbin/init is the default, you can give the kernel a different location, as is sometimes done with systemd, you can even modify this on the bootloader command line. If you have a problem with your computer that prevents it completing the boot process, you can sometimes fix it by adding init=/bin/bash to the kernel options in the bootloader. This means the kernel doesn’t even try to load init, but instead drops you straight into a shell as root. That is also why you should prevent editing of boot options without a password on any computer that isn’t behind locked doors.