System Boot Sequence

 

System Boot Sequence


1. What Is System Booting?

Booting is the process of starting a computer and loading the operating system into memory so that it can begin execution.

At power-on, the system has:

  • No operating system in memory

  • Only firmware instructions available (stored in ROM or flash)

The goal of the boot sequence is to:

Load the OS kernel into main memory and start its execution.


2. High-Level View of the Boot Process

 The system boot process generally follows these steps:

Power ON ↓ Firmware (BIOS / UEFI) ↓ Boot Loader ↓ Operating System Kernel ↓ System Services & User Processes

3. Step-by-Step Boot Sequence

Step 1: Power-On and Firmware Execution

When the system is powered on:

  • The CPU begins execution at a fixed memory address

  • This address contains firmware code:

    • BIOS (Basic Input/Output System) in older systems

    • UEFI (Unified Extensible Firmware Interface) in modern systems

📌 Firmware responsibilities:

  • Initialize basic hardware (CPU, memory, keyboard, display)

  • Perform POST (Power-On Self Test)

  • Identify a bootable device (disk, SSD, USB, network)


Step 2: Boot Loader Execution

Once a bootable device is found:

  • Firmware loads a small program called the boot loader into memory

  • Control is transferred to the boot loader

📌 Why a boot loader is needed:

  • The OS kernel is too large to be loaded directly by firmware

  • Boot loader acts as an intermediate step

Examples:

  • GRUB (Linux)

  • Windows Boot Manager

  • LILO (older Linux systems)

📌 Boot loader responsibilities:

  • Load the OS kernel into memory

  • Pass boot parameters to the kernel

  • Allow OS selection (dual boot systems)


Step 3: Kernel Loading and Initialization

Once loaded into memory, the kernel begins execution.

The kernel performs:

  • Initialization of CPU scheduling

  • Memory management setup

  • Device driver initialization

  • Interrupt handling setup

  • Creation of kernel data structures

📌 At this stage:

  • The system switches from firmware mode to kernel mode

  • The OS takes full control of the hardware


Step 4: System Daemons and Services Start

After kernel initialization:

  • The OS starts system services (daemons)

Examples:

  • Process scheduler

  • File system services

  • Networking services

  • Logging services

📌 In UNIX/Linux systems:

  • The kernel starts the first user-space process, traditionally:

    • init (PID = 1)

    • Or systemd in modern Linux

This process is responsible for starting all other system services.


Step 5: User Environment Initialization

Finally:

  • Login services are started

  • Graphical or command-line interface appears

  • User applications can now run

At this point, the system is considered fully booted.


4. Booting in Stored-Program Computers 

Silberschatz emphasizes that modern computers are stored-program machines, meaning:

  • Programs (including the OS) are stored on disk

  • A small portion of code must already exist in memory (firmware)

  • This initial code is responsible for loading the rest of the OS


5. Multistage Booting

Most systems use multistage booting:

  • Stage 1: Firmware

  • Stage 2: Boot loader

  • Stage 3: Kernel

  • Stage 4: System services

📌 Advantage:

  • Simplifies design

  • Allows flexibility

  • Supports multiple OS choices


6. Booting and System Reliability

  • Boot loaders and kernels must be small, reliable, and secure

  • Errors during boot can prevent the system from starting

  • Some systems support:

    • Recovery mode

    • Safe boot

    • Redundant boot loaders


7. Summary Table

StageComponentFunction
1            Firmware (BIOS/UEFI)        Hardware initialization, POST
2            Boot Loader        Loads kernel into memory
3            Kernel        Initializes OS core services
4            System Services        Starts background processes
5            User Space        Login and applications

8. Key  Takeaways

  • Booting is the process of loading the OS into memory

  • Firmware starts execution and loads the boot loader

  • Boot loader loads the kernel

  • Kernel initializes hardware and OS services

  • First user process (init/systemd) starts all other services

Comments

Popular posts from this blog

Operating Systems OS PCCST403 Semester 4 BTech KTU CS 2024 Scheme

Introduction to Operating System -Virtualization, Concurrency, and Persistence

Operating Systems PCCST403 Scheme and Syllabus