Linux Boot Process (Simplified)

Linux Boot Process is consist of all process from starting PC upto userspace initialization in Linux.

We will make simple flow of Linux Boot Process

Power ON
||
||
BIOS
||
||
Stage 1 Boot Loader –> MBR
||
||
Stage 2 Boot Loader –> LILO/GRUB
||
||
Kernel –> Linux
||
||
init -> Father of all processes

Overview of above Process flow:

Step 1- When we power on PC, BIOS (which is stored on MotherBoard) comes into RAM. The purpose of BIOS is load OS or Kernel into RAM.

Step 2- BIOS search for Bootable Device. When bootable device found goes to next step

Step 3- When bootable device found it loads 1 stage BootLoader i.e. MBR in RAM. Size of MBR is just 512 bytes. just first sector of Harddisk

Step 4- First stage boot loader loads Second stage boot loader i.e. GRUB or LILO

Step 5- When second stage bootloader get executed in RAM, Splash Screen get displayed. Job of second stage boot loader is to load kernel in RAM

Step 6- Stage 2 boot loader loads Kernel and optional initial Root FileSystem into RAM. It passes control to Kernel and kernel get decompressed into RAM and get initialised. At this stage second stage boot loader checks Hardware and mount root device also loads necessary kernel modules. When it completes first Userspace program gets executed i.e. init. init is father of all processes

Neelesh Gurjar has written 122 articles

Leave a Reply