Boot­load­ers ensure that all relevant operating system data is loaded into the main memory when a device is started. During the boot process, the firmware transmits the required in­form­a­tion.

What is a boot­load­er?

Data of an operating system must be loaded into the working memory during device start-up. This is made possible by a so-called boot­load­er, also known as a boot program or bootstrap loader. For this purpose, im­me­di­ately after a device starts, a boot­load­er is generally launched by a bootable medium like a hard drive, a CD/DVD, or a USB stick. The boot medium receives in­form­a­tion from the computer’s firmware (e.g. BIOS) about where the boot­load­er is. The whole process is also described as ‘booting’.

Note

The term ‘boot­load­er’ is a shortened form of the words ‘bootstrap loader’. The term stems from the fact that the boot manager is the key component in starting up the computer, so it can be likened to the support of a bootstrap when putting a boot on.

How does a boot­load­er work?

When you press the start button on a computer, the very first thing you see on the screen is in­form­a­tion about the hardware installed. The software re­spons­ible for this no­ti­fic­a­tion is the device firmware mentioned above, which is usually im­ple­men­ted by man­u­fac­tur­ers in flash memory on the computer’s mother­board. With most desktop PCs and notebooks this will be the BIOS (Basic Input/Output System) or the more modern UEFI (Unified Extensible Firmware Interface). Both ap­plic­a­tions collect the most diverse hardware data and create a complete list of all of the device’s available drives.

When this process is complete, the firmware goes through the data carriers found in sequence, checking for a boot­load­er by means of a special signature – the so-called boot signature (or ‘boot record’). The search always starts on the removable media (CD/DVD, USB stick, external hard drive, etc.), followed by the hard-coded drives. With the latter, the boot­load­er and its signature is generally in the Master Boot Record (MBR), which also contains the data carrier’s partition tables. When a boot­load­er is found, it is loaded and the system start is initiated. If the search is un­suc­cess­ful, the firmware will return an error message.

Tip

As soon as you have installed an operating system properly it will launch via a boot­load­er, which is typically located on the main partition. If the system is damaged, however, and ought to be installed again, you are dependent on the bootable removable media mentioned pre­vi­ously. This also applies if no operating system is installed. You can find out how to transform a standard USB stick into a fully func­tion­al boot medium in our guide.

Where exactly are boot­load­ers stored?

Boot­load­ers can be stored in two different places:

  1. The boot­load­er is stored in the first block of the bootable medium.
  2. The boot­load­er is stored on a specific partition of the bootable medium.

The first variant is closely connected to the principle of master boot records, which don’t just contain the link to the boot­load­er required by the firmware, but the boot software itself. The first available memory block or sector in the medium is always reserved for the record. Because of this important function, it is also known as the boot block or boot sector.

In the second case, the operating system uses a selected partition as the storage location for the boot­load­er, though the un­der­ly­ing file system and the partition tables used can vary greatly. The decisive factor here is always the firmware, which stip­u­lates a specific file format for the boot manager in this boot­load­er storage model. For devices with UEFI, for example, the format is PE/COFF (Portable Executable / Common Object File Format).

Note

Boot­load­ers can also be spread across several layers that build upon each other. These multi-stage boot­load­ers consist of up to three different levels that are launched in sequence. They are typically used if the boot program is too big for the boot sector.

A summary of a boot­load­er’s functions

Boot­load­ers serve as a mediator between hardware and the operating system. As soon as a boot­load­er has been ini­tial­ised by the re­spect­ive firmware, it has system re­spons­ib­il­ity to get the boot process going. The first task is to load the main memory, which is essential for the processor to work.

In the second step, the boot­load­er loads the kernel of the operating system, that is, the primary component of the system software that controls all storage and processor per­mis­sions and contains all important drivers. The bootstrap loader also processes different routine tasks and commands, e.g. in­teg­rat­ing data storage. Some boot­load­ers also perform tasks beyond starting up software, including:

  • Identi­fy­ing and starting other available boot­load­ers
  • Launching ap­plic­a­tion programs (fre­quently used in the 1980s to launch computer games directly from a disk)
  • Cor­rect­ing or expanding missing functions and entries in the firmware
  • Loading al­tern­at­ive firmware

After suc­cess­fully com­plet­ing all tasks, the boot­load­er returns the system re­spons­ib­il­ity to the kernel.

What well-known boot­load­ers are there?

The following table lists the most important boot­load­ers:

Name of the boot­load­er De­scrip­tion
Bootmgr boot program for Microsoft systems since Windows Vista and Windows Server 2008
NT loader (NTLDR) boot program for Microsoft systems until Windows XP and Windows Server 2003
barebox boot­load­er for embedded systems in printers, cameras, cars, airplanes, and more
boot.efi EFI boot­load­er that has been used in Mac devices since 2006
BootX former boot­load­er for Mac operating systems
Grand Unified Boot­load­er (GRUB) free boot program for Unix-like operating systems such as Linux
ARM Core Boot­load­er boot­load­er for mi­cro­con­trol­lers (used in iPhones among others)
OpenBIOS free, portable boot manager under a GNU-GPL license
Go to Main Menu