Boot Configuration Data
The BCD registry file replaces the Boot.ini files used in Windows XP and earlier versions of Windows to track operating system locations, and it allows for a variety of new Windows Vista and Windows 7 features, including the Startup Repair tool and the Multi-User Install shortcuts. The BCD is stored in a data file that uses the same format as the registry and is located on either the Extensible Firmware Interface (EFI) system partition (for computers that support EFI) or on the system volume. On BIOS-based operating systems, the BCD registry file is located at \Boot\Bcd on the active partition. On EFI-based operating systems, the BCD registry file is located in the \EFI\Microsoft\Boot\ folder on the EFI system partition.
The BCD registry file can contain the following types of information:
- Entries that describe Windows Boot Manager (\Bootmgr) settings
- Entries to start the Windows Boot Loader (\Windows\System32\WinLoad.exe), which can then load Windows Vista
- Entries to start Windows Resume Application (\Windows\System32\WinResume.exe), which can then restore Windows Vista from hibernation
- Entries to start Windows Memory Diagnostic (\Boot\MemTest.exe)
- Entries to start Ntldr to load previous versions of Windows
- Entries to load and execute a Volume Boot Record, which typically starts a non-Microsoft boot loader
Additionally, you can add more entries to load custom applications, such as recovery tools.
You can modify the BCD registry file in several different ways:
- Startup And Recovery With the Startup And Recovery dialog box (available on the Advanced tab of the System Properties dialog box), you can select the default operating system to start if you have multiple operating systems installed on your computer. You can also change the time-out value. This dialog box has changed very little when compared to Windows XP; however, it now changes the BCD registry file instead of the Boot.ini file.
- System Configuration utility (Msconfig.exe) Msconfig.exe is a troubleshooting tool that you can use to configure startup options. The Boot tab in Windows 7 provides similar functionality to the Boot.ini tab in Windows XP, such as starting in safe mode, enabling a boot log, or disabling the graphical user interface (GUI).
- BCD Windows Management Instrumentation provider The BCD Windows Management Instrumentation (WMI) provider is a management interface that you can use to script utilities that modify BCD. This is the only programmatic interface available for BCD; you should always use this interface rather than attempting to access the BCD registry file directly. For more information, see "BCD WMI Provider Classes" at http://msdn2.microsoft.com/en-us/library/aa362675.aspx.
- BCDEdit.exe BCDEdit.exe is a command-line utility that replaces Bootcfg.exe in Windows XP. BCDEdit can be run from within Windows 7 at an administrative command prompt, from within Windows RE or even from within earlier versions of Windows (if the BCDEdit.exe file is available). BCDEdit provides more configuration options than the Startup And Recovery dialog box.
- Non-Microsoft tools Third-party software vendors have released tools to simplify
editing the BCD registry file, including:
- BootPRO, available at http://www.vistabootpro.org
- EasyBCD, available at http://neosmart.net
You cannot use Bootcfg.exe to modify BCD. However, Bootcfg.exe will remain in the operating system to support configuring older operating systems that might be installed on the same computer.
For EFI computers, BCDEdit also replaces NvrBoot. In previous versions of Windows, you could use NvrBoot to edit the EFI boot manager menu items.
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