Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Det finns sex tillgängliga felsökningsmiljöer:
- WinDbg
- WinDbg (klassisk)
- Kernel Debugger (KD)
- NTKD
- Konsolfelsökningsverktyg (CDB)
- NT-symbolisk felsökare (NTSD)
I följande avsnitt beskrivs felsökningsmiljöerna.
WinDbg
WinDbg är den senaste versionen av WinDbg med moderna visuella objekt, snabbare fönster och en fullfjädrad skriptupplevelse, byggd med den utökningsbara felsökningsdatamodellen framför och i mitten. WinDbg använder samma underliggande motor som WinDbg (klassisk), så alla kommandon, tillägg och arbetsflöden som du är van vid fungerar fortfarande som tidigare.
Mer information finns i WinDbg-funktioner
WinDbg (klassisk)
Microsoft Windows Debugger WinDbg (klassisk) är ett Windows-baserat felsökningsprogram som kan felsöka både användarläge och kernelläge. WinDbg tillhandahåller felsökning för Windows-kerneln, drivrutiner i kernelläge och systemtjänster samt program och drivrutiner i användarläge.
WinDbg använder Visual Studio-felsökningssymbolformaten för felsökning på källnivå. Den kan komma åt valfri symbol eller variabel från en modul som har PDB-symbolfiler och kan komma åt alla offentliga funktioners namn som exponeras av moduler som kompilerats med COFF-symbolfiler (till exempel Windows .dbg-filer).
WinDbg kan visa källkod, ange brytpunkter, visa variabler (inklusive C++-objekt), stackspårningar och minne. Med dess kommandofönster för felsökning kan användaren utfärda en mängd olika kommandon.
Vid felsökning i kernelläge kräver WinDbg vanligtvis två datorer (värddatorn och måldatorn). WinDbg stöder också olika alternativ för fjärrfelsökning för både mål i användarläge och kernelläge.
WinDbg är en grafisk gränssnittsmotsvarighet till CDB/NTSD och till KD/NTKD.
KD
Microsoft Kernel Debugger (KD) är ett teckenbaserat konsolprogram som möjliggör djupgående analys av kernellägesaktivitet på alla NT-baserade operativsystem. Du kan använda KD för att felsöka komponenter och drivrutiner i kernelläge eller för att övervaka själva operativsystemets beteende. KD stöder också felsökning av flera processorer.
Vanligtvis körs inte KD på datorn som debuggas. Du behöver två datorer ( värddatorn och måldatorn) för felsökning i kernelläge.
NTKD
Det finns en variant av KD-felsökaren med namnet NTKD. Det är identiskt med KD på alla sätt, förutom att det skapar ett nytt textfönster när det startas, medan KD ärver kommandotolkens fönster som det anropades från.
CDB
Microsoft Console Debugger (CDB) är ett teckenbaserat konsolprogram som möjliggör analys på låg nivå av minne och konstruktioner i Användarläge i Windows. Namnet Konsolfelsökare används för att ange att CDB klassificeras som ett konsolprogram. Det innebär inte att målprogrammet måste vara ett konsolprogram. I själva verket är CDB fullt kapabel att felsöka både konsolprogram och grafiska Windows-program.
CDB är mycket kraftfullt för att felsöka ett program som för närvarande körs eller nyligen har kraschat (liveanalys), men ändå enkelt att konfigurera. Den kan användas för att undersöka beteendet för ett fungerande program. Om ett program misslyckas kan CDB användas för att hämta en stackspårning eller för att titta på de skyldiga parametrarna. Den fungerar bra i ett nätverk (med hjälp av en fjärråtkomstserver), eftersom den är teckenbaserad.
Med CDB kan du visa och köra programkod, ange brytpunkter och undersöka och ändra värden i minnet. CDB kan analysera binär kod genom att demontera den och visa sammansättningsinstruktioner. Den kan också analysera källkoden direkt.
Eftersom CDB kan komma åt minnesplatser via adresser eller globala symboler kan du referera till data och instruktioner efter namn i stället för efter adress, vilket gör det enkelt att hitta och felsöka specifika kodavsnitt. CDB stöder felsökning av flera trådar och processer. Den är utökningsbar och kan läsa och skriva både sid- och icke-sidiga minne.
Om målprogrammet i sig är ett konsolprogram delar målet konsolfönstret med CDB. Om du vill skapa ett separat konsolfönster för ett målkonsolprogram använder du kommandoradsalternativet -2 .
NTSD
Det finns en variant av CDB-felsökaren med namnet Microsoft NT Symbolic Debugger (NTSD). Det är identiskt med CDB på alla sätt, förutom att det skapar ett nytt textfönster när det startas, medan CDB ärver kommandotolkens fönster som det anropades från.
Eftersom startkommandot också kan användas för att skapa ett nytt konsolfönster ger följande två konstruktioner samma resultat:
start cdb parameters
ntsd parameters
Du kan omdirigera indata och utdata från NTSD (eller CDB) så att de kan styras från ett kernelfelsökare (antingen Visual Studio, WinDbg eller KD). Om den här tekniken används med NTSD visas inget konsolfönster alls. Att styra NTSD från kernelfelsökaren är därför särskilt användbart eftersom det resulterar i ett extremt enkelt felsökningsprogram som nästan inte belastar datorn som innehåller målprogrammet. Den här kombinationen kan användas för att felsöka systemprocesser, avstängning och senare faser av start. Se Styrning av User-Mode-debuggern från debugger för kerneln för mer information.