UEFI 被越来越多的计算机使用,其功能特性相比 BIOS 固件有了质的飞跃,Windows10 对 UEFI 的支持也愈加完善。
1、UEFI 功能概述
UEFI(Unified Extensible Firmware Interface)中文名称为统一可扩展固件接口,是适用于计算机的标准固件接口。UEFI 是BIOS 的一种升级替代方案,旨在提升应用程序交互性和突破 BIOS 的限制。2013年之后的生产的计算机基本都集成了 UEFI固件。
UEFI 在计算机中的位置:
UEFI 最初由 Intel 公司于 2000 年发布,当时名为 EFI(Extensible Firmware Interface)。Intel 于2005 年将 EFI 交由 140 多家公司组成的统一可扩展固件接口论坛(Unifi ed EFI Forum)来推广与发展,其中包括微软。因此,EFI 也更名为 UEFI(Unifi ed EFI)。
如果说 BIOS 是一款软件程序,那么 UEFI 就相当于一款微型操作系统。从最直观的使用感受上来说,UEFI 操作界面人性化、网络功能丰富,甚至可以在没有安装任何操作系统的计算机上使用 UEFI 浏览网页。
目前集成 UEFI 的笔记本计算机基本都只具备 UEFI 基本功能,其设置界面和 BIOS 设置界面集成。现在只有部分中高端型号的主板才有完整的 UEFI 设置界面。
UEFI 主要包括以下功能特点:
■ 支持从容量超过 2TB 的硬盘引导操作系统。
■ 支持直接从文件系统中读取文件。UEFI 支持的文件系统有 FAT16 与 FAT32。
■ BIOS 通过读取硬盘第一个扇区中的引导代码来启动操作系统,而 UEFI 通过运行 EFI 文件来引导启动操作系统。EFI 文件是一种可以在 UEFI 环境执行的应用程序文件或驱动程序文件,在 Windows 10 安装文件的 efi\microsoft\boot 文件夹中提供了一些常用的 EFI 程序,如内存测试工具 memtest.efi 以及分区工具diskpart.efi。
■ 使用 UEFI 固件的计算机缩短了操作系统启动和从休眠状态恢复的时间。
■ UEFI 分为 32 位与 64 位版本,目前绝大部分计算机都使用 64 位版本的 UEFI,32位版本只有在少数低端平板计算机上使用。
■ UEFI 可与 BIOS 结合使用。
■ 通过保护预启动或预引导过程,可防止 Bootkit 攻击,从而提高计算机安全性。
■ UEFI 在使用 GPT 分区表的硬盘中才能成功安装 Windows 10。
一般情况下,在启用了 UEFI 的计算机上只能安装特定版本的 Windows 操作系统,如下表所示。
另外,能否在使用 UEFI 的计算机上成功安装 Windows 10 还取决于安装镜像文件(ISO 文件)是否具备 UEFI 启动参数。只要是从微软官方渠道(MSDN、TechNet 等)获取的镜像文件或安装介质,都具备 UEFI 启动参数。
UEFI 既可以直接读取 FAT 分区中的文件,也可以直接在其中运行的程序。因此可以将 Windows 10 的安装程序或引导程序做成 efi 程序,然后放在任意 FAT 分区中直接运行即可。这样一来启动或安装操作系统就变得很简单,就像启动应用程序一样,选择哪个程序就启动哪个程序。
一般情况下,UEFI 必须从使用 GPT 分区表的硬盘启动 Windows 10,但是自 Windows 8操作系统开始,bcdboot 命令行工具新增了 /f uefi 参数,可以为使用 BIOS 与 MBR 分区表的Windows分区创建UEFI启动文件,然后修改固件类型为UEFI并进入Shell环境,手动执行 bootmgfw.efi 文件即可启动安装于使用 MBR 分区表硬盘中的 Windows 10。
2、UEFI 启用与关闭
默认情况下,预装 Windows 8/ 8.1 和 Windows 10 的计算机都会默认使用 UEFI 固件。开机时按下特定功能键(如 F1 或 F2)可以进入固件设置界面,这里以联想笔记本为例,首页显示 UEFI 版本以及是否开启安全启动功能(UEFI Secure Boot),如下图所示。
关闭 UEFI 前需要先关闭安全启动。在固件设置界面中,切换至【Security】选项卡,如下图所示。
选中 Secure Boot 然后按 Enter 键进入安全启动设置界面,如下图所示。
修改Secure Boot项后面的值为Disabled,然后按下Esc键退出安全启动设置界面,最后切换至【Startup】选项卡进入启动设置界面,如下图所示。
在启动设置界面中,【UEFI/Legacy Boot】即为控制计算机使用何种固件选项,其有 3个选项:
- Both BIOS 与 UEFI 都可以使用,由计算机自行选择。使用该选项后,可以通过删除文件方式控制使用何种固件。使用 UEFI 启动,删除安装文件根目录中的bootmgr 文件;使用 BIOS 启动,删除安装文件根目录下的 efi 文件夹。
- UEFI Only :只能使用 UEFI 启动。
- Legacy Only :只能使用 BIOS 启动。
这里以关闭 UEFI 为例,所以选择【Legacy Only】选项,然后按下 F10 键保存并退出即可关闭 UEFI。如要启用 UEFI,按照上述步骤反向操作即可。
注意:启用UEFI可不同时启用安全启动功能。
3、GPT 分区表
GPT(GUID Partition Table)中文名称为全局唯一标识分区表,是硬盘的一种分区表结构布局标准,用来替代 MBR 分区表并配合 UEFI 启动使用。
在 MBR 硬盘中,分区信息直接存储于主引导记录。但在 GPT 硬盘中,分区表的位置信息储存于 GPT 分区表头中。出于兼容性考虑,硬盘的第一个扇区仍然用于 MBR,其次才是 GPT 分区表头。
GPT 分区表的组成,如图所示。
1. PMBR
GPT 分区表第一段是 Protective MBR(PMBR)。其作用是当使用不支持 GPT 分区表的分区工具对硬盘进行操作时,整个硬盘将显示为一个受保护的分区,无法对其做任何操作,以防止分区表及硬盘数据遭到破坏。
2. GPT 分区表
当使用 UEFI 启动计算机时,UEFI 并不从 PMBR 中获取 GPT 硬盘的分区信息,它有自己的分区表,即 GPT 分区表。与 MBR 最大 4 个分区表项的限制相比,GPT 对分区数量没有限制。但Windows 10最大仅支持128个GPT分区,GPT最大可管理18EB的磁盘。
3. GPT 分区表备份
用来备份 GPT 分布表,防止主 GPT 分区表信息丢失无法启动操作系统。UEFI 可同时识别 MBR 分区和 GPT 分区,BIOS 只能识别 MBR 分区。因此,在使用BIOS 固件的计算机中,使用 GPT 分区表的硬盘不能用于引导启动操作系统,只能用于存储数据。
理论上来说,使用 UEFI 后,MBR 分区和 GPT 分区都可用于引导系统启动和存储数据。不过 Windows 8 之前的操作系统在 UEFI 下使用 Windows 安装程序安装操作系统时,只能将操作系统安装在 GPT 分区中。但是 Windows 10 支持 UEFI 与 MBR 方式启动,由于其没有实际使用意义,所以不做介绍。
4、配置 UEFI/GPT 分区结构
和使用 BIOS/MBR 方式一样,在使用 UEFI/GPT 方式安装 Windows 10 时,也有两种分区结构供用户选择。
1. 默认分区结构
包括 WinRE 恢复分区、ESP 分区、MSR 分区以及 Windows 分区,如下图所示。
UEFI/GPT 默认分区结构:
2. Windows RE(WinRE)恢复分区
此分区主要存储 Windows RE 恢复工具(winre.wim,250MB 左右)以及 BitLocker 加密 Windows 分区信息,因此该空间最小为 300MB。Windows 10 下此分区默认空间为300MB。此分区不是必备分区。
3. EFI System Partition(ESP)分区
ESP 分区用于启动操作系统。分区内存储引导程序、驱动程序、系统维护工具等。该分区最小为 100MB 且文件系统必须为 FAT32。
4. Microsoft Reserved Partition(MSR)分区
Windows 10 会在每个物理硬盘上保留一定的空间以供其使用,所以此部分空间称为Microsoft 保留分区,即 MSR 分区。MSR 分区逻辑位置一定要在 Windows 分区之前。
因为 GPT 分区表不支持隐藏扇区,所以使用隐藏扇区的应用程序会使用 MSR 分区模拟出隐藏扇区以供使用。例如将基本磁盘转换为动态磁盘会导致该硬盘的 MSR 分区空间减少,并由新创建的分区保留动态磁盘数据库。此分区只供操作系统使用,不能存储用户数据,默认情况下 MSR 分区为 128MB。
创建默认分区结构,同样需要在 Windows 安装程序界面或 WinPE 环境下使用 DiakPart命令行工具。
在 DiskPart 中执行如下命令:
select disk 0
选择要创建分区结构的硬盘为硬盘 1,如果有多块硬盘,可以使用 list disk 命令查看:
clean
清除硬盘中的所有数据及分区结构,请谨慎操作:
convert gpt
转换分区表为 GPT 格式:
create partition primary size=300
创建大小为 300MB 的主分区,此分区即为 WinRE 恢复分区:
format quick fs=ntfs label="WinRE"
格式化 WinRE 恢复分区并使用 NTFS 文件系统,设置卷标为 WinRE:
set id=de94bba4-06d1-4d40-a16a-bfd50179d6ac
设置 WinRE 恢复分区为隐藏分区:
gpt attributes=0x8000000000000001
设置 WinRE 恢复分区不能在磁盘管理器中被删除:
create partition efi size=100
创建大小为 100MB 的主分区,此分区即为 ESP 分区:
format quick fs=fat32 label="System"
格式化 ESP 分区并使用 FAT32 文件系统,设置卷标为 System:
create partition msr size=128
创建大小为 128MB 的 MSR 分区:
create partition primary size=30000
创建大小为 30GB 的主分区,此分区即为 Windows 分区:
format quick fs=ntfs label="Windows"
格式化 Windows 分区并使用 NTFS 文件系统,设置卷标为 Windows:
assign letter="C"
设置 Windows 分区盘符为 C::
exit
退出 DiskPart 命令操作界面。
创建上述 3 个分区最简单的方法是使用 Windows 安装程序进行至选择 Windows 安装位置时,选中要安装 Windows 10 的硬盘,单击【新建】并在出现的分区大小输入框中输入合适的 Windows 分区容量,然后单击【应用】,此时安装程序提示创建一些额外分区,确认之后安装程序会自动创建恢复分区、ESP 分区、MSR 分区以及 Windows 分区,如下图所示。
5. 推荐分区结构
推荐分区包括 WinRE 恢复分区、ESP 分区、MSR 分区、Windows 分区以及映像恢复分区,如下图所示。
UEFI/GPT 推荐分区结果:
这是推荐的分区结构,也是在默认分区结构的基础上新增一个用于存储恢复映像的恢复分区。同样在 DiskPart 下执行如下命令完成创建过程:
select disk 0
选择要创建分区结构的硬盘为硬盘 1,如果有多块硬盘,可以使用 list disk 命令查看:
clean
清除硬盘中的所有数据及分区结构,请谨慎操作:
convert gpt
转换分区表为 GPT 格式:
create partition primary size=300
创建大小为 300MB 的主分区,此分区即为 WinRE 恢复分区:
format quick fs=ntfs label="WinRE"
格式化 WinRE 恢复分区并使用 NTFS 文件系统,设置卷标为 WinRE:
set id=de94bba4-06d1-4d40-a16a-bfd50179d6ac
设置 WinRE 恢复分区为隐藏分区:
gpt attributes=0x8000000000000001
设置 WinRE 恢复分区不能在磁盘管理器中被删除:
create partition efi size=100
创建大小为 100MB 的主分区,此分区即为 ESP 分区:
format quick fs=fat32 label="System"
格式化 ESP 分区并使用 FAT32 文件系统,设置卷标为 System:
create partition msr size=128
创建大小为 128MB 的 MSR 分区:
create partition primary size=30000
创建大小为 30GB 的主分区,此分区即为 Windows 分区:
format quick fs=ntfs label="Windows"
格式化 Windows 分区并使用 NTFS 文件系统,设置卷标为 Windows:
assign letter=C
设置 Windows 分区盘符为 C::
create partition primary size=10000
创建大小为 10GB 的主分区,此分区即为恢复分区:
format quick fs=ntfs label="Recovery"
格式化 Windows 分区并使用 NTFS 文件系统,设置卷标为 Recovery:
set id=de94bba4-06d1-4d40-a16a-bfd50179d6ac
设置恢复分区为隐藏分区:
gpt attributes=0x8000000000000001
设置恢复分区不能在磁盘管理器中被删除:
exit
退出 DiskPart 命令操作界面。
创建 GPT 推荐分区结构: