【Windows使用】笔记本休眠一段时间后无线网卡断开及原因分析(S0休眠?S3休眠?)
特征
显示无线网卡未连接,就好像它不存在一样。但重启后又能出现。
探索
网上的解决办法都是在设备管理器中找到无线网卡,电源管理中取消勾选【允许计算机关闭此设备以节约电源】。但我找不到电源管理选项。
另外解决办法还要更改电源选项中的电源计划,但我甚至找不到【高性能】的选项,只有平衡模式。
网上有些帖子会说修改注册表 HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Power 里面的CsEnabled 选项将1改为0重启就可以了,但实际上Windows 20h2 取消了 CsEnabled 来设置性能,需要指令调用。
解决办法
在命令行中执行
reg add HKLM\System\CurrentControlSet\Control\Power /v PlatformAoAcOverride /t REG_DWORD /d 0
,再去找电源管理。
分析
PlatformAoAcOverride:此键值用于控制与 Always On Always Connected (AOAC) 相关的功能。将此键值设置为 0 表示禁用或绕过 AOAC 功能,这可能有助于防止操作系统为了节能而意外地关闭无线网卡。
AOAC 由 Intel 公司提出,旨在电脑在睡眠或者休眠模式下仍然保持网络连接及资料传输。
在设置此键值前,系统是只支持S0睡眠的,添加完参数后只支持S3睡眠。
S0:计算机正常工作状态。(但实际上S0睡眠就是微软推出的Modern Standby功能,意在让电脑和智能手机一样待机,依旧可以联网接收通知)
S1: 最耗电的睡眠模式。CPU所有寄存器刷新,并且CPU停止执行指令。但是CPU、DIM电源没有掉。
S2: CPU电关闭,通常不用。
S3: 在任务挂到内存中,当唤醒后(S3->S0)状态,用户刚刚的工作可以恢复到睡眠前的相同状态。但是在这个状态下如果突然AC掉电,这样用户此前处理的数据将会丢失。
总结:添加 PlatformAoAcOverride 参数可以理解为关闭微软饱受诟病的 S0 睡眠,启用了传统的 S3 睡眠,顺带找回了被藏起来的各种电源模式,但是舍弃了键盘唤醒。【S0唤醒快,但有耗电发热、硬盘通电次数过多等问题。】
补充
AOAC 机器的判断方法:
用 MaciASL 打开 ACPI 的 FACP.aml ,搜索 Low Power S0 Idle ,如果=1即属于 AOAC 机器。如:
Low Power S0 Idle (V5) : 1
查看当前睡眠状态:
打开终端运行powercfg -a
恢复S0现代睡眠:
reg delete HKLM\System\CurrentControlSet\Control\Power /v PlatformAoAcOverride
参考资料
https://blog.csdn.net/qq_37768954/article/details/139098434
https://www.bilibili.com/read/cv25201459/
https://blog.csdn.net/sinat_30603081/article/details/130637807