睡眠后自动关机的情况罗列
| 电源 | 休眠功能 | 进入睡眠 | 下次唤醒的状态 | 是否发生自动关机故障 |
| 插电 | 休眠on | 超时自动睡眠 | 从休眠恢复 | 没有 |
| 手动进入睡眠 | 从休眠恢复 | 没有 | ||
| 休眠off | 超时自动睡眠 | 从睡眠恢复 | 没有 | |
| 手动进入睡眠 | 从睡眠恢复 | 没有 | ||
| 电池 | 休眠on | 超时自动睡眠 | 从休眠恢复 | 没有 |
| 手动进入睡眠 | 从休眠恢复 | 没有 | ||
| 休眠off | 超时自动睡眠 | 从关机状态全新启动 | 有 | |
| 手动进入睡眠 | 从关机状态全新启动 | 有 |
- 自动关机现象描述
- BatteryReport.html,14:09:33 Connected standby,14:25:00 Suspended
- 睡眠先standby,再变为suspend,就像关机了一样,唤醒时,相当于重新开机
- 其它条件:休眠关闭,全新正常电池,电源模式睡眠不会suspend唤醒正常
可能原因的排查
- 虚拟页面是关闭的?
- 开启2G~16G后,问题依旧
- 显卡驱动是否最新?
- 已最新后,问题依旧
- 电源设置>空闲复原>启用禁用深度睡眠设置
- 改为禁用后,问题依旧
- 使用windows默认的平衡方案
- 切换为平衡方案,并还原为默认设置,问题依旧
- 超时休眠全部改为从不休眠
- 此设置修改后,问题依旧
- 电池关键电量操作设置将休眠改为关机
- 修改后,问题依旧
- 芯片组驱动问题
- 硬件管理>AMD PSP>允许关闭设备电源节省:勾选去掉,问题依旧。升级chipset驱动,问题依旧
- Laptop shutting down instead of sleeping on battery power
- AMD PSP
- BIOS reset
- 修改后,问题依旧
- 电源管理设置超时休眠时间改为999999
- 修改后,问题依旧
- 修改待机预算百分比1%为10%
- 问题暂时解决(见睡眠后自动关机的排查 - 电源管理详细篇)
trae的分析
- 扫描AC和DC所用的电源方案
针对休眠关闭时,涉及可能触发休眠的任何设置项
# 定义重点关注的设置 GUID (不论名称如何,GUID 是唯一的) TARGET_SETTINGS = { "9d7815a6-7ee4-497e-8888-515a05f02364": "在此时间后休眠 (Hibernate After)", "f15576e8-98b7-4186-b944-eafa664402d9": "待机保留时间 (Standby Reserve Time)", "82011705-fb95-4d46-8d35-4042b1d20def": "用户状态预测模式 (User Presence Prediction)", "a4b195f5-8225-47d8-8012-9d41369786e2": "允许使用系统所需的策略 (System Required Policy)", "7bc4a2f9-d8fc-4469-b07b-33eb785aaca0": "无人参与系统睡眠超时 (Unattended Sleep Timeout)", # 补充可能的非传感器输入超时 (通常较少见,尝试通过关键词匹配,但也列出可能的 GUID) "5ca83367-6e45-459f-a27b-476b1d01c936": "非传感器输入空闲超时 (Non-Sensor Input Idle Timeout)", # 补充混合睡眠,以防万一 "94ac6d29-73ce-41a6-809f-6363ba21b47e": "混合睡眠 (Hybrid Sleep)" }
- 逐项分析
- 在此时间后休眠 (Hibernate After):值都是 0,从系统角度: 不会因为“睡眠超时”而转 S4 休眠
- 待机状态下的网络连接性:值都是 0,代表“禁用该策略”
- 用户状态预测模式 (User Presence Prediction):DC=1 意味着:电池模式下,该策略是 开启 的。系统认为你“离开”后,会依据“非传感器输入超时”、“无人参与睡眠超时”等计时器触发更 aggressive 的节能动作。- 合盖放包、长时间无人操作、电池供电 -> 对系统来说完全符合“用户离开、设备不在使用”的特征。
- 再叠加下面几个超时参数,就有可能被驱动到某种“保电+深度休眠/关机”的路径。 - 允许使用系统所需的策略 (System Required Policy):值都是 0,有程序请求“保持唤醒” ,电源照样睡眠。
- 无人参与系统睡眠超时 (Unattended Sleep Timeout):值都是120秒,用来控制 在“无人参与/服务模式”等情形下,从“点亮但无人操作”到“进入睡眠”需要等待多久。主要用于管理 Windows Update / 安装补丁后自动重启再进入登录界面无人操作超时,某些后台任务跑完后系统自动进入“无人参与状态”超时
- 合上盖子操作 (Close Lid Operation):DC=1 ,合盖睡眠。
- 混合睡眠 (Hybrid Sleep):值都是 0,混合睡眠全关闭,这反而是好事(致敬峰哥),避免了 “S3 + S4 同步写盘” 的复杂行为,不太可能是你这次问题的源头。
- 待机保留时间(Standby Reserve Time):DC: 600 秒,这通常是 Modern Standby 里一个关键的保电策略:- 在待机若干分钟后,系统进入“Standby Reserve”或更深的电源状态。合盖 → 进入待机 → 10 分钟后触发保留策略;如果休眠被禁用或驱动不兼容,这一步失败就有可能转成“直接断电”,你看到的就是 6008 自动关机
- 非传感器输入状态超时(Non-Sensor Input Idle Timeout):DC: 300 秒,是从“有非传感器输入”到“非传感器 idle 状态”的状态机切换时间,可以理解成: “电池下,5 分钟无人输入,系统把你认定为彻底 idle,下一步看各类睡眠/保留计时器来动作”。
- 结论
- 不是显式的 Hibernate After 在搞事 (它已经是 0)
- 有嫌疑的是 Modern Standby + 用户存在感知 + 待机保留 + 无人参与超时 的组合:电池合盖无输入下进入standby,在N分钟后进入保留阶段,尝试休眠,休眠失败后直接掉电关机(6008), 没有42/107的过程
- 故障链路:电池 + 合盖 → 进入 Modern Standby → 过一段时间触发 Standby Reserve / 省电策略 → 尝试休眠(S4)→ 因为休眠被关闭或失败 → 直接掉电 → 只留下 6008,没有 42/107