Microsoft KB Archive/930061

= Unified Extended Firmware Interface support in Windows Vista =

Article ID: 930061

Article Last Modified on 10/26/2007

-

APPLIES TO


 * Windows Vista Ultimate
 * Windows Vista Starter
 * Windows Vista Home Premium
 * Windows Vista Home Basic
 * Windows Vista Enterprise
 * Windows Vista Business 64-bit Edition
 * Windows Vista Business
 * Windows Vista Ultimate 64-bit Edition
 * Windows Vista Home Premium 64-bit Edition
 * Windows Vista Home Basic 64-bit Edition
 * Windows Vista Enterprise 64-bit Edition

-



INTRODUCTION
This article discusses the Microsoft plan to provide support for the Unified Extended Firmware Interface (UEFI) in Windows Vista. This article also provides some background for related technical issues.



MORE INFORMATION
Microsoft Windows Server 2003 supports Extended Firmware Interface (EFI) 1.10 on Intel Itanium platforms. Windows Server codename &quot;Longhorn&quot; supports EFI 1.10 on Intel Itanium platforms, and introduces support to start the computer by using a native UEFI boot on x64 64-bit platforms. Although the initial release of Windows Vista will not include UEFI x64 64-bit support, a later Windows Vista release will support UEFI.

Microsoft determined that vendors would not have any interest in producing native UEFI 32-bit firmware because of the current status of mainstream 64-bit computing and platform costs. Therefore, Microsoft has chosen not to ship support for 32-bit UEFI implementations.

Rigorous testing on a variety of UEFI implementations on a variety of hardware platforms must be performed before Microsoft can provide support for UEFI. As of mid-2006, no firmware vendors had provided production-ready UEFI implementations. When Windows Server &quot;Longhorn&quot; is released, it is expected that enough production-quality UEFI implementations will be available then for Microsoft to work with hardware vendors to test UEFI implementations on a variety of platforms.

Microsoft is working closely with the Unified EFI Forum and industry partners to make sure that it can provide a high-quality, standards-based UEFI solutions. Microsoft has demonstrated Windows support for starting the computer by using a native UEFI boot at industry events such as Windows Hardware Engineering Conference (WinHEC).

As part of this continuing effort, Microsoft also made &quot;technology preview&quot; code for UEFI boot support available in the Vista Beta 2 release. This technology preview enabled partners to test their UEFI implementations to make production-ready samples available for Microsoft for testing support in Windows. The technology preview code was removed for the Windows Vista release candidates (RC) and final release to manufacturing.

However, support for well-tested UEFI will be made available in a future update to Windows Vista. The supporting code will be present for Windows Server &quot;Longhorn&quot; Beta 3 and afterward for the release to manufacturing version of Windows Server &quot;Longhorn.&quot;

To ease the transition from BIOS boot to UEFI boot, we recommend that you design your software carefully so that differences between UEFI and BIOS in the operating system are not noticeable to the end-user

The following items are the most significant UEFI and BIOS boot considerations:
 * To install the operating system by using UEFI, the installation must be started by using UEFI. Similarly, to install the operating system by using BIOS, the installation must be started by using BIOS.
 * If the operating system is installed by using UEFI, it can only be started by using UEFI. This is because the BIOS cannot access the Boot Configuration Data (BCD) boot options on the EFI System Partition (ESP).
 * The Windows installation disc will be able to start either by using UEFI or by using BIOS. El Torito multiple boot catalog support is used for this capability:
 * The BIOS entry

The default El Torito boot entry will be BIOS ETFS bootstrap code with an x86 platform tag. For this to work, the following conditions must be true:
 * The BIOS must support multiple boot entries.
 * The BIOS must ignore entries that do not have the &quot;x86&quot; tag.

Additionally, we recommend that the BIOS use the default entry.
 * The UEFI entry

The second El Torito boot entry will be for EFI boot applications and will have the &quot;EF&quot; platform tag. This tag points to a mountable file system that contains \EFI\BOOT\BOOTX64.EFI.

Note We recommend that the EFI boot application ignore the PC/AT BIOS entry and recognize the EFI entry to mount the ESP partition before it starts the system.
 * By default for platforms that support UEFI and BIOS, we recommend that the platform start by using EFI.
 * Windows Vista supports both CD boot and DVD/UDFS boot. UDFS also uses El Torito and is built by using the UDFS bridge format.
 * A UEFI-based system requires a separate EFI system partition (ESP). We recommend that BIOS systems also use a separate system partition so that Windows Vista and Windows Server &quot;Longhorn&quot; features such as BitLocker Drive Encryption function correctly. Use of separate EFI and BIOS system partitions will also enable a smoother transition to EFI systems.
 * For SysPrep migration between EFI and BIOS systems, Windows state should not be maintained on the system partition.

