(No Ratings Yet)
Данный стоп код означает, что произошла ошибка при работе с пулом. Более детальная информация может быть получена на основе анализа параметров стоп кода. Особенно важен параметр 1 который определяет тип ошибки (см. ниже).
Параметры стоп кода
Параметр 1 | Параметр 2 | Параметр 3 | Параметр 4 | Причина ошибки |
---|---|---|---|---|
0x00 | 0 | Тип пула | Тег пула | Текущим потоком был запрошен адрес пула по нулевому адресу |
0x01,0x02,0x04 | Указатель на заголовок пула | Первая часть содержимого заголовка пула | 0 | Заголовок пула поврежден |
0x06 | Зарезервировано | Указатель на заголовок пула | Содержимое заголовка пула | Текущий поток попытался освободить память пула, которая была ранее освобождена |
0x07 | Зарезервировано | Содержимое заголовка пула | Адрес блока пула, для которого была выполнена попытка освобождения памяти | Текущий поток попытался освободить память пула, которая была ранее освобождена |
0x08 | Текущий уровень IRQL | Тип пула | Размер выделения в байтах | Текущий поток попытался выполнить операцию выделения памяти в пуле при неправильном уровне IRQL |
0x09 | Текущий уровень IRQL | Тип пула | Адрес пула | Текущий поток попытался выполнить операцию выделения памяти в пуле при неправильном уровне IRQL |
0x0A | Адрес пула | Тег алокатора | Тег используемый в попытке освобождения | Текущий поток попытался выполнить освобождение памяти, используя неправильное значение тега |
0x0B,0x0C,0x0D | Адрес пула | Тег выделения пула | Указатель на неправильную квоту процессора | Текущий поток попытался выполнить освобождение квоты на неправильном адресе выделенного пула |
0x40 | Начальный адрес | Начало системного адресного пространства | 0 | Текущий поток выполнил попытку освободить память пула ядра по адресу из User Mode |
0x41 | Начальный адрес | Фрейм физической страницы | Наибольший адрес фрейма физической страницы | Текущий поток выполнил попытку освобождения не выделенной ранее памяти в неподкачиваемом пуле |
0x42,0x43 | Освобождаемый адрес | 0 | 0 | Текущий поток выполнил поток освобождения виртуального адреса, который никогда не принадлежал ни одному пулу |
0x44 | Начальный адрес | Зарезервировано | 0 | Текущий поток выполнил попытку освобождения памяти невыгружаемого пула ядра, которая ранее не выделялась |
0x46 | Начальный адрес | 0 | 0 | Текущий поток выполнил попытку освобождения памяти по неправильному адресу пула |
0x47 | Начальный адрес | Фрейм физической страницы | Наибольший адрес фрейма физической страницы | Текущий поток попытался выполнить операцию освобождения памяти в неподкачиваемом пуле, которая ранее не выделялась |
0x48 | Начальный адрес | Зарезервировано | Зарезервировано | Текущий поток попытался выполнить операцию освобождения памяти в подкачиваемом пуле, которая ранее не выделялась |
0x50 | Начальный адрес | Начало смещения, в страницах, от начала выгружаемого пула | Размер выгружаемого пула, в байтах | Текущий поток попытался выполнить операцию освобождения памяти в подкачиваемом пуле, которая ранее не выделялась |
0x60 | Начальный адрес | 0 | 0 | Текущий поток попытался выполнить освобождение непрерывной памяти по неправильному адресу (был выполнен вызов MmFreeContiguousMemory с неправильным указателем) |
0x99 | Освобождаемый адрес | 0 | 0 | Текущий поток выполнил попытку освободить память по неправильному адресу (этот код может также обозначать повреждение заголовка пула) |
0x9A | Тип пула | Количество запрошенных байтов | Тег пула | Текущий поток выполнил попытку запроса пула с флагом MUST_SUCCEED, который больше не поддерживается |
0x9B | Тип пула | Количество запрошенных байтов | Адрес вызывающего кода | Текущий поток выполнил попытку запрос пула с тегом 0 |
0x9C | Тип пула | Количество запрошенных байтов | Адрес вызывающего кода | Текущий поток выполнил запрос пула с тегом BIG |
0x9D | Неправильный тег пула | Тип пула | Адрес вызывающего кода | Текущий поток выполнил запрос пула с тегом, который не содержит цифр или букв |
0x41286 | Зарезервировано | Зарезервировано | Начало смещения от начала выгружаемого пула (в страницах) | Текущий поток выполнил попытку освобождения памяти выгружаемого пула в середине выделения |
Коды типов пулов _POOL_TYPE перечислены в Ntddk.h (в частности 0 – обозначает невыгружаемый пул, а 1 – выгружаемый).
Устранение
Если вы не разработчик драйверов – в первую очередь выполните тестирование памяти (см. Диагностика памяти с помощью Memtestx86+ и Как проверить память в Windows 7 встроенной утилитой mdsched)
Если вы разработчик – используйте Driver Verifier (см. Использование Driver Verifier для выявления проблемного драйвера)