Расширенное устранение неполадок для идентификатора события 41: "Система перезагрузилась без чистого завершения работы в первую очередь".
Примечание.
Домашние пользователи: эта статья предназначена для агентов поддержки и ИТ-специалистов. Если вы ищете дополнительные сведения о сообщениях об ошибках синего экрана, посетите страницу "Устранение неполадок синим экраном".
Предпочтительный способ завершить работу Windows — выбрать пункт "Пуск", а затем выбрать параметр для отключения или отключения компьютера. При использовании этого стандартного метода операционная система закрывает все файлы и уведомляет запущенные службы и приложения, чтобы они могли записывать все несохраненные данные на диск и сбрасывать все активные кэши.
Если компьютер непредвиденно завершает работу, Windows записывает идентификатор события 41 при следующем запуске компьютера. Текст события похож на следующие сведения:
Event ID: 41
Description: The system has rebooted without cleanly shutting down first.
Это событие указывает, что некоторые непредвиденные действия не позволили Windows правильно завершить работу. Такое завершение работы может быть вызвано прерыванием питания или ошибкой остановки. Если это возможно, Windows записывает все коды ошибок по мере завершения работы. На этапе ядра следующего запуска Windows Windows проверяет наличие этих кодов и включает в себя все существующие коды в данных события идентификатора события 41.
EventData
BugcheckCode 159
BugcheckParameter1 0x3
BugcheckParameter2 0xfffffa80029c5060
BugcheckParameter3 0xfffff8000403d518
BugcheckParameter4 0xfffffa800208c010
SleepInProgress false
PowerButtonTimestamp 0Converts to 0x9f (0x3, 0xfffffa80029c5060, 0xfffff8000403d518, 0xfffffa800208c010)
Использование идентификатора события 41 при устранении неполадок с непредвиденным завершением работы или перезапуском
По себе идентификатор события 41 может не содержать достаточно сведений для явного определения того, что произошло. Как правило, необходимо также рассмотреть то, что произошло во время неожиданного завершения работы (например, сбой питания). Используйте сведения в этой статье, чтобы определить подход к устранению неполадок, подходящий для ваших обстоятельств:
- Сценарий 1. Компьютер перезапускается из-за ошибки остановки, а идентификатор события 41 содержит код ошибки остановки (проверка ошибок)
- Сценарий 2. Компьютер перезагрузится, так как вы нажали и удерживали кнопку питания
- Сценарий 3. Компьютер не отвечает или случайно перезагружается, а идентификатор события 41 не записывается в журнал или запись Event ID 41 содержит значения кода ошибки нуля
Сценарий 1. Компьютер перезапускается из-за ошибки остановки, а идентификатор события 41 содержит код ошибки остановки (проверка ошибок)
Когда компьютер завершает работу или перезапускается из-за ошибки остановки, Windows включает данные об ошибке остановки в коде события 41 в составе дополнительных данных о событиях. Эти сведения включают код ошибки Stop (также называемый кодом проверки ошибок), как показано в следующем примере:
EventData
BugcheckCode 159
BugcheckParameter1 0x3
BugcheckParameter2 0xfffffa80029c5060
BugcheckParameter3 0xfffff8000403d518
BugcheckParameter4 0xfffffa800208c010
Примечание.
Идентификатор события 41 содержит код проверки ошибок в десятичном формате. Большая часть документации, описывающая коды проверки ошибок, ссылается на коды как шестнадцатеричные значения вместо десятичных значений. Чтобы преобразовать десятичное значение в шестнадцатеричное, выполните следующие действия:
- Нажмите кнопку "Пуск", введите calc в поле поиска и выберите "Калькулятор".
- В окне калькулятора выберите "Просмотр>программиста".
- В левой части калькулятора убедитесь, что выделен дек .
- Используйте клавиатуру, чтобы ввести десятичное значение кода проверки ошибки.
- В левой части калькулятора выберите шестнадцатеричное значение.
Отображаемое калькулятором значение теперь является шестнадцатеричным кодом.
При преобразовании кода проверки ошибок в шестнадцатеричный формат убедитесь, что за обозначением "0x" следует восемь цифр (т. е. часть кода после "x" содержит достаточно нуля для заполнения восьми цифр). Например, 0x9F обычно документируются как 0x0000009f и 0xA документируются как 0x0000000A. В случае примера данных о событиях в этой статье "159" преобразуется в 0x0000009f.
После определения шестнадцатеричного значения используйте следующие ссылки, чтобы продолжить устранение неполадок:
- Дополнительные способы устранения STOP-ошибок или "синего экрана".
- Справочник по коду проверки ошибок. На этой странице перечислены ссылки на документацию для различных кодов проверки ошибок.
- Как выполнить отладку синим экрана в режиме ядра (для начинающих).
Сценарий 2. Компьютер перезагрузится, так как вы нажали и удерживали кнопку питания
Так как этот метод перезапуска компьютера вмешивается в операцию завершения работы Windows, рекомендуется использовать этот метод только в том случае, если у вас нет альтернативы. Например, этот подход может потребоваться использовать, если компьютер не отвечает. При перезапуске компьютера, нажав и удерживая кнопку питания, компьютер регистрирует идентификатор события 41, содержащий ненулевое значение для записи PowerButtonTimestamp .
<EventData>
<Data Name="BugcheckCode">0</Data>
<Data Name="BugcheckParameter1">0x0</Data>
<Data Name="BugcheckParameter2">0x0</Data>
<Data Name="BugcheckParameter3">0x0</Data>
<Data Name="BugcheckParameter4">0x0</Data>
<Data Name="SleepInProgress">0</Data>
<Data Name="PowerButtonTimestamp">131728546170882432</Data>
<Data Name="BootAppStatus">0</Data>
</EventData>
Сведения об устранении неполадок при устранении неполадок с неответственным компьютером см . в справке Windows. Попробуйте найти помощь с помощью ключевых слов, таких как "зависание", "ответ" или "пустой экран".
Сценарий 3. Компьютер не отвечает или случайно перезагружается, а идентификатор события 41 не записывается или запись идентификатора события 41 или выводит значения кода ошибки нулевого значения
Этот сценарий включает следующие обстоятельства:
- Вы отключите питание на неответственном компьютере, а затем перезагрузите компьютер.
Чтобы убедиться, что компьютер не отвечает, нажмите клавишу CAPS LOCK на клавиатуре. Если при нажатии клавиши Caps lock light на клавиатуре не изменяется, компьютер может быть не отвечает (также известный как жесткое зависание). - Компьютер перезагрузится, но не создает идентификатор события 41.
- Компьютер перезагружает и создает идентификатор события 41, но значения BugcheckCode и PowerButtonTimestamp равны нулю.
В таких случаях что-то не позволяет Windows создавать коды ошибок или записывать коды ошибок на диск. Что-то может заблокировать доступ на запись к диску (как в случае неответственного компьютера) или компьютер может завершить работу слишком быстро, чтобы записать коды ошибок или даже обнаружить ошибку.
Сведения в идентификаторе события 41 содержат некоторые сведения о том, где начать проверку проблем:
Идентификатор события 41 не записывается, а код проверки ошибок равен нулю. Это поведение может указывать на проблему с питанием. Если питание компьютера прервано, компьютер может завершить работу без возникновения ошибки остановки. Если ошибка остановки возникает, может не завершить запись кодов ошибок на диск. При следующем запуске компьютера может не быть журнала идентификатора события 41. Или, если это делает, код проверки ошибок равен нулю. Следующие условия могут быть причиной:
- В случае переносимого компьютера батарея была удалена или сливалась.
- В случае с настольным компьютером компьютер был отключен или был отключен или был отключен от отключения питания.
- Питание недооставлено или неисправно.
Значение PowerButtonTimestamp равно нулю. Это может произойти, если вы отключили питание на компьютер, который не отвечает на входные данные. Следующие условия могут быть причиной:
- Процесс Windows блокирует доступ на запись к диску, и компьютер завершается, нажав и удерживая кнопку питания по крайней мере на четыре секунды.
- Вы отключили питание на неответственном компьютере.
Не удаляйте файл дампа и все значения — Ноль. Например:
<EventData> <Data Name="BugcheckCode">0</Data> <Data Name="BugcheckParameter1">0x0</Data> <Data Name="BugcheckParameter2">0x0</Data> <Data Name="BugcheckParameter3">0x0</Data> <Data Name="BugcheckParameter4">0x0</Data> <Data Name="SleepInProgress">0</Data> <Data Name="PowerButtonTimestamp">0</Data> <Data Name="BootAppStatus">0</Data> </EventData>
Однако существует идентификатор события 46, зарегистрированный volmgr: сбой инициализации дампа не удалось!. Это событие может произойти, если компьютер запущен без настроенного файла дампа. Файл дампа по умолчанию — это файл страницы.
Таким образом, если у вас есть случай с непредвиденным перезапуском и идентификатором события 41 имеется значение 0, проверьте, имеет ли у вас идентификатор события 46 по volmgr. В этом случае проверьте конфигурацию файла страницы. Непредвиденные перезагрузки по-прежнему могут произойти из-за ошибки, но система не может записать тип ошибки в идентификаторе события 41 и не мог также создать дамп памяти. Просмотр идентификатора события 46 при запуске компьютера
Как правило, симптомы, описанные в этом сценарии, указывают на проблему оборудования. Чтобы изолировать проблему, сделайте следующее:
- Отключите блокировку. Если на компьютере включена блокировка, отключите его. Убедитесь, что проблема возникает при правильной скорости работы системы.
- Проверьте память. Используйте средство проверки памяти для определения работоспособности и конфигурации памяти. Убедитесь, что все чипы памяти выполняются с одинаковой скоростью и правильно ли настроен каждый чип в системе.
- Проверьте питание. Убедитесь, что у питания достаточно мощности, чтобы соответствующим образом обрабатывать установленные устройства. Если вы добавили память, установите более новый процессор, установили больше дисков или добавили внешние устройства, такие устройства могут требовать больше энергии, чем текущий источник питания может обеспечить согласованно. Если компьютер зарегистрировал событие с идентификатором 41, так как питание компьютера было прервано, рассмотрите возможность получения бесперебойной питания (UPS), например резервного питания батареи.
- Проверьте перегрев. Проверьте внутреннюю температуру оборудования и проверьте наличие всех компонентов перегрева.
- Если компьютер является физическим компьютером, он может быть перезапущен программным обеспечением автоматического восстановления сервера (ASR), которое обнаружило, что компьютер не реагирует.
- Если система работает на виртуальной машине Hyper-V и не входит в кластеризованную среду, система может быть перезапущена функцией пульса Hyper-V. Если эта функция включена, и узел не обнаруживает пульс на виртуальной машине (возможно, так как он не отвечает), Hyper-V перезагрузит виртуальную машину.
- Если проблема возникает в кластеризованной среде Hyper-V, проблема может быть связана с включением мониторинга пульса для параметра виртуальной машины . См. файл дампа поврежденной памяти при попытке получить полный файл дампа памяти из виртуальной машины, работающей в среде кластера.
- Если проблема возникает с виртуальной машиной VMWare, она может быть связана с функцией пульса в VMWare или виртуальная машина является частью какого-либо стороннего кластера.
- Проверьте наличие любого подозрительного события до времени завершения работы (полученного из идентификатора события 6008) в журнале приложений и системы.
Если вы выполняете эти проверки и по-прежнему не сможете изолировать проблему, задайте системе конфигурацию по умолчанию и убедитесь, что проблема по-прежнему возникает.
Примечание.
Если отображается сообщение об ошибке остановки, включающее код проверки ошибок, но идентификатор события 41 не включает этот код, измените поведение перезагрузки компьютера. Для этого выполните следующие шаги.
- Щелкните правой кнопкой мыши мой компьютер, а затем выберите пункт "Дополнительные параметры> системы" свойств.>
- В разделе "Запуск и восстановление" выберите "Параметры".
- Снимите флажок "Автоматически перезапустить".
Дополнительная информация
Сведения об идентификаторе события 41
Ошибка события Ядра Power 41 возникает при неожиданном завершении или перезапуске компьютера. При запуске компьютера под управлением Windows выполняется проверка, чтобы определить, был ли компьютер выключен. В противном случае создается сообщение об идентификаторе события Ядра Power 41.
Идентификатор события 41 используется для сообщения о том, что произошло что-то неожиданное, что не позволило Windows правильно завершить работу. Возможно, недостаточно информации для явного определения того, что произошло. Дополнительные сведения см. в разделе "Ядро Power Event ID 41 ".
- Имя журнала: Система
- Продукт: операционная система Windows
- Идентификатор: 41
- Источник: Microsoft-Windows-Kernel-Power
- Уровень: критически важный
- Версия: 6.1
- Сообщение: система перезагрузилась без чистого завершения работы. Эта ошибка может быть вызвана, если система перестала отвечать, сбой или неожиданно потеряла мощность.
Примечание.
Время, отображаемое в evtx-файле, настраивается на время вашей системы. Проверьте часовой пояс сервера.
- Идентификатор события 41. Это событие означает, что Windows перезапущена без полного завершения работы.
- Идентификатор события 1074: это событие регистрируется, когда приложение отвечает за завершение работы системы или перезапуск. Он также указывает, когда пользователь перезагрузился или завершит работу системы с помощью меню "Пуск " или нажав клавиши CTRL+ALT+DEL.
- Идентификатор события 6006: это событие указывает, что Windows была достаточно отключена.
- Идентификатор события 6008: это событие указывает на неправильное или грязное завершение работы. Он регистрируется, когда последнее завершение работы было неожиданным.
Непосредственно перед завершением работы shutdown.exe
компьютера запишите событие завершения работы в журнале системы Windows с кодом Source=User32 и идентификатором события 1074 вместе с любым пользовательским кодом сообщения и причины.
Журнал событий — единственный способ сообщить о том, что перезагрузка активируется в shutdown.exe
ожидании. Событие также записывает имя пользователя и дату и время выдачи shutdown
команды.
При использовании shutdown.exe
для перезапуска сервера процесс завершения работы обычно разрешает 30 секунд, чтобы обеспечить остановку каждой запущенной службы. Службы завершаются в алфавитном порядке. Остановка служб вручную в определенном порядке или NET STOP
SC
может быть немного быстрее.
Файл состояния загрузки (из windows internals 6th)
Windows использует файл состояния загрузки (%SystemRoot%\Bootstat.dat) для записи того факта, что он прошел через различные этапы жизненного цикла системы, включая запуск и завершение работы.
Это позволяет диспетчеру загрузки, загрузчику Windows и средству восстановления запуска обнаруживать ненормальное завершение работы или завершить работу без очистки, чтобы предложить пользователям параметры восстановления и диагностической загрузки, такие как последний известный хороший и безопасный режим. Этот двоичный файл содержит сведения, с помощью которых система сообщает об успешном выполнении следующих этапов жизненного цикла системы:
- Загрузка (определение успешной загрузки совпадает с тем, что используется для определения состояния последнего известного хорошего состояния, описанного ранее).
- Завершение работы
- Возобновление работы с режимом гибернации или приостановки
Файл состояния загрузки также указывает, была ли обнаружена проблема при последней попытке пользователя загрузить операционную систему и отображаемые параметры восстановления, указывая, что пользователь был осведомлен о проблеме и принял меры. API библиотеки среды выполнения (Rtl) в ntdll.dll содержат частные интерфейсы, которые Windows использует для чтения и записи в файл. Как и bcD, он не может быть изменен пользователями.
О завершении работы
При завершении работы Windows отправляет сообщение WM_QUERYENDSESSION всем работающим приложениям, имеющим поток пользовательского интерфейса. Это сообщение просит приложение сохранить все несохраненные данные и завершить работу корректно. Если приложение не отвечает на сообщение в течение определенного периода времени, Windows отправляет WM_ENDSESSION сообщение приложению, которое немедленно завершает работу приложения.
Если все приложения реагируют на сообщение WM_QUERYENDSESSION и завершаются корректно, Windows регистрирует событие чистого завершения работы в журнале событий системы. Если любое приложение не отвечает на сообщение или завершается ненормально, Windows регистрирует событие грязного завершения работы в журнале событий системы.
Непредвиденные завершения работы в основном вызваны компонентами за пределами операционной системы.
Грязное завершение работы заключается в том, что компьютерная система завершает работу без прохождения правильного процесса завершения работы. Это может произойти, когда питание внезапно отключается или когда компьютер вынужден завершить работу, удерживая кнопку питания. Грязное завершение работы может привести к потере или повреждению данных, а также может привести к проблемам загрузки.
Реестр грязных завершений — это раздел реестра в реестре Windows, который используется для отслеживания времени завершения работы компьютерной системы, не выполняя надлежащий процесс завершения работы. Этот ключ может быть полезен при устранении неполадок при загрузке, чтобы определить, была ли система отключена неправильно.
Вы также можете очистить все значения (например, DirtyShutdown, LastAliveStamp, TimeStampInterval) в следующем разделе реестра: Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Reliability
Это может помочь предотвратить появление средства отслеживания событий завершения работы после неожиданного завершения работы.