Что такое формат файла MDMP?
Файл с расширением .mdmp - это системный файл, создаваемый Windows для фиксации снимка памяти и состояния процесса в момент сбоя. Его название является сокращением от Windows Minidump. Файлы .mdmp имеют бинарный формат и обычно имеют небольшой размер по сравнению с полными дампами памяти.
Файл создается каждый раз при возникновении непредвиденного сбоя - например, во время «синего экрана смерти» (BSOD), что указывает на серьезную системную или программную ошибку. Мини-дампы ядра хранятся в папке %SystemRoot%\Minidump\. Имя файла кодирует дату сбоя в порядке «месяц-день-год», за которым следует порядковый номер дампа - например, Mini081518-01.mdmp для сбоя, произошедшего 15 августа 2018 года.
Приложения пользовательского режима также могут генерировать файлы .mdmp программно через API MiniDumpWriteDump в библиотеке DbgHelp.dll. Каждый .mdmp начинается с четырехбайтовой ASCII-сигнатуры MDMP со смещением 0, что отличает его от полных дампов ядра (см. .DMP), которые используют сигнатуру PAGEDUMP или PAGEDU64. Windows Error Reporting может сохранять файлы .mdmp вместе с отчетами о сбоях .WER.
Для открытия файлов .mdmp требуется отладчик, такой как WinDbg или Visual Studio.
Безопасность и защита
РИСК: LOWМини-дамп - это пассивные диагностические данные, он не может исполняться, поэтому его открытие безопасно. Реальную проблему представляет конфиденциальность: дамп фиксирует «живую» память, которая может включать фрагменты того, что содержала программа - пути к файлам, имена пользователей, в некоторых случаях пароли, токены или содержимое документов. Относитесь к мини-дампу из конфиденциального приложения как к чувствительным данным; делитесь им только с доверенными разработчиками или вендорами. Остерегайтесь файлов с именами вида «что-то.mdmp.exe» или поддельных «программ для чтения дампов» с рекламным ПО - открывайте дампы только в подлинных инструментах Microsoft (WinDbg/Visual Studio) или проверенных утилитах.
Детали формата
в двух словахПрограммы, открывающие файлы MDMP
Технические подробности
глубокая спецификация| Сигнатура файла | ASCII «MDMP» (hex 4D 44 4D 50) со смещением 0 |
| Разработчик | Microsoft |
| Структура формата | Бинарная; корнем является MINIDUMP_HEADER, данные организованы в виде типизированных потоков, перечисленных в MINIDUMP_DIRECTORY |
| MIME-тип | application/x-msdownload |
| API генерации | MiniDumpWriteDump() в DbgHelp.dll (Windows SDK); также запускается автоматически службой Windows Error Reporting |
| Путь хранения мини-дампов ядра | %SystemRoot%\Minidump\ (обычно C:\Windows\Minidump\) |
| Соглашение об именовании файлов | MiniMMDDYY-NN.mdmp - месяц, день, двузначный год, порядковый номер сбоя |
| Поле типа дампа | Перечисление MINIDUMP_TYPE, встроенное в файл, управляет захваченным содержимым: MiniDumpNormal, MiniDumpWithHeap, MiniDumpWithFullMemory и другие |
| Захваченные данные | Стеки вызовов потоков, список загруженных модулей, информация о процессе и системе; опционально содержимое кучи, таблица дескрипторов, выгруженные модули |
| Поле версии | 16-битная версия реализации со смещением 4 в MINIDUMP_HEADER; текущее значение обычно 0xA793 |
| Отличие от полных дампов ядра | Полные дампы (MEMORY.DMP) используют сигнатуру PAGEDUMP/PAGEDU64 и захватывают всю оперативную память; .mdmp захватывает только выбранные данные на уровне процесса |
| Платформа | Только Windows; нативная поддержка Linux или macOS отсутствует (Wine может создавать совместимые файлы для процессов POSIX) |
| Запись архитектуры процессора | Архитектура хранится в потоке MINIDUMP_SYSTEM_INFO; поддерживает x86, x64, ARM и ARM64 в рамках одного формата контейнера |
| Основные инструменты анализа | WinDbg (Windows SDK / Microsoft Store), отладчик Visual Studio, BlueScreenView, WhoCrashed |
| Выпущен | Windows XP / Visual Studio era (MiniDumpWriteDump API, early 2000s) |
| Спецификация | learn.microsoft.com |
Конвертации MDMP
Вопросы и ответы сообщества
спрошено пользователямиВопросов пока нет - станьте первым, кто спросит о файлах MDMP.