系统电源状态
对用户,计算机系统似乎处于打开或关闭状态。 没有其他可检测状态。 但是,系统支持多个电源状态,这些状态对应于高级配置和电源接口(ACPI)规范中定义的电源状态。 这些状态也有变化,例如混合睡眠和快速启动。 本文介绍了这些状态,并介绍了它们彼此之间的关系。
注意
使用系统服务创建驱动程序或应用程序的系统集成商和开发人员应特别小心驱动程序质量问题,例如内存泄漏。 虽然驱动程序质量一直很重要,但内核重启之间的时间可能比以前版本的作系统要长得多,因为内核、驱动程序和服务在用户启动的睡眠和关闭时会保留和还原,而不是重新启动。
下表列出了 ACPI 电源状态,从最高到最低能耗。
电源状态 | ACPI 状态 | 描述 |
---|---|---|
加工 | S0 | 系统完全可用。 未使用的硬件组件可以通过进入较低的电源状态来节省电源。 |
睡眠(现代待机) | S0 低功率空闲 | 某些 SoC 系统支持低功率空闲状态,称为 现代待机。 在此状态下,系统可以快速从低功率状态切换到高功率状态,以响应硬件和网络事件。 支持新式待机的系统不使用 S1-S3。 |
睡 |
S1 S2 S3 |
系统似乎已关闭。
S1-S3 状态消耗的电力量小于 S0,S4以上。
S3 消耗的功率小于 S2,S2 消耗的功率小于 S1。 系统通常支持这三种状态之一,而不是全部三种状态。 在 S1-S3 状态的状态中,将刷新易失性内存以保持系统状态。 某些组件保持电源,以便计算机可以从键盘、LAN 或 USB 设备的输入中唤醒。 在桌面上使用的混合睡眠是系统使用具有 S1-S3休眠文件的地方。 休眠文件保存系统状态,以防系统在睡眠时断电。 注意: 支持新式待机的 SoC 系统不使用 S1-S3。 |
冬眠 | S4 | 系统似乎已关闭。 能耗降低到最低水平。 系统将易失性内存的内容保存到休眠文件以保留系统状态。 某些组件保持电源,以便计算机可以从键盘、LAN 或 USB 设备的输入中唤醒。 如果工作上下文存储在非易失性媒体上,则可以还原它。 快速启动 是在创建休眠文件之前注销用户的位置。 这允许较小的休眠文件,更适合具有较少存储功能的系统。 |
软关闭 | S5 | 系统似乎已关闭。 此状态由完全关闭和启动周期组成。 |
机械关闭 | G3 | 系统完全关闭,无需电源。 系统仅在完全重新启动后返回到工作状态。 |
SYSTEM_POWER_STATE 枚举定义用于指定系统电源状态的值。
工作状态:S0
在工作状态期间,系统已唤醒并运行。 简单而言,设备 ON。 无论屏幕处于打开还是关闭状态,设备都处于完全运行状态。 为了节省能源,尤其是在电池供电的设备上,建议在不使用硬件组件时关闭硬件组件。
重要
无论状态如何,只要未使用硬件组件,就会关闭硬件组件。 低能耗是移动设备使用者的重要考虑因素。
睡眠状态:新式待机
在工作状态的 S0 低功率空闲模式(也称为 现代待机),系统仍部分运行。 在现代待机期间,只要有合适的网络可用,系统就可以保持 up-to日期,并在需要实时作(例如 OS 维护)时唤醒。 新式待机唤醒速度明显快于 S1-S3。 有关详细信息,请参阅 新式待机。
注意
新式待机仅在某些 SoC 系统上可用。 支持后,系统不支持 S1-S3。
谨慎
不要在支持现代 Standaby 的系统上启用 S3 LAN 唤醒(WoL)。 新式待机本机支持使用神奇数据包唤醒计算机。 不需要启用旧 S3 WoL,可能会导致网络上出现 DHCP 和/或 DNS 数据包风暴。
睡眠状态:S1-S3
系统会根据许多条件进入睡眠,包括用户或应用程序活动和用户在 Power & 睡眠 页上设置 设置 应用的首选项。 默认情况下,系统使用所有已启用唤醒设备支持的最低电源睡眠状态。 有关系统如何确定何时进入睡眠的详细信息,请参阅 系统睡眠条件。
在系统进入睡眠状态之前,它会确定适当的睡眠状态,通知等待转换的应用程序和驱动程序,然后将系统转换为睡眠状态。 对于关键转换(例如达到关键电池阈值时),系统不会通知应用程序和驱动程序。 应用程序需要为此做好准备,并在系统返回到工作状态时采取相应的作。
在 S1-S3 状态中,将刷新易失性内存以维护系统状态。 某些组件保持电源,以便计算机可以从键盘、LAN 或 USB 设备的输入中唤醒。
系统还会从睡眠状态唤醒,以响应应用程序定义的用户活动或唤醒事件。 有关详细信息,请参阅 系统唤醒事件。 系统唤醒所需的时间取决于它从中唤醒的睡眠状态。 由于硬件可能需要的额外工作,系统需要花费的时间比从电源较高的状态(S3)唤醒更多时间。 例如,稳定电源或重新初始化处理器。
谨慎
调用 SetThreadExecutionState时,仅当要求系统执行后台任务的媒体应用程序绝对必要时,才应使用 ES_AWAYMODE_REQUIRED
值,例如将电视内容或流媒体录制到其他设备,而系统似乎处于睡眠状态。 不需要关键后台处理或在便携式计算机上运行的应用程序不应启用离开模式,因为它阻止系统通过进入真正的睡眠来节省电源。
混合睡眠:S1-S3 + 休眠文件
混合睡眠 是睡眠和休眠状态的组合的特殊状态。 当系统将休眠文件与 S1-S3 配合使用时。 混合睡眠仅适用于某些系统。 启用后,系统会写入休眠文件,但进入更强大的睡眠状态。 如果在系统休眠时电源丢失,则系统会从休眠状态唤醒,这需要更长的时间,但会还原用户的系统状态。
休眠状态:S4
Windows 使用休眠来提供快速启动体验。 当可用时,它还在移动设备上使用,通过提供一种机制来节省所有用户的状态,然后再关闭系统,从而延长系统的可用电池使用时间。 在休眠转换中,内存的所有内容将写入主系统驱动器上的文件,休眠文件。 这会保留作系统、应用程序和设备的状态。 如果合并内存占用占用了所有物理内存,则休眠文件必须足够大,以确保有足够的空间来节省物理内存的所有内容。 由于数据写入到非易失性存储中,DRAM 不需要保持自我刷新,并且可以关闭电源,这意味着休眠的电源消耗非常低,几乎与关闭电源相同。
在完全关闭和启动(S5)期间,整个用户会话在下一次启动时被拆毁并重启。 相比之下,在休眠(S4)期间,用户会话将关闭并保存用户状态。
快速启动:减少休眠文件
快速启动 是一种关闭类型,它使用休眠文件加快后续启动速度。 在此类型的关闭期间,在创建休眠文件之前,将注销用户。 快速启动允许较小的休眠文件,更适合具有较少存储功能的系统。 有关详细信息,请参阅 休眠文件类型。
使用快速启动时,系统似乎向用户显示完全关闭(S5),即使系统实际上已通过 S4。 这包括系统如何响应设备唤醒警报。
快速启动会注销用户会话,但内核(会话 0)的内容将写入硬盘。 这可以加快启动速度。
若要以编程方式启动快速启动样式关闭,请使用 SHUTDOWN_HYBRID
标志或具有 EWX_HYBRID_SHUTDOWN
标志的 ExitWindowsEx 函数调用 InitiateShutdown 函数。
注意
在 Windows 中,请求系统关闭时,快速启动是默认转换。 请求系统重启或应用程序调用关闭 API 时,将发生完全关闭(S5)。
输入休眠
发出休眠请求时,系统会进入休眠状态时执行以下步骤:
- 应用和服务会收到通知
- 通知驱动程序
- 用户和系统状态以压缩格式保存到磁盘
- 固件已收到通知
注意
系统上的所有核心都用于压缩内存中的数据并将其写入磁盘。
若要以编程方式启动休眠转换,请调用 SetSuspendState 函数。
从休眠状态恢复
当系统从休眠状态恢复时。
当系统处于开机状态时,当系统从休眠状态恢复时,将执行以下步骤:
- 系统 POST
- 从休眠文件解压缩和还原系统内存
- 设备初始化
- 驱动程序将还原到它们在休眠前的状态
- 服务将还原到它们在休眠之前的状态
- 系统可供登录
从休眠 恢复 从类似于 S5 关闭的系统 POST 开始。 OS 启动管理器通过检测有效的休眠文件来确定需要从休眠恢复。 然后,它会指示系统恢复、还原内存的内容和所有体系结构寄存器。 对于从休眠状态恢复,系统内存的内容将从磁盘中读回、解压缩和还原,这会使系统处于休眠状态。 恢复内存后,设备将重新启动,计算机将返回到正在运行的状态,以便登录。
注意
在从休眠状态恢复期间,会通知驱动程序和服务,但不会重启。 它们只会还原到他们在休眠前的状态。
休眠文件类型
休眠文件用于混合睡眠、快速启动和 标准休眠。 有两种类型,根据大小、完整和减小的大小休眠文件进行区分。 只有快速启动才能使用减少的休眠文件。
休眠文件类型 | 默认大小 | 支持。。。 |
---|---|---|
满 | 物理内存的 40% | 休眠,混合睡眠,快速启动 |
减少 | 物理内存的 20% | 快速启动 |
若要验证或更改使用的休眠文件类型,请运行 powercfg.exe 实用工具。 以下示例演示如何作。 有关详细信息,请运行 powercfg /? hibernate
。
例 | 描述 |
---|---|
powercfg /a |
验证休眠文件类型。 使用完整休眠文件时,结果状态为休眠是可用选项。 使用减少的休眠文件时,结果将表示不支持休眠。 如果系统根本没有休眠文件,则结果显示尚未启用休眠。 |
powercfg /h /type full |
将休眠文件类型更改为完整。 不建议在存储不足 32GB 的系统上执行此作。 |
powercfg /h /type reduced |
将休眠文件类型更改为缩减。 如果命令返回“参数不正确”,请参阅以下示例。 |
powercfg /h /size 0 powercfg /h /type reduced |
重试更改休眠文件类型以减小。 如果休眠文件设置为大于 40%的自定义大小,则必须首先将文件的大小设置为零。 然后重试缩减的配置。 |
软关闭状态:S5
软关闭状态是当系统完全关闭而不使用休眠文件时。 软关闭也称为 完全关闭。 在完全关闭和启动期间,整个用户会话在下次启动时被拆毁并重启。 因此,从此状态启动/启动的时间比 S1-S4 长得多。 请求系统重启或应用程序调用关闭 API 时,将发生完全关闭(S5)。
机械关闭状态:G3
在此状态下,系统完全关闭,无需电源。 系统仅在完全重新启动后返回到工作状态。
LAN 唤醒行为
当网络适配器检测到 WOL 事件(通常为专门构造的以太网数据包)时,LAN 唤醒功能会从低功率状态唤醒计算机。
S3 睡眠或 S4 休眠支持 WOL。 不支持快速启动或 S5 软关闭状态。 NIC 在这些状态下没有武装唤醒,因为用户不希望其系统自行唤醒。
注意
S5 软关闭状态不支持 WOL。 但是,某些系统上的 BIOS 可能支持为唤醒武装 NIC,即使 Windows 未参与该过程。
另请参阅
关于电源管理 的