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 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.
See Also
Mapping Boot Options to Elements
Send comments about this topic to Microsoft
Build date: 1/10/2008
The following table provides a mapping from the boot options in Boot.ini to the BCD elements.
Option | Element type |
---|---|
/3GB | BcdOSLoaderInteger_IncreaseUserVa |
/BASEVIDEO | BcdOSLoaderBoolean_UseVgaDriver |
/BAUDRATE= | BcdLibraryInteger_SerialDebuggerBaudRate |
/BOOTLOG | BcdOSLoaderBoolean_BootLogInitialization |
/BOOTLOGO | |
/BREAK | BcdOSLoaderBoolean_DebuggerHalBreakpoint |
/BURNMEMORY= | BcdOSLoaderInteger_RemoveMemory |
/CHANNEL= | BcdLibraryInteger_1394DebuggerChannel |
/CLKLVL | |
/CMDCONS | |
/CRASHDEBUG | |
/DEBUG, BOOTDEBUG | BcdLibraryBoolean_DebuggerEnabled |
/DEBUG | BcdOSLoaderBoolean_KernelDebuggerEnabled |
/DEBUGPORT= | BcdLibraryInteger_DebuggerType |
/DEBUGPORT= | BcdLibraryInteger_SerialDebuggerPort |
/EXECUTE | BcdOSLoaderInteger_NxPolicy |
/FASTDETECT | |
/HAL= | BcdOSLoaderString_HalPath |
/INTAFFINITY | |
/KERNEL= | BcdOSLoaderString_KernelPath |
/LASTKNOWNGOOD | BcdOSLoaderBoolean_UseLastGoodSettings |
/MAXMEM= | BcdLibraryInteger_TruncatePhysicalMemory |
/MAXPROCSPERCLUSTER= | BcdOSLoaderInteger_ClusterModeAddressing |
/MININIT | BcdOSLoaderBoolean_WinPEMode |
/NODEBUG | |
/NOEXECUTE | BcdOSLoaderInteger_NxPolicy |
/NOGUIBOOT | BcdOSLoaderBoolean_DisableBootDisplay |
/NOLOWMEM | BcdOSLoaderBoolean_NoLowMemory |
/NOPAE | BcdOSLoaderInteger_PAEPolicy |
/NOSERIALMICE= | |
/NUMPROC= | BcdOSLoaderInteger_NumberOfProcessors |
/onECPU | BcdOSLoaderBoolean_UseBootProcessorOnly |
/PAE | BcdOSLoaderInteger_PAEPolicy |
/PCILOCK | BcdOSLoaderInteger_UseFirmwarePciSettings |
/RDRPATH= | |
/REDIRECT | BcdOSLoaderBoolean_EmsEnabled |
/SAFEBOOT: | BcdOSLoaderInteger_SafeBoot |
/SCIORDINAL: | |
/SDIBOOT= | |
/SOS | |
/TIMERES= | |
/USE8254 | |
/USERVA= | BcdOSLoaderInteger_IncreaseUserVa |
/WIN95 | |
/WIN95DOS | |
/YEAR= |
See Also
BcdLibraryElementTypes
BcdOSLoaderElementTypes
Send comments about this topic to Microsoft
Build date: 1/10/2008
'연구하는 인생 > ♣COMPUTER' 카테고리의 다른 글
C:\WINDOWS\system32\eudcedit.exe (0) | 2008.02.12 |
---|---|
VISTA / XP 의 MULTIBOOTING (0) | 2008.01.28 |
VISTA 설치후에 XP를 설치하려면 (0) | 2008.01.19 |
Microsoft Windows Vista (0) | 2008.01.19 |
Windows Vista startup process (0) | 2008.01.18 |