Критическая ошибка ядра Windows (код события 41) "Система была перезагружена до корректного завершения ее работы" в Windows

Применимо к: Windows 10 Pro released in July 2015Windows 8 EnterpriseWindows 8

Проблема



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

Код события: 41
Описание: Система перегружена без корректного отключения.
Значок
 Примечание.
Значения переменных BugcheckCode и BugcheckParameter могут различаться.

Дополнительная информация


Ошибка питания ядра (код события 41) возникает в случае внезапного выключения или перезагрузки компьютера. При запуске компьютера под управлением Windows выполняется проверка, был ли компьютер выключен корректно. Если компьютер не был корректно выключен, возникает сообщение об ошибке питания ядра с кодом события 41.

Событие с кодом 41 используется для сообщений о том, что определенные неожиданные обстоятельства помешали Windows корректно завершить работу. Для однозначного определения происшедшего не всегда возможно собрать достаточно сведений. Для того чтобы определить условия события и потенциальное решение проблемы, важно знать, какие действия выполнялись компьютером, когда это событие произошло.

Если событие с кодом 41 зарегистрировано в журнале из-за прерывания питания компьютера, возможно, следует приобрести источник бесперебойного питания (ИБП). Это событие могло быть вызвано недостаточной мощностью источника питания или перебоями в его работе. Например, если проблема появилась после добавления ОЗУ, дополнительных устройств или жестких дисков, возможно, ее причиной является источник питания.


Событие с кодом 41 может произойти в следующих случаях:

Сценарий 1. Компьютер перезагружается, и в данных события есть стоп-ошибка BugcheckCode



При возникновении стоп-ошибки данные о ней сохраняются в событии с кодом 41 в качестве дополнительных сведений о событии. В некоторых случаях информацию о стоп-ошибке невозможно сохранить до перезагрузки или отключения компьютера. Эти случаи описаны в разделе "Сценарий 3".

Значок
 Примечание.
Данные BugcheckCode сохраняются в десятичном формате, а не в более типичном шестнадцатеричном. Поэтому десятичное значение следует преобразовать в шестнадцатеричное.

Если параметр стоп-ошибки BugcheckCo в кодах данных события не равен нулю, то значение BugcheckCode следует преобразовать из десятичного в шестнадцатеричное. Большая часть документации о кодах стоп-ошибок содержит шестнадцатеричные, а не десятичные значения. Для этого выполните указанные ниже действия.
  1. Нажмите кнопку Пуск, затем введите calc в поле Поиск.
  2. В меню выберите Вид, затем щелкните Программист.
  3. Убедитесь, что установлен флажок Dec в левой части калькулятора.
  4. Наберите на клавиатуре десятичное значение параметра BugcheckCode.
  5. Нажмите кнопку Hex в левой части калькулятора.
Значок
 Примечание.
Значение, отображаемое калькулятором, является шестнадцатеричным кодом. Повторите эти действия для других значений, не равных нулю.

Ниже приведен пример записи BugcheckCode стоп-ошибки события с кодом 41:

EventData
BugcheckCode 159
BugcheckParameter1 0x3
BugcheckParameter2 0xfffffa80029c5060
BugcheckParameter3 0xfffff8000403d518
BugcheckParameter4 0xfffffa800208c010
SleepInProgress false
PowerButtonTimestamp 0Converts to 0x9f (0x3, 0xfffffa80029c5060, 0xfffff8000403d518, 0xfffffa800208c010)


Значок
 Примечание.
Нули, с которых начинается код, как правило, не отображаются. После того как параметр BugcheckCode преобразован в шестнадцатеричный формат, он должен состоять из восьми цифр. Например, код 0x9F в документации указывается как 0x0000009f, а 0xA — как 0x0000000A. После того как шестнадцатеричное значение определено, перейдите на веб-сайт support.microsoft.com и найдите измененный шестнадцатеричный код (0x0000009f), используя в качестве поискового запроса "bugcheck".

Дополнительные сведения см. в следующей статье блога на сайте Microsoft TechNet:

Сценарий 2. Выключение компьютера выполнено нажатием и удержанием кнопки питания.

Кнопка питания была нажата и удерживалась нажатой не менее четырех секунд. Это действие зарегистрировано в данных о событии в виде записи PowerButtonTimestamp, значение которой отлично от нуля. В некоторых случая PowerButtonTimestamp не удается сохранить до перезагрузки или отключения компьютера. Эти случаи описаны в разделе "Сценарий 3".

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

Если для того, чтобы избежать проблемы, ограничивающей функциональность компьютера, приходится нажимать и удерживать кнопку питания, необходимо собрать информацию о проблемах, с которыми вы сталкиваетесь, чтобы получить помощь в устранении неполадок. Ключевые слова, которые можно использовать в качестве поискового запроса: "завис", "отвечает" или "черный экран".

Дополнительные сведения о ситуациях, в которых компьютер может перестать отвечать, см. в следующей статье базы знаний Майкрософт: 974476 Компьютер перестает отвечать, когда USB-устройство возвращается из режима выборочной приостановки USB в Windows 7 или в Windows Server 2008 R2

Для получения помощи в устранении неполадок перейдите на веб-сайт Майкрософт Поддержка для Windows 7.

Сценарий 3. Система случайным образом перезагружается, при этом BugcheckCode стоп-ошибки не регистрируется; кроме того, компьютер может полностью перестать отвечать (жесткая блокировка)

Код стоп-ошибки и PowerButtonTimestamp указаны с нулевым значением. Например, рассмотрим следующие сценарии.
  • Значение параметра BugcheckCode стоп-ошибки равно нулю. Определенные условия могут помешать сохранить данные BugcheckCode стоп-ошибки до перезагрузки или отключения компьютера. В этом случае сохраняется значение BugcheckCode, равное нулю. Кроме того, возможно, что стоп-ошибки не было и компьютер выключился из-за отключения питания. Например, портативный компьютер может отключиться подобным образом при полной разрядке аккумулятора или его изъятии. В случае настольного компьютера может быть выдернут кабель питания или произойти аварийное отключение электропитания.
  • Значение параметра PowerButtonTimestamp равно нулю. Определенные условия могут помешать сохранить данные PowerButtonTimestamp до перезагрузки или отключения компьютера. В этом случае сохраняется значение, равное нулю. Это происходит, если в тот момент, когда кнопка питания была нажата и удерживалась не менее четырех секунд, а операционная система выполняла действия, препятствующие записи события на диск. Эта же ситуация наблюдается в том случае, если было выключено питание компьютера, который был "жестко заблокирован" и поэтому не отвечал на ввод. Чтобы определить, не находится ли компьютер в подобном состоянии, попробуйте нажать клавишу CAPS LOCK для переключения индикатора CAPS на клавиатуре.
Чтобы убедиться, что создалась именно такая ситуация, нажмите клавишу CAPS LOCK. Если при этом индикатор CAPS LOCK на клавиатуре не изменил своего состояния, то компьютер не отвечает на ввод полностью (жесткая блокировка).

Подобная ситуация указывает, как правило, на проблемы с оборудованием. Чтобы устранить проблему, проверьте следующие аспекты.
  1. Разгон процессора: Отключите разгон (увеличение тактовой частоты) процессора и проверьте, возникает ли проблема, когда система работает на корректной скорости.
  2. Проверьте память: воспользуйтесь программой проверки памяти. Убедитесь, что все микросхемы памяти работают на одной частоте и правильно настроены в системе.
  3. Источник питания: убедитесь, что источник питания обеспечивает напряжение, достаточное для надлежащей работы всех установленных устройств. При добавлении памяти, установке нового процессора, дополнительных дисков или внешних устройств может потребоваться больше энергии, чем может обеспечить существующий источник.
  4. Перегрев: проверьте, не перегревается ли система, сверившись с показаниями температурных датчиков оборудования.
  5. По умолчанию: выполните сброс параметров системы к параметрам по умолчанию, чтобы проверить, возникает ли проблема, когда система работает в конфигурации по умолчанию.

Если компьютер генерирует стоп-ошибку, содержащую значение BugcheckCode, не указанное в событии с кодом 41, измените поведение компьютера при перезагрузке. Для этого выполните указанные ниже действия.
  1. Правой кнопкой мыши щелкните значок Мой компьютер и выберите пункт Свойства.
  2. Нажмите кнопку Дополнительные параметры системы.
  3. Откройте вкладку Дополнительно.
  4. В области Загрузка и восстановление нажмите кнопку Параметры.
  5. Снимите флажок в поле Перезапускать автоматически.