Windows 11: удержание кнопки питания 8 секунд сохраняет дамп ядра

Долгое удержание кнопки питания на Windows 11 — не просто грубое выключение. Примерно за четыре секунды до того, как железо снимает питание, ядро успевает снять аварийный дамп памяти. Microsoft называет такие события «long power button hold» (LPBH), а их разбором занимается отдельная команда, в которую входит ветеран компании Реймонд Чен. Он и объяснил, как именно работает эта механика.

Как ядро успевает снять дамп до выключения

Если держать кнопку питания на Windows 11 12 секунд, компьютер выключается на аппаратном уровне, не спрашивая операционную систему. Но за четыре секунды до этого ядро понимает, что пользователь пытается принудительно выключить машину, и начинает быстро снимать дамп ядра. Иногда четырёх секунд не хватает, и дамп получается неполным.

Цифра в 12 секунд не универсальна. Документация Microsoft для отладчика говорит об аппаратном выключении «обычно примерно через 10 секунд», а на некоторых ноутбуках с ARM64 — ещё раньше. В руководстве по Event ID 41 упоминаются принудительные выключения после удержания кнопки минимум четыре секунды. Если конкретный ноутбук снимает питание через пять секунд, дампа не будет вовсе.

Отдельно Windows фиксирует, был ли экран полностью чёрным. Такие дампы помечаются «black screen LPBH» и попадают к виртуальной команде, в которой состоит Чен. Причина может быть в сломанном видеодрайвере, в композиторе рабочего стола, отдающем чёрные пиксели исправному драйверу, или в том, что на экран ничего не выводится — например, из-за зависшего процесса.

Уходит ли дамп в Microsoft автоматически

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

Сам факт долгого нажатия при этом всё равно передаётся. В списке обязательных диагностических событий Microsoft есть поле LongPowerButtonPressDetected, которое «определяет, нажимал ли и удерживал ли пользователь кнопку питания».

Именно сочетание необязательных данных с памятью беспокоит администраторов: Microsoft предупреждает, что состояние памяти, зафиксированное при сбое, «может непреднамеренно включать части файла, с которым вы работали в момент проблемы». Что именно содержит дамп LPBH, вендор не уточнял.

Где проверить и отключить отправку

Настройка находится по пути Settings > Privacy & security > Diagnostics & feedback. Разверните раздел Diagnostic data: отключение «Send optional diagnostic data» убирает основное разрешение, которое Microsoft называет для сбора дампов. Отдельного переключателя для дампов кнопки питания нет, но этот же тумблер ограничивает и то, что собирает трекер GDID в Windows 11.

Кнопка «Delete diagnostic data» на той же странице не останавливает отправку данных и не очищает сведения, привязанные к учётной записи Microsoft, — их удаляют через панель конфиденциальности Microsoft. Логика та же, что и с отправкой файлов обновлений другим ПК: один переключатель управляет сразу несколькими каналами передачи данных.

Как убедиться, что выключение было аварийным

Проверьте журнал: Event Viewer > Windows Logs > System, событие Kernel-Power Event ID 41. Microsoft указывает, что при удержании кнопки питания записывается ненулевой PowerButtonTimestamp, а Windows 11 также показывает LongPowerButtonPressDetected на вкладке Details. Важная оговорка: Event ID 41 подтверждает только некорректное завершение работы и не доказывает, что дамп был сохранён.

Экран «отпустите кнопку питания» и Bug Check 0x1C8

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

Похожий экран Microsoft документирует давно. Если задан параметр реестра PowerButtonBugcheck, удержание кнопки в течение 7 секунд с отпусканием до 10-й секунды вызывает Bug Check 0x1C8. Вместо обычного экрана сбоя (который в Windows 11 и так уже чёрный) появляется надпись «Please release the power button. We just need a few more seconds to shut down.» со счётчиком процентов. Опция существует с Windows 10 версии 1809 и требует кнопки питания на базе GPIO. Чен предполагает, что подсказка в Insider-сборках заимствована оттуда, но Microsoft это не подтверждала.

Частые вопросы

Кого касается это поведение?

Всех, кто выключает зависший компьютер долгим удержанием кнопки питания на Windows 11. Дамп снимается автоматически, без действий пользователя.

Через сколько секунд снимается дамп?

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

Дамп уйдёт в Microsoft без моего согласия?

Сам файл дампа — нет, если не включена отправка необязательных диагностических данных. Факт долгого нажатия передаётся в рамках обязательных диагностических событий.

Где отключить отправку необязательных данных?

В разделе Settings > Privacy & security > Diagnostics & feedback, внутри Diagnostic data. Отдельного переключателя именно для дампов кнопки питания не предусмотрено.

Можно ли проверить, что компьютер выключился аварийно?

Да, по событию Kernel-Power Event ID 41 в журнале System. Ненулевой PowerButtonTimestamp и поле LongPowerButtonPressDetected указывают на удержание кнопки.

Значит ли Event ID 41, что дамп сохранён?

Нет. Событие подтверждает только некорректное завершение работы, а не успешное сохранение дампа ядра.

Почему дамп может быть неполным?

На снятие дампа отводится около четырёх секунд. Если прошивка выключает питание раньше — например, через пять секунд на некоторых ноутбуках, — дамп не успевает записаться.

Что делать, если хочется отдельного переключателя для дампов?

Такого переключателя в Windows 11 нет. Ограничить сбор можно только отключением необязательных диагностических данных, а удалять привязанные к учётной записи сведения придётся через панель конфиденциальности Microsoft.

Чёрный экран — всегда сбой Windows?

Нет. Чен вспоминает обращение в поддержку времён Windows 3.1: клиент не видел ничего после логотипа, потому что выставил все цвета в панели Colors на чёрный, включая текст окон.

Если на предприятии планируется переход на новую ветку, полезно заранее свериться с тем, что несёт обновление Windows 11 26H2 и сколько места оно потребует на диске.

Источник: windowslatest.com