BIOS vs UEFI: How a PC Starts Before Windows Loads - featured illustration
|

BIOS vs UEFI: How a PC Starts Before Windows Loads

Before Windows, Linux or any operating system can start, the computer’s firmware has to wake the hardware and hand control to a boot loader. For about 30 years that firmware was the BIOS. Today almost every PC uses UEFI, and Windows 11 requires it. This article explains what changed, how the two boot paths differ, how MBR and GPT disks fit in, and how to check which mode your own machine uses. It pairs with the step-by-step Windows boot guide, which covers the later stages and repairs.

BIOS: the original firmware

BIOS (Basic Input/Output System) as a term dates back to CP/M in the 1970s, and the IBM PC’s BIOS, which set the standard, debuted in 1981. It runs in the CPU’s old 16-bit real mode, which can address only about 1 MB of memory, and it provides a small set of services (interrupt calls) that early operating systems such as MS-DOS used to talk to the keyboard, screen and disks. Its boot process is simple:

  1. The BIOS runs the Power-On Self-Test and initialises hardware.
  2. It picks a boot device from the configured order and reads the very first sector (512 bytes) of the disk, the Master Boot Record (MBR).
  3. The MBR contains a tiny piece of boot code (446 bytes), a partition table and a signature. The code finds the active partition and loads that partition’s boot sector.
  4. The boot sector loads the next stage (on Windows, bootmgr), which switches the CPU out of real mode into protected mode and continues.

This design worked, but it has hard limits: the MBR partition table stores sizes in 32-bit sector counts, so with 512-byte sectors a disk can be used only up to 2 TB; it allows only four primary partitions; and boot code has to squeeze into a few hundred bytes before larger loaders can be found. Setup screens were also text-only and rarely offered security features.

UEFI: the modern replacement

UEFI (Unified Extensible Firmware Interface) is a specification, maintained by the UEFI Forum, that grew out of Intel’s EFI work. Instead of relying on a boot sector, UEFI firmware is a small operating environment in itself. It understands file systems, can run 64-bit code, supports network boot, and offers a graphical setup menu with mouse support. The boot process is different:

  1. The firmware initialises the hardware (the platform initialisation phase) and runs its self-tests.
  2. It reads its boot entries from non-volatile memory. Each entry names a disk, a partition and an .efi file.
  3. It mounts the EFI System Partition (ESP), a small FAT32 partition, and directly loads the chosen .efi boot loader. On Windows this is \EFI\Microsoft\Boot\bootmgfw.efi, on Ubuntu \EFI\ubuntu\shimx64.efi.
  4. If Secure Boot is enabled, the firmware first verifies the loader’s digital signature against trusted keys stored in firmware, and refuses to run anything untrusted.

The important point, and a common misconception, is that UEFI does not store the operating system’s boot code inside the firmware chip. The boot loader is still a file on disk, in the ESP. What lives in firmware is the list of boot entries and the security keys.

BIOS vs UEFI at a glance

Legacy BIOS UEFI
Partition scheme MBR GPT (required for a Windows UEFI system disk)
Largest bootable disk 2 TB with 512-byte sectors Beyond 2 TB (GPT supports up to about 9.4 ZB)
Partitions per disk 4 primary (or 3 plus an extended) 128 by default on Windows
Boot code location First sector of the disk, then the active partition .efi files on the ESP
Execution mode 16-bit real mode 32- or 64-bit mode matching the CPU
Secure Boot Not available Available
Setup interface Text menus, keyboard only Often graphical, with mouse
Windows 11 support Not supported Required (with Secure Boot capability)

What Windows adds after the firmware

Whichever firmware you use, the Windows-specific stages converge at the Windows Boot Manager, which reads the Boot Configuration Data (BCD) to decide what to start. The BCD says whether to start a normal Windows installation or resume from hibernation (winresume), and its options include Safe Mode or kernel debugging. The OS loader (winload.exe on BIOS, winload.efi on UEFI) then loads the kernel ntoskrnl.exe, the Hardware Abstraction Layer, the SYSTEM registry hive and boot-start drivers. The kernel takes over, and the Session Manager starts the rest of the system. The other article in this series covers each stage and its errors in detail.

MBR and GPT: the disk side of the story

The firmware type and the partition style go together. UEFI Windows boots from a GPT disk, and legacy BIOS Windows boots from an MBR disk. GPT (GUID Partition Table) removes the 2 TB and four-partition limits and stores a backup copy of the partition table at the end of the disk, making it more resilient than MBR. A UEFI Windows disk normally has these partitions: the ESP (FAT32), a Microsoft Reserved partition, the main Windows (NTFS) partition, and a Recovery partition.

How to check which mode your PC uses

  • System Information: press Win + R, run msinfo32 and read BIOS Mode (UEFI or Legacy) and Secure Boot State.
  • PowerShell (administrator): Confirm-SecureBootUEFI returns True or False on UEFI systems and throws an error saying the cmdlet is not supported on legacy BIOS.
  • Disk type: in Disk Management, right-click the disk, choose Properties, then Volumes and read Partition style: GUID Partition Table or Master Boot Record.
  • On Linux: [ -d /sys/firmware/efi ] && echo UEFI || echo BIOS prints which mode the running system booted in.

Converting from BIOS/MBR to UEFI/GPT

If you want to move an existing Windows 10 installation to UEFI (for example to prepare for Windows 11), Microsoft provides the MBR2GPT tool, which converts the disk in place without wiping data. The order matters:

  1. Back up the machine. A conversion error can leave it unbootable.
  2. Validate first: mbr2gpt /validate /allowFullOS.
  3. Convert: mbr2gpt /convert /allowFullOS.
  4. Restart into firmware setup and switch the mode from Legacy/CSM to UEFI, then enable Secure Boot. The machine will not boot after the conversion until you make this change.

Suspend BitLocker before you do this, and see the BitLocker guide for how to manage it. The tool has requirements (for example, a limited number of partitions and free space for the ESP), so read Microsoft’s documentation first.

Common questions

Is UEFI faster than BIOS?

Often, yes, because firmware initialisation is streamlined and “fast boot” options skip some checks, but most of the boot time comes from Windows itself and from the storage device.

What is CSM?

The Compatibility Support Module lets UEFI firmware emulate a legacy BIOS so that older MBR-based systems can still boot. Windows 11 needs it off, and many current motherboards no longer include it.

Is “Legacy BIOS” the same as the setup screen I call “BIOS”?

No. People still say “enter the BIOS” for the firmware setup screen even on UEFI machines. Use the mode shown in msinfo32 to know what your machine really is.

Sources

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *