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


Проверка ошибок 0x109: CRITICAL_STRUCTURE_CORRUPTION

Проверка ошибок CRITICAL_STRUCTURE_CORRUPTION имеет значение 0x00000109. Это означает, что ядро обнаружило критически важный код ядра или повреждение данных.

Внимание

Эта статья предназначена для программистов. Если вы являетесь клиентом, который получил код ошибки синего экрана при использовании компьютера, см. статью "Устранение неполадок синим экраном".

Параметры CRITICAL_STRUCTURE_CORRUPTION

Параметр Описание

1

Зарезервировано

2

Зарезервировано

3

Зарезервировано

4

Тип поврежденного региона. (См. следующую таблицу далее на этой странице.)

Значение параметра 4 указывает тип поврежденного региона.

Параметр 4 Тип поврежденного региона, типа повреждения или типа действий, которые вызвали повреждение

0x0

Универсальный регион данных

0x1

Изменение функции

0x2

Таблица отправки прерываний процессора (IDT)

0x3

Глобальная таблица дескриптора процессора (GDT)

0x4

Повреждение списка процессов типа 1

0x5

Повреждение списка процессов типа 2

0x6

Изменение подпрограммы отладки

0x7

Критическое изменение MSR

0x8

Тип объекта

0x9

Процессор IVT

0xA

Изменение функции системной службы

0xB

Универсальный регион данных сеанса

0xC

Изменение функции сеанса или PDATA

0xD

Изменение таблицы импорта

0xE

Изменение таблицы импорта сеансов

0xF

Изменение выноски Ps Win32

0x10

Изменение подпрограммы переключения отладки

0x11

Изменение распределителя IRP

0x12

Изменение диспетчера вызовов драйвера

0x13

Изменение диспетчера завершения IRP

0x14

Изменение сделки IRP

0x15

Регистр элемента управления процессором

0x16

Критическое изменение регистра элемента управления с плавающей запятой

0x17

Изменение локального APIC

0x18

Изменение выноски уведомления ядра

0x19

Изменение списка загруженных модулей

0x1A

Повреждение списка процессов типа 3

0x1B

Повреждение списка процессов типа 4

0x1C

Повреждение объекта драйвера

0x1D

Изменение объекта обратного вызова исполнительного руководства

0x1E

Изменение заполнения модуля

0x1F

Изменение защищенного процесса

0x20

Универсальный регион данных

0x21

Несоответствие хэша страницы

0x22

Несоответствие хэша страницы сеанса

0x23

Загрузка изменения каталога конфигурации

0x24

Изменение перевернутой таблицы функций

0x25

Изменение конфигурации сеанса

0x26

Расширенный регистр элемента управления процессором

0x27

Повреждение пула типа 1

0x28

Повреждение пула типа 2

0x29

Повреждение пула типа 3

0x101

Общее повреждение пула

0x102

Изменение win32k.sys

Причина

Как правило, существует три различных причины для этой проверки ошибки:

  1. Драйвер непреднамеренно или намеренно изменил критически важный код ядра или данные. Microsoft Windows Server 2003 с пакетом обновления 1 (SP1) и более поздними версиями компьютеров Windows для x64 не позволяют устанавливать исправления ядра, за исключением авторизованных исправлений, возникающих корпорацией Майкрософт.

  2. Разработчик попытался установить обычную точку останова ядра с помощью отладчика ядра, который не был подключен при запуске системы. Обычные точки останова (bp) можно задать только в том случае, если отладчик подключен во время начала. Точки останова процессора (ba) можно задать в любое время.

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

Разрешение

Расширение отладки !analyze отображает сведения о проверке ошибок и может оказаться полезным при определении первопричины.

Чтобы начать, проверьте трассировку стека с помощью команды k, kb, kc, kd, kp, kP, kv (Display Stack Backtrace). Номер процессора можно указать для проверки стека на всех процессорах.

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

Дополнительные сведения см. в следующих статьях:

Анализ аварийного дампа с помощью отладчиков Windows (WinDbg)

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

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

  • Если драйвер определен в сообщении проверки ошибок, отключите драйвер или обратитесь к изготовителю обновлений драйверов.

  • Запустите средство диагностики памяти Windows, чтобы проверить память. В поле поиска панели управления введите память и выберите " Диагностика проблем с памятью компьютера". После выполнения теста используйте средство просмотра событий для просмотра результатов в системном журнале. Найдите запись MemoryDiagnostics-Results, чтобы просмотреть результаты.

  • Можно попробовать запустить средство диагностики оборудования, предоставленное производителем системы.

  • Убедитесь, что любое новое оборудование, которое установлено, совместимо с установленной версией Windows. Например, можно получить сведения о требуемом оборудовании в спецификациях Windows 10.

  • Дополнительные общие сведения об устранении неполадок см. в разделе "Анализ данных с синим экраном".