Co to jest format pliku MDMP?
Plik z rozszerzeniem .mdmp to plik systemowy utworzony przez system Windows w celu przechwycenia migawki pamięci i stanu procesu w momencie awarii. Jego nazwa to skrót od Windows Minidump. Pliki .mdmp mają format binarny i są zazwyczaj małe w porównaniu do pełnych zrzutów pamięci.
Plik jest tworzony za każdym razem, gdy wystąpi nieoczekiwana awaria - na przykład podczas „niebieskiego ekranu śmierci” (BSOD), co wskazuje na poważny błąd systemu lub oprogramowania. Zrzuty minidump jądra są przechowywane w folderze %SystemRoot%\Minidump\. Nazwa pliku koduje datę awarii w kolejności miesiąc-dzień-rok, po której następuje kolejny numer zrzutu - na przykład Mini081518-01.mdmp dla awarii z 15 sierpnia 2018 r.
Aplikacje trybu użytkownika mogą również generować pliki .mdmp programowo za pomocą API MiniDumpWriteDump w bibliotece DbgHelp.dll. Każdy plik .mdmp zaczyna się od czterobajtowej sygnatury ASCII MDMP na przesunięciu bajtowym 0, co odróżnia go od pełnych zrzutów jądra (zobacz .DMP), które używają sygnatury PAGEDUMP lub PAGEDU64. Usługa raportowania błędów systemu Windows może zapisywać pliki .mdmp wraz z raportami o awariach .WER.
Otwieranie plików .mdmp wymaga debugera, takiego jak WinDbg lub Visual Studio.
Bezpieczeństwo
RYZYKO: LOWPlik minidump to pasywne dane diagnostyczne i nie może zostać wykonany, więc jego otwarcie jest bezpieczne. Prawdziwym problemem jest prywatność: zrzut przechwytuje aktywną pamięć, która może zawierać fragmenty wszystkiego, co program posiadał - ścieżki plików, nazwy użytkowników, a w niektórych przypadkach hasła, tokeny lub zawartość dokumentów. Traktuj minidump z wrażliwej aplikacji jako dane poufne; udostępniaj go tylko zaufanym programistom/dostawcom. Uważaj na pliki o nazwach typu „coś.mdmp.exe” lub fałszywe „czytniki zrzutów” dołączone do oprogramowania reklamowego - otwieraj zrzuty tylko w oryginalnych narzędziach Microsoft (WinDbg/Visual Studio) lub renomowanych programach narzędziowych.
Szczegóły formatu
w pigułceProgramy otwierające pliki MDMP
Szczegóły techniczne
specyfikacja| Sygnatura pliku | ASCII „MDMP” (hex 4D 44 4D 50) na przesunięciu bajtowym 0 |
| Producent | Microsoft |
| Struktura formatu | Binarna; korzeniem jest MINIDUMP_HEADER, dane zorganizowane jako strumienie typowane wyliczane w MINIDUMP_DIRECTORY |
| Typ MIME | application/x-msdownload |
| API generowania | MiniDumpWriteDump() w DbgHelp.dll (Windows SDK); wyzwalane również automatycznie przez Raportowanie błędów systemu Windows |
| Ścieżka przechowywania minidump jądra | %SystemRoot%\Minidump\ (zazwyczaj C:\Windows\Minidump\) |
| Konwencja nazewnictwa plików | MiniMMDDYY-NN.mdmp - miesiąc, dzień, dwucyfrowy rok, kolejny numer awarii |
| Pole typu zrzutu | Wyliczenie MINIDUMP_TYPE osadzone w pliku kontroluje przechwyconą zawartość: MiniDumpNormal, MiniDumpWithHeap, MiniDumpWithFullMemory i inne |
| Przechwycone dane | Stosy wywołań wątków, lista załadowanych modułów, informacje o procesie i systemie; opcjonalnie zawartość sterty, tabela uchwytów, odładowane moduły |
| Pole wersji | 16-bitowa wersja implementacji na przesunięciu 4 w MINIDUMP_HEADER; obecna wartość to zazwyczaj 0xA793 |
| Odróżnienie od pełnych zrzutów jądra | Pełne zrzuty (MEMORY.DMP) używają sygnatury PAGEDUMP/PAGEDU64 i przechwytują całą pamięć RAM; .mdmp przechwytuje tylko wybrane dane na poziomie procesu |
| Platforma | Tylko Windows; brak natywnej obsługi w systemach Linux lub macOS (Wine może generować kompatybilne pliki dla procesów POSIX) |
| Rekord architektury procesora | Architektura przechowywana w strumieniu MINIDUMP_SYSTEM_INFO; obsługuje x86, x64, ARM i ARM64 w ramach tego samego formatu kontenera |
| Podstawowe narzędzia do analizy | WinDbg (Windows SDK / Microsoft Store), debuger Visual Studio, BlueScreenView, WhoCrashed |
| Wydano | Windows XP / Visual Studio era (MiniDumpWriteDump API, early 2000s) |
| Specyfikacja | learn.microsoft.com |
Konwersje MDMP
Pytania i odpowiedzi społeczności
pytania użytkownikówBrak pytań - bądź pierwszą osobą, która zapyta o pliki MDMP.