May 2025
Intermediate to advanced
710 pages
16h 33m
English
We looked at how the kernel boots up to the point where it launches the first program, init, in Chapter 4. In Chapters 5 and 6, we looked at creating root filesystems of varying complexity, all of which contained an init program. Now, it is time to look at the init program itself in more detail and discover why it is so important to the rest of the system.
There are many implementations of init. In this chapter, I will describe the three main ones: BusyBox init, System V init, and systemd. I will explain how they work and what types of systems are best suited for each. Part of this is balancing the tradeoff between size, complexity, and flexibility. We will learn how to launch a daemon using both BusyBox init ...
Read now
Unlock full access