ACPI和电源管理
高级配置和电源接口(ACPI)规范是业界采用的开放标准,用于操作系统对I/O设备和资源的系统级配置和管理,包括电源管理。 最初由Intel,Microsoft和Toshiba于1996年提出,后来惠普和Phoenix共同加入了规范工作。 最新的ACPI规范版本5已于2011年发布。 随着行业的广泛采用,有必要支持许多操作系统和处理器体系结构。 为此,标准机构在2013年同意将未来的发展与统一可扩展固件接口(UEFI)论坛合并,该论坛是领先技术公司的联盟,包括最初的ACPI参与者和主要行业参与者,如AMD,Apple,Dell ,IBM和Lenovo。 最近所有的计算机和便携式计算设备都具有ACPI支持。

ACPI 电源状态

对于用户,计算机系统显示为“开”或“关”。 但是,系统可以支持ACPI规范中定义的多种电源状态。 ACPI符合性表明系统支持定义的电源管理状态,但是这种符合性并不能保证实现最节能的设计。 此外,系统可以具有电源管理功能和调整功能,而无需遵守ACPI。 根据ACPI规范,计算机系统的设备以一致的方式公开给操作系统。 这样,对于系统级电源管理,ACPI定义单个设备的功耗状态(称为设备状态)以及整个计算机系统(称为全局状态或系统睡眠状态)。 操作系统和设备可以查询和设置这些状态。 重要的系统总线(例如外围组件互连(PCI)总线)可能会利用这些状态。

全局状态

ACPI规范为符合ACPI的计算机系统定义了四个可能的全局“ Gx”状态和六个可能的睡眠“ Sx”状态(表6-3)。 但是,某些系统或设备可能无法处于所有状态。
Table 6-3. ACPI 全局状态
状态
Gx
Sx
Description
活跃
G0
S0
该系统完全可用。 CPU处于活动状态。 设备可能处于活动状态,也可能不处于活动状态,并且可能进入低功耗状态。 S0有一个子集,称为“离开模式”,其中监视器已关闭,但后台任务正在运行。
沉睡
G1
S1
系统似乎已关闭。 降低了功耗。 所有处理器高速缓存均被刷新,并且CPU停止执行指令。 维持CPU和RAM的电源。 不必要的设备可能已关闭电源。 这种状态很少使用。
沉睡
G1
S2
系统似乎已关闭。 CPU上电 高速缓存被刷新到RAM。 与S1类似,也很少使用S2状态。
沉睡
G1
S3
通常称为待机,睡眠或Suspend-to-RAM(STR)。 系统似乎已关闭。 系统上下文保存在系统DRAM上。 所有电源都关闭了非关键电路,但保留了RAM电源。 过渡到S0所需的时间分别长于S2和S1。
休眠
G1
S4
称为休眠或磁盘挂起(STD)。 系统似乎已关闭。 降低功耗
到最低水平。 系统上下文保存在磁盘上,以保留OS,应用程序和打开的文档的状态。 主存储器的内容保存到非易失性存储器(例如硬盘驱动器)中,并且除了恢复逻辑外,系统都已断电。| | 软关机 | G2 | S5 | 系统似乎已关闭。 系统上下文未维护。 某些组件可能仍保持供电,因此 计算机可能会从键盘,鼠标,LAN或USB设备的输入中唤醒。 如果工作上下文存储在非易失性存储器中,则可以将其恢复。 除重新启动所需的逻辑外,所有电源均已关闭。 需要完全引导才能重新启动。| | 硬关机 | G3 | -- | 系统完全关闭,不消耗电源。 需要完全重新引导才能使系统返回到活动状态。|

设备状态

所有设备硬件的电源功能都不相同。 例如, LAN适配器将具有唤醒系统的功能; 当系统处于待机模式时,音频硬件可能允许流式传输,依此类推。 某些设备可以细分为具有独立电源控制的功能单元。 此外,某些设备(例如键盘,鼠标,调制解调器和LAN适配器)具有在设备本身处于睡眠状态时将系统从睡眠状态唤醒的功能。 这些设备的硬件必须汲取较小的渗漏电流,并配备检测外部唤醒事件的能力,因此有可能实现这种功能。 ACPI规范定义了设备相关的D状态,如表6-4所示。
Dx
Subset of Dx
Description
D0
---
完全打开并运行
D1
---
中间电源状态。 定义因设备而异
D2
Hot
设备已关闭并且对总线无响应,但是系统开启。 设备仍连接到电源。 D3 Hot具有辅助电源,可启用更高的电源状态。 从D0到D3的过渡意味着D3 Hot
D3
---
设备无电-设备和系统均关闭。 该设备可能会消耗trick流功率,但是需要唤醒事件才能将设备和系统移回D0和/或S0状态
ACPI定义了状态D0到D3,并将D3细分为D3热和D3冷。 某些设备或操作系统无法区分D3是热还是冷,并且将D3视为没有设备电源。 但是,Windows 8明确跟踪D3热和D3冷。 D1和D2状态是可选的,但如果使用得当,它们将在设备空闲时提供更好的清洁度。