1. first stage boot loader (typically implemented by the BIOS in Intel compatible systems). This phase is necessary to load in memory and execute the software that implements the second stage boot loader
  2. second stage boot loader. Software which varies from system to system, which has the task of finding and loading the kernel. In the world of Linux, LILO, syslinux, loadlin, etc... belong to this category.
  3. The kernel, to which control is passed from the second stage boot loader, initializes the hardware and launches the first user space process: init
  4. init is the process from which all others descend. System V init prepares the environment according to /etc/inittab.