We have BBB based custom Linux board running Linux 3.12
We are using SysV init, for boot, And I understand that boot happens in following sequence,
ROM code lookks for boot device based on boot pin configuration.
ROM code loads first stage boot loader(SPL/X-loader) to Internal SRAM and gives control to it.
SPL does some initialization like DDR and proceeds to load U-Boot to RAM
U-Boot does other peripheral initialization i.e. NAND/eMMC/ethernet and loads kernel+dtb
Kernel executes initializes configures different hardware/peripherals based on dtb and initializes all the drivers.
Kernel runs first process i.e. init (/sbin/init in our case but can be set in Kernel command line parameters).
init application based on inittab(configuration file) runs startup script specified in inittab file e.g. ::sysinit:/etc/init.d/rcS
This /etc/init.d/rcS runs all the init scripts placed in “/etc/init.d/” folder.
So this is how board boots with SysV init, (or atleast this is my understanding), Correct If I am wrong in some points,
Now some point we want to evaluate how “systemd” init happens, we will have to make POC and see any improvement or degradation of the system boot and process maintenance.
We know some basics that systemd works on cgroups and can start processes in parallel but handles process like what monit does.
However what we don’t know is "Boot process with systemd’ can someone explain boot process with systemd for BeagleboneBlack or in general?
Or can you point me to any document/website/blog which explains this ?