26

Ноутбук (Windows 7) меня раздражал с того дня, как мы его получили. Когда его усыпляют (крышка закрыта), он, кажется, периодически просыпается случайным образом в течение ночи (то есть в 22:00, 1:30, 7:00 и т.д.) Есть много людей, испытывающих это, но я сделал несколько тестов и сделал многочисленные наблюдения, чтобы предоставить здесь как можно больше информации для диагностики проблемы.


Когда ноутбук просыпается посреди ночи, можно сделать несколько убедительных замечаний:

  • Он остается включенным примерно на 20-50 секунд (больше, меньше, меньше)
  • Экран остается выключенным (полностью, а не только подсветка)
  • Жесткий диск все время перебивают (индикатор HD почти не горит)
  • DVD-привод вращается и громко гудит в течение ~ 5-10 секунд, если в нем есть диск
  • Windows активна (шум PnP bing-bong воспроизводится, если диск / клавиатура и т.д. Был удален или подключен после того, как система была переведена в спящий режим)
  • (Неподтвержденный: нажатие клавиши - если она включена - не включит ее в следующий раз; необходимо использовать кнопку питания)
  • При следующем включении системы нет никаких признаков предыдущей случайной активности (использование powercfg -lastwake возвращает историю пробуждений и количество источников пробуждений, равное 0)

Другие наблюдения включают в себя:

  • Кажется, что не происходит, когда Windows выключена или находится в спящем режиме, только когда ее усыпляют (например, крышка закрыта)
  • В Windows 7 есть множество задач в планировщике задач, но быстрое сканирование, кажется, показывает, что ни одна из них не ответственна (хотя я включил историю, чтобы отслеживать)
  • (Я продолжаю пытаться поймать его, нажимая клавишу, чтобы показать экран, чтобы увидеть, что происходит, но это всегда происходит в неподходящий момент и отключается, прежде чем я получаю шанс)
  • Как и предположил Марк, я проверил журнал событий и нашел набор событий, которые пока являются лучшим ключом:

    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 настроен только проверять, а не загружать и делать это в полдень (не случайно)
  • Wake-on-LAN: WoL и Magic-Packet отключены в диспетчере устройств, в BIOS нет параметров, а кабельный модем выключен ночью
  • Устройства: все клавиатуры, мыши, сетевые карты настроены так, чтобы не разбудить систему (powercfg -devicequery wake_armed возвращает пустой список)
  • Вредоносное ПО: это новая система с последними обновлениями Windows и активным MSSE с последними версиями def, плюс внимательный просмотр с последним Chrome и без файлов, которые даже не вызывают сомнений.

У меня есть две теории относительно того, что это может быть:

  1. Гибридный сон

    В Windows Vista и более поздних версиях гибридный режим ожидания позволяет системе сначала перейти в спящий режим (приостановить работу в ОЗУ), а затем через некоторое время сбросить память на диск для перехода в спящий режим. Это может иметь смысл в том, что ноутбук спит, а затем в конечном итоге переключается в режим гибернации, поэтому он просыпается, чтобы сбросить память на диск.

    Это может сработать, поскольку вместо того, чтобы идти прямо в Windwos, BIOS POST и Windows «Resumes». Однако он должен переходить из спящего режима в спящий одновременно , а не случайно. Кроме того, этот конкретный ноутбук не имеет гибридного спящего режима.

    Кто-нибудь может подтвердить, как (на низком уровне), если гибридный сон работает так?

  2. Низкий уровень заряда батареи

    Когда батарея ноутбука разряжена, Windows автоматически переводит в спящий режим (конечно, Windows делает это до того, как батарея станет слишком разряженной, чтобы у нее оставалось достаточно энергии для выполнения режима гибернации). Когда это происходит, жесткий диск зависает в течение нескольких десятков секунд, а затем выключается. Похоже, что это соответствует поведению ноутбука, когда он случайно просыпается, тем более что батарея может достичь истощенной точки в случайное время.

    Проблема этой теории заключается в том, что, когда система включается после случайного пробуждения, она не печатает сообщение об отключении Windows из-за низкого заряда батареи, как это происходит всякий раз, когда происходит спящий режим из-за низкого заряда батареи во время работы.

    Кроме того, это означает, что Windows активна и обрабатывает (в некоторой степени), когда она спит или даже когда она уже должна быть выключена / находится в режиме гибернации.

    Кто-нибудь может подтвердить, что Windows активна и отслеживает уровень заряда батареи, когда она выключена?


Исходя из событий, похоже, что обновление системного времени является нормальным, когда система включается, так что это не так, но оно явно переходит из режима сна в режим гибернации через двенадцать часов после перехода в режим сна. Это сбивает с толку по трем причинам:

  • Текущий параметр - переходить в спящий режим после трех часов работы от батареи и шести часов при подключении к планам Balanced и Power Saver (четыре часа и совсем не с планом High Performance ). План энергосбережения в силе, и он был отключен сегодня утром, когда это произошло
  • Гибридный сон отключен в каждом тарифном плане
  • powercfg не имеет записи о том, что это происходит

Кто-нибудь знает, почему Windows просыпается случайным образом и проявляет вышеуказанные симптомы или почему настройки схемы электропитания кажутся неправильными?


Есть много людей, которые испытывают ноутбуки (всех марок и моделей), которые включаются случайным образом посреди ночи. К сожалению, большинство из них получают одинаковый набор ответов, которые, кажется, редко решают проблему.

Некоторые известные из них включают в себя:

  • Этот вопрос , кажется, такой же, как и пара замечаний, которые я сделал выше.
  • Этот вопрос, похоже, имеет ту же проблему, но с Linux.
  • Этот вопрос побудил меня отключить клавиатуру / мышь в случае, если чувствительность сенсорной панели установлена слишком низкой, но она все равно делает это.
  • Этот поток указывает на таймеры сна, но они уже отключены.

3 ответа3

17

Рискуя выглядеть глупо, я обнаружил следующее:

У меня тоже была такая же проблема. Я никогда не выключал свой ноутбук, я всегда переводил его в спящий режим, и он неожиданно просыпался посреди ночи. Я обнаружил, что это событие "S4 Doze to Hibernate" не ошибка, это особенность. Перейдите к расширенным настройкам питания и измените "спящий режим после" в выпадающем меню "спящий режим":

>

Выберите, как долго вы хотите подождать, прежде чем перейти в спящий режим из спящего режима. Я установил мой на 1440 минут (24 часа), что достаточно для того, чтобы остаться на ночь.

Кстати, также проверьте, что у вас ничего нет под "разрешить таймеры пробуждения".

Я не вижу, что вы говорите, что пытались это сделать, поэтому, если я пропустил, что вы указали на это, я прошу прощения за потраченное время.

5

SleepWakeSolution

Это решение для тех, кто хочет, чтобы их компьютеры больше никогда не выходили из спящего режима, а более простые решения не сработали. Ничто, кроме нажатия кнопки или открытия крышки, не разбудит ее. Не запланированные задачи, которые запланированы для пробуждения вашей системы, такие как 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. Он изменил SKUACSettingIndex на 0 из 1 в Win8 во всех вышеупомянутых категориях во время теста, что также можно сделать вручную через regedit в качестве альтернативы. Это позволяет включить схему питания с возможностью полностью отключиться от сна. Опять же, единственный минус, который я обнаружил, заключается в том, что ноутбук не перейдет в спящий режим, если батарея разряжается. Это просто умрет.

Важное замечание: После внесения изменений в конфигурацию может также потребоваться дополнительный шаг перехода к Панели управления / Параметры электропитания, а затем сброса текущей схемы электропитания до значений по умолчанию в дополнительных настройках. Затем пользователь может перенастроить вещи в соответствии со своими предпочтениями.

Во время моего теста командной строки на новой системе Win8 он, похоже, сбрасывал настройки электропитания на значения по умолчанию, поскольку после использования решения из командной строки у вещей снова появляются настройки времени ожидания по умолчанию. Также не было никаких сообщений о пробуждениях в течение тестового периода в Event Viewer /system.

Я также рассмотрел Просмотр событий в двух других системах, и в этих системах не было никаких пробуждений, так как я внедрил решение командной строки для них две недели назад.

Чтобы вернуть значения по умолчанию к исходным значениям, введите те же строки командной строки, но введите 1 для последнего символа вместо 0. Затем измените текущую схему питания на значения по умолчанию в параметрах питания.

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

На Win7 Pro вместо того, чтобы возиться с настройками реестра напрямую, вы можете использовать редактор групповой политики gpedit.msc > Computer Configuration > Administrative Templates > System > Power Management > Sleep Settings настроить его на свой вкус, перезагрузить.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .