Computer's Firmware Interface
Firmware interfaces know little about the operating system your computer is running. Windows XP and earlier versions of Windows used Boot.ini to initialize the startup environment and Ntldr to load the operating system. Windows 7 initializes itself by loading a pre-operating system boot environment prior to loading the operating system. This boot environment helps your computer validate the integrity of startup processes and the operating system itself before actually running the operating system.
The boot environment also acts as an abstraction layer between the firmware interface and the operating system. By abstracting the underlying interfaces, the boot environment allows Windows 7 to work with BIOS, EFI, and any other underlying interface framework in the same way.
Your computer's firmware interface manages the preboot data flow between the operating system and attached devices. When the firmware interface initializes your computer, it first determines whether all attached devices are available and functioning, and then it activates all the hardware required by the computer to boot, including:
- Graphics and audio controllers
- Internal drives and controllers
- Internal expansion cards
- Motherboard chipsets
- Processors and processor caches
- System memory
After the firmware interface completes this process, it transfers control of the computer to the operating system. The firmware interface implementation determines what happens next. With BIOS-based computers running Windows Vista and Windows 7, Windows Boot Manager and Windows Boot Loader are used to boot into the operating system. Windows Boot Manager initializes the operating system by starting the Windows Boot Loader, which in turn starts the operating system using information in the boot configuration data (BCD) store.
Entries in the BCD store identify the boot manager to use during startup and the specific boot applications available on your computer. Windows Boot Manager controls the boot experience and lets you choose the boot application to run. Boot applications load a specific operating system or operating system version. For example, Windows 7 is loaded by a Windows Boot Loader application.
Through BCD parameters, you can add options that control the way the operating system starts, the way computer components are used, and the way operating system features are used.
NOTE With UEFI, UEFI boot services provide an abstraction layer wrapped around BIOS or EFI. A computer with BIOS in its underlying architecture uses a BIOS-based approach to booting into the operating system. A computer with EFI in its underlying architecture uses an EFI-based approach to booting into the operating system.
In this tutorial:
- Customizing Boot, Startup, and Power Options
- Customizing Your Computer's Firmware Interface
- Computer's Firmware Interface
- Accessing and Setting Your Computer's Firmware Interface
- Tracking and Configuring Power On and Resume
- Customizing Startup and Boot Configuration
- Changing Your Computer's Boot Configuration
- Using the Selective and Diagnostic Startup Modes
- Changing the Way Your Computer Boots
- Disabling Startup Applications and Services for Troubleshooting
- Performing an Advanced or Safe Mode Boot
- Customizing Boot Configuration with the BCD Editor
- Resolving Restart or Shutdown Issues
- Forcing Your Computer to Shut Down
- Repairing a Computer to Enable Startup