The Windows Boot Manager (
BOOTMGR
) is the
bootloader provided by
Microsoft
Microsoft Corporation is an American multinational corporation and technology company, technology conglomerate headquartered in Redmond, Washington. Founded in 1975, the company became influential in the History of personal computers#The ear ...
for
Windows NT
Windows NT is a Proprietary software, proprietary Graphical user interface, graphical operating system produced by Microsoft as part of its Windows product line, the first version of which, Windows NT 3.1, was released on July 27, 1993. Original ...
versions starting with
Windows Vista
Windows Vista is a major release of the Windows NT operating system developed by Microsoft. It was the direct successor to Windows XP, released five years earlier, which was then the longest time span between successive releases of Microsoft W ...
and
Windows Server 2008
Windows Server 2008, codenamed "Longhorn Server" (alternatives: "Windows Vista Server" or "Windows Server Vista"), is the seventh major version of the Windows NT operating system produced by Microsoft to be released under the Windows Server b ...
. It is the first program launched by the
BIOS
In computing, BIOS (, ; Basic Input/Output System, also known as the System BIOS, ROM BIOS, BIOS ROM or PC BIOS) is a type of firmware used to provide runtime services for operating systems and programs and to perform hardware initialization d ...
or
UEFI
Unified Extensible Firmware Interface (UEFI, as an acronym) is a Specification (technical standard), specification for the firmware Software architecture, architecture of a computing platform. When a computer booting, is powered on, the UEFI ...
of the computer and is responsible for loading the rest of Windows. It replaced the
NTLDR
NTLDR (abbreviation of ''NT loader'') is the boot loader for all releases of Windows NT operating system from 1993 with the release of Windows NT 3.1 up until Windows XP and Windows Server 2003. From Windows Vista onwards it was replaced by the B ...
present in older versions of Windows.
The
boot sector
A boot sector is the disk sector, sector of a persistent data storage device (e.g., hard disk, floppy disk, optical disc, etc.) which contains machine code to be loaded into random-access memory (RAM) and then executed by a computer system's bui ...
or UEFI loads the Windows Boot Manager (a file named
BOOTMGR
on
either the system or the boot partition), accesses the Boot Configuration Data store and uses the information to load the
operating system
An operating system (OS) is system software that manages computer hardware and software resources, and provides common daemon (computing), services for computer programs.
Time-sharing operating systems scheduler (computing), schedule tasks for ...
through
winload.exe
or
winresume.exe
on
BIOS
In computing, BIOS (, ; Basic Input/Output System, also known as the System BIOS, ROM BIOS, BIOS ROM or PC BIOS) is a type of firmware used to provide runtime services for operating systems and programs and to perform hardware initialization d ...
systems, and
winload.efi
and
winresume.efi
on
UEFI
Unified Extensible Firmware Interface (UEFI, as an acronym) is a Specification (technical standard), specification for the firmware Software architecture, architecture of a computing platform. When a computer booting, is powered on, the UEFI ...
systems.
Launching
On system with
BIOS
In computing, BIOS (, ; Basic Input/Output System, also known as the System BIOS, ROM BIOS, BIOS ROM or PC BIOS) is a type of firmware used to provide runtime services for operating systems and programs and to perform hardware initialization d ...
firmware, the BIOS invokes
MBR boot code from a
hard disk drive
A hard disk drive (HDD), hard disk, hard drive, or fixed disk is an electro-mechanical data storage device that stores and retrieves digital data using magnetic storage with one or more rigid rapidly rotating hard disk drive platter, pla ...
at startup. The MBR boot code and the
VBR boot code are OS-specific. In Microsoft Windows, the MBR boot code tries to find an
active partition (the MBR is only 512 bytes), then executes the VBR boot code of an active partition. The VBR boot code tries to find and execute the
bootmgr
file from an active partition.
On systems with
UEFI
Unified Extensible Firmware Interface (UEFI, as an acronym) is a Specification (technical standard), specification for the firmware Software architecture, architecture of a computing platform. When a computer booting, is powered on, the UEFI ...
firmware, UEFI invokes
bootmgfw.efi
from an
EFI system partition at startup, starting the Windows Boot Manager.
Operation
Once launched the Windows Boot Manager reads the Boot Configuration Data to determine what operating systems are present and if it should present the user with a menu allowing them to select which operating system to boot. Before Windows Vista, this data was contained in .
These menu entries can include:
* Options to boot Windows Vista and later by invoking winload.exe.
* Options to resume Windows Vista and later from hibernation by invoking winresume.exe.
* Options to boot a prior version of the Windows NT family by invoking its NTLDR.
* Options to load and to execute a
volume boot record.
Operating system loading
The operating system is loaded by individual boot loaders for each install of Windows, called the Windows Boot Loader.
winload.exe
The Windows Boot Manager invokes
winload.exe
—the operating system
boot loader
A bootloader, also spelled as boot loader or called bootstrap loader, is a computer program that is responsible for booting a computer and booting an operating system. If it also provides an interactive menu with multiple boot choices then it's o ...
—to load the operating system kernel executive (
ntoskrnl.exe) and core
device drivers
In the context of an operating system, a device driver is a computer program that operates or controls a particular type of device that is attached to a computer or automaton. A driver provides a software interface to hardware devices, enabli ...
. In that respect, winload.exe is functionally equivalent to the operating system loader function of
NTLDR
NTLDR (abbreviation of ''NT loader'') is the boot loader for all releases of Windows NT operating system from 1993 with the release of Windows NT 3.1 up until Windows XP and Windows Server 2003. From Windows Vista onwards it was replaced by the B ...
in prior versions of Windows NT. In
UEFI
Unified Extensible Firmware Interface (UEFI, as an acronym) is a Specification (technical standard), specification for the firmware Software architecture, architecture of a computing platform. When a computer booting, is powered on, the UEFI ...
systems, the file is called
winload.efi
and the file is always located at
\windows\system32
or
\windows\system32\boot
.
winresume.exe
If the computer has recently
hibernated, then
bootmgr
will instead invoke
winresume.exe
. In UEFI systems, the file is called
winresume.efi
and is always located at
\windows\system32
or
\windows\system32\boot
.
Boot Configuration Data
Boot Configuration Data (BCD) is a
firmware
In computing
Computing is any goal-oriented activity requiring, benefiting from, or creating computer, computing machinery. It includes the study and experimentation of algorithmic processes, and the development of both computer hardware, h ...
-independent
database
In computing, a database is an organized collection of data or a type of data store based on the use of a database management system (DBMS), the software that interacts with end users, applications, and the database itself to capture and a ...
for
boot-time configuration data. It is used by Microsoft's Windows Boot Manager and replaces the
boot.ini
NTLDR (abbreviation of ''NT loader'') is the Booting, boot loader for all releases of Windows NT operating system from 1993 with the release of Windows NT 3.1 up until Windows XP and Windows Server 2003. From Windows Vista onwards it was replaced b ...
that was used by
NTLDR
NTLDR (abbreviation of ''NT loader'') is the boot loader for all releases of Windows NT operating system from 1993 with the release of Windows NT 3.1 up until Windows XP and Windows Server 2003. From Windows Vista onwards it was replaced by the B ...
.
Boot Configuration Data is stored in a data file that has the same format as
Windows Registry
The Windows Registry is a hierarchical database that stores low-level settings for the Microsoft Windows operating system and for applications that opt to use the registry. The kernel, device drivers, services, Security Accounts Manager, a ...
hives and is eventually mounted at registry key
(with restricted permissions). For UEFI boot, the file is located at
/EFI/Microsoft/Boot/BCD
on the
EFI System Partition. For traditional BIOS boot, the file is at
/boot/BCD
on the active partition.
bcdedit
Boot Configuration Data may be altered using a command-line tool (bcdedit.exe), using the
Registry Editor (regedit.exe), using
Windows Management Instrumentation
Windows Management Instrumentation (WMI) is a set of extensions to the Windows Driver Model that provides an operating system interface through which instrumented components provide information and notification. WMI is Microsoft's implementatio ...
, or with third-party tools such as
EasyBCD, BOOTICE, or Visual BCD Editor.
Boot Configuration Data allows for third-party integration, so anyone can implement tools like diagnostics or recovery options
See also
*
Booting process of Windows NT
*
Windows Vista I/O technologies
References
Further reading
*
{{Firmware and booting
Boot loaders
Windows NT architecture
Windows Vista