早先对电脑的系统电源状态认知只停留在,登出、睡眠、休眠、关机这几种。如果没有遇到电脑睡眠的问题,就不会继续的去学习。
以下表格来自微软官网。
系统电源状态 | 功耗 | 软件恢复 | 硬件延迟 | 系统硬件上下文 |
---|---|---|---|---|
S0(工作状态) | 最大。 但是,单个设备的电源状态可能会动态变化,因为每个设备的电源节约都发生。 未使用的设备可以根据需要关闭和通电。 | 不适用。 | 无 | 保留所有上下文 |
S0(休眠状态) | 介于S0和S3 | |||
S1 | 消耗比 S0 少,但比其他睡眠状态多。 处理器时钟已关闭,并且停止了总线时钟。 | 控件从中断位置重启。 | 通常不超过两秒。 | 硬件保留并维护所有上下文。 |
S2 | 消耗小于状态 S1,大于 S3。 处理器关闭。 总线时钟停止,某些总线可能会断电 | 唤醒后,控件从处理器的重置向量启动。 | 两秒钟或更长时间,大于或等于 S1 的延迟。 | CPU 上下文和系统缓存内容丢失。 |
S3 | 消耗小于状态 S2。 处理器已关闭,并且主板上的一些芯片也可能已关闭。 | 出现唤醒事件后,控件从处理器的重置向量启动。 | 与 S2 相当。 | 仅保留系统内存。 CPU 上下文、缓存内容和芯片组上下文都将丢失。 |
S4 | 关闭,电源按钮和类似设备上的涓流电流除外。 | 系统从保存的休眠文件重启。 如果无法加载休眠文件,则需要重新启动。 当系统处于 S4 状态时重新配置硬件可能会产生更改,导致无法正确加载休眠文件。 | 较长且不确定。 只能通过物理交互将系统恢复到工作状态。 此类交互可能包括用户按下启动开关,或者调制解调器上的来电响铃或 LAN 上出现活动(如果存在相应的硬件并启用了唤醒)。 如果硬件支持,计算机还可以从恢复计时器唤醒。 | 硬件中没有保留。 系统在关机之前,将内存映像写入休眠文件。 加载操作系统后,它将读取此文件并跳转到其之前的位置。 |
S5 | 关闭,但电源按钮等设备的涓流电流除外。 | 觉醒时需要启动。 | 较长且不确定。 只有物理交互(例如用户按 ON 开关)将系统返回到工作状态。 如果系统已配置,BIOS 也可以从恢复计时器唤醒。 | 未保留任何内容。 |
这里只针对睡眠进行细说。S3是我们以往用的睡眠模式,这种是今保留内存,像CPU、磁盘等是关闭的。睡眠状态到运行恢复大概是2秒多,从windows10开始,微软又搞出了一种模式,叫“新式待机”,modern standby。可以理解为低功耗的S0,给我们直观的感受是打开笔记本秒开,就像只关闭了屏幕一样。
对于用仅用电池的方式,用新式待机是完全正常的,风扇慢慢的就不再运行了,睡眠一晚上也是掉个5%左右的电,但如果是插电源的睡眠就会出现风扇一直运行,最后就是狂转,笔记本还发烫,看上去就像一直在运行,只是屏幕关闭了。
对于插电源这种情况是什么原因引起的,网上并没有找到具体的答案,我对比了BIOS后,差异就在于电池是“balanced模式”,电源是“Performance模式”,但我没有尝试更改,而是将S0待机更改为S3。
S0待机改为S3网上有说通过windows系统中修改,但这个不准确,可参考如下方法:
- 通过
powercfg -a
确认当前状态,可支持什么状态。
|
|
- 如果S3中有“系统固件不支持此待机状态”,则说明在操作系统层改是没有意义的。
- 咨询自己的电脑品牌商,是否支持在BIOS中修改为S3状态,网上一般也可以找到,或者自己尝试进入BIOS查看。
下图是ThinkPad x1 carbon gen10的设置,网上说从gen8以上可能都差不多。在config中找到sleep state。选择Linux S3.