赞
踩
Advanced Configuration and Power Interface
由1997年,英特尔、微软、东芝公司共同提出、制定操作系统应用程序管理电源管理接口,是一种工业标准,包括了软件和硬件方面的规范。ACPI规范是为了建立工业通用接口,以支持面向操作系统的主板设备配置和电源管理。ACPI是面向操作系统的配置和电源管理(OSPM)中的关键元素。
下图给出了OSPM/ACPI相关的硬件与软件组件及它们之间的联系。
ACPI有三个运行时组件:
ACPI表是在系统启动阶段由BIOS/UEFI收集系统各方面信息并创建的,它大致以树形的组织形式(如下图所示)存在系统物理内存中。
整个ACPI表以RSDP(Root System Descriptor Pointer Table)为入口点,每个非叶子节点都会包含指向其他子表的指针,各个表都会有一个表头,在该表头中包含了相应的Signature,用于标识该表,查找ACPI表的关键就是在内存中定位到RSDP表。
RSDP表结构如下表
当OSPM找到RSDP,下一步OSPM需定位RSDT或XSDT表来获取其他ACPI Tables的物理地址信息。如上图,RSDP中包含RsdtAddress/XsdtAddress,即RSDT(Root System Description Table)/XSDT( Extended System Description Table)的地址。它们包含指向其他Tables的物理地址信息。OSPM通过找到这些Table来获取系统的基本信息。
如下图所示,通常XSDT包含的第一个Entry保存着FADT表(Fixed ACPI Description Table)的物理地址,FADT表的Signature为FACP。
FADP表中包含如下内容:
OS需要用这些配置信息来直接管理ACPI硬件寄存器块.
包含上次启动的hardware signature, waking vector与Global Lock。
其他ACPI表的地址也保存在XSDT表格中的Entry中。
相关Spec:
https://www.acpica.org/documentation
https://uefi.org/acpi
赞
踩
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。