| The Windows Vista™ boot | | | | You can use Bcdedit.exe to modify the Windows |
| process differs from WindowsÂ(R) XP in the | | | | code which runs in the pre-operating system |
| way the operating system is located and initialized. | | | | environment by adding, deleting, editing, and |
| Start-up begins with the BIOS loading the Master | | | | appending entries in the BCD store. Bcdedit.exe is |
| Boot Record (MBR) on the bootable disk. The MBR in | | | | located in the WindowsSystem32 directory of the |
| turn loads the Partition Boot Record (PBR) on the | | | | Windows Vista partition. |
| active partition. So far, Windows Vista remains | | | | Boot.ini Compared to BCD |
| relatively unchanged. | | | | BCD eliminates the need for Boot.ini in Windows |
| Windows Vista is different from XP starting by the | | | | Vista, although Boot.ini is still present on dual-boot |
| fact the PBR code written by Windows Vista no | | | | systems for backwards compatibility. Because the |
| longer looks for Ntldr. The new boot loader in | | | | BCD boots to the boot environment first instead of |
| Windows Vista is Bootmgr. This component loads the | | | | Ntldr, the location of Ntldr is not verified unless a |
| Boot Configuration Database (BCD), which in turn | | | | legacy operating system is chosen. |
| loads an OS loader boot application (Winload.exe, in | | | | Configuration Tools |
| the case of Windows Vista). Finally, the OS loader | | | | The BCD store can be modified or repaired using |
| application is responsible for initializing the kernel. This | | | | several tools: |
| process is illustrated below. | | | | System Properties in Control Panel |
| You can think of this change in two elements: | | | | SystemPropertiesAdvanced.exe |
| The two key actions performed by Ntldr in previous | | | | Msconfig |
| Windows versions have been divided between two | | | | Windows Recovery Environment (WinRE) Startup |
| components: | | | | Repair |
| 1. Bootmgr reads the boot configuration, including | | | | Bcdedit.exe |
| device and path locations. | | | | Bootrec.exe |
| 2. WindowsSystem32Winload.exe initializes the kernel. | | | | Most of these tools enable you to perform simple |
| The boot configuration stored by Boot.ini in previous | | | | tasks, such as setting a boot menu timeout, setting a |
| Windows versions is now stored in an extensible | | | | default operating system, or configuring boot options |
| database, BootBCD, the Boot Configuration Database | | | | such as /SOS and /SAFEBOOT. Others are |
| (BCD). | | | | repair-oriented tools; Startup Repair and Bootrec.exe, |
| These changes are significant because of the impact | | | | in particular, provide automated mechanisms for fixing |
| they have: | | | | problems in the BCD. |
| 1. The boot process can be extended to support | | | | Bcdedit.exe is the main tool for detailed BCD store |
| other applications, such as other operating systems | | | | modifications. You can use Bcdedit to change |
| or other versions of the OS. | | | | Bootmgr options; add boot, delete, and edit boot |
| 2. Only nonversion-specific components are stored in | | | | entries; import and export the BCD store; and create |
| the root of the active partition. This means that | | | | a new store if it becomes significantly damaged. |
| theoretically Windows Vista could be installed on a | | | | Bcdedit.exe is located in the WindowsSystem32 |
| machine running some future Windows version with | | | | directory of the Windows Vista partition and is also |
| the same boot structure, and it would not break the | | | | available in WinRE. |
| boot process for that future version. With legacy | | | | BCD Store Location |
| Windows, installing an older Windows version last | | | | The BCD store is a registry hive, stored as BootBCD |
| causes the newer version to fail on start-up. This is | | | | on the active partition. This hive is loaded but hidden |
| due to version-specific code improvements in Ntldr. | | | | from view in Regedit.exe within Windows Vista. The |
| 3. Tool-oriented boot entries can be supported to | | | | store is loaded to the following registry location: |
| offer maintenance options on boot when a previous | | | | HKLMBCD00000000. |
| start-up failed. In the past, Windows supported an | | | | You can also view the store manually in WinRE by |
| menu provided by a target operating system. This | | | | loading the hive from the Boot folder. To obtain a |
| new structure can make tools available earlier during | | | | copy of the hive on a running system, use the |
| the boot process, meaning that they are available | | | | Bcdedit /export filename command to export a hive |
| even if all OS-specific boot entries are damaged. The | | | | file for offline examination. This command exports |
| Windows Memory Diagnostic tool is provided in the | | | | the BCD store to a file called filename in the current |
| boot menu in this way. | | | | directory. |
| BCD Store | | | | Related Components |
| The Boot Configuration Data (BCD) store contains | | | | Msconfig |
| boot configuration parameters and controls how the | | | | Msconfig is the preferred PSS UI tool for managing |
| operating system is started in Microsoft Windows | | | | boot settings. The tool supports BCD and allows the |
| Vista operating system. These parameters were | | | | user to enumerate all BCD objects in the system |
| previously in the Boot.ini file in BIOS-based operating | | | | store. It allows certain elements to be altered for |
| systems or in the nonvolatile RAM (NVRAM) entries | | | | each OS object, including debug settings, safe mode |
| in Extensible Firmware Interface-based operating | | | | settings, and other popular PSS options. It cannot be |
| systems. You can use the Bcdedit.exe command line | | | | used with the WinRE console; Bcdedit needs to be |
| tool to affect the Windows code which runs in the | | | | used in these cases. |
| pre-operating system environment by adding, | | | | Bcdedit.exe |
| deleting, editing, and appending entries in the BCD | | | | Bcdedit.exe is a command line tool that can be used |
| store. Bcdedit.exe is located in the | | | | to manage BCD settings. In summary, Bcdedit.exe is |
| WindowsSystem32 directory of the Windows Vista | | | | a replacement for Bootcfg.exe. However, it is |
| partition. | | | | enhanced for better scripting and to expose some of |
| The BCD is a database used by Bootmgr. It contains | | | | the more powerful features of BCD that bootcfg.exe |
| the functions of Boot.ini and is located in the | | | | did not expose for manipulating Boot.ini. Bcdedit.exe is |
| {ActivePartition}boot folder | | | | designed to work on previous operating systems and |
| Bcdedit.exe | | | | in recovery environments. |