2023-01-17 17:07:11
Об отключении Modern Standby
Историю этого режима электропитания и его названий я разбирал в блоге. Напомню, что Modern Standby дебютировал в Windows 8 у ноутбуков и планшетов приличного уровня. В те времена преимущества перед обычным сном выглядели очень перспективно для будущего мобильной Windows. Но на практике существенной пользы в плане UX оказалось немного. И вряд ли ее станет больше ввиду постепенного загнивания платформы UWP.
Проблем же с Modern Standby, как и с обычным сном, хватает - от фонового выжирания батареи до нежелательного пробуждения в сумке с последующим перегревом Источники этих проблем разнообразны - побочные эффекты от обновлений Windows, сторонние программы и драйверы, изъяны в прошивках устройств (aka UEFI BIOS). Диагностировать это все непросто, а хорошего решения может и не найтись.
На прошлой неделе в топ хабра вышла статья с кликбейтным заголовком и относительно большим количеством букв о проблемах автора с Modern Standby. Целью было поделиться серебряной пулей - способом отключения ненавистного режима. И я вспомнил, что этот метод валяется у меня в заметках с лета прошлого года. Тогда Anton Byzin подкинул в чат его описание в документации Microsoft, хотя и в разделе о Windows IoT.
reg add HKLM\System\CurrentControlSet\Control\Power /v PlatformAoAcOverride /t REG_DWORD /d 0
Для вступления в силу нужна перезагрузка. Твик деактивирует Modern Standby (режим S0 low power idle) и активирует обычный сон (режим S3). См. powercfg -a и System Power States.
Однако в другом разделе документации (общем описании режима) есть предупреждение: переключение между обычным сном и Modern Standby не предусмотрено в BIOS и не поддерживается без полной переустановки ОС. При этом неясно, требуется ли чистая установка (нежели переустановка поверх) и вообще в какой момент следует переключаться
Более того, Артём Федотов по моей просьбе экспериментировал с твиком на своем Surface Go и обнаружил, что после отключения Modern Standby и последующего возврата к нему поведение уже не было прежним. В частности, в режиме Modern Standby проигрывание музыки по Bluetooth стало отключаться примерно через 10 минут. С одной стороны, пропал связанный с этим повышенный расход батареи, а с другой - недолго музыка играла
При таких раскладах я рекомендую перед применением твика сделать полный бэкап системы
Как метко заметил в чате Kamil Zaripov, загуглив PlatformAoAcOverride, можно найти много боли. То есть разнообразных проблем, решать которые предлагается таким кардинальным способом. Но твик не гарантирует исправления всех проблем сна.
Например, в пробуждении могут быть виноваты таймеры powercfg -waketimers, а в повышенном расходе батареи - какой-нибудь драйвер. То есть проблема может перекочевать и в обычный сон. Кроме того, изготовители устройств с Modern Standby не тестируют их в режиме S3, поэтому не исключено появление новых косяков.
Отключение Modern Standby следует рассматривать как диагностический шаг или потенциальное решение, но не панацею.
Наконец, какие-то фичи могут напрямую зависеть от этого режима. А могут и не зависеть, даже если это заявлено. Так, для работы автоматического шифрования устройства формально нужна поддержка Modern Standby. Но по сути это требование к аппаратной платформе. На Surface Go после перехода на S3 поддержка шифрования продолжала отвечать обязательным требованиям
65 viewsGoletsa, 14:07