睡眠、休眠与快速启动:三个被混淆的开关
每个电源状态到底做什么、快速启动写了什么到磁盘,以及它为什么会让双系统与更新排障变复杂。
测试环境Pro (26H2) / Server · 版本号 26300.9457 / 26100.33650 · x64
E1- 版本号
- 26300.9457 / 26100.33650
- 版本
- Pro (26H2) / Server
- 架构
- x64
- 支持
- 文档(E1)
- 证据
- E1官方文档
- 核验日期
- 2026-10-29
- 页面类型
- 概念
三件不同的事:
| 功能 | 状态 | 内存持续供电 | 写盘 |
|---|---|---|---|
| 睡眠(S3) | 挂起到内存 | 是 | 否 |
| 休眠(S4) | 挂起到磁盘 | 否 | hiberfil.sys |
| 快速启动 | 混合关机 | 否 | 部分 hiberfil.sys |
睡眠瞬时但脆弱(耗电)。休眠恢复慢但断电不丢。快速启动根本不是睡眠——它是一种把内核会话留在磁盘上的关机。
先看机器支持什么
Section titled “先看机器支持什么”powercfg /aModern Standby 笔记本典型输出:
待机 (S0 低电量待机)休眠快速启动台式机:
待机 (S3)休眠快速启动没有 休眠,说明 hiberfil.sys 被关(powercfg /hibernate off)或磁盘太小。
快速启动到底做了什么
Section titled “快速启动到底做了什么”开启快速启动后关机时:
- 关闭用户会话(这一步是真的注销)。
- 把内核会话休眠到
hiberfil.sys。 - 下次“开机”恢复这个映像,而不是从零初始化驱动。
由此产生的实际问题:
- 需要完整重启的更新,可能要等到真正的重启(
shutdown /s /full或“重启”)才完全生效。 - 双系统:休眠映像占着 NTFS,Linux 可能拒绝挂载或只读挂载。
- 驱动改动可能“关机再开”后不生效。
- 排障变难,因为这次启动并不是真正的启动。
Get-ItemProperty 'HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Power' -Name HiberbootEnabledshutdown /s /full /t 0休眠:诚实的取舍
Section titled “休眠:诚实的取舍”休眠把内存写入磁盘并断电,恢复时读回。
- 优点:断电不丢、零耗电、会话原样恢复。
- 缺点:恢复时间与内存、磁盘速度成正比;
hiberfil.sys默认约为内存的 40%。
powercfg /hibernate onpowercfg /hibernate size 60powercfg /hibernate off # 删除文件,同时禁用快速启动文件在 C:\hiberfil.sys,不显示受保护系统文件时在资源管理器里看不到。
| 机器 | 建议 |
|---|---|
| 台式机、长期插电 | 睡眠开,休眠可选,双系统则关快速启动 |
| 笔记本、Modern Standby | 保持 OEM 默认,把休眠作为电量保险 |
| 与 Linux 双系统 | 关快速启动,Windows 卷关休眠 |
| 服务器 | 关睡眠;休眠一般也关 |
| 排查启动问题 | 先关快速启动 |
如果机器在睡眠中掉电(Modern Standby 笔记本),见 Modern Standby 里的 powercfg /sleepstudy 方法。那是与休眠不同的失效模式。
E1。电源状态与快速启动行为有微软文档依据。实验室虚拟机不暴露真实睡眠/休眠路径,因此不发布恢复耗时。