Introducing the init programs
The three init programs that you are most likely to encounter in embedded devices are BusyBox init, System V init, and systemd. Buildroot has options to build all three with BusyBox init as the default. The Yocto Project allows you to easily choose between System V init and systemd with System V init as the default. While Yocto's Poky-tiny distribution ships with BusyBox init, most other distribution layers do not.
The following table gives some metrics to compare the three:
(*) BusyBox init is part of BusyBox's single executable, which is optimized for size
on disk.
(**) Based on the Buildroot configuration of systemd.
Broadly speaking, there is an increase in flexibility and complexity as you go from BusyBox init to systemd.