Фон для моего вопроса - я обновил память на своем ноутбуке (ASUS K75VJ) с 8 ГБ до 16 ГБ. Теперь с включенным режимом гибернации - 12 ГБ дискового пространства занято hiberfil.sys на моем диске C: SSD (что на самом деле не в порядке), и, кроме того, теперь требуется еще больше времени для выхода из режима гибернации (30+ секунд, обычно ближе к 1 минуте, с SSD-диска и с процессором i7 - чистая загрузка выполняется менее чем за 15 секунд).

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

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

Вопросы:

  • Можно ли отключить это пробуждение через 4 часа 15 минут?
  • Можно ли хотя бы сделать интервал более разумным, например, 12-24 часа? После того, как я уложил ноутбук спать вечером, я не хочу ни начинать с нуля, запустив сеанс очистки Windows, ни ждать 1 минуты, чтобы выйти из режима гибернации.
  • Есть ли способ предотвратить автоматическое отключение во время сна?

Моя самодиагностика пока показывает следующее:

  • Интервал от перехода в режим сна до автоматического пробуждения при выключении / спящем режиме составляет ~ 4:15 - копирование / вставка 3 записей из журнала системных событий

    Время сна: 2016-05-12T14: 33: 50.019310900Z Время пробуждения: 2016-05-12T18: 45: 34.841004500Z

    Время сна: 2016-05-12T09: 14: 51.924229400Z Время пробуждения: 2016-05-12T13: 26: 50.888176200Z

    Время сна: 2016-05-11T22: 02: 26.772657800Z Время пробуждения: 2016-05-12T02: 14: 14.856077600Z

    Wake Источник: Неизвестен

  • Автоматический выход из спящего режима (состояние S3) для перехода в режим гибернации (состояние S4), скорее всего, «спроектирован», хотя я не смог найти разумную спецификацию в этом отношении, самая близкая находится здесь с недостаточным количеством деталей - https: // msdn .microsoft.com / EN-US / библиотека / окна / настольные / aa373229 (v = vs.85) .aspx

  • В моей конфигурации у меня есть Sleep> Allow wake timers = Disable - для всех планов электропитания в Power Options (я их не менял)
  • Некоторые люди рекомендуют отключить состояние S3 в BIOS и вместо этого включить S2, но BIOS на моем ноутбуке просто не имеет соответствующей конфигурации :(

Приложение:

  • похоже, что после этого события «возобновить из сна» в системном журнале Windows

Источник: Power-Troubleshooter
Сообщение: система вышла из режима сна ...

... через 7-8 секунд появляется это событие (при включенном /hibernate)

Источник: Кернел-Пауэр
Сообщение: система входит в режим сна. Причина сна: API приложения

... или (с '/hibernate off'):

Источник: Кернел-Пауэр
Сообщение: диспетчер питания ядра инициировал переход выключения.

К сожалению, эта информация также не показывает ничего полезного для меня.

Обновить:

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

  • Основная идея - захватить событие «сна» с помощью задачи расписания для события № 42 Kerner-Power в журнале системных событий и запланировать действие, которое разбудит ноутбук через 3 часа (раньше, чем окна перейдут в спящий режим), но ... Похоже, что когда я нажимаю кнопку «Сон», ноутбук спит раньше, чем запланированное задание фиксирует это событие - оно фактически срабатывает «после», когда ноутбук просыпается вручную, а не перед сном.

  • Хорошо, это не проблема, чтобы положить в сон с помощью ярлыка, но ... кажется, нет никакого хорошего способа снова положить ноутбук в сон. Я попытался запланировать задание, которое запускается через 5 минут после пробуждения, и если ноутбук не используется в течение 1 минуты (т.е. я не разбудил его вручную), но это задание просто не запускается (я указал запускать заставку через 1 минуту бездействия). И это проблема.

Плюс есть некоторые подводные камни со всем этим:

  • Собственный способ перевести компьютер в спящий режим %windir%\System32\rundll32.exe powrprof.dll,SetSuspendState Standby самом деле находится в спящем режиме, если спящий режим включен. Эта точка исправлена сторонним инструментом 'nircmd.exe standby'

  • Установка времени запланированного задания с помощью SchTasks.exe имеет некоторую особенность - его формат даты отличается для SYSTEM (мм / дд / гггг) и для «текущего пользователя» (дд / мм / гггг), поэтому тестирование из командной строки не то же самое, что запуск из запланированных задач под учетной записью SYSTEM. Всегда нужно запускать запланированные задачи вручную, чтобы проверить результат.

0