Chapter 9. Starting up - the init Program

I looked at how the kernel boots up to the point that it launches the first program, init, in Chapter 4, Porting and Configuring the Kernel and in Chapter 5, Building a Root Filesystem and Chapter 6, Selecting a Build System, I 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 in more detail and discover why it is so important to the rest of the system.

There are many possible implementations of init. I will describe the three main ones in this chapter: BusyBox init, System V init, and systemd. For each one, I will give an overview of how it works and the types of system it suits best. Part of that is balancing the ...

Get Embedded Linux for Developers now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.