目前支持UEFI的Windows有Windows Vista 64位、Windows7 64位、Windows8 32/64位、Windows Server 2012。现在以Windows 7为例介绍在UEFI环境下是如何启动的,仅作基本层面上的介绍。
UEFI启动Windows必须有一个FAT分区(通常叫做“EFI 系统分区”),这个分区中存在引导Windows的文件。开机后自动查找FAT分区下的“efi\Microsoft\boot\bootmgfw.efi”文件,然后查找同一分区下的“efi\Microsoft\Boot\BCD”,然后加载“系统盘:\windows\system32\winload.efi”,这样就进入了Windows。
bootmgfw.efi文件我们也可以在“EFI SHELL”下手动运行。此外,在“EFI SHELL”下手动运行FAT分区的“efi\boot\bootia32.efi”或“efi\boot\bootx64.efi”也可以进入Windows。在UEFI BIOS中我们还可以将efi文件设置为启动项、默认启动项。
上述的bootia32.efi、bootx64.efi分别为32位、64位的UEFI引导Windows所需要的文件。二者一一对应,因此在64位的UEFI环境下是无法安装32位系统的。
上面介绍UEFI启动Windows的一个条件是:FAT分区存在相关文件。并没有说需要GPT磁盘,通常将“UEFI+GPT”联系起来的一个重要的原因是,“UEFI+MBR”环境下使用Windows原版光盘安装会有提示:基于EFI的系统只能安装到GPT磁盘上(微软的限制)!
案例:
---------------------------------------------------------------------------------------------
现在很多主板都是可以将“UEFI BIOS”和“Legacy BIOS”相互切换的,因此“UEFI+MBR”解决思路一:先切换到Legacy BIOS,安装系统完毕后再切换到UEFI BIOS,自己新建一个FAT分区并复制相关文件到此分区(也可用bcdboot命令行工具)。解决思路二:进入PE(支持UEFI),将Windows安装到硬盘,然后自己 新建一个 FAT分区并复制相关文件到此分区(也可用bcdboot命令行工具)。