ACPI BIOS 在启动期间配置什么?

ACPI BIOS 在启动期间配置什么?

当 PC 使用 ACPI BIOS 启动时,它到底会做什么?

我理解 ACPI 的目的是允许操作系统控制硬件资源和电源管理,但是在加载操作系统之前,ACPI 是否只配置启动所需的设备,然后让操作系统配置其余部分?

如果操作系统想要重新分配硬件资源,它是否会将此信息存储在 ACPI 表中,以便下次启动系统时按照操作系统的需要分配它们?

一旦操作系统加载,ACPI 驱动程序就会要求 PCI 总线驱动程序 (Pci.sys) 枚举其总线上的设备,当 PC 启动时没有其他总线驱动程序时,这些设备如何配置?

如对上述任何问题能够得到帮助,我们将不胜感激。

谢谢。

答案1

现代多任务 GUI 操作系统在首次加载后不会使用 BIOS 服务,因此 BIOS 主要部分的重要性与 IBM PC 中最初的情况相比大大降低。现代操作系统不依赖 BIOS 识别硬件,而是自己识别。毕竟 BIOS 比操作系统小得多,包含的驱动程序也少得多。

BIOS 的作用是将操作系统读入内存并开始执行。BIOS 最重要的作用是识别候选启动设备。为此,BIOS 通常根据特定制造商的硬件进行定制。对于现代操作系统,它的作用就到此为止,操作系统将重新分析硬件并纠正 BIOS 故障或不准确之处。

我相信是在 Vista 中我第一次遇到 BIOS 分析的磁盘驱动器比实际小得多,但安装 Vista 后一切都正确。

自 2011 年起,许多新机器中的 BIOS 已被更复杂的可扩展固件接口 (EFI) 所取代。EFI 规范定义的接口包括包含平台信息的数据表以及可供操作系统加载程序和操作系统使用的启动和运行时服务。

EFI 定义了两种类型的服务:启动服务和运行时服务。启动服务仅在固件拥有平台时可用,包括各种设备上的文本和图形控制台以及总线、块和文件服务。运行时服务在操作系统运行时仍可访问;它们主要包括日期、时间和 NVRAM 访问等服务。

ACPI 旨在巩固、检查和改进硬件设备的现有电源和配置标准。但是,一旦电源管理处于操作系统的控制之下,它就会接管并独占控制电源管理和设备配置的所有方面。然后操作系统通常会模拟与 ACPI 兼容的系统调用,但不使用 BIOS/UEFI 来实现这一点。

参见维基百科:
BIOS
统一可扩展固件接口
高级配置和电源接口

相关内容