Ошибка 0x00000044: MULTIPLE_IRP_COMPLETE_REQUESTS

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

ПАРАМЕТРЫ MULTIPLE_IRP_COMPLETE_REQUESTS:

Адрес IRP;
Зарезервированный параметр;
Зарезервированный параметр;
Зарезервированный параметр.

ПРИЧИНА

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

РЕШЕНИЕ

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

Для решения данной ошибки необходимо определить драйвер-виновник. В этом поможет статья “Анализ дампа памяти”. После чего его необходимо, либо удалить, либо переустановить.

Ошибка 0x00000043: NO_SUCH_PARTITION

Синий экран 0x00000043 указывает, что драйвер жесткого диска вызвал систему ввода-вывода, для изменения типа раздела, которого не существует.

Довольно редкая ошибка.

РЕШЕНИЕ

Для устранения ошибки воспользуйтесь статьей "11 рекомендаций по устранению BSoD".

Ошибка 0x00000041: MUST_SUCCEED_POOL_EMPTY

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

ПАРАМЕТРЫ MUST_SUCCEED_POOL_EMPTY:

Размер запроса, который не может быть удовлетворен;
Номер страниц, который были использованы из пула неподкачиваемой памяти;
Номер запросов из пула неподкачиваемой памяти, значение которых больше, чем PAGE_SIZE;
Номер доступных страниц.

ПРИЧИНА

В ОС Windows 2000 размер must-succeed пула очень мал. В Windows XP отсутствует возможность драйверов использовать must-succeed пул для выполнения своих команд.

РЕШЕНИЕ

Замените или переустановите драйвер, который выполняет запрос. Драйвер не должен запрашивать must-succeed пул. Вместо этого он должен использовать нормальный пул и корректно обработать сценарий, где пул временно пуст. Для выявления сбойного драйвера читайте статью "Анализ дампа памяти".

Анализ дампа памяти (аварийный дам памяти)

ОБЩИЕ СВЕДЕНИЯ ОБ АВАРИЙНОМ ДАМПЕ ПАМЯТИ

Все Windows-системы при обнаружении фатальной ошибки делают аварийный дамп (снимок) содержимого оперативной памяти и сохраняет его на жесткий диск. Существуют три типа дампа памяти:

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

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

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

НАСТРОЙКА СИСТЕМЫ

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

Для Windows Xp

Для Windows 7

Правой клавишей мыши нажать на значке Мой компьютер из контекстного меню выберите Свойства(или комбинация клавиш Win+Pause);

Переходите на вкладку Дополнительно;

В поле Загрузка и восстановление необходимо нажать кнопку Параметры;

В поле Запись отладочной информации выбираемМалый дамп памяти (64 Кб).

Правой клавишей мыши нажать на значке Компьютериз контекстного меню выберите Свойства (или комбинация клавиш Win+Pause);

В левом меню щелкаем на пункт Дополнительные параметры системы;

Переходите на вкладку Дополнительно;

В поле Загрузка и восстановление необходимо нажать кнопку Параметры;

В поле Запись отладочной информации выбираемМалый дамп памяти (128 Кб).

 

svojstvo sistemyzagruzka i vosstanovlenie

Проделав все манипуляции, после каждого BSoD в папке C:WINDOWSMinidump будет сохраняться файл с расширение .dmp. Также можно установить галочку на “Заменить существующий файл дампа”. В этом случае каждый новый аварийный дамп будет записываться поверх старого. Я не советую включать данную опцию.

АНАЛИЗ АВАРИЙНОГО ДАМПА ПАМЯТИ С ПОМОЩЬЮ ПРОГРАММЫ BLUESCREENVIEW

Итак, после появления синего экрана смерти система сохранила новый аварийный дамп памяти. Для анализа дампа рекомендую использовать программу BlueScreenView. Её можно бесплатно скачать тут (у меня русифицированная версия, поэтому рекомендую скачать ещё файл русского языка). Программа довольно удобная и имеет интуитивный интерфейс. После её установки первое, что необходимо сделать – это указать место хранение дампов памяти в системе. Для этого необходимо зайти в пункт меню "Настройка" и выбрать "Дополнительные параметры". И в открывшемся окне выбираем радиокнопку "Загрузить из этой папки минидампов:" и указываем папку, в которой хранятся дампы. Если файлы хранятся в папке C:WINDOWSMinidump можно нажатием кнопки “По умолчинию”. Нажимаем "OK" и попадаем в интерфейс программы.

dopolnitelnye parametry

Программа состоит из трех основных блоков:

Блок главного меню и панель управления;

Блок списка аварийных дампов памяти;

В зависимости от выбранных параметров может содержать в себе:

список всех драйверов находящихся в оперативной памяти до появления синего экрана (по умолчанию);

список драйверов находящихся в стеке оперативной памяти;

скриншот BSoD;

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

BlueScreenView

В блоке списка дамп памяти (на рисунке помечен цифрой 2) выбираем интересующий нас дамп и смотрим на список драйверов, которые были загружены в оперативную память (на рисунке помечен цифрой 3). Розовым цветом окрашены драйвера, которые находились в стеке памяти. Они то и являются причиной появления BSoD. Далее переходите в Главное меню драйвера, определяйте к какому устройству или программе они принадлежат. В первую очередь обращайте внимание на не системные файлы, ведь системные файлы в любом случае загружены в оперативной памяти. После определения сбойного драйвера, необходимо его либо обновить, либо удалить из системы.

Для того чтобы программа показывала список драйверов находящихся в стеке памяти во время возникновения BSoD необходимо зайти в пункт меню "Настройки" кликаем на меню "Режим нижнего окна" и выбираем "Только драйверы, найденные в креш-строке" (или нажмите клавишу F7), а для показа скриншота ошибки выбираем "Синий экран BSoD в сите XP" (клавиша F8). Что бы вернуться к списку всех драйверов, необходимо выбрать пункт "Все загруженные драйверы" (клавиша F6).

Поиск по сайту

Дополнительно