Che cos'è il formato di file DMP?
I file .dmp vengono utilizzati all'interno di Windows come spazio per archiviare informazioni dopo un malfunzionamento del sistema. Catturano un'istantanea della memoria fisica (RAM) al momento del crash, consentendo a ingegneri e personale di supporto di diagnosticare la causa principale dopo l'evento.
I file .dmp vengono solitamente generati automaticamente quando si verifica un errore o un malfunzionamento, al fine di diagnosticare ed eliminare il problema. Sulle versioni precedenti di Windows (era XP), un'utilità chiamata Savedump.exe assisteva nella scrittura del dump durante il primo avvio dopo un crash; sui Windows moderni il kernel scrive il dump direttamente durante la sequenza della Blue Screen of Death. Ogni file .dmp porta una firma binaria: i minidump iniziano con i quattro byte magic MDMP (4D 44 4D 50) all'offset 0, mentre i dump completi del kernel iniziano con PAGEDUMP (32-bit) o PAGEDU64 (64-bit).
I file sono solitamente denominati Memory.dmp, ma si può anche incontrare la forma minidump - MiniMMGGAA-NN.dmp (M = mese, G = giorno, A = anno, NN = numero di sequenza) - memorizzata in %SystemRoot%\Minidump in modo che i singoli crash non vengano sovrascritti.
Tipi di dump di memoria generati in Windows:
- Full memory dump (Dump di memoria completo) - dopo la creazione, tutto il contenuto della RAM fisica viene memorizzato nel file
.dmp; può occupare una grande porzione di spazio su disco. Memorizzato in%SystemRoot%\Memory.dmpe sovrascritto se si verifica un altro malfunzionamento. - Kernel memory dump (Dump di memoria del kernel) - viene registrata solo la memoria in modalità kernel; la memoria assegnata ai programmi utente viene omessa. Memorizzato anch'esso come
%SystemRoot%\Memory.dmpe sovrascritto al crash successivo. - Small memory dump (minidump) - tipicamente 64 KB, contenente i parametri STOP, il contesto del processore PRCB, le strutture EPROCESS/ETHREAD per il thread interrotto e un elenco dei driver caricati. Memorizzato in
%SystemRoot%\Minidumpe non sovrascritto. - Automatic memory dump - introdotto in Windows 8, simile a un dump del kernel ma consente a Windows di dimensionare dinamicamente il file di paging per garantire che il dump possa essere salvato.
Una variante strettamente correlata è il file .mdmp (un minidump denominato esplicitamente), e Windows Error Reporting può anche produrre file companion .hdmp (heap dump). Sui sistemi Linux/Unix un concetto simile è il core dump. I crash dump possono essere analizzati con WinDbg, Microsoft Visual Studio (che può aprire direttamente i file .dmp per il codice gestito) o NirSoft BlueScreenView per una rapida ispezione dei minidump.
Sicurezza e incolumità
RISCHIO: MEDIUMUn file .dmp non è un eseguibile - aprirlo in un debugger non può infettarti. La vera preoccupazione riguarda la privacy: un dump di memoria completo (MEMORY.DMP) o un dump di un'applicazione può contenere qualsiasi cosa fosse nella RAM al momento del crash - password, chiavi di crittografia, contenuti di documenti aperti, token di sessione. Prima di inviare un dump all'assistenza o caricarlo online, tieni presente che potrebbe contenere dati sensibili; preferisci i minidump ai dump completi durante la condivisione. I crash dump possono essere ELIMINATI in sicurezza per recuperare spazio su disco (Pulizia disco > «File di dump della memoria degli errori di sistema»); Windows li ricrea al crash successivo.
Dettagli del formato
in sintesi- Oracle Data Pump / exp export (.dmp) - Un export di database binario proprietario dalle utilità expdp/exp di Oracle, ricaricato in un database con impdp/imp - non è un dump di memoria e non è leggibile da un debugger.
Programmi che aprono file DMP
Dettagli tecnici
specifiche approfondite| Formato file | Binario (non leggibile dall'uomo; istantanea strutturata della memoria binaria) |
| Magic bytes - minidump | 4D 44 4D 50 (ASCII: MDMP) all'offset 0 |
| Magic bytes - 32-bit kernel dump | 50 41 47 45 44 55 4D 50 (ASCII: PAGEDUMP) all'offset 0 |
| Magic bytes - 64-bit kernel dump | 50 41 47 45 44 55 36 34 (ASCII: PAGEDU64) all'offset 0 |
| Tipo MIME | application/octet-stream |
| Sviluppatore | Microsoft |
| Percorso predefinito - dump completo / kernel | %SystemRoot%\Memory.dmp (sovrascritto al crash successivo) |
| Percorso predefinito - minidump | %SystemRoot%\Minidump\MiniMMGGAA-NN.dmp (file individuali, conservati tra i crash) |
| Dimensione base minidump | Minimo 64 KB; i Windows moderni possono produrre minidump più grandi |
| Tipi di dump | Completo, Kernel, Piccolo (Minidump), Automatico (Windows 8+), Active memory dump (Windows 10+) |
| Trigger di creazione | Kernel panic / Blue Screen of Death (BSOD); creabile anche manualmente tramite Task Manager o ProcDump |
| Contenuto minidump | Codice e parametri STOP bugcheck, strutture PRCB, EPROCESS, ETHREAD, elenco driver caricati |
| Strumento di analisi primario | WinDbg / WinDbg Preview (Windows Debugger, parte di Debugging Tools for Windows) |
| Strumenti di analisi secondari | Microsoft Visual Studio (dump di codice gestito), NirSoft BlueScreenView (visualizzatore minidump) |
| Configurazione tipo dump | Proprietà del sistema → Avanzate → Avvio e ripristino → Scrivi informazioni di debug |
| Estensioni correlate | .mdmp (variante minidump esplicita), .hdmp (heap dump), .dump, .core (equivalente Linux) |
| Rilasciato | Windows minidump format from the Windows 2000/XP era |
| Specifica | learn.microsoft.com |
Conversioni DMP
Domande e risposte della community
chiesto dagli utentiAncora nessuna domanda - sii il primo a chiedere informazioni sui file DMP.