我有一台运行 UEFI 的 DELL Inspiron 笔记本电脑。据我所知,UEFI 应该会取代 BIOS,但在我看来,我仍然有 BIOS。例如,DELL 不提供任何 UEFI 更新,但为我的笔记本电脑提供 BIOS 更新。而且 UEFI 本身在其设置中显示 BIOS 版本。我在这方面经验不多,这种情况让我有很多疑问。怎么可能呢?根据这答案是,每次只能选择一个选项。
- 我的笔记本电脑上同时有 BIOS 和 UEFI 吗?
- 它们是以某种方式混合在一起还是独立运行?
- 如果所有内容都只显示 BIOS 版本,有没有办法检查 UEFI 版本并更新它?
请为我提供正确的指导
答案1
恕我直言,制造商将现代计算机中的固件称为“BIOS”对客户来说是一种伤害。它们不是 BIOS;它们是完全不同类型的固件。如维基百科的 UEFI 页面:
UEFI 取代基本输入/输出系统 (BIOS) 固件接口
除了 x86-64 上的一些早期实现,如技嘉的混合 EFI(我在我的这个页面),即使制造商将 EFI 称为 BIOS,现代基于 EFI 的计算机也不包含 BIOS。(注意:我使用“EFI”作为更通用的术语;UEFI 是 EFI 2.x。现代 PC 附带 UEFI,但 Apple 仍在其 Mac 中使用经过大量修改的 EFI 1.1。)
将 EFI 称为 BIOS 的问题在于,这会鼓励人们应用 BIOS 特定的知识,而这些知识不是适用。他们可能会安装 BIOS 模式的引导加载程序,使用旨在保护多引导计算机上的数据的技巧,并低估基于 EFI 的计算机引导方式的差异程度。使用术语 BIOS 来指代 EFI 可能会让读者在心理上走捷径来了解此组件的位置,但代价是浪费时间和用户的挫败感。
BIOS 和 EFI 之间的这种区别有一个部分例外,而且是一个很大的例外:大多数现代的基于 EFI 的计算机都提供了兼容性支持模块 (CSM),它使计算机能够使用 BIOS 模式的引导加载程序进行引导。这是一个有用的权宜之计,但它应该被视为一个模拟器——CSM 使 EFI 能够运行为 BIOS 编写的引导加载程序,就像 DOSEMU 使 Linux 能够运行为 DOS 编写的程序一样。也就是说,CSM 不会将 EFI 变成 BIOS,就像 DOSEMU 不会将 Linux 变成 DOS 一样。事实上,尽管 CSM 在某些情况下很有用,但它会带来大量问题,尤其是对于粗心的多引导程序,因为启用它可以很容易地在 BIOS/CSM/旧版模式下安装一个操作系统,在 EFI/UEFI 模式下安装另一个操作系统。这种跨模式操作系统安装比所有操作系统都以相同模式安装的操作系统更难管理。请参阅我的这个页面了解有关此主题的更多信息。
大多数制造商从 2011 年中后期开始将消费产品从 BIOS 转换为 EFI,尽管我知道有些服务器在两三年前还只使用 BIOS。据我所知,目前销售的所有消费级 x86 和 x86-64 计算机都附带 UEFI,尽管可能存在一些特殊情况。一些制造商早在 2011 年之前就发布了基于 EFI 的计算机。例如,所有基于 Intel 的 Mac 都使用 EFI。我有一块 2008 年的 Intel 主板(现已出现故障),其 UEFI 版本为 2.1(如果我没记错的话)。请注意,EFI 最初用于 Intel IA-64(Itanium)系统,据我所知,所有此类系统都使用 EFI。它现在也用于一些 ARM64 计算机,尽管据我所知,它仍然主要用于服务器。如果您不确定计算机的功能,您可能需要查看其手册或仔细阅读其固件设置选项以查找对“EFI”或“UEFI”的引用。对 CSM 或“旧式启动支持”的引用也可能表示 EFI。(请注意,“旧式”一词可用于其他上下文,例如用于 PS/2 设备的 USB 仿真。)检查当前启动模式也可以进行诊断,但前提是您发现您是在 EFI 模式下启动的——BIOS 模式启动可能是通过 CSM 进行的。请参阅我的这个页面了解有关识别硬件功能和启动模式的更多信息。
我相信以上回答了前两个问题。至于第三个问题,版本可能会很棘手。EFI/UEFI 有修订号,我写这篇文章时最新的是 2.6。规范文档可从以下网址公开获取:这里,如果你有兴趣阅读它;并且可以在 BSD 许可下从以下位置获得示例实现天亚科。不过,每个固件供应商都有自己的版本编号方案,与 EFI 修订号无关。因此,您在固件设置屏幕上看到的固件版本号可能明显大于或小于 EFI 修订号。
还有一点:有些人认为 EFI 的特点是 GUI 设置工具。尽管此类工具在现代 EFI 上比在 BIOS 上更常见,但这种关联远非完美。过去有些 BIOS 带有 GUI 设置工具,而有些 EFI 带有文本模式设置工具。BIOS 和 EFI 基本上都是启动引导过程的方式;它们的用户界面只是该任务的辅助。