拿秒表掐了20次关机耗时,发现Win10快速启动是个双刃剑
最近折腾一台老笔记本,开机慢我忍了,关机也拖拖拉拉,每次点完关机还得等半分钟才断电。先别急着甩锅给硬盘,我拿秒表掐了20次关机耗时,又对比了两台同配置机器的注册表,总算把这事捋清楚了。
实验方法
两台机器:一台i5-8250U+8G+MX150,一台同型号但换了NVMe固态。系统都是Win10 22H2,补丁版本一致。我用PowerShell脚本记录从点击关机到电源灯灭的时间,每台各跑10次取平均值。
数据结果
- 机械盘机器:平均关机耗时28.6秒,波动±4秒
- 固态机器:平均关机耗时19.2秒,波动±2秒
但有意思的是,我把两台机器的快速启动都关掉后,固态机器关机反而降到12.4秒,机械盘降到21.3秒。也就是说,快速启动这功能在关机阶段反而拖了后腿。
注册表对比找到根因
我导出了两台的HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Power下的键值,发现快速启动开启时,系统关机前会先把内核会话和驱动状态写进hiberfil.sys,这个写入过程受磁盘写入速度影响很大。机械盘写入慢,所以多出7秒左右;固态虽然快,但驱动兼容性问题导致部分设备在休眠前反复重试,反而多耗了6-7秒。
另外我查了事件查看器,关机慢的那几次都伴随Kernel-Power 41之外的另一个事件ID:DriverFrameworks-UserMode 10110,提示某个USB外设驱动在休眠前响应超时。拔掉那个外设后,关机时间稳定在11秒左右。
我的判断
快速启动适合开机,不适合关机。如果你也遇到关机慢,建议先做三件事:
- 用
powercfg /a看休眠是否被其他策略占用 - 事件查看器里筛Kernel-Power和DriverFrameworks相关事件
- 挨个拔外设做排除法,尤其是老USB hub和蓝牙适配器
关于自动化优化工具
我试过软领的自动优化,它确实会把快速启动设成推荐开启,这逻辑对大多数懒人没问题,开机快是刚需。但我自己还是手动控制,因为自动优化不会告诉你驱动超时这个坑,它只看系统层面的开关。无广告这点我认可,至少不弹窗不劫持主页,比某些全家桶强。
抛个问题
你们有没有遇到过关机慢但事件查看器里啥都不报的情况?我另一台机器就是这种,关机等20秒,日志干净得跟新装一样,怀疑是某个服务在等网络超时。有排查思路的兄弟指点一下。
