Проверка ошибок 0x19: BAD_POOL_HEADER
Проверка ошибок BAD_POOL_HEADER имеет значение 0x00000019. Это означает, что заголовок пула поврежден.
Внимание
Эта статья предназначена для программистов. Если вы являетесь клиентом, который получил код ошибки синего экрана при использовании компьютера, см. статью "Устранение неполадок синим экраном".
Параметры BAD_POOL_HEADER
Параметр 1 указывает тип нарушения. Значение других параметров зависит от значения параметра 1.
Параметр 1 | Параметр 2 | Параметр 3 | Параметр 4 | Причина ошибки |
---|---|---|---|---|
0x2 |
Проверяемая запись пула |
Размер блока пула |
0 |
Не удалось выполнить проверку шаблона специального пула. (Владелец, скорее всего, поврежден блок пула.) |
0x3 |
Проверяемая запись пула |
Значение flink freelist для обратного чтения |
Значение свободного списка для обратного чтения |
Бесплатный список пула поврежден. (В здоровом списке значения параметров 2, 3 и 4 должны совпадать.) |
0x5 |
Одна из записей пула |
Зарезервировано |
Другая запись пула |
Пара смежных записей пула содержит заголовки, которые противоречат друг другу. По крайней мере один из них поврежден. |
0x6 |
Одна неправильно вычисляемая запись |
Зарезервировано |
Недопустимая запись, из-за которой произошла ошибка |
Предыдущий размер заголовка блока пула слишком велик. |
0x7 |
0 |
Зарезервировано |
Недопустимая запись пула |
Размер заголовка блока пула поврежден. |
0x8 |
0 |
Зарезервировано |
Недопустимая запись пула |
Размер заголовка блока пула равен нулю. |
0x9 |
Одна неправильно вычисляемая запись |
Зарезервировано |
Недопустимая запись, из-за которой произошла ошибка |
Размер заголовка блока пула поврежден (он слишком велик). |
0xA |
Запись пула, которая должна была быть найдена |
Зарезервировано |
Виртуальный адрес страницы, содержащей запись пула |
Размер заголовка блока пула поврежден. |
0xD, 0xE, 0xF, 0x23, 0x24, 0x25 |
Зарезервировано |
Зарезервировано |
Зарезервировано |
Заголовок пула освобожденного блока был изменен после освобождения. Это обычно не является ошибкой предыдущего владельца освобожденного блока; вместо этого обычно это (но не всегда) из-за блока, предыдущего освобожденного блока, перерасхода. |
0x20 |
Запись пула, которая должна была быть найдена |
Следующая запись пула |
Зарезервировано |
Размер заголовка блока пула поврежден. |
0X21 |
Указатель пула освобождается |
Количество байтов, выделенных для блока пула |
Поврежденное значение, найденное после блока пула |
Данные после освобождения блока пула повреждены. Как правило, это означает, что потребитель (стек вызовов) перезапустил блок. |
0X22 |
Освобожденный адрес |
Зарезервировано |
Зарезервировано |
Адрес, освобожденный, не содержит записи отслеживания. Обычно это связано с тем, что стек вызовов пытается освободить указатель, который уже освобожден или никогда не был выделен для начала. |
Причина
Пул уже поврежден во время текущего запроса.
Это может быть связано с вызывающим элементом.
Разрешение
Ссылки внутреннего пула должны быть описаны с помощью отладчика ядра, чтобы выяснить возможную причину проблемы.
Затем можно использовать специальный пул для тегов подозрительного пула или использовать параметр "Специальный пул" средства проверки драйверов для подозреваемого драйвера. Расширение !analyze может помочь в выявлении подозреваемого драйвера, но это часто не относится к повреждениям пула.
Чтобы собрать параметры кода остановки, выполните действия, описанные в разделе "Анализ ошибок проверки синих экранных данных". Используйте параметры кода остановки, чтобы определить конкретный тип поведения кода, который вы работаете для отслеживания.
Средство проверки драйверов
Средство проверки драйверов — это средство, которое выполняется в режиме реального времени для проверки поведения драйверов. Если он видит ошибки в выполнении кода драйвера, он заранее создает исключение, чтобы позволить, чтобы часть кода драйвера была более тщательно изучена. Диспетчер проверки драйверов встроен в Windows и доступен на всех компьютерах с Windows. Чтобы запустить диспетчер проверки драйверов, введите средство проверки в командной строке. Вы можете настроить драйверы, которые вы хотите проверить. Код, проверяющий драйверы, добавляет затраты по мере выполнения, поэтому попробуйте проверить наименьшее количество драйверов. Дополнительные сведения см. в разделе "Проверка драйверов".
Диагностика памяти Windows
Если эта проверка ошибок отображается несогласованно, она может быть связана с неисправной физической памятью.
Запустите средство диагностики памяти Windows, чтобы проверить память. В поле поиска панели управления введите память и выберите " Диагностика проблем с памятью компьютера". После выполнения теста используйте средство просмотра событий для просмотра результатов в системном журнале. Найдите запись MemoryDiagnostics-Results, чтобы просмотреть результаты.