BCD Stores
Physically, a BCD store is a binary file in the registry hive format. A computer has a system BCD store that describes all installed Windows Vista and Windows 7 operating systems and installed Windows boot applications. A computer can optionally have many non-system BCD stores. Figure below shows an example of how the BCD hierarchy is implemented in a typical BCD store.
A BCD store normally has at least two (and optionally, many) BCD objects:
- A Windows Boot Manager object This object contains BCD elements that pertain to the Windows Boot Manager, such as the entries to display in an operating system selection menu, boot tool selection menu, and time-out for the selection menus. The Windows Boot Manager object and its associated elements serve essentially the same purpose as the [boot loader] section of a Boot.ini file. A store can optionally have multiple instances of the Windows Boot Manager. However, only one of them can be represented by the Windows Boot Manager well-known globally unique identifier (GUID). You can use the GUID's alias, {bootmgr}, to manipulate a store with BCDEdit.
- At least one and optionally several Windows Boot Loader objects Stores contain one instance of this object for each version or configuration of Windows Vista, Windows Server 2008, or Windows 7 that is installed on the system. These objects contain BCD elements that are used when loading Windows or during Windows initialization such as no-execute (NX) page protection policy, physical address extension (PA E) policy, and kernel debugger settings. Each object and its associated elements serve essentially the same purpose as one of the lines in the [operating systems] section of Boot.ini. When a computer is booted into Windows, the alias {current} represents the associated boot loader object. When manipulating a store with BCDEdit, the default boot loader object has the alias {default}.
- An optional Windows {ntldr} object The {ntldr} object describes the location of Ntldr, which you can execute to boot Windows XP or earlier versions of Windows. This object is required only if the system includes versions of Windows that are earlier than Windows Vista. It is possible to have multiple instances of objects that describe Ntldr. However, as with the Windows Boot Manager, only one instance can be represented by the {ntldr} well-known GUID alias. You can use the GUID's alias, {ntldr}, to manipulate a store with BCDEdit.
- Optional boot applications Stores can optionally have BCD objects that perform other boot-related operations. One example is the Windows Memory Tester, which runs memory diagnostics.
In this tutorial:
- Configuring Startup and Troubleshooting Startup Issues
- What is New with Windows Startup
- Boot Configuration Data
- BCD Stores
- System Recovery
- Windows Boot Performance Diagnostics
- Understanding the Startup Process
- Power-on Self Test Phase
- Initial Startup Phase
- Initial Startup Phase for BIOS Computers
- Initial Startup Phase for EFI Computers
- Windows Boot Manager Phase
- Windows Boot Loader Phase
- Kernel Loading Phase
- Control Sets
- Values for the Start Registry Entry
- Value Descriptions for Type Entries
- Other Registry Entries in the Servicename Subkeys
- Session Manager
- Logon Phase
- Important Startup Files
- How to Configure Startup Settings
- How to Use the Startup And Recovery Dialog Box
- How to Use the System Configuration Tool
- How to Use BCDEdit
- How to Interpret BCDEdit Output
- How to Back Up and Restore Settings
- How to Change the Default Operating System Entry
- How to Change the Boot Menu Time-Out
- How to Change the Order of Boot Manager Menu Items
- How to Create an Entry for Another Operating System
- How to Remove a Boot Entry
- How to View and Update Global Debugger Settings
- How to Remove the Windows 7 Boot Loader
- How to Configure a User Account to Automatically Log On
- How to Disable the Windows Startup Sound
- How to Speed Up the Startup Process
- The Process of Troubleshooting Startup
- Startup Troubleshooting Before the Starting Windows Logo Appears
- How to Start the System Recovery Tools
- How to Run Startup Repair
- How to Use BootRec.exe
- How to Diagnose Hardware Problems
- How to Use System Restore
- How to Manually Repair the Boot Sector
- How to Manually Update the BCD Registry File
- How to Manually Replace Files
- How to Reinstall Windows
- Startup Troubleshooting After the Starting Windows Logo Appears
- How to Restore the Last Known Good Configuration
- How to Enable Boot Logging
- How to Start in Safe Mode
- How to Identify Failing Drivers and Services
- How to Analyze Startup Problems in Safe Mode
- Event Viewer (Eventvwr.msc)
- System Information
- Error Reporting Service
- How to Use Device Manager to View or Change Resources
- How to Analyze Boot Logs
- How to Roll Back Drivers
- How to Temporarily Disable a Service
- Troubleshooting Startup Problems After Logon
- How to Temporarily Disable Startup Applications and Processes
- How to Disable Startup Applications Using the Shift Key
- How to Disable Startup Programs Using the System Configuration Utility
- How to Disable Startup Applications Configured Using Group Policy or Logon Scripts
- How to Permanently Disable Startup Applications and Processes
- Manually Remove the Entry