UEFI and legacy BIOS are two generations of the firmware that starts a computer. A BIOS runs in 16 bit mode and boots by executing the code in the first sector of a drive.
UEFI runs in 64 bit mode, reads a GPT partition table, and boots by loading a named file from a FAT formatted partition, which is what makes Secure Boot and boot drives above 2.2 TB possible.
- A BIOS executes a sector, UEFI loads a file
- The 2.2 TB boot ceiling is the old scheme, not the drive
- Secure Boot exists only in UEFI mode
- CSM is UEFI pretending to be a BIOS, and costs both
- msinfo32 names the mode a machine is actually in
On this page
FundamentalsWhat the firmware is actually for
Before any operating system exists, something has to wake the computer hardware up. That something is firmware stored on a chip on the motherboard, and the boot process it runs has three steps.
It runs a power on self test, the basic check that the processor, memory and the essential buses answer. It initializes hardware so that storage, user input and video work well enough to be useful. Then it finds an operating system and hands control over.
Both the BIOS and the UEFI firmware interface do those three things. Everything that follows is a difference in how, and almost all of the practical consequences come from the third step of the boot process.
The handoffHow each one finds an operating system
This is the difference that produces every other difference between the two systems.
Legacy BIOS reads a sector. The BIOS looks at the first 512 bytes of each drive in the configured order, checks for a two byte signature at the end, and if it finds one it executes the code there.
A BIOS has no concept of a filesystem and no idea what an operating system is. That first sector is the Master Boot Record, and it holds boot code and the partition table together in the same 512 bytes. There is no room in it for anything else.
UEFI reads a file. The UEFI firmware looks for a partition of a specific type, the EFI system partition, formatted FAT32, and inside it looks for a boot loader at a known path such as \EFI\BOOT\BOOTX64.EFI. The firmware understands FAT, understands GPT partition tables, and keeps its own list of boot entries in non volatile memory.
Once you see that, the rest follows. A firmware that can only execute one sector has no room to check a signature, so the security features UEFI is known for are impossible on a BIOS. A firmware that can only read 32 bit sector numbers out of the MBR cannot address a boot drive past 2.2 TB, whatever the hardware supports.
A firmware that can read a filesystem can keep several boot loaders side by side and let you choose, which is why UEFI multi boot is tidy and legacy multi boot involved overwriting each other's boot sectors.
Side by sideThe differences that matter in practice
| Criterion | Legacy BIOS | UEFI |
|---|---|---|
| Processor mode at boot | 16 bit real mode | 32 or 64 bit |
| Addressable memory at boot | 1 MB | Limited by the hardware |
| Boot drive size ceiling | About 2.2 TB | Effectively none |
| Partitions on a boot drive | Four primary | 128 on Windows |
| Boot mechanism | Code in the first sector | A file on a FAT partition |
| Boot loader signature check | Not possible | Secure Boot |
| Network boot | Add on option ROM | Built in, IPv4 and IPv6 |
| Interface | Text, keyboard only | Often graphical, mouse works |
| Drivers | 16 bit option ROMs | EFI drivers, loaded at boot |
| Boot entries | One per drive, in order | A named list in firmware memory |
Three rows are worth pulling out.
The memory ceiling sounds academic and is not. A BIOS working in 16 bit mode inside the first megabyte has almost no room, which is why legacy boot could never do much beyond starting something else quickly.
UEFI has enough room for features a BIOS could not carry: a network stack, a shell, and diagnostic tools that run before any operating system.
Boot time is the difference people notice first. A BIOS initializes hardware one device at a time and waits for each, so a machine with several controllers spends real time doing nothing.
UEFI initializes in parallel and skips the legacy compatibility steps entirely, which is why the same computer boots faster in UEFI mode with no other change. On a laptop the saving is a few seconds. On a server with a lot of storage it can be a minute or more.
The boot entry list is why a UEFI machine can lose its ability to boot without anything being wrong with the drive. The entry lives in firmware memory, not on the disk. Clearing the CMOS or replacing the motherboard clears the entries, and the fix is to recreate the entry rather than to reinstall.
CSMCSM, the compatibility layer in the middle
Almost every machine sold in the last fifteen years has UEFI firmware. Many computers nonetheless boot in legacy BIOS mode, because of a firmware setting called the Compatibility Support Module.
CSM is a UEFI firmware pretending to be a BIOS. It provides the 16 bit interface an older operating system expects, and it boots from a boot sector rather than a file.
Vendors call it legacy support, and it is switched on by default on plenty of boards. It exists so that a modern board can still support older operating systems and rescue tools.
The trouble is what it costs. A machine booted through CSM has none of the UEFI security features, is running its boot drive on MBR, and inherits the 2.2 TB ceiling on that drive. Nothing warns the user. It boots, it works, and the computer looks modern in every other respect.
The rule of thumb is simple. If a machine needs to run Windows 11, or you want Secure Boot, or the boot drive is larger than 2 TB, CSM must be off and the disk must be GPT. If you turn CSM off while the disk is still MBR, the machine stops booting, which is why the conversion comes first.
How to checkHow to tell which mode a machine is in
Do not guess from the user interface of the firmware setup screen, which is often graphical on a machine still booting in legacy BIOS mode.
On Windows, run msinfo32 and read the BIOS Mode line, which is the one line in the system information that answers this. It says UEFI or Legacy, and it is the answer. Get-Disk in PowerShell shows the partition style of each disk, which should say GPT on a UEFI system.
On Linux, check whether /sys/firmware/efi exists. If the directory is there, the system booted in UEFI mode. If it is not, it booted legacy BIOS, whatever the firmware is capable of. Reading that one path is faster than any tool.
In the firmware itself, read the boot mode setting and the CSM setting. A machine with CSM enabled and set to legacy first is booting legacy, regardless of what the rest of the screen looks like.
ConversionConverting without reinstalling
For years the answer to a machine on legacy boot was to reinstall. On Windows it has not been for a while.
MBR2GPT converts the system disk from MBR to GPT in place, creating the EFI system partition it needs and updating the boot configuration. It runs from the recovery environment, or from a running system with /allowFullOS.
Take a backup first, because the tool has preconditions and refuses more often than it fails, but a failure is still a machine that will not start.
The order matters and people get it wrong. Convert the disk first, while the machine is still booting legacy. Then change the firmware to UEFI and disable CSM. Doing it the other way around gives you a firmware looking for an EFI partition on a disk that does not have one.
PitfallsWhere people go wrong
Assuming a graphical setup screen means UEFI mode. The user interface and the boot mode are unrelated. A mouse driven firmware screen booting a legacy BIOS MBR disk is common, and a plain text screen can be a UEFI system.
Turning off CSM before converting the disk. The machine stops booting immediately. Nothing was damaged, but recovering it means going back into the firmware to turn CSM on again, and people reinstall instead.
Installing an operating system from media booted in the wrong mode. Installation media for most systems offers both a UEFI entry and a legacy BIOS entry for the same USB stick, and the installer builds whichever the firmware started. A machine that boots legacy after a fresh install usually means the wrong menu entry was chosen.
Expecting Secure Boot to work with CSM on. The order is the whole trick: convert the disk and switch the firmware to UEFI mode first, and only then turn Secure Boot on. They are mutually exclusive. Enabling one greys out the other on most boards, and where it does not, Secure Boot simply reports as unavailable.
Blaming the hardware for the 2.2 TB limit. A 4 TB drive works fine as a data disk on a legacy BIOS machine. The ceiling is on the boot drive only, and it belongs to the partition scheme, not the hardware.
ComparisonLegacy BIOS, UEFI with CSM, and UEFI with CSM off, on what each one costs you
| Criterion | Legacy BIOS, or CSM | UEFI with CSM enabled | UEFI, CSM off |
|---|---|---|---|
| Boots modern operating systems | Yes | Yes | Yes |
| Boots older or rescue tools | Yes | Yes | Sometimes |
| Secure Boot available | No | No | Yes |
| Boot drive above 2 TB | No | No | Yes |
| Partitions on the boot drive | Four | Four | 128 |
| Windows 11 supported | No | No | Yes |
| Boot entries survive a CMOS clear | Yes | Yes | No |
| What to run in now | No | No | Yes |
The middle column is the trap. A machine there looks entirely modern and has none of the benefits, and nothing on screen tells you. Every audit of an older estate turns up machines sitting in it.
FAQFrequently asked questions
What is the main difference between UEFI and BIOS?
How the two firmware interfaces start an operating system. BIOS executes code in the first sector of a drive. UEFI loads a named file from a FAT formatted partition, which is what makes Secure Boot and large boot drives possible.
Is UEFI faster than BIOS?
Usually faster, and mostly because it initializes hardware in parallel and skips the legacy compatibility steps a BIOS runs through. The difference is seconds, not minutes, and on a system with a lot of storage controllers it can be larger.
Can I switch from BIOS to UEFI without reinstalling?
On Windows, yes. Convert the system disk from MBR to GPT with MBR2GPT, then change the firmware to UEFI and disable CSM. Convert first, in that order.
What is CSM?
The Compatibility Support Module, a UEFI firmware providing the old BIOS interfaces so it can boot legacy operating systems and tools. It disables Secure Boot and keeps the machine on MBR.
How do I check whether my computer uses UEFI or BIOS?
On Windows run msinfo32 and read the BIOS Mode line. On Linux, check whether /sys/firmware/efi exists.
Does UEFI require GPT?
For the boot drive on Windows, yes. Data drives can be either. Some firmware will boot UEFI from an MBR disk, but Windows does not support installing that way.
Why does Windows 11 need UEFI?
Because it requires the Secure Boot and TPM security features, and Secure Boot only exists in UEFI mode. A machine on CSM fails the check even when the hardware is capable.
What is the EFI system partition?
A small FAT32 partition, usually 100 to 500 MB, holding the boot loaders the UEFI firmware reads at boot time. Deleting it makes a machine unbootable while leaving every file on the operating system partition intact.
Is legacy BIOS less secure?
Yes, in one specific way that matters. A BIOS has no security features in the boot process at all: nothing checks what the boot code is before running it, so anything that can write to the first sector runs before the operating system does. Secure Boot exists to close that.
Do old operating systems still need legacy BIOS mode?
Some do. Anything before 64 bit Windows 7, most 32 bit systems, and a number of imaging and rescue tools still expect the BIOS boot process and a boot sector. That is what CSM is for.
Does UEFI support a mouse?
Often, but that is a firmware vendor's choice about the user interface and has nothing to do with the boot mode. A text only setup screen can still be a UEFI machine.
What happens if I clear the CMOS on a UEFI computer?
The boot entries stored in firmware memory go with it, and the machine may come up saying it found no bootable device. The disk is untouched, and the entry can be recreated from a recovery environment.
How do I open UEFI firmware settings from Windows?
Open Settings, go to recovery, and choose restart now under advanced startup. Then pick troubleshoot, advanced options and UEFI firmware settings. The computer restarts straight into the firmware menu, which is more reliable than pressing a key during a fast boot. The option is missing on systems that boot in legacy mode.
Keep readingRelated concepts
Read next · Firmware and boot What Is a BIOS? What the firmware does before either boot mode is chosen, in full. Open this next12 min- Firmware and boot · 15 min How to Enable Secure Boot, and What to Check Before You Do The feature that only exists in UEFI mode, turned on step by step.
- Disks and drives · 10 min MBR vs GPT The partition tables behind the two boot modes, and the arithmetic behind the 2 TB wall.
- Firmware and boot · 10 min What Is Firmware, and Which Firmware a Business Has to Keep Updated Firmware explained from the ground up, including where drivers and software fit around it.