Boot Configuration Data (BCD) - Page 1
Posted by Microsoft on 17 October 2006 (13958 views) Rating: 1
When you start your computer, the first code that executes is the BIOS. The BIOS reads the master boot record (MBR) from the boot device and transfers control to the boot code stored in the MBR. (The Windows setup program writes the MBR to the first sector on the hard disk during installation.) The boot manager reads the boot entries from the Boot Configuration Data (BCD) store so they are available to the loader and displays a boot menu to the user. The boot environment provides a native application programming interface for primitive graphics and other system support. Boot applications are pieces of code that are located on a boot device and run in the boot environment.
Each BCD element represents a specific boot option. All elements share a common header that describes the element type and data format. The remainder of the element is determined by the element's data format. An application can define its own elements or use one of the predefined element types. The BcdElement class is the base for all elements.
A BCD object is a collection of elements that describes the settings for the object that are used during the boot process. There are three main types of objects: application, device, and inherited.
The following are examples of application objects:
The Windows Boot Manager
The Windows OS Loader
The Windows Memory Tester
A device object describes the device-specific properties that are not stored in an application object. Inheritable objects contain elements that contain settings that can apply to more than one object. An object can add the GUID for an inheritable object to its inherited object list. The BcdObject class represents an object.
A BCD store contains objects. Each object is identified by a GUID. The BcdStore class represents a store. The system store is the store that will be read at the next system boot.