Delen via


Foutcontrolegegevens analyseren (stopcodefout)

Note

Dit artikel is bedoeld voor programmeurs. Als u een klant bent die tijdens het gebruik van uw computer een stopcodefout heeft ontvangen, raadpleegt u Fouten met stopcode oplossen.

Note

Als u een IT-professional of ondersteuningsmedewerker bent, raadpleegt u Geavanceerde probleemoplossing voor stopcodefouten voor meer informatie.

Verzamel de parameters van de stopcode

Elke bugcontrolecode heeft vier bijbehorende parameters die informatie geven. De parameters worden beschreven in Referentie bugcontrolecode voor elke stopcode.

Er zijn meerdere manieren om de vier stopcodeparameters te verzamelen.

  • Bekijk het Windows-systeemlogboek in de Event Viewer. De gebeurteniseigenschappen voor de bugcontrole bevatten de vier stopcodeparameters.

  • Load the generated dump file and use the !analyze command with the debugger attached. Zie Een dumpbestand in kernelmodus analyseren met WinDbg voor meer informatie.

  • Sluit een kerneldebugger aan op de pc die de fout oploopt. Wanneer de stopcode optreedt, bevat de uitvoer van het debugger de vier parameters na de hexadecimale waarde van de stopcode.

    *******************************************************************************
    *                                                                             *
    *                        Bugcheck Analysis                                    *
    *                                                                             *
    *******************************************************************************
    
    Use !analyze -v to get detailed debugging information.
    
    BugCheck 9F, {3, ffffe000f38c06a0, fffff803c596cad0, ffffe000f46a1010}
    
    Implicit thread is now ffffe000`f4ca3040
    Probably caused by : hidusb.sys
    

Bug check symbolische namen

DRIVER_POWER_STATE_FAILURE is the bug check symbolic name, with an associated bug check code of 9F. De hexadecimale waarde van de stopcode die is gekoppeld aan de symbolische naam van de bugcontrole, wordt vermeld in de referentie van de bugcontrolecode.

Lees de informatie over bugcheck van de debugger

Als er een foutopsporingsprogramma is aangesloten en foutopsporing is ingeschakeld op de pc, zorgt een foutcontrole ervoor dat de doelcomputer inbreekt in de foutopsporing. In dit geval wordt de stopcodefout mogelijk niet onmiddellijk weergegeven. De volledige details van deze crash worden naar de foutopsporingsactie verzonden en verschijnen in het foutopsporingsvenster. Als u deze informatie een tweede keer wilt bekijken, gebruikt u de opdracht .bugcheck (Display bug check data) of de opdracht !analyze extension. Zie Aan de slag met WinDbg (Kernel-Mode) voor informatie over het inschakelen van foutopsporing.

Kernel debugging en crash dump analyse

Kernel debugging is vooral handig wanneer andere technieken voor het oplossen van problemen mislukken, of voor een terugkerend probleem. Vergeet niet om de exacte tekst vast te leggen in het gedeelte met informatie over bugcontrole van het foutbericht. Om een complex probleem te isoleren en een haalbare tijdelijke oplossing te ontwikkelen, is het handig om de exacte acties vast te leggen die tot de storing hebben geleid.

The !analyze debug extension displays information about the bug check and can be helpful in determining the root cause.

U kunt ook een onderbrekingspunt instellen in de code die leidt tot deze stopcode en proberen een enkele stap vooruit te zetten in de foutcode.

Zie de volgende artikelen voor meer informatie:

Crashdump-analyse met behulp van de Windows debuggers (WinDbg)

Een dumpbestand in kernelmodus analyseren met WinDbg

De extensie !analyze en!analyze gebruiken

De Defrag Tools toont

Driver Verifier gebruiken om informatie te verzamelen

Naar schatting worden ongeveer drie kwart van de stopcodefouten veroorzaakt door defecte stuurprogramma's. Driver Verifier is een tool die in realtime wordt uitgevoerd om het gedrag van chauffeurs te onderzoeken. Driver Verifier controleert bijvoorbeeld het gebruik van geheugenbronnen, zoals geheugenpools. Als er fouten worden gevonden in de uitvoering van de stuurprogrammacode, wordt proactief een uitzondering gemaakt om dat deel van de stuurprogrammacode verder te kunnen onderzoeken. De driver verifier manager is ingebouwd in Windows en is beschikbaar op alle Windows-pc's. To start the driver verifier manager, enter Verifier at a command prompt. U kunt configureren welke stuurprogramma's u wilt verifiëren. De code die stuurprogramma's verifieert, voegt overhead toe terwijl deze wordt uitgevoerd, dus probeer een zo klein mogelijk aantal stuurprogramma's te verifiëren. For more information, see Driver Verifier.

Tips voor software engineers

Wanneer een bugcontrole plaatsvindt als gevolg van code die u hebt geschreven, moet u de kerneldebugger gebruiken om het probleem te analyseren en vervolgens de bugs in uw code op te lossen. Zie voor meer informatie de individuele bugcontrolecode in de sectie Bugcontrolecode .

U kunt echter ook bugcontroles tegenkomen die niet door uw eigen code worden veroorzaakt. In dit geval kunt u de werkelijke oorzaak van het probleem waarschijnlijk niet oplossen, dus uw doel moet zijn om het probleem te omzeilen. Isoleer en verwijder indien mogelijk de hardware- of softwarecomponent die de fout veroorzaakt.

Veel problemen kunnen worden opgelost door middel van basisprocedures voor probleemoplossing, zoals het verifiëren van instructies, het opnieuw installeren van belangrijke componenten en het verifiëren van bestandsdatums. Ook kunnen de Event Viewer, de diagnostische hulpprogramma's van Sysinternals en de hulpprogramma's voor netwerkbewaking deze problemen isoleren en oplossen.

See also