Open een Windows 7-dump. Een geheugendump gebruiken om te bepalen welk stuurprogramma de BSOD veroorzaakt. Hoe u het maken van geheugendumps configureert

Hallo vrienden, vandaag zullen we kijken naar een interessant onderwerp dat je in de toekomst zal helpen blauw scherm overlijden (BSoD).

Net als ik moesten veel andere gebruikers het uiterlijk waarnemen van een scherm met een blauwe achtergrond waarop iets was geschreven (wit op blauw). Dit fenomeen duidt op een kritiek probleem, zowel in de software, bijvoorbeeld een driverconflict, als in een fysieke storing van een computeronderdeel.

Ik kreeg onlangs weer een blauw scherm in Windows 10, maar ik was er snel vanaf en zal je er binnenkort over vertellen.

Wil je films online kijken in goede kwaliteit? Volg dan de link.

De meeste gebruikers weten dus niet dat BSoD kan worden geanalyseerd om de problemen later te begrijpen kritische fout. Voor dergelijke gevallen maakt Windows op schijf speciale bestanden- geheugendumps, we zullen ze analyseren.

Er zijn drie soorten geheugendumps:

Volledige geheugendump – met deze functie kunt u de inhoud van het RAM-geheugen volledig opslaan. Het wordt zelden gebruikt, want stel je voor dat je 32 GB RAM hebt, met een volledige dump wordt al dit volume op schijf opgeslagen.

Kerneldump – slaat informatie op over de kernelmodus.

Kleine geheugendump – slaat een kleine hoeveelheid foutinformatie en geladen componenten op die aanwezig waren op het moment dat de systeemstoring optrad. We zullen dit type dump gebruiken omdat het ons voldoende informatie over de BSoD zal geven.

De locatie van zowel de kleine als de volledige dump is verschillend. De kleine dump bevindt zich bijvoorbeeld in het volgende pad: %systemroot%minidump.

De volledige dump is hier: %systemroot%.

Om geheugendumps te analyseren zijn er diverse programma's, maar we gebruiken er twee. De eerste is Microsoft Kernel Debuggers, zoals de naam al doet vermoeden, een hulpprogramma van Microsoft. Je kunt het downloaden van de officiële website. Het tweede programma is BlueScreenView, een gratis programma dat u hier kunt downloaden.

Een geheugendump analyseren met behulp van Microsoft Kernel Debuggers

Voor verschillende versies systemen die u nodig heeft om uw eigen type hulpprogramma te downloaden. Bijvoorbeeld voor 64-bits besturingssysteem, je hebt een 64-bits programma nodig, voor een 32-bits programma - een 32-bits versie.

Dat is nog niet alles, u moet het pakket met foutopsporingssymbolen dat nodig is voor het programma downloaden en installeren. Het heet Foutopsporingssymbolen. Elke versie van dit pakket wordt ook gedownload onder een specifiek besturingssysteem, zoek eerst uit welk systeem je hebt en download dan. Zodat u deze symbolen nergens hoeft te zoeken, vindt u hier de downloadlink. De installatie moet bij voorkeur in dit pad worden uitgevoerd: %systemroot%symbols.

Nu kunt u onze debugger starten, waarvan het venster er als volgt uit zal zien:

Voordat we de dumps analyseren, zullen we iets in het hulpprogramma configureren. Eerst moeten we het programma vertellen waar we de foutopsporingssymbolen hebben geïnstalleerd. Om dit te doen, klikt u op de knop "Bestand", selecteert u het item "Symboolbestandspad" en geeft u vervolgens het pad naar de symbolen aan.

Met het programma kun je symbolen rechtstreeks van internet halen, zodat je ze niet eens hoeft te downloaden (sorry voor degenen die ze al hebben gedownload). Ze worden van een Microsoft-server gehaald, dus alles is veilig. U moet dus opnieuw “Bestand” openen, vervolgens “Symboolbestandspad” en de volgende opdracht invoeren:

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

We hebben dus aan het programma aangegeven dat de symbolen uit het netwerk moesten worden gehaald. Zodra we dit hebben gedaan, klikt u op "Bestand" en selecteert u "Werkruimte opslaan" en klikt u vervolgens op OK.

Dat is het. We hebben het programma op de juiste manier geconfigureerd, nu beginnen we geheugendumps te analyseren. Klik in het programma op de knop "Bestand", vervolgens op "Crashdump openen" en selecteer het gewenste bestand.

Kernel Debuggers beginnen het bestand te analyseren en geven vervolgens een resultaat over de oorzaak van de fout.

In het venster dat verschijnt, kunt u opdrachten invoeren. Als we!analyze –v invoeren, krijgen we meer informatie.

Dat is alles met dit programma. Om de debugger te stoppen, selecteert u "Debug" en het item "Debugging stoppen".

Een geheugendump analyseren met BlueScreenView

Voor analyse verschillende fouten en BSoD, het BlueScreenView-programma is ook geschikt, dat een eenvoudige interface heeft, dus er zouden geen problemen moeten zijn om het onder de knie te krijgen.

Download het programma via de bovenstaande link en installeer het. Nadat u het hulpprogramma hebt gestart, moet u het configureren. Ga naar de parameters: “Instellingen” - “ Extra opties" Er wordt een klein venster geopend met een paar items. In de eerste paragraaf moet u de locatie van de geheugendumps aangeven. Ze bevinden zich meestal in het pad C:WINDOWSMinidump. Klik vervolgens gewoon op de knop "Standaard".

Wat kun je zien in het programma? We hebben menu-items, een deel van het venster met de namen van de dumpbestanden, en het tweede deel van het venster – de inhoud van de geheugendumps.

Zoals ik aan het begin van het artikel al zei, kunnen dumps stuurprogramma's opslaan, de schermafbeelding van het 'scherm des doods' zelf en andere nuttige informatie, wat voor ons nuttig kan zijn.

Selecteer dus in het eerste deel van het venster, waar de dumpbestanden staan, de geheugendump die we nodig hebben. In het volgende deel van het venster bekijken we de inhoud. Stuurprogramma's in de geheugenstapel zijn gemarkeerd in een roodachtige kleur. Zij zijn precies de oorzaak van het blauwe scherm van de dood.

Op internet kunt u alles vinden over de foutcode en het stuurprogramma dat mogelijk verantwoordelijk is voor BSoD. Om dit te doen, klikt u op “Bestand” en vervolgens op “Zoek foutcode + stuurprogramma in Google”.

U kunt alleen de stuurprogramma's weergeven die aanwezig waren op het moment dat de fout optrad. Om dit te doen, klikt u op "Instellingen" - "Onderste venstermodus" - "Alleen stuurprogramma's gevonden in de crashstack". Of druk op de F7-toets.

Druk op F8 om de BSoD-screenshot weer te geven.

Druk op F6 om alle stuurprogramma's en bestanden weer te geven.

Nou, dat is alles. Nu weet u hoe u meer te weten kunt komen over het Blue Screen of Death-probleem, en als er iets gebeurt, kunt u een oplossing vinden op internet of op deze site. U kunt uw foutcodes opgeven, en ik zal proberen voor elk artikel te schrijven om het probleem op te lossen.

Vergeet ook niet om vragen te stellen in de reacties.

http://computerinfo.ru/analiz-dampa-pamyati/http://computerinfo.ru/wp-content/uploads/2016/08/analiz-dampa-pamyati.jpghttp://computerinfo.ru/wp-content/ uploads/2016/08/analiz-dampa-pamyati-150×150.jpg2016-08-18T13:45:42+00:00EvilSin225BlueScreenView Problemen,Microsoft Kernel Debuggers,dumpanalyse,geheugendumpanalyse,windows 10 geheugendumpanalyse,geheugendump analyse Windows 7, crashdumpanalyse, oorzaak van BSoD Hallo vrienden, vandaag zullen we kijken naar een interessant onderwerp dat je in de toekomst zal helpen wanneer een blue screen of death (BSoD) verschijnt. Net als ik moesten veel andere gebruikers het uiterlijk waarnemen van een scherm met een blauwe achtergrond waarop iets was geschreven (wit op blauw). Dit fenomeen duidt op een kritiek probleem, zoals in software bijvoorbeeld ... EvilSin225 Andrey Terekhov [e-mailadres beveiligd] Computertechnologie

Crash-dump

Alle Windows-systemen wanneer gedetecteerd fatale fout maak een crashdump (momentopname) van de inhoud van het RAM-geheugen en sla deze op de harde schijf op. Er zijn drie soorten geheugendumps:

Volledige geheugendump – slaat de volledige inhoud van RAM op. De afbeeldingsgrootte is gelijk aan de grootte van RAM + 1 MB (header). Zeer zelden gebruikt, omdat op systemen met grote hoeveelheden geheugen de dumpgrootte te groot zal zijn.

Kernelgeheugendump – slaat alleen RAM-informatie op die betrekking heeft op de kernelmodus. Informatie over de gebruikersmodus wordt niet opgeslagen omdat deze geen informatie bevat over de oorzaak van de systeemcrash. De grootte van het dumpbestand is afhankelijk van de grootte van het RAM-geheugen en varieert van 50 MB (voor systemen met 128 MB RAM) tot 800 MB (voor systemen met 8 GB RAM).

Kleine geheugendump (minidump) - bevat een vrij kleine hoeveelheid informatie: een foutcode met parameters, een lijst met stuurprogramma's die in het RAM zijn geladen op het moment van de systeemcrash, enz., maar deze informatie is voldoende om het defecte stuurprogramma te identificeren . Een ander voordeel van dit type dump is de kleine bestandsgrootte.

Systeemconfiguratie

Om de driver te identificeren die het blauwe scherm veroorzaakte, hebben we alleen een kleine geheugendump nodig. Om ervoor te zorgen dat het systeem tijdens een crash een minidump opslaat, moet u de volgende stappen uitvoeren:

Nadat alle manipulaties zijn voltooid, wordt na elke BSoD een bestand met de extensie .dmp opgeslagen in de map C:WINDOWSMinidump. Ik raad u aan het materiaal 'Een map maken' te lezen. U kunt ook het vakje 'Vervangen' aanvinken bestaand bestand dumpen". In dit geval wordt elke nieuwe crashdump over de oude geschreven. Ik raad niet aan deze optie in te schakelen.

Een crashdump analyseren met BlueScreenView

Dus nadat het Blue Screen of Death verscheen, bewaarde het systeem een ​​nieuwe crashgeheugendump. Om de dump te analyseren, raad ik aan om te gebruiken BlueScreenView-programma. Het kan hier gratis worden gedownload. Het programma is best handig en heeft intuïtieve interface. Nadat u het hebt geïnstalleerd, moet u eerst de locatie opgeven voor het opslaan van geheugendumps op het systeem. Ga hiervoor naar het menu-item “Opties” en selecteer “Geavanceerde opties”. Selecteer het keuzerondje “Laden uit de volgende Mini Dump-map” en geef de map op waarin de dumps zijn opgeslagen. Als de bestanden zijn opgeslagen in de map C:WINDOWSMinidump, kunt u op de knop “Standaard” klikken. Klik op OK en ga naar de programma-interface.

Het programma bestaat uit drie hoofdblokken:

Selecteer in het geheugendumplijstblok (gemarkeerd met nummer 2 in de afbeelding) de dump waarin we geïnteresseerd zijn en bekijk de lijst met stuurprogramma's die in RAM zijn geladen (gemarkeerd met nummer 3 in de afbeelding). Roze kleur stuurprogramma's die zich op de geheugenstack bevonden, zijn gekleurd. Zij zijn de oorzaak van BSoD. Ga vervolgens naar het hoofdmenu van de bestuurder en bepaal tot welk apparaat of programma ze behoren. Let allereerst op systeembestanden, omdat systeembestanden sowieso in het RAM worden geladen. Het is gemakkelijk te zien dat het defecte stuurprogramma in de afbeelding myfault.sys is. Ik zal zeggen dat dit programma speciaal is gelanceerd om te bellen Stop fouten. Nadat u het defecte stuurprogramma hebt geïdentificeerd, moet u het bijwerken of van het systeem verwijderen.

Om ervoor te zorgen dat het programma een lijst met stuurprogramma's weergeeft die zich op de geheugenstapel bevinden tijdens optreden van BSoD u moet naar het menu-item "Opties" gaan, op het menu "LowerPaneMode" klikken en "OnlyDriversFoundInStack" selecteren (of op de F7-toets drukken), en om een ​​screenshot van de fout weer te geven, selecteert u "BlueScreeninXPStyle" (F8). Om terug te keren naar de lijst met alle chauffeurs, moet u “AllDrivers” (F6) selecteren.

Ik zou het op prijs stellen als je de knoppen gebruikt:

Crashdump-analyse van Windows

In het geval van een kritieke fout stopt het systeem met werken, wordt een blue screen of death (BSOD) weergegeven, foutinformatie en geheugeninhoud worden opgeslagen in het wisselbestand. Wanneer het systeem vervolgens wordt geladen, wordt op basis van de opgeslagen gegevens een crashdump met foutopsporingsinformatie gemaakt. Er wordt een kritieke foutinvoer aangemaakt in het systeemgebeurtenislogboek.

Als er vroeg tijdens het opstarten van het systeem een ​​kritieke fout is opgetreden of als een fout het gevolg is van een fout schijf subsysteem, wordt de crashdump niet opgeslagen.

De crashdump kan worden geanalyseerd met behulp van het BlueScreenView-hulpprogramma of systeem debugger WinDbg (foutopsporing Gereedschap voor ramen).

Analyse van crashdumps met het hulpprogramma BlueScreenView

Het eenvoudigste hulpmiddel voor analyse crashdumps is het BlueScreenView-hulpprogramma van NirSoft.

Download het programma van de website van de ontwikkelaar.

BlueScreenView scant de minidump-map en geeft informatie weer over de gevonden fouten.

Voor elke fout worden de datum, foutdetails en het stuurprogramma weergegeven dat vermoedelijk de fout heeft veroorzaakt.

Onderaan het venster wordt een lijst met stuurprogramma's weergegeven die op het systeem zijn geladen. De modules die op het moment van de storing werden gebruikt, zijn in kleur gemarkeerd; er moet speciale aandacht aan worden besteed; zij kunnen de oorzaak van de storing zijn.

Door dubbelklikken aanvullende informatie wordt weergegeven.

Analyse van een crashdump met behulp van de WinDbg-foutopsporing

Met WinDbg kunt u meer gedetailleerde informatie uit een crashdump extraheren, inclusief een transcriptie van de call-stack.

Foutopsporingsprogramma's voor Windows installeren (WinDbg)

Microsoft distribueert WinDbg alleen als onderdeel van de SDK; u kunt het webinstallatieprogramma downloaden vanaf de downloadpagina van het Ontwikkelcentrum.

Om crashdumps te analyseren SDK-installatie niet vereist. U kunt Debugging Tools voor Windows (WinDbg) hier of hier als afzonderlijk pakket downloaden.

Download en installeer WinDbg voor uw versie van Windows. De versie voor Windows 7 werkt ook in Windows XP en Windows Vista.

Windows 10 vereist WinDbg-versie 10.0.10586.567. Download de Windows 10 Standalone SDK. Het webinstallatieprogramma wordt gedownload. Schakel tijdens de installatie alle componenten uit, behalve de debugger.

Na de installatie passen we de snelkoppeling aan om WinDbg te starten. Vink in de snelkoppelingseigenschappen het vakje aan om als beheerder uit te voeren. Ook als werkmap, stel in: %SystemRoot%Minidump.

Foutopsporingssymbolen instellen

Debug-symbolen bevatten symbolische functienamen van broncode. Ze zijn nodig om de crashdump te decoderen en te interpreteren.

Wanneer u WinDbg voor het eerst start, moet u het pad naar de foutopsporingssymbolen opgeven; open hiervoor het menu Bestand, Pad naar symboolbestand, of gebruik de combinatie Ctrl+S.

De volgende regel maakt het laden van foutopsporingssymbolen van het netwerk mogelijk, waarbij het lokale pad voor het opslaan van bestanden en het adres voor downloaden van internet wordt ingesteld:

srv*C:windowssymbols*http://msdl.microsoft.com/download/symbols

Als uw systeem geen verbinding heeft met internet, kan het symboolinstallatiepakket vooraf worden gedownload vanaf de Windows Symbol Packs-downloadpagina van het Microsoft Development Center.

Analyse van crashdumps

Start WinDbg.

Selecteer in het menu Bestand, Crashdump openen of druk op Ctrl+D.

Geef het pad op naar de dump %SystemRoot%MEMORY.DMP of %SystemRoot%Minidumpfile.dmp.

Om te ontvangen gedetailleerde informatie voer de opdracht uit:

De debugger zal u vragen dit uit te voeren; beweeg uw muis over de link en klik.

Als resultaat krijgen we volgende uitvoer:

**************************************** ********** ******************* * * * Bugcheck-analyse * * * *************** ********** ****************************** ******************** Fouttype: KMODE_EXCEPTION_NOT_HANDLED (1e) Bugcommentaar: Dit is een veel voorkomende bugcontrole. Meestal wijst het uitzonderingsadres de driver/functie aan die het probleem veroorzaakte. Noteer ook altijd dit adres de koppeling datum van het stuurprogramma/de afbeelding die dit adres bevat. Argumenten: Foutargumenten: Arg1: 0000000000000000, De uitzonderingscode die niet is verwerkt Arg2: 0000000000000000, Het adres waarop de uitzondering heeft plaatsgevonden in Arg3: 0000000000000000, Parameter 0 van de uitzondering Arg4: 0000000000000000, Parameter 1 van de uitzondering De afluisteren Details: —— ———— UITZONDERING_CODE: (Win32) 0 (0) — . FAULTING_IP: +3332313336383065 00000000`00000000 ?? ??? EXCEPTION_PARAMETER1: 0000000000000000 EXCEPTION_PARAMETER2: 0000000000000000 ERROR_CODE: (NTSTATUS) 0 - STATUS_WAIT_0 BUGCHECK_STR: 0x1E_0 CUSTOMER_CRASH_COUNT: 1 DEFAULT_BUCKET_ID: IVER_FAULT Verwerk dat veroorzaakte de fout: PROCESS_NAME: VirtualBox.exe CURRENT_IRQL: 2 EXCEPTION_RECORD: fffff80000ba24d8 - (.exr 0xfffff80000ba24d8) ExceptionAddress: fffff800034d8a70 ( nt !DbgBreakPoint) ExceptionCode: 80000003 (uitzondering break-instructie) ExceptionFlags: 00000000 NumberParameters: 1 Parameter: 0000000000000000 TRAP_FRAME: fffff80000ba2580 — (.trap 0xfffff80000ba2580) OPMERKING: het trapframe bevat niet alles registreert. Sommige registerwaarden zijn mogelijk op nul gezet of onjuist. rax=0000000000142940 rbx=0000000000000000 rcx=fffffa80055be690 rdx=0000000000009018 rsi=000000000000000 rdi=0000000000000000 34d8a71 rsp =ffffff80000ba2718 rbp=ffffff88006fa0000 r8=0000000000002274 r9=11d0851b22c6ac61 r10=ffffff80003464000 r11=ffffff80000ba27e0 r12=00000000 00000000 r 13=0000000000000000 r14=0000000000000000 r15= 0000000000000000 iopl=0 nv up ei pl nz ac po nc nt!DbgBreakPoint+0x1: fffff800`034d8a71 c3 ret Standaardbereik opnieuw instellen LAST_CONTROL_TRANSFER: van fffff800034d85fe naar fffff800034e0c10 STACK_TEXT: Stack-oproep ov: fffff800`00ba15b8 `034d85fe: fffffa80`03c05530 00000000`ffffffff fffff800`00ba1d30 fffff800`0350c830: nt!KeBugCheck fffff800`00ba15c0 fffff800`0350c4fd: fffff800`036ea71c fffff800`03627c30 fffff800`03464000 fffff800`00ba 24d8: nt!KiKernelCalloutExceptionHandler+0xe fffff800`00ba15f0 fffff800`0350b2d5: fffff800`0362b028 fffff800`00ba1668 fffff800 ` 00ba24d8 fffff800`03464000: nt!RtlpExecuteHandlerForException+0xd fffff800`00ba1620 fffff800`0351c361: fffff800`00ba24d8 fffff800`00ba1d30 fffff800`00000000 000`00142940: nt!RtlDispatchException+0x415 fffff800`00ba1d00 fffff800`034e02c2: fffff800`00ba24d8 fffffa80`07149010 fffff800` 00ba2580 00000000`00000000: nt!KiDispatchException+0x135 fffff800`00ba23a0 fffff800`034de0f4: 00000000`00000016 00000000`00000001 `00000 001 00000000`00000000: nt! KiExceptionDispatch+0xc2 fffff800`00ba2580 fffff800`034d8a71: fffff880`05861446 00000000`df029940 fffff880`02f45bec 00000000`deee7000: nt!KiBreakpointTrap+0xf4 ffff 800`00ba2718 fffff880`05861446: 00000000`df029940 fffff880`02f45bec 00000000`deee7000 fffff880`01229f06: nt ! DbgBreakPoint+0x1 fffff800`00ba2720 00000000`df029940: fffff880`02f45bec 00000000`deee7000 fffff880`01229f06 fffffa80`05635af8: cmudaxp+0x25446 fffff800 ` 00ba2728 fffff880`02f45bec: 00000000`deee7000 fffff880`01229f06 fffffa80`05635af8 00000000`00000000: 0xdf029940 fffff800` 00ba2730 00000000`deee7000: fffff880`01229f06 fffffa80`05635af8 00000000`00000000 00000000`00000003: VBoxDrv+0x6bec fffff800`00ba2738 fffff880`01 229f0 6: fffffa80`05635af8 00000000`00000000 00000000`00000003 fffff880`05865913: 0xdeee7000 fffff800`00ba2740 00000000`00000000: 00000000` 00000001 00000000`00000006 00000000`00000001 fffff800`00ba2800: CLASSPNP!ClasspServiceIdleRequest+0x26 STACK_COMMAND: kb FOLLOWUP_IP: cmudaxp+25446 fffff880`058 61446 ? ??? SYMBOL_STACK_INDEX: 8 SYMBOL_NAME: cmudaxp+25446 FOLLOWUP_NAME: MachineOwner-stuurprogramma waarin de fout is opgetreden: MODULE_NAME: cmudaxp IMAGE_NAME: cmudaxp.sys DEBUG_FLR_IMAGE_TIMESTAMP: 47906a45 FAILURE_BUCKET_ID: X64_0x1E_0 _cmudaxp+25 446 BUCKET_ID: X64_0x1E_0_cmudaxp+25446 Opvolging: Machine-eigenaar ———

Informatie verkrijgen over de problematische bestuurder

Als het stuurprogramma met de fout wordt gevonden, wordt de naam van het stuurprogramma weergegeven in de velden MODULE_NAME en IMAGE_NAME.

Om het bestandspad en andere informatie te krijgen, klikt u op de link naar de module:

start einde modulenaam fffff880`0583c000 fffff880`059ef000 cmudaxp T (geen symbolen) Geladen symboolafbeeldingsbestand: cmudaxp.sys Afbeeldingspad: SystemRootsystem32driverscmudaxp.sys Afbeeldingsnaam: cmudaxp.sys Tijdstempel: vrijdag 18 januari 13:58:45 2008 (47906A45) Controlesom: 0013077F Beeldgrootte: 001B3000 Vertalingen: 0000.04b0 0000.04e4 0409.04b0 0409.04e4

Als het volledige pad naar het stuurprogramma niet is opgegeven, is de standaardmap %SystemRoot%system32drivers.

Wij vinden opgegeven bestand en bestudeer de eigenschappen ervan.

We updaten het problematische stuurprogramma.

Hardwareoorzaken van kritieke fouten

De bron van kritieke fouten is vaak een storing in het schijfsubsysteem of het geheugensubsysteem.

Diagnose van schijfstoringen

In geval van fouten in het schijfsubsysteem wordt de crashdump mogelijk niet opgeslagen.

Controleer dit om problemen met de schijf uit te sluiten systeemlog gebeurtenissen voor schijflees- en schrijffouten.

We controleren de S.M.A.R.T-parameters van de harde schijf; u kunt ze bijvoorbeeld verkrijgen met behulp van het SpeedFan-programma.

We besteden speciale aandacht aan de volgende parameters: "Current Pending Sector Count" en "Uncorrigable Sector Count"; waarden die niet nul zijn, duiden op een schijffout.

Een parameterwaarde die niet nul is: “UltraDMA CRC Error Count” duidt op een probleem met de SATA-kabel.

Meer informatie over S.M.A.R.T. lees in het Wikipedia-artikel.

Diagnose van geheugenfouten

Geheugenproblemen kunnen vaak een breed scala aan problemen veroorzaken, waaronder verschillende blauwe schermen, vastlopen, programmacrashes, registercorruptie, corruptie bestandssysteem en gegevens.

U kunt geheugenproblemen identificeren met het hulpprogramma Memtest86+.

Vanaf Windows Vista heeft het systeem zijn eigen geheugentest. Om het te starten, klikt u op "Start", typt u "geheugen" in de zoekbalk en selecteert u "Windows Memory Diagnostic Tool".

Geheugenproblemen kunnen in sommige gevallen worden opgelost door het BIOS bij te werken.

Opties voor het opslaan van crashdumps configureren

Om de instellingen voor het opslaan van een crashdump te wijzigen, klikt u op de knop "Start", klik op "Computer" klik met de rechtermuisknop muis, selecteer “Eigenschappen” in het contextmenu. Selecteer in het venster “Systeem” aan de linkerkant “Geavanceerde systeeminstellingen”, klik in de groep “Boot and Recovery” op de knop “Opties”.

Lees hier meer over geheugendumps.

Blue screen of death - wat u moet doen en hoe u de fout kunt identificeren

Wanneer er een catastrofale fout optreedt, informeert het Windows-besturingssysteem de gebruiker over het incident met verschillende geluids- en tekstsignalen. Dankzij hen kunt u specifieker over de fout te weten komen en deze oplossen. In de meeste gevallen herinneren pc-bezitters zich ze echter niet of weten ze gewoon niet wat ze betekenen. Het systeem daarentegen maakt een noodmomentopname van de fout, beter bekend als een dump, en slaat deze op de harde schijf op. Hierin staat alle informatie over de storing.

Soorten dumpen

Er zijn drie soorten dumpingen:

Om ervoor te zorgen dat het systeem een ​​kleine dump kan opslaan, is het noodzakelijk om bepaalde parameters in te stellen.

Voor Windows 7 en Windows XP besturingssysteem

Klik op “Start”, klik met de rechtermuisknop op “Computer” en selecteer “Eigenschappen”.

Ga naar het gedeelte 'Geavanceerde systeeminstellingen'.

Het venster Systeemeigenschappen verschijnt. Klik op het tabblad “Geavanceerd” in het gedeelte “Opstarten en herstellen” op “Opties”.

Selecteer “Kleine geheugendump” en klik op “Ok” om de wijzigingen op te slaan.

Een kleine dump analyseren met behulp van de blauwe schermweergave

Het Blue Screen View-programma wordt hier als archief gedownload en vereist geen installatie. Om hiermee de oorzaak van de systeemstoring vast te stellen, voeren we de volgende stappen uit.

We starten een applicatie in het archief die identiek is aan de naam van het programma.

Er wordt een softwarevenster geopend. De interface is echter eenvoudig in het Engels. Allereerst geven we de locatie aan voor het opslaan van de kleine stortplaats. Klik op “Opties” en selecteer “Geavanceerde opties”.

Plaats een vinkje naast de eerste sectie “Laden vanuit de volgende Mini Dump-map” en geef de map aan waarin de foutmomentopname zich bevindt. Als aanvankelijk een kleine dump was ingesteld in de systeeminstellingen, zal het programma zelf het pad naar de momentopname C:WINDOWSMinidump aangeven. Klik op “Ok” om naar de programma-interface te gaan.

Het blok met nummer 1 is een lijst met crashdumps die door het systeem zijn gemaakt. Onder nummer 2 staan ​​foto's en een lijst met chauffeurs.

Stuurprogramma's die systeemstoringen veroorzaken, worden in de lijst roze aangegeven.

Als u geen lijst met stuurprogramma's heeft, klikt u op "Opties". Ga naar “LowerPaneMode” en selecteer “OnlyDriversFoundInStack”.

Nadat we hebben vastgesteld welk stuurprogramma niet werkt, lossen we het probleem op.

Hoe u een geheugendump kunt gebruiken om te bepalen welk stuurprogramma de BSOD veroorzaakt

Oorzaak van kritiek Windows-fouten, vergezeld van blauwe schermen (BSOD), is vaak een stuurprogramma - nieuw geïnstalleerd of beschadigd. Nadat u hebt vastgesteld welk stuurprogramma de fout veroorzaakt, kunt u beginnen met het oplossen van het probleem: update het stuurprogramma, ga terug naar een recenter stuurprogramma. vroege versie, installeer of verwijder de applicatie waarmee het stuurprogramma is geïnstalleerd, enz. De naam van het stuurprogramma wordt niet altijd weergegeven op het blauwe scherm. Er is echter een heel eenvoudige manier waarmee u het problematische stuurprogramma binnen een paar minuten kunt identificeren met behulp van een geheugendump.

Stap 1 - Geheugendumpopname inschakelen

Eerst moet u ervoor zorgen dat dumpopname is ingeschakeld. Om dit te doen, opent u de systeemeigenschappen door op de toetscombinatie Win+Pauze te drukken, [klik in Vista op de link Geavanceerde systeeminstellingen], ga naar het tabblad Geavanceerd en klik ten slotte op de knop Opstarten en herstellen.

Kleine geheugendumps zouden voor onze doeleinden voldoende moeten zijn.

Let op het pad naar de map waar ze worden opgeslagen als er een kritieke fout optreedt.

Nu kunt u het bestand zippen, bijvoegen bij een bericht op het forum Problemen met kritieke Windows-fouten oplossen en wachten tot iemand u de naam van het problematische stuurprogramma vertelt :) Maar u kunt het zonder veel moeite zelf doen.

Stap 2 - Download en installeer diagnostische hulpprogramma's

Het is niet zo eng als je zou denken :)

Stap 3 - Analyse van de geheugendump

Nu komt het allemaal neer op het uitvoeren van één commando. Open een opdrachtprompt en ga naar de map waarin u kdfe.cmd hebt uitgepakt. Voer het bestand uit en geef het pad naar het geheugendumpbestand op als parameter (in het onderstaande voorbeeld heet het bestand Mini1110307-01.dmp)

kdfe.cmd "%systemroot%MinidumpMini1110307-01.dmp"

Binnen een minuut zie je het resultaat.

De bestuurder die de fout veroorzaakt, is geïdentificeerd!

Aanvullende bronnen

Wanneer er een fatale fout wordt gedetecteerd, maken alle Windows-systemen een crashdump (momentopname) van de inhoud van het RAM-geheugen en slaan deze op de harde schijf op. Er zijn drie soorten geheugendumps:

Volledige geheugendump – slaat de volledige inhoud van RAM op. De afbeeldingsgrootte is gelijk aan de grootte van RAM + 1 MB (header). Zeer zelden gebruikt, omdat op systemen met grote hoeveelheden geheugen de dumpgrootte te groot zal zijn.

Kernelgeheugendump – slaat alleen RAM-informatie op die betrekking heeft op de kernelmodus. Informatie over de gebruikersmodus wordt niet opgeslagen omdat deze geen informatie bevat over de oorzaak van de systeemcrash. De grootte van het dumpbestand is afhankelijk van de grootte van het RAM-geheugen en varieert van 50 MB (voor systemen met 128 MB RAM) tot 800 MB (voor systemen met 8 GB RAM).

Kleine geheugendump (minidump) - bevat een vrij kleine hoeveelheid informatie: een foutcode met parameters, een lijst met stuurprogramma's die in het RAM zijn geladen op het moment van de systeemcrash, enz., maar deze informatie is voldoende om het defecte stuurprogramma te identificeren . Een ander voordeel van dit type dump is de kleine bestandsgrootte.

Systeemconfiguratie

Om de driver te identificeren die dit heeft veroorzaakt, is het voldoende dat we een kleine geheugendump gebruiken. Om ervoor te zorgen dat het systeem tijdens een crash een minidump opslaat, moet u de volgende stappen uitvoeren:

Voor Windows XP Voor Windows 7
  1. Mijn computer Eigenschappen
  2. Ga naar het tabblad Aanvullend;
  3. Parameters;
  4. In het veld Dossier foutopsporingsinformatie kiezen Kleine geheugendump (64 KB).
  1. Klik met de rechtermuisknop op het pictogram Computer van contextmenu selecteren Eigenschappen(of de Win+Pauze-toetscombinatie);
  2. Klik in het linkermenu op het item Geavanceerde systeeminstellingen;
  3. Ga naar het tabblad Aanvullend;
  4. In het veld Downloaden en herstellen moet u op de knop klikken Parameters;
  5. In het veld Foutopsporingsinformatie schrijven kiezen Kleine geheugendump (128 KB).

Nadat alle manipulaties zijn voltooid, wordt na elke BSoD een bestand met de extensie .dmp opgeslagen in de map C:\WINDOWS\Minidump. Ik raad je aan om het materiaal "" te lezen. U kunt ook het vakje “ Vervang het bestaande dumpbestand" In dit geval wordt elke nieuwe crashdump over de oude geschreven. Ik raad niet aan deze optie in te schakelen.

Een crashdump analyseren met BlueScreenView

Dus nadat het Blue Screen of Death verscheen, bewaarde het systeem een ​​nieuwe crashgeheugendump. Om de dump te analyseren, raad ik aan het BlueScreenView-programma te gebruiken. Het kan gratis worden gedownload. Het programma is best handig en heeft een intuïtieve interface. Nadat u het hebt geïnstalleerd, moet u eerst de locatie opgeven voor het opslaan van geheugendumps op het systeem. Ga hiervoor naar het menu-item “ Opties' en selecteer ' GeavanceerdOpties" Selecteer het keuzerondje “ LadenvandevolgendeMini-dumpmap' en geef de map op waarin de dumps zijn opgeslagen. Als de bestanden zijn opgeslagen in de map C:\WINDOWS\Minidump, kunt u op de knop “ Standaard" Klik op OK en ga naar de programma-interface.

Het programma bestaat uit drie hoofdblokken:

  1. Hoofdmenublok en bedieningspaneel;
  2. Crashdumplijstblok;
  3. Afhankelijk van de geselecteerde parameters kan het het volgende bevatten:
  • een lijst met alle stuurprogramma's in RAM voordat het blauwe scherm verschijnt (standaard);
  • een lijst met stuurprogramma's in de RAM-stack;
  • BSoD-screenshot;
  • en andere waarden die we niet zullen gebruiken.

Selecteer in het geheugendumplijstblok (gemarkeerd met nummer 2 in de afbeelding) de dump waarin we geïnteresseerd zijn en bekijk de lijst met stuurprogramma's die in RAM zijn geladen (gemarkeerd met nummer 3 in de afbeelding). De stuurprogramma's die op de geheugenstack stonden, zijn roze gekleurd. Zij zijn de oorzaak van BSoD. Ga vervolgens naar het hoofdmenu van de bestuurder en bepaal tot welk apparaat of programma ze behoren. Let allereerst op niet-systeembestanden, want systeembestanden worden sowieso in het RAM geladen. Het is gemakkelijk te zien dat het defecte stuurprogramma in de afbeelding myfault.sys is. Ik zal zeggen dat dit programma specifiek is gelanceerd om een ​​Stop-fout te veroorzaken. Nadat u het defecte stuurprogramma hebt geïdentificeerd, moet u het bijwerken of van het systeem verwijderen.

Om ervoor te zorgen dat het programma een lijst met stuurprogramma's weergeeft die zich op de geheugenstack bevinden wanneer een BSoD optreedt, moet u naar het menu-item " Opties“klik op menukaart” LagerPaneelModus' en selecteer ' AlleenChauffeursGevondenInStapel' (of druk op de F7-toets), en om een ​​screenshot van de fout weer te geven, selecteert u ' BlauwScherminXPStijl” (F8). Om terug te keren naar de lijst met alle chauffeurs, moet u “ AlleChauffeurs” (F6).

In Windows 8 introduceerde Microsoft een nieuwe geheugendump: een automatische geheugendumpoptie. Deze instelling is standaard ingesteld in het besturingssysteem. In Windows 10 geïntroduceerd nieuw type dumpbestand - actieve dump geheugen. Voor degenen die het niet weten: in Windows 7 hebben we kleine dump, kerndump en volledige puinhoop geheugen. Je vraagt ​​je misschien af ​​waarom Microsoft heeft besloten dit te maken nieuwe parameter geheugendump? Volgens Robert Simpkins, senior support engineer, kan een automatische geheugendump ondersteuning creëren voor de “systeem”-pagina in het configuratiebestand.
Het configuratiebeheersysteem voor wisselbestanden is verantwoordelijk voor het beheer van de grootte van het wisselbestand - dit voorkomt onnodige speelruimte of wisselbestandsgrootte. Deze optie is voornamelijk geïntroduceerd voor pc's die op SSD-schijven draaien, wat meestal het geval is kleiner formaat, maar een enorme hoeveelheid RAM.

Opties voor geheugendumps

Het belangrijkste voordeel van “Automatische geheugendump” is dat de subsysteemsessie in de procesmanager hierdoor automatisch het paginabestand kan verkleinen tot een formaat dat kleiner is dan het RAM-geheugen. Voor degenen die het niet weten: de subsysteembeheerdersessie is verantwoordelijk voor de systeeminitialisatie, de opstartomgeving voor services en processen die nodig zijn voor de gebruiker om in te loggen op het systeem. Het stelt feitelijk de bestandspagina in op virtueel geheugen en start het proces winlogon.exe.

Als u uw automatische geheugendumpinstellingen wilt wijzigen, kunt u dit als volgt doen. Druk op de Windows-toets + X en selecteer - Systeem. Klik vervolgens op de knop “Geavanceerde systeeminstellingen - Voorschot Systeem Instellingen”.

Klik op de knop Geavanceerde systeeminstellingen.

Hier ziet u een vervolgkeuzemenu met de tekst 'Geavanceerd'.

Hier kunt u kiezen de juiste optie. Voorgestelde opties:

Geen geheugendumps.
Kleine geheugendump.
Kernel-geheugendump.
Volledige geheugendump.
Automatische geheugendump. Toegevoegd aan Windows 8.
Actieve geheugendump. Toegevoegd aan Windows 10.
De locatie van het geheugendumpbestand bevindt zich in het bestand %SystemRoot%\MEMORY.DMP.

Als u gebruikt SSD-schijf, dan is het beter om het op “Automatische geheugendump” te laten staan; maar als je een crashdumpbestand nodig hebt, kun je het beter instellen op “kleine geheugendump”, daarmee kun je het, als je wilt, naar iemand sturen zodat die er naar kan kijken.

In sommige gevallen moet u mogelijk de paginabestandsgrootte met meer dan RAM, zodat het een volledige geheugendump kan evenaren. In dergelijke gevallen moet u een registersleutel maken:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl

het heet "LastCrashTime".

Hierdoor wordt de grootte van het wisselbestand automatisch vergroot. Om het later te verkleinen, kunt u deze sleutel eenvoudig verwijderen.

In Windows 10 geïntroduceerd nieuw bestand dump actieve geheugendump. Het bevat alleen de essentiële zaken en is daarom kleiner van formaat.

Ik heb geen manier om het te testen, maar ik heb deze sleutel gemaakt en de paginabestandsgrootte gecontroleerd. Ik weet dat ik vroeg of laat een kritieke fout zal krijgen. Dan zal ik het controleren.

U kunt de geheugendump van Windows.dmp-bestanden analyseren met WhoCrashed. WhoCrashed Home is een gratis hulpprogramma dat met één klik stuurprogramma's levert die op uw computer zijn geïnstalleerd. In de meeste gevallen kan het een defect stuurprogramma identificeren dat problemen op uw computer veroorzaakt. Dit is een crashdump voor systeemanalyse, geheugendumps en alle verzamelde informatie wordt hier in een toegankelijke vorm gepresenteerd.

Doorgaans opent de foutopsporingstoolkit een analyse-crashdump. Met dit hulpprogramma heeft u geen kennis of foutopsporingsvaardigheden nodig om erachter te komen welke stuurprogramma's problemen op uw computer veroorzaken.

WhoCrashed vertrouwt op een debugging-pakket (het windbg-programma) van Microsoft. Als dit pakket niet is geïnstalleerd, zal WhoCrashed dit pakket voor u downloaden en automatisch uitpakken. Voer gewoon het programma uit en klik op de knop Analyseren. Wanneer WhoCrashed op uw systeem is geïnstalleerd en het crasht of onverwachts wordt afgesloten, laat het programma u weten of crashdumping op uw computer is ingeschakeld en worden er suggesties gegeven over hoe u deze kunt inschakelen.

Deze korte notitie is bedoeld om te laten zien hoe u het systeem kunt configureren om in geval van nood te kunnen optreden Windows-geheugendump, dat wil zeggen een dump die kan worden gemaakt als er een kritieke fout optreedt, gekenmerkt door het verschijnen van een blue screen of death (BSOD). Wat is een dump in het algemeen, waarom hebben we het nodig en wat is het, welke problemen moet het oplossen en welke informatie bevat het?

Geheugendump - inhoud werkgeheugen proces, kernel of het gehele besturingssysteem, inclusief, naast werkgebieden, aanvullende informatie over de status van de processorregisters, de inhoud van de stapel en andere servicestructuren.

Waarom hebben we deze inhoud nodig, d.w.z. Windows-geheugendump? Misschien wel het meest voorkomende gebruik van een geheugendump is het bestuderen van de oorzaken van een systeemfout (), waardoor het besturingssysteem volledig stopte. Daarnaast kan de geheugenstatus voor andere doeleinden worden gebruikt. Belangrijk is ook dat een geheugendump letterlijk wordt gemaakt de enige manier ontvang informatie over eventuele storingen! En het nemen (verkrijgen) van een systeemgeheugendump is in feite de enige nauwkeurige methode om direct een vingerafdruk (kopie) van de inhoud te verkrijgen fysiek geheugen systemen.

Hoe nauwkeuriger de inhoud van de dump de toestand van het geheugen weergeeft op het moment van de storing, des te gedetailleerder kunnen we de noodsituatie analyseren. Daarom is het uiterst belangrijk om op een strikt gedefinieerd tijdstip onmiddellijk voorafgaand aan de storing een actuele kopie van het fysieke geheugen van het systeem te verkrijgen. En de enige manier om dit te doen is door een volledige crashdump te creëren. De reden is tamelijk triviaal: wanneer er een crashdump van het systeemgeheugen optreedt, hetzij als gevolg van een storing of als gevolg van een kunstmatig gesimuleerde situatie, bevindt het systeem zich op het moment dat het de controle over de noodfuncties ontvangt (KeBugCheckEx). absoluut ongewijzigde (statische) toestand. Tussen het moment waarop de fout optreedt en het moment waarop de gegevens naar de media worden geschreven, verandert er dus niets aan de inhoud van het fysieke geheugen en worden deze in de oorspronkelijke staat naar de schijf geschreven. Nou ja, dit is in theorie, maar af en toe in het leven, maar er zijn situaties waarin, als gevolg van defecte hardwarecomponenten, de geheugendump zelf beschadigd kan raken, of het station vastloopt tijdens het opnemen van de dump.

In de overgrote meerderheid van de gevallen blijft de informatie in het geheugen ongewijzigd, vanaf het moment dat het proces van het creëren van een crash-geheugendump begint tot het einde van het schrijven van de geheugeninhoud naar de schijf.

Theoretisch wordt de statische (onveranderlijkheid) van de "vingerafdruk" van het geheugen verklaard door het feit dat wanneer de KeBugCheckEx-functie wordt aangeroepen, die informatie over de fout weergeeft en het proces van het maken van een geheugendump start, het systeem al volledig is gestopt en de De inhoud van het fysieke geheugen wordt geschreven naar blokken die op de schijf worden bezet door het wisselbestand, waarna deze tijdens het daaropvolgende laden van het besturingssysteem wordt gereset naar een bestand op de systeemmedia. Nou ja, bijna één keer heb ik een situatie waargenomen waarin er een defect was moederbord verhinderde mij een geheugendump op te slaan: a) bevriezing terwijl de logica voor het opslaan van de dump actief was (het proces bereikte niet de 100%), b) het beschadigen van het geheugendumpbestand (de debugger klaagde over structuren), c) het schrijven van een memory.dmp-dump bestanden met een lengte nul. Ondanks het feit dat het systeem al volledig is gestopt op het moment dat de geheugendump wordt gemaakt en alleen de noodcode actief is, kan defecte hardware in elk stadium van de werking zonder uitzondering aanpassingen aan elke logica aanbrengen.
Traditioneel, op beginfase Om een ​​Windows-geheugendump op te slaan, worden schijfblokken gebruikt die aan het wisselbestand zijn toegewezen. Nadat er een blauw scherm verschijnt en opnieuw is opgestart, worden de gegevens vervolgens verplaatst apart bestand, en vervolgens wordt de naam van het bestand gewijzigd met behulp van een patroon, afhankelijk van het dumptype. Echter vanaf Windows-versies Vista kan deze stand van zaken worden gewijzigd nu de gebruiker de mogelijkheid krijgt om een ​​geselecteerde dump op te slaan zonder de deelname van een wisselbestand, waarbij informatie over de fout wordt geplaatst tijdelijk bestand. Dit werd gedaan om configuratiefouten te elimineren die verband hielden met onjuiste instellingen van de grootte en positie van het wisselbestand, wat vaak tot problemen leidde tijdens het opslaan van een geheugendump.
Laten we eens kijken welke soorten dumps het besturingssysteem ons toestaat te creëren. Windows-systeem:

  • Proces (applicatie) geheugendump;
  • Kernelgeheugendump;
  • Volledige geheugendump (dump van het beschikbare deel van het fysieke geheugen van het systeem).

Alle crashdumps kunnen in twee hoofdcategorieën worden onderverdeeld:

  • Crashdumps met informatie over de opgetreden uitzondering. Meestal gemaakt in automatische modus, wanneer er een onverwerkte uitzondering optreedt in de applicatie/kernel en dienovereenkomstig de (ingebouwde) debugger van het systeem kan worden aangeroepen. In dit geval wordt informatie over de uitzondering vastgelegd in een dump, waardoor het gemakkelijker wordt om tijdens de daaropvolgende analyse het type uitzondering te bepalen en waar deze zich heeft voorgedaan.
  • Crashdumps zonder uitzonderingsinformatie. Meestal handmatig gemaakt door de gebruiker wanneer het nodig is om eenvoudigweg een momentopname van een proces te maken voor daaropvolgende analyse. Deze analyse impliceert niet het bepalen van het type uitzondering, aangezien er geen uitzondering heeft plaatsgevonden, maar een analyse van een heel ander soort, bijvoorbeeld het bestuderen van de datastructuren van een proces enzovoort.

Configuratie van kernelgeheugendump

U moet ingelogd zijn met een beheerdersaccount om de acties uit te voeren die in deze sectie worden beschreven.

Laten we meteen beginnen met het configureren van de crashdump-instellingen van Windows. Eerst moeten we op een van de volgende manieren naar het venster met systeemeigenschappen gaan:

  1. Klik met de rechtermuisknop op het pictogram "Deze computer" - "Eigenschappen" - "Geavanceerde systeeminstellingen" - "Geavanceerd".
  2. Knop "Start" - "Configuratiescherm" - "Systeem" - "Geavanceerde systeeminstellingen" - "Geavanceerd".
  3. Toetscombinatie "Windows" + "Pauze" - "Geavanceerde systeeminstellingen" - "Geavanceerd".

  4. besturingssysteem.cpl,3
  5. Uitvoeren binnen opdrachtregel(cmd):
    SysteemeigenschappenGeavanceerd

Het resultaat van de beschreven acties is het openen van het venster "Systeemeigenschappen" en het selecteren van het tabblad "Geavanceerd":

Daarna klikken we in het gedeelte "Opstarten en herstellen", selecteren we "Opties" en openen daardoor een nieuw venster met de naam "Download en herstel":

Alle crashdumpparameters zijn gegroepeerd in een parameterblok met de naam "Systeemfout". In dit blok kunnen we de volgende parameters instellen:

  1. Registreer gebeurtenissen in het systeemlogboek.
  2. Voer een automatische herstart uit.
  3. Foutopsporingsinformatie vastleggen.
  4. Dump bestand.
  5. Vervang een bestaand dumpbestand.

Zoals u kunt zien, zijn veel van de parameters uit de lijst vrij triviaal en gemakkelijk te begrijpen. Ik wil echter graag dieper ingaan op de parameter "Dump File". De parameter wordt weergegeven als een vervolgkeuzelijst en heeft vier mogelijke waarden:

Kleine geheugendump

Een kleine geheugendump (minidump) is een bestand dat de kleinste hoeveelheid informatie over de fout bevat. De kleinste van alle mogelijke geheugendumps. Ondanks de voor de hand liggende nadelen worden minidumps vaak gebruikt als informatie over een fout die aan de leverancier moet worden doorgegeven chauffeurs van derden voor verdere studie.
Verbinding:

  • Foutmelding.
  • Foutwaarde.
  • Foutparameters.
  • De processorcontext (PRCB) waarop de fout heeft plaatsgevonden.
  • Procesinformatie en kernelcontext (EPROCESS) voor het crashende proces en al zijn threads.
  • Verwerk informatie en kernelcontext (ETHREAD) voor de thread die de crash veroorzaakt.
  • De kernelmodusstapel voor de thread die de crash heeft veroorzaakt.
  • Lijst met geladen stuurprogramma's.

Accommodatie: %SystemRoot%\Minidump\MMDDYY-XXXXX-NN.dmp. Waar MMDDYY respectievelijk de maand, de dag en het jaar is, is NN dat serienummer dumpen.
Volume: De grootte is afhankelijk van de bitheid van het besturingssysteem: slechts 128 kilobytes zijn vereist voor een 32-bits en 256 kilobytes voor een 64-bits besturingssysteem in het wisselbestand (of in het bestand dat is opgegeven in DedicatedDumpFile). Omdat we zo'n klein formaat niet kunnen instellen, ronden we het af naar 1 megabyte.

Kernel-geheugendump

Dit type dump bevat een kopie van al het kernelgeheugen op het moment van de crash.
Verbinding:

  • Lijst met actieve processen.
  • Status van de huidige thread.
  • Geheugenpagina's in de kernelmodus die aanwezig waren in het fysieke geheugen op het moment van de crash: stuurprogrammageheugen in de kernelmodus en programmageheugen in de kernelmodus.
  • Hardware-afhankelijk niveau (HAL) geheugen.
  • Lijst met geladen stuurprogramma's.

In de kernelgeheugendump ontbreken niet-toegewezen geheugenpagina's en gebruikersmoduspagina's. Mee eens, het is onwaarschijnlijk dat procespagina's in de gebruikersmodus voor ons interessant zullen zijn tijdens een systeemfout (BugCheck), aangezien dit meestal systeemfout geïnitieerd door kernelmoduscode.

Grootte: Varieert afhankelijk van de grootte van de kerneladresruimte die door het besturingssysteem wordt toegewezen en het aantal stuurprogramma's voor de kernelmodus. Normaal gesproken is ongeveer een derde van het fysieke geheugen vereist in het wisselbestand (of in het bestand dat is opgegeven in DedicatedDumpFile). Kan variëren.

Volledige geheugendump

Een volledige geheugendump bevat een kopie van al het fysieke geheugen (RAM) op het moment van de fout. Dienovereenkomstig wordt de volledige inhoud van het systeemgeheugen in het bestand opgenomen. Dit is zowel een voordeel als een groot nadeel, aangezien de omvang ervan aanzienlijk kan zijn op sommige servers met grote hoeveelheden RAM.
Verbinding:

  • Alle pagina's met "zichtbaar" fysiek geheugen. Dit is vrijwel het gehele systeemgeheugen, met uitzondering van de gebieden die door de hardware worden gebruikt: BIOS, PCI-ruimte, enz.
  • Gegevens van de processen die op het systeem draaiden op het moment van de storing.
  • Pagina's met fysiek geheugen die niet zijn toegewezen aan de virtuele adresruimte, maar die kunnen helpen bij het onderzoeken van de oorzaak van de storing.

Standaard omvat een volledige geheugendump geen delen van het fysieke geheugen die door het BIOS worden gebruikt.
Locatie: %SystemRoot%\MEMORY.DMP . De vorige dump wordt overschreven.
Volume: Het wisselbestand (of het bestand gespecificeerd in DedicatedDumpFile) vereist een volume dat gelijk is aan de grootte van het fysieke geheugen + 257 megabytes (deze 257 MB zijn verdeeld in een bepaalde header + drivergegevens). In sommige besturingssystemen kan de onderste drempel van het wisselbestand zelfs exact worden ingesteld op de waarde van de fysieke geheugengrootte.

Automatische geheugendump

Vanaf Windows 8/Windows Server 2012 is er een nieuw dumptype in het systeem geïntroduceerd, genaamd Automatic Memory Dump, dat is ingesteld als het standaardtype. In dit geval beslist het systeem zelf welke geheugendump moet worden vastgelegd in het geval van een bepaalde storing. Bovendien hangt de keuzelogica af van veel criteria, waaronder de frequentie van de “crash” van het besturingssysteem.

Nadat u de Windows-geheugendumpconfiguratie hebt gewijzigd, moet u mogelijk uw computer opnieuw opstarten.

Registerinstellingen

De registersectie die de crashdumpparameters definieert:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl

Parameters:

Parameter Type Beschrijving
Automatisch opnieuw opstarten REG_DWORD Schakel automatisch opnieuw opstarten in/uit als BSOD optreedt.
CrashDumpIngeschakeld REG_DWORD Het type dump dat wordt gemaakt.
  • 0 - maak geen geheugendump;
  • 1 - volledige geheugendump;
  • 2 - kernelgeheugendump;
  • 3 - kleine geheugendump;
Dumpbestand REG_EXPAND_SZ Pad en naam van de kernelgeheugendump en de volledige geheugendump.
DumpFilters REG_MULTI_SZ Stuurprogrammafilter in de geheugendump-stuurprogrammastapel. Hiermee kunt u nieuwe functionaliteit toevoegen tijdens het maken van crashdumps. Bijvoorbeeld het versleutelen van de inhoud van de dump. Het wijzigen van de waarde wordt niet aanbevolen.
LogGebeurtenis REG_DWORD Een gebeurtenis opnemen in het systeemlogboek.
MinidumpDir REG_EZPAND_SZ Pad en naam van de kleine geheugendump.
MinidumpsCount REG_DWORD Maximaal aantal kleine geheugendumps. Bij overschrijding beginnen oudere versies te worden overschreven.
Overschrijven REG_DWORD Vervang een bestaand dumpbestand. Alleen voor kernelgeheugendump en volledige geheugendump.
NegeerPagefileSize REG_DWORD Negeert standaard bestand swap als plaats voor tijdelijke (tussen)opslag van een geheugendump. Geeft aan dat de geheugendump naar een afzonderlijk bestand moet worden geschreven. Wordt gebruikt in combinatie met de optie DedicatedDumpFile.
Toegewijd DumpFile REG_EZPAND_SZ Pad en naam van tijdelijk alternatief bestand om een ​​geheugendump op te nemen. Bij de tweede doorgang worden de gegevens nog steeds verplaatst naar DumpFile/MinidumpDir.

Handmatig een geheugendump maken

Hierboven hebben we de instellingen voor beschreven automatische creatie crashdumps van het systeem in geval van een kritieke fout onverwerkte uitzondering in de kernelcode. Maar binnen echte leven Naast de crash van het besturingssysteem zijn er situaties waarin het nodig is om op een specifiek tijdstip een systeemgeheugendump te verkrijgen. Wat te doen in dit geval? Er zijn methoden om een ​​momentopname van al het fysieke geheugen te verkrijgen, bijvoorbeeld met behulp van de opdracht .dump in de WinDbg/LiveKD-foutopsporingsprogramma's. LiveKD is een programma waarmee u de Kd-kernel-debugger op een draaiend systeem in lokale modus kunt uitvoeren. De WinDbg-foutopsporing heeft ook een soortgelijke functie. De on-the-fly dump-methode is echter niet nauwkeurig omdat de in dit geval gegenereerde dump "inconsistent" is, omdat het tijd kost om de dump te genereren, en in het geval van gebruik van de debugger in de kernelmodus blijft het systeem draaien en maken wijzigingen in de geheugenpagina's.

Hoe vaak zie je het Windows Screen of Death (BSoD)? BSoD kan voorkomen in verschillende gevallen: zowel al tijdens het werken met het systeem, als tijdens het laden van het besturingssysteem. Hoe kan ik bepalen wat de oorzaak is van BSoD en dit probleem oplossen? Het Windows-besturingssysteem kan een geheugendump opslaan als er een fout optreedt systeembeheerder zou de dumpgegevens kunnen analyseren en de oorzaak van de BSoD kunnen vinden.

Er zijn twee soorten geheugendumps: klein (minidump) en vol. Afhankelijk van de instellingen van het besturingssysteem kan het systeem volledige of kleine dumps opslaan of geen actie ondernemen wanneer er een fout optreedt.

Langs het pad bevindt zich een kleine stortplaats %systemroot%\minidump en heeft een naam als Minixxxxxx-xx.dmp
De volledige stortplaats bevindt zich langs het pad %systeemroot% en heeft een naam als Memory.dmp

Om de inhoud van geheugendumps te analyseren, moet u gebruiken speciaal hulpprogramma- Microsoft Kernel-foutopsporing.
U kunt het programma en de componenten die nodig zijn voor de werking ervan rechtstreeks verkrijgen via de Microsoft-website - Debugging Tools

Bij het kiezen van een debugger moet u rekening houden met de versie van het besturingssysteem waarop u geheugendumps moet analyseren. Voor een 32-bits besturingssysteem is de 32-bits versie van de debugger vereist, en voor een 64-bits besturingssysteem verdient het de voorkeur om de 64-bits versie van de debugger te gebruiken.

Naast het Debugging Tools-pakket zelf voor Windows, hebt u ook een set foutopsporingssymbolen nodig: Debugging Symbols. De set foutopsporingssymbolen is specifiek voor elk besturingssysteem waarop de BSoD is opgenomen. Daarom moet u een set symbolen downloaden voor elk besturingssysteem waarvan u de werking moet analyseren. Voor een 32-bits Windows XP is de 32-bits tekenset van Windows XP vereist; voor een 64-bits besturingssysteem is de 64-bits tekenset van Windows XP vereist. Voor andere besturingssystemen uit de Windows-familie worden tekensets volgens hetzelfde principe geselecteerd. U kunt hier foutopsporingssymbolen downloaden. Het wordt aanbevolen om ze te installeren op %systeemhoofd%\symbolen

Nadat u de debugger en debug-symbolen hebt geïnstalleerd, start u de debugger. Het debuggervenster na het starten ziet er als volgt uit.

Voordat u de inhoud van een geheugendump analyseert, moet u dit doen kleine opstelling debugger Vertel het programma specifiek waar het moet zoeken naar foutopsporingssymbolen. Om dit te doen, selecteert u in het menu Bestand > Symboolbestandspad... Klik op de knop Bladeren... en geef de map aan waarin we de foutopsporingssymbolen voor de betreffende geheugendump hebben geïnstalleerd.

Informatie over de vereiste foutopsporingssymbolen kunt u rechtstreeks via internet bij een publiek opvragen Microsoft-server. Zo beschikt u over de laatste versie van de symbolen. U kunt dit als volgt doen: voer in het menu Bestand > Symboolbestandspad… het volgende in: SRV*%systemroot%\symbols*http://msdl.microsoft.com/download/symbols

Nadat u het pad naar de foutopsporingssymbolen hebt opgegeven, selecteert u Bestand > Werkruimte opslaan in het menu en bevestigt u de actie door op OK te klikken.

Om te beginnen met het analyseren van de geheugendump, selecteert u Bestand > Crashdump openen... in het menu en selecteert u het bestand dat nodig is voor onderzoek.

Het systeem analyseert de inhoud, waarna het een resultaat oplevert over de vermoedelijke oorzaak van de fout.

De opdracht !analyze -v die aan de debugger op de opdrachtregel wordt gegeven, zal meer gedetailleerde informatie opleveren.

U kunt het debuggen stoppen door het menu-item Debug > Stop Debugging te selecteren

Met het Debugging Tools for Windows-pakket kunt u dus altijd genoeg krijgen volledig zicht over de oorzaken van systeemfouten.