菜单

kaoqi
kaoqi
发布于 2026-09-14 / 4 阅读
0
0

ACPI协议主要描述表一览

主要节选自ACPI协议的5.2章节:5. ACPI Software Programming Model — ACPI Specification 6.6 documentation

ACPI表项的入口来自于EFI系统表的Configuration Table中的一个携带特定GUID的RSDP表项头。

由RSDP表项头可以找寻RSDT(32位)与XSDT(64位)表头,并进一步获取到各个落地表项的位置,如下图。

本文根据5.2章节中所描述的各类系统表做一个大串烧呀。

表格简称

表格全称

主要作用

GAS

Generic Address Structure

通用地址结构,一种标准化的数据结构,用于描述硬件寄存器或内存区域的访问方式。包含地址空间ID、位宽、位偏移、访问宽度以及实际地址

RSDP

Root System Description Pointer

根描述系统,ACPI表层次结构的入口

表头结构

System Description Table Header

系统描述表头结构,包含签名、长度、版本、校验和、OEM ID制造商标识、OEM Revision编译信息等内容

RSDT

Root System Descriprion Table

根系统描述表,包含一个32位的物理地址指针数组,每个指针指向一个具体的ACPI描述表

XSDT

Extended System Description Table

同样的ACPI描述表,同样可以指向具体的ACPI描述表

FADT

Fixed ACPI Description Table

固定ACPI描述表,一张固定长度的表,包含了平台固件的硬件特征和电源管理信息。包括一个指向FACS和DSDT的指针,以及电源管理寄存器的地址、复位寄存器、SCI中断号、固定硬件特性标志等信息

FACS

Firmware ACPI Control Structure

固件ACPI控制结构,由FADT中的指针指向的一块共享内存区域,用于操作系统和固件之间的硬件握手。包含全局锁、硬件特征向量、固件唤醒向量等。

DSDT

Differentiated System Description Table

包含主板上大部分集成设备的描述,以AML字节码的形式存在,定义了设备层级、资源需求和控制方法。通过解释这个表,kernel进行平台的枚举和驱动的加载

SSDT

Secondary System Description Table

作为DSDT的补充,用于描述额外的设备或覆盖DSDT中的部分定义。常用于动态添加设备或由OEM厂商提供特定平台的补丁

MADT

Multiple ACPI Description Table

多APIC描述表,描述了系统中的中断控制器拓扑,包括本地APIC、IO APIC等的篇日志,用于进行GIC相关的描述

GICC

GIC CPU interface Structure

ARM下MADT表的一个子结构条目,用于描述ARM的GIC中每个CPU核心的接口信息,如GIC ID、基地址、性能监控中断等,用于操作系统初始化ARM处理器的中断子系统

SBST

Smart Battery Table

智能电池表,配合SBS配合使用,定义了电池的警报阈值、状态查询等方法

ECDT

Embedded Controller Boot Resources Table

嵌入式控制器启动资源表。在DSDT被完全解析前,提供嵌入式控制器EC的通信端口地址,使得操作系统能在早期启动阶段与EC通信,例如读取温度或控制风扇,而无需等待完整的ACPI解释器就绪

SLIT

System Locality Information Table

系统局部性信息表,提供NUMA节点之间的举例矩阵。

SRAT

System Resource Affinity Table

系统资源亲和性表,描述CPU和内存节点之间的亲和性关系,主要用于NUMA系统。它告诉操作系统哪些CPU核心属于哪个NUMA节点,以及哪些内存范围属于哪个节点,以便操作系统进行高效的内存分配和任务调度

CPEP

Corrected Platform Error Polling Table

校正平台错误轮询表,指示操作系统需要轮询哪些处理器或组件以获取已校正的错误信息

MSCT

Maximum System Characteristics Table

最大系统特征表,提供最大配置信息的摘要,如最大处理器数、最大节点数等,现在不常用

RASF

ACPI RAS Feature Table

描述平台的RAS

RA32

ACPI RAS2 Feature Table

RAS的演进版本

MPST

Memory Power State Table

内存电源状态表,描述内存节点的电源状态及其转换延迟和功耗,允许操作系统在空闲时降低内存子系统的功耗

PMTT

Platform Memory Topology Table

平台内存拓扑表,描述内存模块的物理拓扑结构,包括Socket、Channel、Rank等信息

BGRT

Boot Graphics Resource Table

启动图形资源表,用于无缝启动,它包含固件过程中显示的启动Logo的位置、尺寸和显示状态,可以在固件启动过程中显示这个Logo,直到图形驱动接管,避免屏幕闪烁

FPDT

Firmware Performance Data Table

固件性能数据表,记录各个阶段所花费的事件戳

GTDT

Generic Timer Description Table

通用定时器描述表,用于描述系统通用定时器的频率、中断号以及物理虚拟定时器的配置

NFIT

NVDIMM Firmware Interface Table

描述非易失双列直插内存模块的拓扑、控制区域、地址范围等,是操作系统支持持久内存表

NHLT

Non HDAudio Link Table

非HD音频链接表,主要描述DSP与音频编解码器之间的链路配置

HMAT

Heterogeneous Memory Attribute Table

异构内存属性表,提供比SRAT更详细的内存性能数据,包括带宽、延迟、缓存属性等

PDTT

Platform Debug Trigger Table

平台调试触发表,定义了在发生特定硬件事件时,如何触发调试机制

PPTT

Processor Properties Topology Table

处理器属性拓展表,较新的ACPI表,用于更详细地描述处理器的层级拓扑结构,如Socket、Core、Thread及其属性


评论