Что означает код BSOD 58 (SYSTEM_UNWIND_PREVIOUS_USER)?

 
Также может означать:
КонстантаТипОС
ERROR_BAD_NET_RESPОшибка WindowsWindows
EDEADLOCKerrnoLinux
ESHUTDOWNerrnomacOS
EOWNERDEADerrnoSolaris
Предыдущий Следующий
SYSTEM_EXIT_OWNED_MUTEX SYSTEM_SERVICE_EXCEPTION

SYSTEM_UNWIND_PREVIOUS_USER

Недопустимая раскрутка стека через границу пользовательского режима и ядра для SYSTEM_UNWIND_PREVIOUS_USER

SYSTEM_UNWIND_PREVIOUS_USER имеет код проверки ошибки 0x0000003A. Эта проверка ошибки относится к обработке исключений и раскрутке стека. Она означает, что метаданные потока управления или стека не соответствовали ожидаемому переходу между пользовательским режимом и ядром.

Как читать дамп SYSTEM_UNWIND_PREVIOUS_USER

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

Что проверить для SYSTEM_UNWIND_PREVIOUS_USER

  • Используйте WinDbg для ручного исследования кадра ловушки и стека вызовов, не ограничиваясь выводом !analyze.
  • Проверьте драйверы, использующие обратные вызовы, системные вызовы или обращения к пользовательскому режиму.
  • Ищите повреждение памяти или перезаписанные адреса возврата.

Ссылки для SYSTEM_UNWIND_PREVIOUS_USER

Данные дампа для SYSTEM_UNWIND_PREVIOUS_USER

Для SYSTEM_UNWIND_PREVIOUS_USER сохраните полный дамп, четыре параметра bug check, точную сборку Windows, список загруженных модулей и временную шкалу событий непосредственно перед остановкой. AllStat описывает это состояние как «SYSTEM_UNWIND_PREVIOUS_USER»; эта формулировка указывает класс сбоя, а параметры и стек позволяют определить задействованный объект, драйвер, процессор или экземпляр подсистемы.

Порядок анализа для SYSTEM_UNWIND_PREVIOUS_USER

  • Запустите WinDbg !analyze -v, затем разберите документированное значение каждого параметра SYSTEM_UNWIND_PREVIOUS_USER, а не полагайтесь только на строку probably-caused-by.
  • Для SYSTEM_UNWIND_PREVIOUS_USER найдите самое раннее аномальное событие: обновление драйвера, изменение прошивки, сброс устройства, ошибку хранилища, отчёт Verifier, исчерпание ресурсов или зависание приложения, связанное с system / unwind / previous / user.
  • Для SYSTEM_UNWIND_PREVIOUS_USER сохраните в перечне модулей сторонние фильтры, драйверы безопасности, хранилища, графики и виртуализации; удаление данных до анализа дампа может скрыть ответственный путь.

Не перезагружайте многократно систему с SYSTEM_UNWIND_PREVIOUS_USER до сохранения дампа и журналов событий. Для SYSTEM_UNWIND_PREVIOUS_USER способ восстановления должен определяться компонентом из стека и параметров, а не только символьным именем stop-кода.

Данные дампа для SYSTEM_UNWIND_PREVIOUS_USER

Для SYSTEM_UNWIND_PREVIOUS_USER сохраните полный дамп, четыре параметра bug check, точную сборку Windows, список загруженных модулей и временную шкалу событий непосредственно перед остановкой. AllStat описывает это состояние как «SYSTEM_UNWIND_PREVIOUS_USER»; эта формулировка указывает класс сбоя, а параметры и стек позволяют определить задействованный объект, драйвер, процессор или экземпляр подсистемы.

Порядок анализа для SYSTEM_UNWIND_PREVIOUS_USER

  • Запустите WinDbg !analyze -v, затем разберите документированное значение каждого параметра SYSTEM_UNWIND_PREVIOUS_USER, а не полагайтесь только на строку probably-caused-by.
  • Для SYSTEM_UNWIND_PREVIOUS_USER найдите самое раннее аномальное событие: обновление драйвера, изменение прошивки, сброс устройства, ошибку хранилища, отчёт Verifier, исчерпание ресурсов или зависание приложения, связанное с system / unwind / previous / user.
  • Для SYSTEM_UNWIND_PREVIOUS_USER сохраните в перечне модулей сторонние фильтры, драйверы безопасности, хранилища, графики и виртуализации; удаление данных до анализа дампа может скрыть ответственный путь.

Не перезагружайте многократно систему с SYSTEM_UNWIND_PREVIOUS_USER до сохранения дампа и журналов событий. Для SYSTEM_UNWIND_PREVIOUS_USER способ восстановления должен определяться компонентом из стека и параметров, а не только символьным именем stop-кода.


Нужно найти другой код? Найти другой код состояния или ошибки.