The booting process of Android devices starts at the power-on of the SoC (system on a chip) and ends at the visibility of the home screen, or special modes like recovery and fastboot.
[a] The boot process of devices that run Android is influenced by the firmware design of the SoC manufacturers.
[6][better source needed] Because the space in the boot ROM is limited, a secondary bootloader on the eMMC or eUFS is used.
Qualcomm uses LK (Little Kernel) plus Aboot, or XBL (eXtensible Bootloader) plus ABL; MediaTek uses Das U-Boot.
[4] By pressing a specific key combination, devices can also boot in recovery mode.
The initramfs is a gzipped cpio archive that contains a small root file system.
When a new application is to be started, a command is sent to Zygote which executes a fork() system call.