笔记本电脑随机唤醒=休眠/电池电量低?


26

自从我们买到那天以来,一台(Windows 7)笔记本电脑就一直困扰着我。当它被置于睡眠状态(盖子关闭),它似乎间歇性地醒来随机在夜间(即晚上10点,凌晨1:30,早上7点,等等)有很多人经历了这一点,但我做了几个测试并进行了大量观察,以在此处提供尽可能多的信息来诊断问题。


当笔记本电脑在半夜醒来时,可以观察到一些明显的现象:

  • 它会持续约20至50秒(多于几秒钟,少得多)
  • 屏幕保持关闭状态(完全不只是背光)
  • 硬盘一直晃动(HD LED几乎稳定)
  • 如果其中有光盘,则DVD驱动器旋转并大声呼喊约5-10秒
  • Windows处于活动状态(如果在系统进入睡眠状态卸下或插入驱动器/键盘等,则会播放PnP bing-bong噪音)
  • (未经确认:按下键(如果已启用)将不会在下次打开;必须使用电源按钮)
  • 下次打开系统时,不会显示先前的随机活动(使用会powercfg -lastwake返回“ 唤醒历史记录”和“ 唤醒源计数”为0)

其他观察结果包括:

  • Windows关闭或进入休眠状态时似乎不会发生,仅当进入睡眠状态时(例如,机盖已关闭)
  • Windows 7中的“任务计划程序”中有无数任务,但是快速扫描似乎表明没有人负责(尽管我启用了历史记录功能)
  • (我一直试图抓住它并按下一个键以使屏幕显示以查看正在发生的事情,但是它似乎总是在不适当的时刻发生,并在获得机会之前关闭)
  • 正如Mark所建议的,我检查了事件日志,发现了一组迄今为止最好的线索:

    6:51:37pm The system is entering sleep.
              Sleep Reason: Button or Lid
    6:51:42am The system time has changed to ‎2012‎-‎08‎-‎21T10:51:42.500000000Z from ‎2012‎-‎08‎-‎20T22:51:39.080510600Z.
    6:51:42am-6:51:47am Six services were stopped…
    6:51:47am The system has resumed from sleep.
              Sleep Time: ‎2012‎-‎08‎-‎21T10:51:46.021150600Z
              Wake Time: ‎2012‎-‎08‎-‎21T10:51:44.010053500Z
              Wake Source: S4 Doze to Hibernate
    6:51:55am The system is entering sleep.
              Sleep Reason: Hibernate from Sleep
    

不是什么:

  • Windows更新:WU设置为仅检查而不下载,并且在中午(不是随机地)进行检查
  • 局域网唤醒:在设备管理器中都禁用了WoL和Magic-Packet ,BIOS中没有任何选项,并且夜间禁用了电缆调制解调器
  • 设备:所有键盘,鼠标,NIC均设置为不唤醒系统(powercfg -devicequery wake_armed返回空列表)
  • 恶意软件:这是一个新系统,具有最新的Windows更新和具有最新def的活动MSSE,以及使用最新的Chrome进行的仔细浏览,甚至没有任何可疑的文件

关于可能的情况,我有两种理论:

  1. 混合睡眠

    在Windows Vista及更高版本中,混合睡眠使系统首先进入睡眠状态(挂起到RAM),然后在一段时间后将内存刷新到磁盘以进入休眠状态。这可能是有道理的,因为笔记本电脑正在休眠,然后最终切换为休眠状态,因此它醒来以将内存刷新到磁盘。

    之所以可行,是因为BIOS POST和Windows“恢复”而不是直接进入Windwos。然而,它应该从睡眠到休眠状态的转变一样的时间,不随意。而且,此特定笔记本电脑没有启用混合睡眠。

    任何人都可以确认混合睡眠如何(在低水平上)工作吗?

  2. 低电量

    当笔记本电脑的电池电量太低时,Windows会自动进入休眠状态(当然,Windows会在电池电量太低之前执行此操作,以便它有足够的电量执行休眠操作)。执行此操作时,硬盘驱动器会抖动数十秒,然后关闭。这似乎与笔记本电脑随机唤醒时的行为相符,特别是因为电池可能在看似随机的时间到达耗尽点。

    这种理论的问题在于,在随机唤醒后打开系统时,它不会显示有关Windows电量不足而关闭Windows的消息,就像它在运行时由于电量不足而进入休眠状态时一样。

    此外,它暗示Windows在睡眠中或什至应该已经关闭/休眠时处于活动状态并正在处理(在某种程度上)。

    任何人都可以确认Windows是否处于活动状态并在“关闭”状态下监视电池电量吗?


根据这些事件,每次打开系统电源时,似乎更新系统时间都是正常的,因此并非如此,但是显然,它在进入睡眠状态后的十二小时从睡眠状态转换为休眠状态。这令人困惑,原因有以下三个:

  • 当前设置是在电池使用了三个小时,插入平衡省电计划的六个小时后进入休眠状态(四个小时,而对于高性能计划则完全不休眠)。该节电器计划实际上是今天早上当它发生时它拔掉
  • 在每个电源计划中均禁用混合睡眠
  • powercfg 没有任何记录

有谁知道为什么Windows会随机唤醒并出现上述症状,或者为什么电源计划设置似乎不正确?


一个很多经历在半夜上随机打开(所有品牌和型号)的笔记本电脑的人。不幸的是,他们中的大多数人都得到了同样的答复,似乎很少能解决问题。

一些著名的包括:

  • 这个问题似乎与我上面所做的一些观察是相同的。
  • 这个问题似乎也有相同的问题,但是对于Linux。
  • 这个问题使我在触摸板灵敏度设置过低的情况下关闭了键盘/鼠标,但是仍然可以。
  • 该线程指向睡眠计时器,但是它们已被禁用。

4
+1仅仅因为我喜欢这个问题,它的彻底性和背后的工作。这是一件美事。没关系的答案,我只是想享受更多的问题...;)
Everett

我认为您的第一句话也是您的解决方案:“当它进入睡眠状态(盖子关闭时)”。您确定“合上盖子” ==“正在休眠”吗?如果我没记错的话,关闭机盖的默认设置是待机状态,而不是休眠状态。转到配置屏幕->硬件和声音->能源管理->禁用屏幕时更改(左面板)->高级设置->更改“待机”(或睡眠或其他)和“开/关”按钮下的设置和盖子”。(我使用的是荷兰语Windows 7,并尝试了尽可能好的翻译,但可能会有所不同。)
BrtH 2012年

@BrtH,是的,默认情况下它设置为睡眠,但这不能解释为什么它会突然,随机,自发地再次打开。我一直在寻找可能导致其打开的硬件和软件触发器,但似乎没有一个适用。另外,我已经说过,使用实际的Shutdown或Hibernate命令时似乎不会发生。
Synetech

1
我想知道微软是否没有使用从睡眠到休眠的快捷方式。您的计算机正在睡眠。不用时,电池电量下降。计算机通过进入休眠状态来保护自己。您不会收到通知。如果Microsoft在计算机已经处于睡眠状态时使用了混合睡眠使用的相同代码(将其作为快捷方式使用),该怎么办?您没有使用该系统,所以谁在乎它进入休眠状态的原因是电源下降了(就像Hybrid系统不在乎一样)。我完成了,我只想尝试说些聪明的话。
埃弗里特

1
Windows系统事件日志说什么?似乎它睡觉或冬眠时应该有东西在里面。
马克·艾伦

Answers:


17

冒着显得愚蠢的风险,我发现了以下几点:

我也有同样的问题。我从未关闭过笔记本电脑,而是一直将其置于睡眠模式,并且它会在半夜意外唤醒。我发现此“ S4打ze睡”事件不是错误,它是一个功能。转到电源高级设置,然后在“睡眠”下拉菜单下更改“休眠后”:

在此处输入图片说明>

选择要从休眠模式进入休眠状态之前要等待的时间。我将我的时间设置为1440分钟(24小时),这足以过夜。

顺便说一句,还要检查“允许唤醒计时器”下没有任何东西。

我看不到您说您已经尝试过此操作,因此,如果我想念您指出来,我为您的浪费时间表示歉意。


如果它像设定的那样在两个小时后被唤醒,那么我可以接受它作为解释,但是在十二点之后它就这样做了,所以如果是原因,那么我不知道为什么它使用了错误的时间。
Synetech

“ 6:51:42 am系统时间已从2012-08-20T22:51:39.080510600Z更改为2012-08-21T10:51:42.500000000Z。->因为时钟关闭了12小时?
埃弗里特(Everett)

1
不,这不是从Internet时间服务器更新系统时间,只是指出已经过去了十二个小时。
Synetech

太阳耀斑?我开玩笑 我会在这里停止,我觉得自己正经尝试。
埃弗里特

我终于做了一个很好的测试。我将休眠时间设置为60分钟,在19:00:00关闭盖子,然后在19:59:50打开盖子。十秒钟后,笔记本电脑打开电源并正常运行。但是这一次,盖子打开了,所以我能够在关闭屏幕之前看到Windows登录屏幕一秒钟。我按了DVD弹出按钮,它打开了。我移动了光标并按下了触摸板按钮,但是什么也没发生。我按了一些键尝试登录,但是只有Windows默认的提示音。下次启动时,我检查了事件日志,是的,它记录了从S3到S4的状态更改。
Synetech

5

睡眠唤醒解决方案

对于那些希望自己的计算机不再从睡眠中醒来且更简单的解决方案无效的人们来说,这是一个解决方案。除了轻按按钮或打开外盖之外,其他都不会唤醒它。不是计划用来唤醒系统的计划任务,例如Windows Media Center或未知原因。我发现的唯一缺点是,如果电池电量太低,笔记本电脑将不会唤醒以进入休眠状态。它将失效,所有未保存的信息都将丢失。

打开命令提示符并运行以下命令:

powercfg -setacvalueindex scheme_current sub_sleep bd3b718a-0680-4d9d-8ab2-e1d2b4ac806d 0
powercfg -setdcvalueindex scheme_current sub_sleep bd3b718a-0680-4d9d-8ab2-e1d2b4ac806d 0
powercfg -setactive scheme_current

通过单击命令提示符窗口顶部的标题/编辑/粘贴,可以将它们复制并粘贴到命令提示符中。

这将更改当前电源使用方案的默认值,并阻止机器从睡眠状态中唤醒。

适用于以下注册表项:

HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Power\PowerSettings\238C9FA8-0AAD-41ED-83F4-97BE242C8F20\BD3B718A-0680-4D9D-8AB2-E1D2B4AC806D
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Power\User\PowerSchemes\381b4222-f694-41f0-9685-ff5bb260df2e\238c9fa8-0aad-41ed-83f4-97be242c8f20\bd3b718a-0680-4d9d-8ab2-e1d2b4ac806d
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Control\Power\PowerSettings\238C9FA8-0AAD-41ED-83F4-97BE242C8F20\BD3B718A-0680-4D9D-8AB2-E1D2B4AC806D
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Control\Power\User\PowerSchemes\381b4222-f694-41f0-9685-ff5bb260df2e\238c9fa8-0aad-41ed-83f4-97be242c8f20\bd3b718a-0680-4d9d-8ab2-e1d2b4ac806d
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\238C9FA8-0AAD-41ED-83F4-97BE242C8F20\BD3B718A-0680-4D9D-8AB2-E1D2B4AC806D
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\User\PowerSchemes\381b4222-f694-41f0-9685-ff5bb260df2e\238c9fa8-0aad-41ed-83f4-97be242c8f20\bd3b718a-0680-4d9d-8ab2-e1d2b4ac806d

以上已经过测试,可以在Win7和Win8中工作。在测试过程中,它将上述所有类别下的Win8中的SKUACSettingIndexa 0从a 修改为a 1,也可以通过regedit手动完成。这样可以实现完全禁用从睡眠中唤醒的电源方案。同样,我发现的唯一负面影响是,如果电池电量太低,笔记本电脑将不会唤醒以进入休眠状态。它会死的。

重要说明:在执行配置更改后,也可能需要执行以下附加步骤:进入“控制面板/电源选项”,然后在高级设置下将当前电源使用方案重置为默认值。然后,用户可以将事情重新调整回自己的偏好。

在新的Win8系统上进行命令提示符测试期间,它似乎已将电源设置重置为默认设置,因为在使用命令提示符解决方案后,事情再次具有其默认的超时设置。在测试期间,Event Viewer / system中也没有任何唤醒报告。

我还检查了其他两个系统上的事件查看器,并且自从两周前在它们上实施命令提示符解决方案以来,这些系统都没有任何唤醒。

要将默认值恢复为原始值,请输入相同的命令提示符行,但最后一个字符输入1,而不是0。然后在“电源选项”中将当前电源使用方案更改回默认值。

HKEY_USERS\S-1-5-19\Control Panel\PowerCfg - This lists the current Power Policy.

完全禁用自动开机有点麻烦,但是我想它对于某些无法正常运行的系统很有用。
Synetech

我发现在拉斯维加斯,有必要保护高端笔记本电脑在100度以上的几天内(在停放的汽车中)无法开机。我曾经翘曲过键盘,油炸的视频卡和热关机故障,这些故障引起了各种各样的悲伤和损失。它还避免了不必要的电池消耗。有些笔记本电脑会在很短的时间后重新进入睡眠状态,而其他笔记本电脑则可以保持打开状态,直到电池没电或如果将睡眠定时器设置为更长的时间会导致热关机。
保罗·金斯洛

我想说,在那种情况下,最好首先找出唤醒的原因,而不是仅仅阻止它的发生。系统不应无缘无故地开启,当然也不应无缘无故地保持开启。最好检查WoL,hybrid-sleep和device-wake选项,然后在其他方法无效的情况下将其阻止(例如,如果系统有故障)。
Synetech

1
尽管我的评论有点晚了...根据我自己的经验,通常几乎几乎不可能找到所有可能的原因,并且至少不可能知道所发现的原因是否全部。同样,在任何时候都可以通过软件添加新原因(例如计划任务)。考虑到手提电脑在包中打开很可能会损坏手提电脑(甚至在最坏的情况下甚至会引发火灾),因此完全禁用自动唤醒功能似乎很合理。这是目前没有操作系统正确的行为之一。
kdb 2014年

0

在Win7 Pro上,您可以使用组策略编辑器gpedit.msc > Computer Configuration > Administrative Templates > System > Power Management > Sleep Settings根据自己的喜好进行调整,然后重新启动,而不是直接摆弄注册设置。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.