0x00000044: MULTIPLE_IRP_COMPLETE_REQUESTS

#1 2021.04.27 14:23:44

0

Синий экран смерти 0x00000044 появляется при попытке драйвера завершить IRP, который уже завершен.

ПАРАМЕТРЫ MULTIPLE_IRP_COMPLETE_REQUESTS:
- Адрес IRP;
- Зарезервированный параметр;

ПРИЧИНА
Драйвер вызвал функцию IoCompleteRequest(), чтобы завершить IRP, но пакет уже завершен.

РЕШЕНИЕ
Данная ошибка сложна в выявлении, так как драйвер, который пытается завершить собственный пакет дважды, обычно не является источником проблемы. Более реальный вариант, когда два разных драйвера полагает, что им принадлежит один и тот же пакет, и каждый пытается его завершить. Первый запрос успешно выполняется, а второй вызывает BSoD 0x00000044.

Для решения данной ошибки необходимо определить драйвер-виновник.

ОБЩИЕ СВЕДЕНИЯ ОБ АВАРИЙНОМ ДАМПЕ ПАМЯТИ
Все Windows-системы при обнаружении фатальной ошибки делают аварийный дамп (снимок) содержимого оперативной памяти и сохраняет его на жесткий диск. Существуют три типа дампа памяти:

Полный дамп памяти – сохраняет все содержимое оперативной памяти. Размер снимка равен размеру оперативной памяти + 1 Мб (заголовок). Используется очень редко, так как в системах с большим объемом памяти размер дампа будет слишком большим.

Дамп памяти ядра – сохраняет информацию оперативной памяти, касающуюся только режима ядра. Информация пользовательского режима не сохраняется, так как не несет в себе информации о причине краха системы. Объем файла дампа зависит от размера оперативной памяти и варьируется от 50 Мб (для систем с 128 Мб оперативной памяти) до 800 Мб (для систем с 8 Гб оперативной памяти).

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