自适应休眠概述

用户可以在其 Windows 设备中设置休眠选项,以便在系统不使用时将系统置于低功耗状态。 操作系统中的当前休眠逻辑依赖于自适应休眠在新式待机期间耗尽一定百分比的电池容量后将系统置于休眠状态。

OEM 或用户还可以配置一个固定的进入休眠定时器。 然而,基于计时器的逻辑在用户体验缺陷方面有明显缺陷。 固定的休眠计时器可能导致系统在待机模式下耗尽电量(如果在休眠超时范围内耗尽电量),或者削弱低耗电新式待机体验(在休眠超时时休眠)。 因此,最好利用自适应休眠来根据电池耗电量动态休眠。

自适应休眠提供触发器以允许系统智能休眠。 这些触发器有以下优势:

  • 避免电池报废。
  • 通过确保将系统尽可能保持在新式待机状态,提供出色的新式待机体验。

为了支持自适应休眠触发器,系统使用默认值启用。 但是,OEM 可以对这些触发器进行编程,以确保机器休眠,从而为用户提供最佳体验。

系统要求

这些触发器仅适用于新式待机系统。

默认行为

计算机将默认启用自适应休眠超时;但是,OEM 可以使用预配包文件配置设置。 有关如何执行此操作的详细信息,请参阅下列各节。

注意

在应用其中任何一个触发器之前,Windows 设置了 15 分钟的宽限期。 这是为了确保系统不会快速过渡到休眠状态。

休眠触发器

自适应休眠设置(待机预算设置和待机预留时间设置)显示为隐藏的电源设置。 这些设置仅适用于直流电,对交流电没有影响。

待机预算设置

下表列出了可用于设置待机预算的设置,在待机期间允许的消耗。 如果设备在 StandbyBudgetRefreshInterval 内消耗的资源少于 StandbyBudgetPercent,则允许设备保持待机状态。 否则,设备将进入休眠状态。 如果设备的消耗量小于 StandbyBudgetPercent,则它将继续刷新预算,直到 StandbyBudgetRefreshCount。

预算设置 定义 公开为 Powercfg 命令
StandbyBudgetPercent 定义用户在刷新间隔中允许的电池消耗百分比。 默认值为 5%。 电源设置 powercfg /setdcvalueindex scheme_current sub_presence standbybudgetpercent
StandbyBudgetRefreshInterval 定义刷新 StandbyBudgetPercent 之前的时间长度。 如果此时之前已到达 StandbyBudgetPercent,则设备将休眠,否则将保持待机状态。 默认值为 12 小时。 电源设置 powercfg /setdcvalueindex SCHEME_CURRENT SUB_PRESENCE STANDBYBUDGETREFRESHINTERVAL
StandbyBudgetRefreshCount 定义如果在 StandbyBudgetRefreshInterval 内未达到 StandbyBudgetPercent,则预算将刷新的次数。 默认值为 4 次刷新。 电源设置 powercfg /setdcvalueindex SCHEME_CURRENT SUB_PRESENCE STANDBYBUDGETREFRESHCOUNT

你还可以使用 OEM 映像的自定义预配包文件配置这些设置。 有关 powercfg 的详细信息,请参阅 Powercfg 命令行选项

待机预留时间设置

预留时间是系统从待机或休眠状态恢复后保证用户打开屏幕的时间量。 下表列出了可用于设置预留时间的设置。

预算设置 定义 公开为 Powercfg 命令
StandbyReserveTime 定义将提供给用户的屏幕打开时间(在待机状态退出且屏幕打开后),以秒为单位。 默认值为 1200 秒。 电源设置 powercfg /setdcvalueindex scheme_current sub_presence standbyreservetime

你还可以使用 OEM 映像的自定义预配包文件配置这些设置。 有关 powercfg 的详细信息,请参阅 Powercfg 命令行选项

Windows 预配包示例

可以使用 Windows 预配框架来配置本节中描述的自适应休眠设置。 首先,使用 Windows 配置设计器创建预配包。 然后,你将编辑包中包含的 customizations.xml 文件以包含你的电源设置,该设置显示在 Common\Power\Policy\Settings\AdaptivePowerBehavior 命名空间下。 使用 XML 文件作为 Windows 配置设计器命令行界面的输入之一,以生成包含电源设置的预配包。 然后,你可以将预配包应用到映像。 有关如何使用 Windows 配置设计器 CLI 的信息,请参阅使用 Windows 配置设计器命令行界面

以下示例显示了 Windows 预配应答文件在完成编写后所具有的表现以配置自适应休眠设置。

<?xml version="1.0" encoding="utf-8"?>
<WindowsCustomizations>
  <PackageConfig xmlns="urn:schemas-Microsoft-com:Windows-ICD-Package-Config.v1.0">
    <ID>{XXXX GUID}</ID>  <!-- ID needs to be unique GUID for the package -->
    <Name>CustomOEM.Power.Settings.Control</Name>
    <Version>1.0</Version>
    <OwnerType>OEM</OwnerType>
  </PackageConfig>
  <Settings xmlns="urn:schemas-microsoft-com:windows-provisioning">
     <Customizations>
        <Common>
           <Power>
              <Policy>
                 <Settings>
                    <AdaptivePowerBehavior>
                       <SchemePersonality>
                          <Default SchemeAlias="Balanced">
                             <Setting>
                                <!-- After entering standby, battery drain percentage allowed before the device transitions to hibernate. -->
                                <StandbyBudgetPercent>
                                   <DcValue>3</DcValue>
                                </StandbyBudgetPercent>
                                <!-- Specifies the minimum remaining battery time required for active use for the amount of time.-->
                                <StandbyReserveTime>
                                   <DcValue>600</DcValue>
                                </StandbyReserveTime>
                             </Setting>
                          </Default>
                       </SchemePersonality>
                    </AdaptivePowerBehavior>
                 </Settings>
              </Policy>
           </Power>
        </Common>
     </Customizations>
  </Settings>
</WindowsCustomizations>