理解 UEFI 的基础知识对我来说似乎有点困难!!我读过很多文章,但还是不太清楚。
我看到有人提到了术语“NVRAM 条目”。NVRAM 到底是什么?它是相同的旧 CMOS 设置数据,还是与 UEFI 完全不同的东西?它存储在哪里?主板本身上除了 CMOS 之外还有单独的占位符吗?还是它是 EFI 分区的一部分?
我读到 UEFI 似乎具有 32 位或 64 位架构,它应该与操作系统架构相匹配,即只有 64 位 UEFI 才能加载 64 位操作系统?如果这是真的,那么在选择具有 UEFI 而不是旧 BIOS 的较新 mob 时,这是一个相关参数吗?谢谢。
答案1
非易失性随机存取存储器 (NVRAM) 顾名思义是一种非易失性的存储器,也就是说,即使断电,其内容也不会消失。
“CMOS 设置实用程序”中的“CMOS”是指互补金属氧化物半导体技术。这在很多方面与 NVRAM 相似,但据我所知,CMOS 需要电池中的少量电量来保留其内容。据我所知,过去十年或二十年制造的 PC 很少或根本没有使用真正的 CMOS 内存(它们使用 NVRAM 很长时间了),但这个名字从早期的计算机中保留了下来。不过,我承认我对这一点有点模糊。
无论如何,在 EFI 系统上,NVRAM 比在基于 BIOS 的计算机上更重要,因为 EFI 提供了使用 NVRAM 存储更多变量的机制,其中一些变量可用于在固件和操作系统之间进行通信。例如,现代 BIOS 系统使用 NVRAM 存储启动顺序信息——硬盘在光盘之前或之后、特定磁盘的顺序等。在 EFI 下,这得到了扩展:引导加载程序是EFI 系统分区 (ESP),因此启动顺序信息更加复杂,可以包含任意数据(例如,文件名可以是文件系统上合法的任何内容)。此外,操作系统可以通过efibootmgr
Linux、bcdedit
Windows 或bless
OS X 等工具修改启动顺序。这些工具通过 EFI 介导的方式写入 NVRAM。这只是一个例子;NVRAM 可以保存任何所需的任意数据,直至达到 NVRAM 容量的限制。
EFI 专为类似架构启动而设计,因此 32 位 EFI 可以启动 32 位操作系统,而 64 位 EFI 可以启动 64 位操作系统。有多种方法可以启动跨架构(32 位 EFI 启动 64 位操作系统或反之亦然),但这些方法往往很笨拙且有局限性。绝大多数 64 位 (x86-64) 计算机都附带 64 位 EFI,因此最好在它们上运行 64 位操作系统。也有少数例外(64 位计算机带有 32 位 EFI)。第一代基于 Intel 的 64 位 Mac 就是这种情况。还有一些现代平板电脑带有 64 位 CPU,但 EFI 为 32 位。在这样的机器上运行 32 位操作系统最容易。除了早期的 Mac 之外,我不知道有任何服务器、台式机或笔记本电脑配备 64 位 CPU 和 32 位 EFI。
大多数 EFI 都包含一个兼容性支持模块 (CSM),可使用较旧的 BIOS/CSM/旧模式进行启动。如果带有 32 位 EFI 的 64 位计算机具有 CSM,它可以相对轻松地在 BIOS 模式下启动 64 位操作系统。我拥有的一台带有 32 位 EFI 的平板电脑缺少 CSM,而且我听说过其他带有 32 位 EFI 的平板电脑也有类似情况,因此这对大多数平板电脑来说可能没什么用处。(不过,那些早期的 Mac 有 CSM。)
答案2
您可以在这里阅读有关 NVRAM 的更多信息:http://en.wikipedia.org/wiki/Non-volatile_random-access_memory
不是。与 BIOS 相比,UEFI 只是一种新的(更安全的)启动顺序。UEFI 只能在 64 位操作系统上加载。如果您的主板支持 UEFI 启动模式,那么它也应该支持 BIOS 启动模式。大多数技嘉主板现在都有在 UEFI 启动和 BIOS 启动之间切换的选项。