设备 BIOS 是否存储在设备控制器上?

设备 BIOS 是否存储在设备控制器上?

我正在读这篇文章,系统如何引导,据其称:

然后 BIOS 会查找其他设备的 ROM,看看其中是否有 BIOS。通常,IDE/ATA 硬盘 BIOS 会在 C8000h 处找到并执行。如果找到任何其他设备 BIOS,也会执行它们。

我知道所谓的主 BIOS 存储在 BIOS 芯片上,但设备 BIOS 在哪里?它们存储在设备控制器上吗?主 BIOS 如何检测设备 BIOS?

答案1

大多数“设备”BIOS(主板本身的组件,如 IDE 或 SATA 控制器)都由主板制造商集成在主板 BIOS 固件中。
从技术上讲,它们是独立的东西,但您无法单独更新/替换它们。

需要 BIOS 的插卡(视频卡、SCSI 控制器、某些网卡(具有“从网络启动”功能)和光纤通道主机适配器是最常见的例子)在卡本身上有自己的 BIOS。如今,它们几乎总是集成在控制器芯片中,但在过去(网络和 SCSI 卡上的引导 ROM),它们有时是单独的 EPROMS。在某些情况下,您甚至可以购买没有 EPROM 的卡(在这种情况下它不是可启动设备),并且可以购买 EPROM 并稍后升级。
几年前,第一款用于不带 SSD 的 PC 的 PCIe NVMe 升级卡开始出现在市场上时,这种情况就出现了。当时有很多便宜的卡没有 BIOS。这些卡不可启动,因此您只能将全新的快速 NVMe SSD 用作数据磁盘,而不能用作系统驱动器。

对于更现代的 UEFI 系统(UEFI 与 BIOS 不同,尽管许多人称其为 BIOS),卡也可能没有 bios/固件芯片,而是由计算机的 UEFI 固件从 EFI 分区中的文件加载代码。
(虽然很少见。我自己从未见过。)

相关内容