Bootstrap Loader

The role of bootstrap loader in the booting process

Software

Bootstrap Loader:

Booting is a bootstrapping process that starts operating systems when the user turns on a computer. A boot sequence is the initial set of operations that the computer performs when power is switched on. The boot loader loads the main operating system for the computer.

Windows OS

A Bootstrap Loader (BSL) is a small program that can be activated immediately after a microcontroller has been powered up, in order to load and execute another program in a well-defined manner. The bootstrap loader is hardcoded into the micro controller.

After the micro controller's bootstrap mode has been activated, a loader program can be used to store some routines on the micro-controller. In the next step, those routines are used to upload new firmware and save it in the program memory. This provides an easy way to upload new firmware.

Once the Boot Manager determines which operating system to load, it passes control to 'winload.exe.' This file is responsible for loading the Windows kernel ('ntoskrnl.exe') and other necessary files into memory.

Windows Booting Process:

Windows boot process starts when the computer finds a Windows boot loader, a portion of the Windows operating system responsible for finding Microsoft Windows, and starting it up. The boot loader is called Windows Boot Manager (BOOTMGR). Prior to Windows, the boot loader was NTLDR. NTLDR parses the Boot.ini file to determine the location of the operating system boot partition.

Note: The 'boot.ini' was a text-based configuration file located in the root directory of the system partition (typically the C: drive). It contained information about the operating systems installed on the computer and the options for booting them.

When you switch on the power supply, the Windows operating systems program gets loaded and takes over the PC's control. It provides the communication link between your computer hardware and the software that you use. For example, when you tell your spreadsheet software to save a file, the operating system instructs the computer hardware how and where to store, namely, in the hard disk, etc.

In the context of Windows operating systems, the term "bootstrap loader" typically refers to the initial component responsible for loading the operating system into memory during the boot process. Here's a brief overview:

1. BIOS/UEFI: When a computer starts up, the Basic Input/Output System (BIOS) or Unified Extensible Firmware Interface (UEFI) is the first code that runs. It performs a Power-On Self-Test (POST) and then looks for a bootable device.

2. MBR or GPT: The BIOS or UEFI locates the Master Boot Record (MBR) on the bootable device (usually a hard drive or SSD). In the case of UEFI, it could be the GUID Partition Table (GPT).

3. Boot Manager: The MBR or GPT contains the initial bootstrap loader, which is responsible for launching the Windows Boot Manager. The Windows Boot Manager is a small program that displays a menu, allowing the user to choose which operating system to load if multiple operating systems are installed.

4. Boot Loader: he Windows Boot Manager then loads the Windows Boot Loader, which is a file named "winload.exe." The Boot Loader is specific to each installed version of Windows on the system.

5. Kernel Loading: The Windows Boot Loader loads the Windows kernel (ntoskrnl.exe) and necessary drivers into memory. The kernel is the core of the operating system.

6. System Initialization: Once the kernel is loaded, the system initialization process begins, and control is passed to the Windows operating system.

This process is part of the broader bootstrapping process, where a small, specialized program (the bootstrap loader) initializes the system and hands over control to a more comprehensive operating system. The details may vary depending on factors such as the version of Windows, the architecture (32-bit or 64-bit), and whether the system is using BIOS or UEFI.

Category: Software

on: 08 Sep 2020

on: 10 Jan 2022

What's Next?

We actively create content for our YouTube channel and consistently upload or share knowledge on the web platform.