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 choose between System V init and systemd, with System V init the default.
The following table gives some metrics to compare the three:
| 
 BusyBox init  | 
 System V init  | 
 systemd  | |
|---|---|---|---|
| 
 Complexity  | 
 Low  | 
 Medium  | 
 High  | 
| 
 Boot-up speed  | 
 Fast  | 
 Slow  | 
 Medium  | 
| 
 Required shell  | 
 ash  | 
 ash or bash  | 
 None  | 
| 
 Number of executables  | 
 0  | 
 4  | 
 50(*)  | 
| 
 libc  | 
 Any  | 
 Any  | 
 glibc  | 
| 
 Size (MiB)  | 
 0  | 
 0.1  | 
 34(*)  | 
(*) Based on the Buildroot configuration of system.
Broadly speaking, there is an increase in flexibility and complexity as you go from BusyBox init to systemd.