Windows 是如何实现睡眠向休眠切换的?

2022-03-09 15:38:32 +08:00
 villivateur

Windows 电源管理中,可以设置 XX 分钟后睡眠,XX 分钟后休眠。

那么,Windows 是如何在睡眠的过程中开始休眠的呢?是直接把睡眠状态下内存中的数据通过某种特殊通道转存到硬盘里面,还是先唤醒系统,再正常休眠?

2258 次点击
所在节点    Windows
7 条回复
misdake
2022-03-09 15:54:18 +08:00
我感觉是需要先醒过来吧。睡眠状态下很多 IO 、内存、硬盘都是低功耗状态,怎么也要都运转起来才能存进去。
我印象中笔记本电脑是有过,在睡眠的时候无故启动,风扇开始转,过一会儿又停下的情况。
dingwen07
2022-03-09 15:57:27 +08:00
先唤醒,再休眠吧。
Intel Mac 也有类似的机制
xtinput
2022-03-09 16:28:51 +08:00
睡眠只是低功耗运行,并不是不工作,我认为睡眠的时候就已经做好休眠准备了(内存里的信息保存到硬盘里去)。

windows 的设备我很久没用了,Mac 的笔记本只有低电量的时候才会进入休眠,盒盖是睡眠,没有用户设定的休眠机制
beijiaoff
2022-03-09 16:47:51 +08:00
赞同楼上,睡眠的时候就已经做好休眠准备了(内存里的信息保存到硬盘里去)。
solitude3985
2022-03-09 19:54:05 +08:00
@xtinput 没读过他逻辑,但感觉这么设计不错,就算是睡眠也先把所有信息存在硬盘里,如果睡眠唤醒了就删除掉,切换到睡眠的过程就不需要唤醒硬盘和内存
msg7086
2022-03-10 04:11:14 +08:00
@xtinput 那是混合休眠,不是单纯的睡眠转休眠。
ungrown
2022-03-10 10:43:46 +08:00
@solitude3985 #5 这是所谓的“混合睡眠”,打开了这个设置(有些版本 Windows 是默认打开的?记不清不确定)之后,睡眠的同时就把休眠文件写好,万一没电了、掉电了,下次开机还可以恢复状态。
但即使是“混合睡眠”,在向休眠转换时,依然要先唤醒,这个属于程序流程。
(还是说我记错了???)

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/839159

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX