我了解到 BIOS 会收集最多样化的硬件数据,并在通电后立即创建设备所有可用驱动器的完整列表。
当这个过程完成后,固件会依次遍历找到的数据载体,通过特殊签名检查引导加载程序——所谓的引导签名(或“引导记录”)。搜索总是从可移动媒体(CD/DVD、USB 记忆棒、外部硬盘驱动器等)开始,然后是硬编码驱动器。对于后者,引导加载程序及其签名通常位于主引导记录 (MBR)中。
我的问题 - 由于 BIOS 会一一检查所有检测到的存储设备中的引导签名值,这是否意味着每个(此处 BIOS 检测到的存储介质)都必须具有主引导记录,而不管设备是否可引导?
好吧,不,如果它们不是可引导的,它们就不需要MBR。
MS-DOS 之后的大多数操作系统都不依赖于磁盘访问的 BIOS。一旦操作系统开始启动,它将使用自己的驱动程序直接与存储设备对话——并且无论 BIOS 是否以任何方式检测到它们,都可以使用它们。
也就是说,大多数都会有一个 MBR 或类似的东西。
MBR 不仅包含 BIOS 引导代码;它还包含一个分区表。任何使用传统 MBR 分区的磁盘都将具有引导签名,即使那里没有任何引导代码。
UEFI 使用不同的分区表格式(GPT),但指定每个 GPT 分区的磁盘仍应具有“保护性”MBR(具有空引导代码区域和特殊分区),以避免过时的工具错误地认为磁盘是空的。
(需要明确的是,GPT 磁盘可用于 BIOS 系统,因为不是 BIOS 而是操作系统处理分区;保护性 MBR 甚至可以保存引导代码,因此也可以使此类磁盘在 BIOS 系统上可引导.)
最后,过去几年几乎所有新 PC 都使用 UEFI 固件,而不是 BIOS;本机 UEFI 启动过程完全不同,不使用 MBR。(虽然很长一段时间以来,大多数 UEFI PC 仍然可以通过 BIOS 方式识别并从磁盘引导,但现在这种方式正在慢慢从新型号中消失。)
您的帖子令人困惑,因为它包含两个不同的问题。
至于标题中的问题:
是的。旧的基于 MBR 的分区方案已被现代 GPT 方案取代,现代 GPT 方案包括一个保护性 MBR,以防止旧操作系统在驱动器上执行写操作。
有一种罕见的例外情况称为“超级软盘”,它不会在台式计算机的启动过程中发挥作用。
至于你的第二个问题:
技术上没有。您在帖子中描述的是旧 BIOS 的旧引导过程。现代 BIOS 根据“UEFI”使用不同的引导过程。它不必关心磁盘上的 MBR 结构,因为 GPT 包含所有必要的信息。现代 UEFI-Bios 只需在 EFI 系统分区上找到引导加载程序。