Windows Vista startup process

From Wikipedia, the free encyclopedia
  (Redirected from Boot Configuration Data)
Jump to: navigation, search

The startup process of Windows Vista, Windows Server 2008 and their successors differs from that of previous versions of Windows. (In this article, unless otherwise specified, what is said about "Windows Vista" also applies to all these operating systems.) For Windows Vista, the boot sector 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. Then, the BCD invokes the boot loader and in turn proceeds to initiate the Windows Kernel.


Windows Vista introduces a complete overhaul of the Windows operating system loader architecture.[1] The earliest known reference to this revised architecture is included within PowerPoint slides distributed by Microsoft during the Windows Hardware Engineering Conference of 2004 when the operating system was codenamed "Longhorn." This documentation mentions that the Windows operating system loader would be undergoing a significant restructuring in order to support EFI and to "do some major overhaul of legacy code."[2] The new boot architecture completely replaces the NTLDR architecture used in previous versions of Windows NT.[1] On the release of Windows 8, to promote the Hybrid Boot technology recently developed, the boot manager was largely revised, replacing the default black and white boot style to a bluish color. The modified boot loader image also crippled the easy way to load Advanced Boot Options (which was invoked by pressing F8 rapidly prior to OS load). However, it can be brought back with a BCDEDIT command.

Boot Configuration Data[edit]

Boot Configuration Data (BCD) is a firmware-independent database for boot-time configuration data. It is used by Microsoft's new Windows Boot Manager and replaces the boot.ini that was used by NTLDR.

Boot Configuration Data are stored in a data file that has the same format as the Windows Registry hives and is eventually loaded at registry key [HKEY_LOCAL_MACHINE\BCD00000].[3] If the computer is UEFI, then the file is located on the EFI System Partition. If the computer is legacy, then the file lies on \boot\BCD on the boot sector.

Boot Configuration Data may be altered using a command-line tool (bcdedit.exe), using Registry Editor (regedit.exe), using Windows Management Instrumentation, or with third-party tools such as EasyBCD, BOOTICE,[4] or Visual BCD Editor.[5]

Boot Configuration Data contain the menu entries that are presented by the Windows Boot Manager, just as boot.ini contained the menu entries that were presented by NTLDR. These menu entries can include:

  • Options to boot Windows Vista by invoking winload.exe.
  • Options to resume Windows Vista 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.

Boot Configuration Data allows for third-party integration, so anyone can implement tools like diagnostics or recovery options.

Boot loaders[edit]


The Windows Boot Manager invokes winload.exe—the operating system boot loader—to load the operating system kernel executive (ntoskrnl.exe) and core device drivers. In that respect, winload.exe is functionally equivalent to the operating system loader function of NTLDR in prior versions of Windows NT. In UEFI systems, the file is called winload.efi and the file is always located at \windows\system32


If the computer has recently hibernated, then bootmgr will instead invoke winresume.exe. The only difference is the alternate boot mode and the splash screen displaying "Resuming Windows". In UEFI systems, the file is called winresume.efi and is always located at \windows\system32

See also[edit]


  1. ^ a b Microsoft (February 4, 2008). "Boot Configuration Data in Windows Vista" (DOCX). Retrieved April 18, 2015. 
  2. ^ Ritz, Andrew (2004). "EFI and Windows 'Longhorn'". Microsoft. Archived from the original (PPT) on June 9, 2004. Retrieved April 18, 2015. 
  3. ^ Russinovich, Mark (8 November 2011). "Fixing Disk Signature Collisions". Mark's Blog (Microsoft Corporation). Microsoft TechNet. Retrieved 9 November 2011. 
  4. ^ Pauly. "BOOTICE board index". 
  5. ^ Bo Yans. "Visual BCD Editor". 

Further reading[edit]