Поделиться через


Принудительное завершение работы системы с помощью кнопки питания

0x1C8 проверки ошибок: MANUALLY_INITIATED_POWER_BUTTON_HOLD ручной системный сбой можно выполнить, нажав и удерживая кнопку питания, если в приведенном разделе реестра задано следующее значение реестра:

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power]
"PowerButtonBugcheck"=dword:00000001

Чтобы включить функцию удержания кнопки питания вручную, выполните следующие команды в командной строке с повышенными привилегиями:

REG ADD HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power /v PowerButtonBugCheck /t REG_DWORD /d 0x1 /f

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

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

Ошибка проверка возникает, когда кнопка питания удерживается в течение 7 секунд, но освобождается до сброса UEFI через 10 секунд.

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

Важно отпустить кнопку питания, как только вы увидите этот экран. Если вы продолжаете удерживать кнопку питания дольше, вы можете активировать время ожидания питания встроенного ПО жесткого выключения, которое обычно составляет около 10 секунд. В этом случае дамп может не завершиться и может быть поврежден.

В некоторых системах, таких как ноутбуки ARM64, таймер встроенного ПО короче, поэтому вы должны отпустить кнопку питания сразу через 7 секунд, чтобы избежать прерывания завершения дампа при выключении питания.

Эта функция доступна в Windows 10 1809 или Windows Server 2019 и более поздней версии.

0x11C8 проверки ошибок: MANUALLY_INITIATED_POWER_BUTTON_HOLD_LIVE_DUMP

Вместо перезагрузки компьютера можно также создать динамический дамп с длительным удержанием кнопки питания (LPBH). Общие сведения о динамических дампах см. в разделе Справочник по коду динамического дампа ядра.

Чтобы включить функцию динамического дампа удержания кнопки Power Button, задается значение PowerButtonLiveDump в следующем разделе реестра:

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power]
"PowerButtonLiveDump"=dword:00000001

Чтобы включить функцию динамического дампа Power Button, выполните следующие команды из командной строки с повышенными привилегиями:

REG ADD HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power /v PowerButtonLiveDump /t REG_DWORD /d 0x1 /f

Если этот раздел реестра не существует, необходимо перезагрузить систему, чтобы это изменение вступило в силу.

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

Эта функция доступна в Windows 10 версии 22000 и более поздних версий.

Настройка PowerButtonLiveDump

Значение реестра PowerButtonLiveDump можно настроить, как показано ниже.

Имя Длина в битах Смещение от начала Значение Значение по умолчанию
Активировано 1 0 Если этот параметр установлен, динамический дамп кнопки питания включен. Н/Д
UserPages 1 1 Если этот параметр задан, запросит запись памяти пользовательского режима в динамическом дампе. 0
ГипервизорPages 1 2 Если этот параметр задан, запросит запись страниц гипервизора в динамическом дампе. 0
Зарезервировано 1 3 Зарезервировано Н/Д
TimeoutInSec 4 4 Укажите значение времени ожидания в секундах для записи динамического файла дампа. Допустимы только значения от 2 до 6 (включая 2 и 6). Если указано другое значение, будет использоваться значение времени ожидания по умолчанию — 5 секунд. 5
Зарезервировано 24 8 Зарезервировано Н/Д

Например, при выполнении следующей команды из командной строки с повышенными привилегиями будет включена функция PowerButtonLiveDump с включенными UserPages и TimeoutInSec 2. Ядро запросит запись файла полного динамического дампа, когда кнопка питания удерживается в течение 2 секунд.

REG ADD HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power /v PowerButtonLiveDump /t REG_DWORD /d 0x23 /f

Определение приоритетов PowerButtonBugcheck и PowerButtonLiveDump

Если powerButtonBugcheck и PowerButtonLiveDump настроены и включены на одном устройстве, powerButtonBugcheck будет возникать при вызове, а PowerButtonLiveDump — нет.

Поддержка устройств для длительного удержания кнопки питания (LPBH)

Для поддержки длительного удержания кнопки питания устройству требуется:

  • Кнопка питания на основе общего назначения ввода-вывода (GPIO)
  • Встроенное ПО для маршрутизации события питания в Windows Power Manager
  • Функция проверка ошибок, которая должна быть включена в реестре

См. также раздел

0x11C8 проверки ошибок: MANUALLY_INITIATED_POWER_BUTTON_HOLD_LIVE_DUMP

Показать внутри — 0x1C8 MANUALLY_INITIATED_POWER_BUTTON_HOLD проверки ошибок

Устройство кнопки ACPI