Come configurare smartphone e PC. Portale informativo
  • casa
  • TV (Smart TV)
  • Perché hai bisogno di una schermata blu di morte o di "istruzioni per interpretare un piccolo file di dump della memoria?" Che cos'è un dump della memoria

Perché hai bisogno di una schermata blu di morte o di "istruzioni per interpretare un piccolo file di dump della memoria?" Che cos'è un dump della memoria

Istruzioni per interpretare il file piccolo dump della memoria.

Molto spesso puoi imbatterti in domande relative all'aspetto schermo blu della morte (Schermata blu della morte = BSOD). Tuttavia, quasi ogni persona può determinare autonomamente la causa dell'errore che ha portato alla comparsa di BSOD. Il fatto è che quando appare una schermata blu sul disco rigido viene scritto un file speciale che è chiamato Piccolo dump della memoria(ovviamente, a condizione che la sua registrazione sia consentita nelle impostazioni).

È possibile abilitare la registrazione Small Dump come segue:

1. Fare clic sul pulsante Inizio e seleziona dal menu Impostazioni paragrafo Pannello di controllo.

2. Fare doppio clic sull'icona Sistema.

3. Apri la scheda Inoltre e premere il pulsante.

4. Sulla lista Scrittura delle informazioni di debug Selezionare Piccolo dump della memoria (64 KB).

Un piccolo file di dump della memoria registra un set minimo di informazioni utili che lo consentono determinare la causa di un arresto anomalo imprevisto del computer. Questa opzione richiede un file di paging sul volume di avvio di dimensioni almeno 2 MB. Sui computer che eseguono Microsoft Windows 2000 o versioni successive di Windows, quando il computer si blocca inaspettatamente ogni volta che viene creato un nuovo file.

Quando si verifica l'errore successivo e viene creato un secondo file di immagine della memoria di piccole dimensioni, Windows salva il file precedente. Windows assegna a ciascun file un nome separato con una data. Ad esempio, Mini022900-01.dmp è il primo file di dump della memoria creato il 29 febbraio 2000. Un elenco di tutti i file di dump della memoria di piccole dimensioni è archiviato nella cartella %SystemRoot%\Minidump.

Strumenti per interpretare un file di dump della memoria di piccole dimensioni

È possibile utilizzare un'utilità per scaricare piccoli file di dump della memoria Controllo dello scarico(Dumpchk.exe). Dumpchk.exe viene utilizzato anche per verificare che il file di immagine della memoria sia stato creato correttamente. Dump Check non richiede l'accesso ai simboli di debug. Dump Check incluso con gli strumenti di supporto Strumenti di supporto di Microsoft Windows 2000 E Strumenti di supporto di Microsoft Windows XP.È possibile scaricare questi pacchetti seguendo questo collegamentohttp://www.microsoft.com/whdc/devtools/debugging/default.mspx

Per interpretare file di dump della memoria di piccole dimensioni, è anche possibile utilizzare gli strumenti WinDbg O il file KD.exe. Programmi WinDbg e KD.exe incluso alla versione più recente del pacchetto di strumenti di debug per Windows.

Come aprire un file di dump della memoria

Per aprire un file di immagine della memoria, attenersi alla seguente procedura:

  1. Fare clic sul pulsante Inizio, scegliere oggetto Eseguire, inserisci il comando cmd e fai clic sul pulsante OK.
  2. Vai alla cartella "Strumenti di debug per Windows" . Per fare ciò, inserisci nella riga di comando

cd c:\programmi\strumenti di debug per Windows

e premere INVIO.

  1. Per caricare il file di immagine della memoria nel programma di debug, digitare uno dei seguenti comandi e premere INVIO:

windbg -y percorso_del_simbolo -io percorso_dell'immagine -z percorso_del_file_dump

kd-y percorso_del_simbolo -io percorso_dell'immagine -z percorso_del_file_dump

Sezione stub

Descrizione

percorso_del_simbolo

Il percorso locale della cartella in cui sono stati scaricati i file dei simboli o il percorso del server dei simboli, inclusa la cartella della cache. Poiché un file di immagine della memoria di piccole dimensioni contiene informazioni limitate, i file binari effettivi devono essere caricati insieme ai simboli per interpretare correttamente il file di immagine della memoria.

percorso_dell'immagine

Il percorso di questi file. Questi file sono contenuti nella cartella I386 sul CD di Windows XP. Percorso di esempio: C:\Windows\I386.

percorso_del_file_dump

Il percorso del file di immagine della memoria da analizzare e il nome di questo file.

Analisi del file di dump della memoria

Esistono diversi comandi per raccogliere dati in un file di dump, inclusi i seguenti:

  • Squadra !analizza -mostra visualizza il codice di errore fatale e i relativi parametri. Il codice di errore irreversibile è noto anche come codice di errore di controllo.
  • Squadra !analizzare -v visualizza il risultato dettagliato dell'analisi.
  • Squadra lm N T visualizza un elenco dei moduli caricati specificati. I dati includono lo stato e il percorso del modulo.

Nota. Comando con estensione !autisti Elenca tutti i driver caricati sul computer di destinazione, insieme alle informazioni sulla memoria utilizzata. Estensione !autisti non utilizzato in Windows XP e versioni successive. Per visualizzare informazioni sui driver caricati e altri moduli, utilizzare il comando lm. Squadra lm N T visualizza le informazioni nello stesso formato dell'estensione legacy !autisti.

Per informazioni su altri comandi e sulla sintassi completa dei comandi, consultare la documentazione di riferimento degli strumenti di debug. La documentazione della guida per gli strumenti di debug si trova nel file: C:\Program Files\Debugging Tools for Windows\Debugger.chm

Nota. Se sorgono problemi relativi a Con utilizzando simboli , utilizzare il programma di utilità Symchk per verificare che i simboli richiesti siano caricati correttamente. Ulteriori informazioni sul programma Symchk Vedere il seguente articolo della Microsoft Knowledge Base:

311503 (http://support.microsoft.com/kb/311503/) Recupero dei file dei simboli di debug dal server dei simboli Microsoft

Gli errori si verificano molto spesso nel sistema operativo Windows, anche nel caso di un sistema “pulito”. Se gli errori ordinari del programma possono essere risolti (viene visualizzato un messaggio relativo a un componente mancante), gli errori critici saranno molto più difficili da correggere.

Che cos'è un dump della memoria in Windows

Per risolvere i problemi con il sistema, di solito viene utilizzato un dump della memoria di arresto anomalo: questa è una foto parte o tutta la RAM e posizionandola su un supporto non volatile (disco rigido). In altre parole, il contenuto della RAM viene copiato completamente o parzialmente sul supporto e l'utente può analizzare il dump della memoria.

Esistono diversi tipi di dump della memoria:

Piccola discarica(Small Memory Dump) – salva una quantità minima di RAM, che contiene informazioni su errori critici (BSoD) e componenti caricati durante il funzionamento del sistema, ad esempio driver, programmi. MiniDumpè memorizzato nel percorso C:\Windows\Minidump.

Discarica completa(Complete Memory Dump) – viene salvata l'intera quantità di RAM. Ciò significa che la dimensione del file sarà uguale alla quantità di RAM. Se c'è poco spazio su disco, sarà problematico salvare, ad esempio, 32 GB. Si verificano anche problemi con la creazione di un file di dump della memoria di dimensioni superiori a 4 GB. Questo tipo è usato molto raramente. Memorizzato in C:\Windows\MEMORY.DMP.

Scarico memoria del kernel– vengono salvate solo le informazioni relative al nucleo del sistema.

Quando l'utente arriva ad analizzare l'errore, deve solo utilizzare minidamp (piccolo dump). Ma prima è necessario accenderlo, altrimenti il ​​problema non verrà riconosciuto. Inoltre, per identificare in modo più efficace un arresto anomalo, è preferibile utilizzare uno snapshot della memoria completa.

Informazioni nel registro

Se guardi nel registro di Windows, puoi trovare alcune utili impostazioni per le istantanee. Fare clic sulla combinazione di tasti Win+R e immettere il comando regedit e aprire i seguenti rami:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl

In questo ramo l'utente troverà i seguenti parametri:

  • Riavvio automatico– abilitare o disabilitare il riavvio dopo aver creato una schermata blu della morte (BSoD).
  • File spazzatura– nome dei tipi di discarica e ubicazione.
  • CrashDumpEnabled– il numero del file in fase di creazione, ad esempio il numero 0 – il dump non viene creato; 1 – creazione di un dump completo; 2 – creazione di un core dump; 3 – creare una piccola discarica.
  • DumpFilters– l'opzione consente di aggiungere nuove funzioni prima di creare uno snapshot. Ad esempio, la crittografia dei file.
  • MinidumpDir– il nome della piccola discarica e la sua ubicazione.
  • LogEvent– attivazione della registrazione delle informazioni nel registro di sistema.
  • Conteggio minidump– impostare il numero di piccoli dump da creare. (Il superamento di questo numero distruggerà i vecchi file e li sostituirà).
  • Sovrascrivi– funzione per un dump completo o di sistema. Quando si crea una nuova foto, quella precedente verrà sempre sostituita con una nuova.
  • FileDump dedicato– creando un file immagine alternativo e specificandone il percorso.
  • Ignora dimensione file di paging– utilizzato per la posizione temporanea dell'istantanea, senza utilizzare un file di scambio.

Come funziona

Se si verifica un guasto, il sistema interrompe completamente il suo funzionamento e, se il dumping è attivo, verrà scritto su un file posizionato su disco. informazioni sul problema che si è presentato. Se è successo qualcosa ai componenti fisici, il codice di emergenza funzionerà e l'hardware guasto apporterà alcune modifiche, che si rifletteranno sicuramente nell'istantanea.

Di solito il file viene salvato in un blocco del disco rigido allocato per il file di paging; dopo che viene visualizzato un BSoD, il file viene sovrascritto nel tipo configurato dall'utente stesso (Small, full o core dump); Sebbene nei moderni sistemi operativi la partecipazione del file di paging non sia necessaria.

Come abilitare i dump

IN Windows 7:

IN Finestre 8 e 10:

Qui il processo è un po 'simile, puoi accedere alle informazioni di sistema allo stesso modo di Windows 7. In "Dieci", assicurati di aprire " Questo computer", clicca sullo spazio libero con il tasto destro del mouse e seleziona " Proprietà" Un altro modo per arrivarci è tramite il Pannello di controllo.

Seconda opzione per WiWindows 10:


Va notato che nelle nuove versioni di Windows 10 sono comparsi nuovi elementi che non erano nei “sette”:

  • Piccola discarica memoria 256 KB - dati minimi di guasto.
  • Discarica attiva– è apparso nella decima versione del sistema e salva solo la memoria attiva del computer, il kernel del sistema e l'utente. Consigliato per l'uso sui server.

Come eliminare un dump

Basta andare nella directory in cui sono archiviate le istantanee della memoria e cancellarle semplicemente. Ma esiste un altro modo per rimuoverlo: utilizzare l'utilità Pulizia disco:

Se non è stato trovato alcun elemento, i dump potrebbero non essere stati abilitati.

Anche se una volta le hai abilitate, alcune utilità di ottimizzazione del sistema che utilizzi possono farlo facilmente disabilitare alcune funzionalità. Spesso molte cose vengono disabilitate quando si utilizzano unità SSD, poiché le ripetute procedure di lettura e scrittura danneggiano notevolmente la salute dell'unità.

Analisi del dump della memoria utilizzando WinDbg

Scarica questo programma dal sito Web ufficiale di Microsoft al passaggio 2, dove viene descritto “ InstallazioneWDK" - https://docs.microsoft.com/en-us/windows-hardware/drivers/download-the-wdk.

Per lavorare con il programma avrai bisogno anche di un pacchetto speciale di simboli di debug. È chiamato Simboli di debug, prima poteva essere scaricato dal sito Web di Microsoft, ma ora hanno abbandonato questa idea e dovrai utilizzare la funzione File del programma - " Percorso file simbolo", dove dovresti inserire la seguente riga e fare clic su OK:

imposta _NT_SYMBOL_PATH=srv*DownstreamStore*https://msdl.microsoft.com/download/symbols

Se non funziona, prova questo comando:

SRV*%systemroot%\symbols*http://msdl.microsoft.com/download/symbols

Fare nuovamente clic su "File" e selezionare l'opzione "Salva area di lavoro".

L'utilità è configurata. Tutto ciò che resta è specificare il percorso dei file di dump della memoria. Per fare ciò, fare clic su File e fare clic sull'opzione " OpennaIncidenteScarico" La posizione di tutte le discariche è indicata all'inizio dell'articolo.

Dopo la selezione, l'analisi terminerà e la componente problematica verrà evidenziata automaticamente. Per ottenere maggiori informazioni nella stessa finestra è possibile inserire il seguente comando: !analizzare –v

Analisi con BlueScreenView

Puoi scaricare lo strumento gratuitamente da questo sito: http://www.nirsoft.net/utils/blue_screen_view.html. L'installazione non richiede alcuna competenza. Utilizzato solo su Windows 7 e versioni successive.

Lanciamo e configuriamo. Fare clic su “Opzioni” – “ Opzioni aggiuntive"(Opzioni avanzate). Seleziona il primo elemento " Carica MiniDumps da questa cartella"e indica la directory - C:\WINDOWS\Minidump. Anche se puoi semplicemente fare clic sul pulsante "Predefinito". Fare clic su OK.

I file di dump dovrebbero apparire nella finestra principale. Può essere uno o più. Per aprirlo basta cliccarci sopra con il mouse.

Nella parte inferiore della finestra verranno visualizzati i componenti in esecuzione al momento dell'errore. Il responsabile dell'incidente sarà evidenziato in rosso.

Ora clicca su “File” e seleziona, ad esempio, la voce “ Trova in VaiCodice errore ogle + driver" Se trovi il driver che ti serve, installa e riavvia il computer. Forse l'errore scomparirà.

Questa breve nota ha lo scopo di mostrare come è possibile configurare il sistema per far fronte ad una emergenza Dump della memoria di Windows, ovvero un dump che può essere creato nel caso si verifichi un guasto critico, caratterizzato dalla comparsa di una schermata blu di morte (BSOD). Cos'è una discarica in generale, perché ne abbiamo bisogno e cos'è, quali problemi intende risolvere e quali informazioni contiene?

Dump della memoria: il contenuto della memoria di lavoro di un processo, kernel o intero sistema operativo, incluse, oltre alle aree di lavoro, informazioni aggiuntive sullo stato dei registri del processore, il contenuto dello stack e altre strutture di servizio.

Perché potremmo aver bisogno di questo contenuto, ad es. Dump della memoria di Windows? Forse l'uso più comune di un dump della memoria è studiare le cause di un errore di sistema (), che ha causato l'arresto completo del sistema operativo. Oltre a ciò, lo stato della memoria può essere utilizzato per altri scopi. È anche importante che un dump della memoria sia letteralmente l'unico modo per ottenere informazioni su eventuali guasti! E prendere (ottenere) un dump della memoria di sistema è, in effetti, l'unico metodo accurato per ottenere un'impronta digitale istantanea (copia) del contenuto della memoria fisica del sistema.

Quanto più accuratamente il contenuto del dump riflette lo stato della memoria al momento del guasto, tanto più dettagliatamente saremo in grado di analizzare la situazione di emergenza. Pertanto, è estremamente importante ottenere una copia aggiornata della memoria fisica del sistema in un momento strettamente definito, immediatamente precedente al guasto. E l'unico modo per farlo è creare un crash dump completo. Il motivo è abbastanza banale: quando si verifica un crash dump della memoria di sistema, a causa di un guasto o di una situazione simulata artificialmente, il sistema in questo momento in cui riceve il controllo delle funzioni di emergenza (KeBugCheckEx) è in uno stato stato assolutamente invariato (statico), quindi, tra il momento in cui si verifica l'errore e il momento in cui i dati vengono scritti sul supporto, nulla cambia il contenuto della memoria fisica e viene scritta sul disco nel suo stato originale. Bene, questo è in teoria, ma occasionalmente nella vita, ma ci sono situazioni in cui, a causa di componenti hardware difettosi, il dump della memoria stesso potrebbe essere danneggiato o la stazione potrebbe bloccarsi durante la registrazione del dump.

Nella stragrande maggioranza dei casi, dal momento in cui inizia il processo di creazione di un dump della memoria di arresto anomalo fino alla fine della scrittura del contenuto della memoria sul disco, le informazioni in memoria rimangono invariate.

Teoricamente, la staticità (immutabilità) dell'"impronta digitale" della memoria è spiegata dal fatto che quando viene richiamata la funzione KeBugCheckEx, che visualizza informazioni sull'errore e avvia il processo di creazione di un dump della memoria, il sistema è già completamente arrestato e il il contenuto della memoria fisica viene scritto nei blocchi occupati sul disco dal file di paging, dopodiché, durante il successivo caricamento del sistema operativo, viene reimpostato in un file sul supporto di sistema. Ebbene, quasi una volta ho osservato una situazione in cui una scheda madre difettosa non mi permetteva di salvare un dump della memoria: a) blocco mentre era in esecuzione la logica di salvataggio del dump (il processo non ha raggiunto il 100%), b) danneggiamento del file di dump della memoria ( il debugger si è lamentato delle strutture), c) scrivendo file di dump memory.dmp di lunghezza zero. Pertanto, nonostante il fatto che il sistema sia già completamente arrestato nel momento in cui viene creato il dump della memoria e sia in esecuzione solo il codice di emergenza, l'hardware difettoso può apportare modifiche a qualsiasi logica senza eccezioni in qualsiasi fase dell'operazione.
Tradizionalmente, nella fase iniziale, i blocchi del disco allocati al file di paging vengono utilizzati per salvare un'immagine della memoria di Windows. Quindi, dopo una schermata blu e un riavvio, i dati vengono spostati in un file separato, quindi il file viene rinominato utilizzando un modello a seconda del tipo di dump. Tuttavia, a partire dalla versione di Windows Vista, questo stato di cose può essere modificato: ora all'utente viene data la possibilità di salvare il dump selezionato senza la partecipazione di un file di paging, inserendo le informazioni sull'errore in un file temporaneo; Ciò è stato fatto al fine di eliminare gli errori di configurazione associati a impostazioni errate della dimensione e della posizione del file di paging, che spesso portavano a problemi durante il processo di salvataggio di un dump della memoria.
Vediamo quali tipologie di dump il sistema operativo Windows ci permette di creare:

  • Dump della memoria del processo (applicazione);
  • Dump della memoria del kernel;
  • Dump completo della memoria (dump della porzione disponibile della memoria fisica del sistema).

Tutti i crash dump possono essere suddivisi in due categorie principali:

  • Dump degli arresti anomali con informazioni sull'eccezione che si è verificata. Di solito vengono creati automaticamente quando si verifica un'eccezione non gestita nell'applicazione/kernel e, di conseguenza, è possibile chiamare il debugger (incorporato) del sistema. In questo caso, le informazioni sull'eccezione vengono registrate in un dump, il che rende più semplice determinare il tipo di eccezione e il luogo in cui si è verificata durante l'analisi successiva.
  • Dump degli arresti anomali senza informazioni sulle eccezioni. Tipicamente creato manualmente dall'utente quando è necessario creare semplicemente uno snapshot di un processo per la successiva analisi. Questa analisi non implica la determinazione del tipo di eccezione, poiché non si è verificata alcuna eccezione, ma un'analisi di tipo completamente diverso, ad esempio studiando le strutture dati di un processo e così via.

Configurazione del dump della memoria del kernel

È necessario aver effettuato l'accesso con un account amministrativo per eseguire le azioni descritte in questa sezione.

Passiamo direttamente alla configurazione delle impostazioni del dump di arresto anomalo del sistema di Windows. Innanzitutto, dobbiamo andare alla finestra delle proprietà del sistema in uno dei seguenti modi:

  1. Fare clic con il tasto destro sull'icona "Risorse del computer" - "Proprietà" - "Impostazioni di sistema avanzate" - "Avanzate".
  2. Pulsante "Start" - "Pannello di controllo" - "Sistema" - "Impostazioni di sistema avanzate" - "Avanzate".
  3. Scorciatoia da tastiera "Windows" + "Pausa" - "Impostazioni di sistema avanzate" - "Avanzate".

  4. sistema di controllo.cpl,3
  5. Esegui dalla riga di comando (cmd):
    ProprietàdisistemaAvanzate

Il risultato delle azioni descritte è aprire la finestra "Proprietà del sistema" e selezionare la scheda "Avanzate":

Successivamente, nella sezione "Avvio e ripristino" facciamo clic, selezioniamo "Opzioni" e quindi apriamo una nuova finestra denominata "Download e ripristino":

Tutti i parametri del dump del crash sono raggruppati in un blocco di parametri chiamato "Errore di sistema". In questo blocco possiamo impostare i seguenti parametri:

  1. Scrivere eventi nel registro di sistema.
  2. Eseguire un riavvio automatico.
  3. Registrazione delle informazioni di debug.
  4. File spazzatura.
  5. Sostituisci un file di dump esistente.

Come puoi vedere, molti dei parametri dell'elenco sono piuttosto banali e facili da capire. Vorrei però approfondire il parametro "Dump File". Il parametro viene presentato come un elenco a discesa e ha quattro valori possibili:

Piccolo dump della memoria

Un piccolo dump della memoria (minidump) è un file che contiene la quantità minima di informazioni sull'errore. Il più piccolo di tutti i possibili dump della memoria. Nonostante gli ovvi svantaggi, i minidump vengono spesso utilizzati come informazioni su un mancato trasferimento a fornitori di driver di terze parti per studi successivi.
Composto:

  • Messaggio di errore.
  • Valore di errore.
  • Parametri di errore.
  • Il contesto del processore (PRCB) in cui si è verificato l'errore.
  • Informazioni sul processo e contesto del kernel (EPROCESS) per il processo in crash e tutti i suoi thread.
  • Informazioni sul processo e contesto del kernel (ETHREAD) per il thread che causa l'arresto anomalo.
  • Lo stack in modalità kernel per il thread che ha causato l'arresto anomalo.
  • Elenco dei driver caricati.

Alloggio: %SystemRoot%\Minidump\MMGGAA-XXXXX-NN.dmp. Dove MMGGAA è rispettivamente il mese, il giorno e l'anno, NN è il numero di serie del dump.
Volume: la dimensione dipende dal numero di bit del sistema operativo: sono necessari solo 128 kilobyte per un sistema operativo a 32 bit e 256 kilobyte per un sistema operativo a 64 bit nel file di paging (o nel file specificato in DedicatedDumpFile). Poiché non possiamo impostare una dimensione così piccola, la arrotondiamo a 1 megabyte.

Dump della memoria del kernel

Questo tipo di dump contiene una copia di tutta la memoria del kernel al momento del crash.
Composto:

  • Elenco dei processi in esecuzione.
  • Lo stato del thread corrente.
  • Pagine di memoria in modalità kernel presenti nella memoria fisica al momento dell'arresto anomalo: memoria del driver in modalità kernel e memoria del programma in modalità kernel.
  • Memoria di livello dipendente dall'hardware (HAL).
  • Elenco dei driver caricati.

Nel dump della memoria del kernel mancano le pagine di memoria non allocata e le pagine in modalità utente. D'accordo, è improbabile che le pagine dei processi in modalità utente ci interessino durante un errore di sistema (BugCheck), poiché l'errore di sistema viene solitamente avviato dal codice in modalità kernel.

Dimensione: varia a seconda della dimensione dello spazio degli indirizzi del kernel allocato dal sistema operativo e dal numero di driver in modalità kernel. In genere, circa un terzo della memoria fisica è richiesto nel file di scambio (o nel file specificato in DedicatedDumpFile). Può variare.

Completamento del dump della memoria

Un dump della memoria completo contiene una copia di tutta la memoria fisica (RAM) al momento dell'arresto anomalo. Di conseguenza nel file viene contenuto l'intero contenuto della memoria di sistema. Questo è sia un vantaggio che un grosso svantaggio, poiché le sue dimensioni possono essere significative su alcuni server con grandi quantità di RAM.
Composto:

  • Tutte le pagine di memoria fisica "visibile". Si tratta di quasi tutta la memoria di sistema, ad eccezione delle aree utilizzate dall'hardware: BIOS, spazio PCI, ecc.
  • Dati dei processi in esecuzione sul sistema al momento dell'errore.
  • Pagine di memoria fisica che non sono mappate allo spazio degli indirizzi virtuali, ma che possono aiutare a indagare sulla causa dell'errore.

Per impostazione predefinita, un dump completo della memoria non include le aree di memoria fisica utilizzate dal BIOS.
Posizione: %SystemRoot%\MEMORY.DMP . Il dump precedente viene sovrascritto.
Volume: il file di paging (o il file specificato in DedicatedDumpFile) richiede un volume pari alla dimensione della memoria fisica + 257 megabyte (questi 257 MB sono divisi in una determinata intestazione + dati del driver). In alcuni sistemi operativi, infatti, la soglia inferiore del file di paging può essere impostata esattamente sul valore della dimensione della memoria fisica.

Dump automatico della memoria

A partire da Windows 8/Windows Server 2012, nel sistema è stato introdotto un nuovo tipo di dump denominato Automatic Memory Dump, impostato come tipo predefinito. In questo caso è il sistema stesso a decidere quale dump della memoria registrare in caso di un particolare guasto. Inoltre, la logica della scelta dipende da molti criteri, inclusa la frequenza del “crash” del sistema operativo.

Dopo aver modificato la configurazione del dump della memoria di Windows, potrebbe essere necessario riavviare il computer.

Impostazioni del registro

La sezione del registro che definisce i parametri del dump del crash:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl

Opzioni:

Parametro Tipo Descrizione
Riavvio automatico REG_DWORD Abilita/disabilita il riavvio automatico quando si verifica BSOD.
CrashDumpEnabled REG_DWORD Il tipo di dump creato.
  • 0: non crea un dump della memoria;
  • 1 - dump completo della memoria;
  • 2 - dump della memoria del kernel;
  • 3 - piccolo dump della memoria;
File spazzatura REG_EXPAND_SZ Percorso e nome del dump della memoria del kernel e del dump della memoria completa.
DumpFilters REG_MULTI_SZ Filtrare il driver nello stack di driver del dump della memoria. Consente di aggiungere nuove funzionalità nella fase di creazione dei dump di arresto anomalo. Ad esempio, la crittografia del contenuto del dump. Non è consigliabile modificare il valore.
LogEvent REG_DWORD Registrazione di un evento nel registro di sistema.
MinidumpDir REG_EZPAND_SZ Percorso e nome del piccolo dump della memoria.
Conteggio minidump REG_DWORD Numero massimo di piccoli dump della memoria. Una volta superato, le versioni precedenti iniziano a essere sovrascritte.
Sovrascrivi REG_DWORD Sostituisci un file di dump esistente. Solo per il dump della memoria del kernel e il dump della memoria completa.
Ignora dimensione file di paging REG_DWORD Ignora il file di paging standard come posizione per l'archiviazione temporanea (intermedia) del dump della memoria. Indica che il dump della memoria deve essere scritto in un file separato. Utilizzato insieme all'opzione DedicatedDumpFile.
FileDump dedicato REG_EZPAND_SZ Percorso e nome di un file alternativo temporaneo per la registrazione di un dump della memoria. Nel secondo passaggio i dati verranno comunque spostati in DumpFile/MinidumpDir.

Creazione manuale di un dump della memoria

Sopra abbiamo descritto le impostazioni per la creazione automatica dei dump di arresto anomalo del sistema in caso di errore critico, ovvero un'eccezione non gestita nel codice del kernel. Ma nella vita reale, oltre al crash del sistema operativo, ci sono situazioni in cui è necessario ottenere un dump della memoria di sistema in un determinato momento. Come comportarsi in questo caso? Esistono metodi per ottenere un'istantanea di tutta la memoria fisica, ad esempio utilizzando il comando .dump nei debugger WinDbg/LiveKD. LiveKD è un programma che ti permette di eseguire il debugger del kernel Kd su un sistema in esecuzione in modalità locale. Anche il debugger WinDbg ha una funzionalità simile. Tuttavia, il metodo del dump al volo non è accurato perché il dump generato in questo caso è "incoerente" poiché richiede tempo per generare il dump e, in caso di utilizzo del debugger in modalità kernel, il sistema continua a funzionare e creare modifiche alle pagine di memoria.

Tutti i sistemi Windows, quando viene rilevato un errore fatale, eseguono un crash dump (istantanea) del contenuto della RAM e lo salvano sul disco rigido. Esistono tre tipi di dump della memoria:

Dump della memoria completa: salva l'intero contenuto della RAM. La dimensione dell'immagine è uguale alla dimensione della RAM + 1 MB (intestazione). Utilizzato molto raramente, poiché su sistemi con grandi quantità di memoria la dimensione del dump sarà troppo grande.

Dump della memoria del kernel: salva le informazioni sulla RAM relative solo alla modalità kernel. Le informazioni sulla modalità utente non vengono salvate perché non contengono informazioni sulla causa dell'arresto anomalo del sistema. La dimensione del file dump dipende dalla dimensione della RAM e varia da 50 MB (per sistemi con 128 MB di RAM) a 800 MB (per sistemi con 8 GB di RAM).

Piccolo dump della memoria (mini dump): contiene una quantità piuttosto ridotta di informazioni: un codice di errore con parametri, un elenco di driver caricati nella RAM al momento dell'arresto anomalo del sistema, ecc., Ma queste informazioni sono sufficienti per identificare il driver difettoso . Un altro vantaggio di questo tipo di dump è la dimensione ridotta del file.

CONFIGURAZIONE DEL SISTEMA

Per identificare il driver che ha causato la schermata blu, dovremo solo utilizzare un piccolo dump della memoria. Affinché il sistema possa salvare un mini dump durante un arresto anomalo, è necessario eseguire i seguenti passaggi:

Per Windows XP Per Windows7
  1. Il mio computer Proprietà
  2. Vai alla scheda Inoltre;
  3. Opzioni;
  4. Nel campo Scrittura delle informazioni di debug scegliere Piccolo dump della memoria (64 KB).
  1. Fare clic con il tasto destro sull'icona Computer dal menu contestuale selezionare Proprietà(o la combinazione di tasti Win+Pausa);
  2. Nel menu a sinistra, fare clic sulla voce Impostazioni avanzate di sistema;
  3. Vai alla scheda Inoltre;
  4. Nel campo Download e ripristino è necessario fare clic sul pulsante Opzioni;
  5. Nel campo Scrittura delle informazioni di debug scegliere Piccolo dump della memoria (128 KB).

Dopo aver completato tutte le manipolazioni, dopo ogni BSoD un file con estensione .dmp verrà salvato nella cartella C:\WINDOWS\Minidump. Ti consiglio di leggere il materiale "Come creare una cartella". Puoi anche controllare il " Sostituisci il file dump esistente" In questo caso, ogni nuovo crash dump verrà sovrascritto su quello vecchio. Non consiglio di abilitare questa opzione.

ANALIZZARE UN CRASH DUMP USANDO IL PROGRAMMA BLUESCREENVIEW

Pertanto, dopo la comparsa della schermata blu della morte, il sistema ha salvato un nuovo dump della memoria di arresto anomalo. Per analizzare il dump, consiglio di utilizzare il programma BlueScreenView. Può essere scaricato gratuitamente qui. Il programma è abbastanza comodo e ha un'interfaccia intuitiva. Dopo averlo installato, la prima cosa che devi fare è specificare la posizione in cui archiviare i dump della memoria sul sistema. Per fare ciò, vai alla voce di menu “ Opzioni" e seleziona " AvanzateOpzioni" Selezionare il pulsante di opzione " CaricodaILseguenteMinidiscaricacartella" e specificare la cartella in cui sono archiviati i dump. Se i file sono archiviati nella cartella C:\WINDOWS\Minidump, è possibile fare clic sul pulsante " Predefinito" Fare clic su OK e accedere all'interfaccia del programma.

Il programma è composto da tre blocchi principali:

  1. Blocco menu principale e pannello di controllo;
  2. Blocco dell'elenco dei dump degli arresti anomali;
  3. A seconda dei parametri selezionati, può contenere:
  • un elenco di tutti i driver nella RAM prima che appaia la schermata blu (per impostazione predefinita);
  • un elenco di driver situati nello stack RAM;
  • Schermata BSoD;
  • e altri valori che non utilizzeremo.

Nel blocco elenco dump della memoria (contrassegnato con il numero 2 in figura), selezioniamo il dump che ci interessa e guardiamo l'elenco dei driver che sono stati caricati in RAM (contrassegnati con il numero 3 in figura). I driver presenti nello stack di memoria sono colorati in rosa. Sono la causa di BSoD. Successivamente, vai al menu principale del driver, determina a quale dispositivo o programma appartengono. Prima di tutto, presta attenzione ai file non di sistema, perché i file di sistema vengono comunque caricati nella RAM. È facile vedere che il driver difettoso nell'immagine è myfault.sys. Dirò che questo programma è stato lanciato appositamente per causare un errore di interruzione. Dopo aver identificato il driver difettoso, è necessario aggiornarlo o rimuoverlo dal sistema.

Affinché il programma possa mostrare un elenco di driver situati nello stack di memoria quando si verifica un BSoD, è necessario andare alla voce di menu " Opzioni“clicca sul menù” InferiorePannelloModalità" e seleziona " SoltantoAutistiTrovatoInPila" (o premere il tasto F7) e per mostrare uno screenshot dell'errore, selezionare " BluSchermoInXPStile" (F8). Per tornare all'elenco di tutti i conducenti è necessario selezionare “ TuttoAutisti" (F6).

Tutti i sistemi Windows, quando viene rilevato un errore fatale, eseguono un crash dump (istantanea) del contenuto della RAM e lo salvano sul disco rigido. Esistono tre tipi di dump della memoria:

Dump della memoria completa: salva l'intero contenuto della RAM. La dimensione dell'immagine è uguale alla dimensione della RAM + 1 MB (intestazione). Utilizzato molto raramente, poiché su sistemi con grandi quantità di memoria la dimensione del dump sarà troppo grande.

Dump della memoria del kernel: salva le informazioni sulla RAM relative solo alla modalità kernel. Le informazioni sulla modalità utente non vengono salvate perché non contengono informazioni sulla causa dell'arresto anomalo del sistema. La dimensione del file dump dipende dalla dimensione della RAM e varia da 50 MB (per sistemi con 128 MB di RAM) a 800 MB (per sistemi con 8 GB di RAM).

Piccolo dump della memoria (mini dump): contiene una quantità piuttosto ridotta di informazioni: un codice di errore con parametri, un elenco di driver caricati nella RAM al momento dell'arresto anomalo del sistema, ecc., Ma queste informazioni sono sufficienti per identificare il driver difettoso . Un altro vantaggio di questo tipo di dump è la dimensione ridotta del file.

Configurazione del sistema

Per identificare il driver che l'ha causato ci basterà utilizzare un piccolo dump della memoria. Affinché il sistema possa salvare un mini dump durante un arresto anomalo, è necessario eseguire i seguenti passaggi:

Per Windows XP Per Windows7
  1. Il mio computer Proprietà
  2. Vai alla scheda Inoltre;
  3. Opzioni;
  4. Nel campo Scrittura delle informazioni di debug scegliere Piccolo dump della memoria (64 KB).
  1. Fare clic con il tasto destro sull'icona Computer dal menu contestuale selezionare Proprietà(o la combinazione di tasti Win+Pausa);
  2. Nel menu a sinistra, fare clic sulla voce Impostazioni avanzate di sistema;
  3. Vai alla scheda Inoltre;
  4. Nel campo Download e ripristino è necessario fare clic sul pulsante Opzioni;
  5. Nel campo Scrittura delle informazioni di debug scegliere Piccolo dump della memoria (128 KB).

Dopo aver completato tutte le manipolazioni, dopo ogni BSoD un file con estensione .dmp verrà salvato nella cartella C:\WINDOWS\Minidump. Ti consiglio di leggere il materiale "". Puoi anche controllare il " Sostituisci il file dump esistente" In questo caso, ogni nuovo crash dump verrà sovrascritto su quello vecchio. Non consiglio di abilitare questa opzione.

Analisi di un crash dump utilizzando BlueScreenView

Pertanto, dopo la comparsa della schermata blu della morte, il sistema ha salvato un nuovo dump della memoria di arresto anomalo. Per analizzare il dump, consiglio di utilizzare il programma BlueScreenView. Può essere scaricato gratuitamente. Il programma è abbastanza comodo e ha un'interfaccia intuitiva. Dopo averlo installato, la prima cosa che devi fare è specificare la posizione in cui archiviare i dump della memoria sul sistema. Per fare ciò, vai alla voce di menu “ Opzioni" e seleziona " AvanzateOpzioni" Selezionare il pulsante di opzione " CaricodaILseguenteMinidiscaricacartella" e specificare la cartella in cui sono archiviati i dump. Se i file sono archiviati nella cartella C:\WINDOWS\Minidump, è possibile fare clic sul pulsante " Predefinito" Fare clic su OK e accedere all'interfaccia del programma.

Il programma è composto da tre blocchi principali:

  1. Blocco menu principale e pannello di controllo;
  2. Blocco dell'elenco dei dump degli arresti anomali;
  3. A seconda dei parametri selezionati, può contenere:
  • un elenco di tutti i driver nella RAM prima che appaia la schermata blu (per impostazione predefinita);
  • un elenco di driver situati nello stack RAM;
  • Schermata BSoD;
  • e altri valori che non utilizzeremo.

Nel blocco elenco dump della memoria (contrassegnato con il numero 2 in figura), selezioniamo il dump che ci interessa e guardiamo l'elenco dei driver che sono stati caricati in RAM (contrassegnati con il numero 3 in figura). I driver presenti nello stack di memoria sono colorati in rosa. Sono la causa di BSoD. Successivamente, vai al menu principale del driver, determina a quale dispositivo o programma appartengono. Prima di tutto, presta attenzione ai file non di sistema, perché i file di sistema vengono comunque caricati nella RAM. È facile vedere che il driver difettoso nell'immagine è myfault.sys. Dirò che questo programma è stato lanciato appositamente per causare un errore di interruzione. Dopo aver identificato il driver difettoso, è necessario aggiornarlo o rimuoverlo dal sistema.

Affinché il programma possa mostrare un elenco di driver situati nello stack di memoria quando si verifica un BSoD, è necessario andare alla voce di menu " Opzioni“clicca sul menù” InferiorePannelloModalità" e seleziona " SoltantoAutistiTrovatoInPila" (o premere il tasto F7) e per mostrare uno screenshot dell'errore, selezionare " BluSchermoInXPStile" (F8). Per tornare all'elenco di tutti i conducenti è necessario selezionare “ TuttoAutisti" (F6).

I migliori articoli sull'argomento