Overview of Booting process

Booting is the process that initializes a computer's operating system when it is powered on or restarted. This sequence of operations is crucial for preparing the system to accept user commands and run applications.


The booting process can be divided into several key steps: -

  1. Power-On: When the computer is turned on, electrical power is supplied to the hardware components. This initiates the boot sequence.
  2. Basic Input/Output System (BIOS) or Unified Extensible Firmware Interface (UEFI):
    • The BIOS or UEFI firmware is the first software that runs after the power-on. It is stored in read-only memory (ROM) and is responsible for hardware initialization and system checks.
    • The firmware performs a Power-On Self Test (POST) to check the integrity and functionality of hardware components such as the CPU, RAM, keyboard, and storage devices. If any issues are detected, the BIOS may emit error codes or display error messages.
  3. Boot Device Selection:
    • After the POST is completed successfully, the BIOS/UEFI looks for a bootable operating system in storage based on a predefined boot order (e.g., hard drive, SSD, CD/DVD, USB drive, network).
    • The system checks the Master Boot Record (MBR) of the selected storage device to identify the active partition containing the boot loader.
  4. Loading the Boot Loader:
    • The boot loader is a small program whose primary function is to load the operating system kernel into memory.
    • The BIOS/UEFI transfers control to the boot loader, which is located in the boot sector of the active partition.
  5. Executing the Boot Loader:
    • The boot loader is a simple program that can load more complex operating system components.
    • It prepares the environment for the operating system by loading the kernel and any necessary drivers into memory.
  6. Loading the Operating System:
    • The boot loader locates the kernel image and loads it into RAM.
    • Once the kernel is loaded, the boot loader passes control to it, allowing the operating system to take over.
  7. Kernel Initialization:
    • The operating system kernel initializes system components, including memory management, process management, and device drivers.
    • It sets up the system's environment, prepares the file system, and may start essential system services.
  8. User Space Initialization:
    • After the kernel has initialized the system, it starts the first user-space process.
    • This process is responsible for starting other user processes and services and establishing the user environment.
  9. Login Prompt: Finally, the system presents a login prompt or graphical user interface (GUI), allowing users to log in and interact with the operating system.

Types of Booting

Cold Booting: This occurs when the computer is powered on from a completely powered-off state. It involves a full initialization of hardware components and the complete boot sequence.

Warm Booting: Also known as a soft reboot, this occurs when the operating system is restarted without turning off the power. This method skips some of the hardware initialization steps, making it faster than a cold boot.