Открываем дампы памяти DMP
Варианты открытия DMP
Расширение DMP зарезервировано за файлами дампов памяти: снимков состояния RAM в определённый момент работы системы или отдельного приложения, которые нужны разработчикам для последующей отладки. Такой формат используют сотни видов ПО, и рассмотреть их все в объёмах данной статьи невозможно. Наиболее же часто встречающийся тип DMP-документа – так называемый малый дамп памяти, где записаны подробности сбоя системы, который привёл к появлению синего экрана смерти, потому на нём и сосредоточимся.
Способ 1: BlueScreenView
Небольшая бесплатная утилита от разработчика-энтузиаста, основной функцией которой является предоставление возможности просмотра DMP-файлов. Не нуждается в установке на компьютер – достаточно распаковать архив в любое подходящее место.
- Для открытия отдельного файла нажмите на кнопку с иконкой программы на панели инструментов.
В окне «Advanced Options» отметьте чекбокс «Load a single Minidump File» и нажмите «Browse».
С помощью «Проводника» перейдите к папке с DMP-файлом, выделите его и нажмите «Открыть».
По возвращении в окно «Advanced Options» нажмите «ОК».
Утилита BlueScreenView рассчитана на продвинутых пользователей, потому её интерфейс может показаться сложным для новичка. Кроме того, доступна она только на английском языке.
Способ 2: Microsoft Debugging Tools for Windows
В составе среды разработки Windows SDK распространяется инструмент для отладки, который называется Debugging Tools for Windows. Приложение, рассчитанное на разработчиков, способно открывать в том числе и DMP-файлы.
- Для экономии места можно выбрать только Debugging Tools for Windows, отметив соответствующий пункт в процессе загрузки компонентов.
Запустить утилиту можно через «Пуск». Для этого откройте «Все программы», выберите «Windows Kits», а затем — «Debugging Tools for Windows».
Для запуска программы используйте ярлык «WinDbg».
Внимание! Для открытия DMP-файлов используйте только x64- или x86-версии дебаггера!
Утилита Debugging Tools for Windows ещё более сложная, чем BlueScreenView, и тоже не имеет русской локализации, однако предоставляет более подробную и точную информацию.
Заключение
Как видим, основную сложность при открытии DMP-файлов составляют сами программы, рассчитанные больше на специалистов, чем на рядовых пользователей.
Синий экран смерти. Анализ и расшифровка дампа памяти при BSOD
Windows вывалился в синий экран смерти. Что делать? Однозначного ответа на этот вопрос нет, так как вариантов лечения и расшифровки синих экранов смерти великое множество. Попробую рассказать как выявить причину синего экрана и диагностировать ошибку с вероятностью, близкой к 100%, а гадание оставим синоптикам.
На прошлой неделе ремонтировал компьютер на котором вылетал синий экран смерти с разными ошибками, чаще всего BAD_POOL_CALLER — stop 0x000000c2. Диагностируется данная ошибка довольно сложно, на его примере и попытаюсь рассказать как узнать причину возникновения по синего экрана смерти.
В процессе диагностики не обойтись без анализа специального файла minidump (дамп памяти) системы. Такие файлы создаются каждый раз после сбоя работы системы и содержат информацию о том, что к этому привело. Обычно все файлы minidump при BSOD сохраняются в папку C:\Windows\Minidump. Кроме того, имя файла содержит текущую дата его создания, чтобы не путаться когда возникла ошибка, если файлов много.
Проверьте, включено ли на вашем компьютере создание файлов minidump при сбое системы.
Анализ дампа памяти. Расшифровываем minidump.
Нам понадобится установить Debugging Tools for Windows и скачать утилиту непосредственно для расшифровки файла дампа kdfe.cmd
Распаковываем скрипт kdfe.cmd и кладем его непосредственно в корень диска диска C:\ или создаем каталог C:\dump. Тут уж как вам удобнее. В командной строке пишем:
Выведется список всех минидампов, из папки C:\Windows\Minidump\ и скрипт предложит указать какой именно дамп будем анализироваться, либо можно самостоятельно выбрать требуемый дамп при запуске скрипта:
На мой взгляд первый вариант удобнее. Пример того что выдал скрипт при анализе одного из дампов памяти:
Еще одно доказательство что лучше избавляться от этих дебильных Амиго и майлру агентов. Таким же образом можно выявить и другие ошибки, приводящие к BSOD.
Существует еще одна интересная утилитка BlueScreenView, часто встречается на загрузочных флешках-реаниматорах, о которой я уже писал ранее на страницах блога, но на мой взгляд менее понятная для новичков.
Если считаете статью полезной,
не ленитесь ставить лайки и делиться с друзьями.
Комментариев: 8
Спасибо за детальное описание. Помогло.
Не запускается kdfe.cmd , пишет — «Ошибка в синтаксисе команды»
Просто надо изменить эту утилиту.Открыть с помощью блокнота и изменить путь Debudding Tools.Там на какой то строке меняешь в двух-четырех местах вместо program files как у себя, например program files(x86).
Не помогло так как в cmd не находит выше написанное
У меня тоже была подобная ошибка при запуске
Сам догадался посмотреть сценарий и изменить
строку в файле kdfe.cmd
Вот что надо изменить и будет работать:
Я в таких случаях переустанавливал, пока диск не истерся до нечитаемого состояния. Потом линуха поставил.
98 % летит видяшник , подключитесь к встроенной в мамку.. и станет ясно ! удачи ..мужики !
Для начала, надо переписать саму ошибку, то есть например хх. 57 или что то типа того, бывают такие поломки как, полностью выход из строя жесткого диска, в таком случае никакой дамп вы уже не прочтете, у меня так было, поломка ssd диска, там было что то типа хх. 069, благо был рядом второй комп, нашел в инете расшифровку с разными ошибками и поломками, и так быстро установил причину синего экрана, после установки другого диска с системой, пока ssd был в ремонте, проблема исчезла сама собой.
Вадим Стеркин
Я когда-то писал в блоге про kdfe.cmd и BlueScreenView. Эти решения по-разному и со своими недостатками пытались решить задачу определения драйвера, вызвавшего критическую ошибку. Теперь они не нужны.
Сегодня я расскажу про утилиту MiniDumper (скачать), которая создавалась с учетом пожеланий специалистов, оказывающих поддержку в форуме устранения критических ошибок Windows. Ее автор – мой коллега по форуму simplix, который известен своими полезными разработками.
[+] Сегодня в программе
Сведения для обычных пользователей
При запуске утилита автоматически анализирует найденные в системе дампы за последний год и открывает отчет в текстовом редакторе.
Вы также можете перетащить на исполняемый файл утилиты отдельный дамп или папку с дампами.
С именем драйвера уже можно идти в гуглояндекс. Если дело в сторонней программе или драйвере, надо начинать с их удаления / обновления. В примере выше – драйвер ЛК.
В более сложных случаях следует обращаться в форум.
Сведения для специалистов поддержки
Ряд фич MiniDumper реализован по просьбам моего коллеги по форуму Petya V4sechkin. Поэтому утилита очень удобна для техподдержки.
Возможности утилиты
MiniDumper работает в Windows 7 (с обновлениями) и более новых ОС. В состав программы входят Debugging Tools for Windows. Все команды, которые передаются отладочной утилите, формируются динамически в зависимости от кода ошибки и результатов предыдущих команд. Помимо !analyze -v MiniDumper:
- Анализирует как обычный стек, так и Raw-стек (командой dps) на предмет сторонних модулей. Raw-стек имеет меньшую достоверность, чем обычный стек, поскольку может содержать не относящиеся к сбою фрагменты предыдущих цепочек вызовов. Но во многих случаях он оказывается полезен (например, когда обычный стек неполон или повреждён).
- Выполняет особую обработку для кодов 0x7A, 0x77 и части 0xF4 (связаны с ошибками дисковой подсистемы), а также для 0x9F.
- Сохраняет журнал отладочных команд в папке с дампом, в том числе сведения о конфигурации (!sysinfo) и информацию о проблемных драйверах (lmvm).
- Выводит сводные результаты анализа по всем обработанным дампам в файл MiniDumper.log, который сохраняется в папке с утилитой (пример).
Отладочная информация
При анализе утилита скачивает отладочную информацию (debug symbols) в %temp%\MiniDumper. После закрытия утилиты папка удаляется автоматически.
Если вы регулярно анализируете дампы, можете задать расположение символов с помощью системных переменных среды:
Запуск из командной строки
В качестве параметров командной строки MiniDumper принимает путь к дампу или папке с дампами, а также ключ /S для тихого режима (указывается перед путем к папке).
Заключение
QR-код с синего или зеленого экрана ведет в статью базы знаний, а там лишь общие рекомендации. Впрочем, недавно Microsoft опубликовала документацию по диагностике BSOD, где приводятся более конкретные советы для некоторых распространенных кодов ошибок, а также базовые инструкции по работе с WinDbg.
MiniDumper полностью автоматизирует анализ, упрощая задачу обычным пользователям и экономя время специалистам. Рекомендую!