Freigeben über


LiveKd v5.63

Von Mark Russinovich und Ken Johnson

Veröffentlichungsdatum: 28. April 2020

Download LiveKd herunterladen (700 KB)

Einführung

LiveKD, ein Hilfsprogramm, das ich für die CD geschrieben habe, die Inside Windows 2000, Third Edition beiliegt, ist jetzt frei verfügbar. Mit LiveKD können Sie die Microsoft-Kerneldebugger Kd und Windbg, die Teil des Pakets Debuggingtools für Windows sind, lokal auf einem Livesystem ausführen. Führen Sie alle Debuggerbefehle aus, die für Absturzabbilddateien verwendet werden können, um tief in das System zu blicken. Informationen zum Erkunden eines Systems mit den Kerneldebuggern finden Sie in der Dokumentation zu Debuggingtools für Windows sowie in unserem Buch.

Die neuesten Versionen von Windbg und Kd bieten unter Windows Vista und Server 2008 eine ähnliche Funktion. Verglichen mit dem Live-Kerneldebugging von Windbg und Kd bietet LiveKD jedoch mehr Möglichkeiten, z. B. das Anzeigen von Threadstapeln mithilfe des Befehls „!thread“.

Installation

Laden Sie zuerst das Paket mit den Debuggingtools für Windows von der Microsoft-Website herunter, und installieren Sie es:

https://msdn.microsoft.com/library/windows/hardware/ff551063(v=vs.85).aspx

Wenn Sie die Tools im Standardverzeichnis „\Programme\Microsoft\Debugging Tools for Windows“ installieren, können Sie LiveKD in einem beliebigen Verzeichnis ausführen. Andernfalls müssen Sie LiveKD in das Verzeichnis kopieren, in dem die Tools installiert sind.

Wenn Sie keine Symbole für das System installiert haben, auf dem Sie LiveKD ausführen, fragt LiveKD, ob das System automatisch für die Verwendung des Microsoft-Symbolservers konfiguriert werden soll. (Informationen zu Symboldateien und zum Microsoft-Symbolserver finden Sie in der Dokumentation zu den Debuggingtools für Windows.)

HINWEIS: Der Microsoft-Debugger beschwert sich darüber, dass er keine Symbole für „LIVEKDD.SYS“ finden kann. Das ist nicht überraschend, da ich keine Symbole für „LIVEKDD.SYS“ verfügbar gemacht habe, und wirkt sich nicht auf das Verhalten des Debuggers aus.

Verwenden von LiveKd

Syntax:

liveKd [[-w]|[-k <Debugger>]|[-o Dateiname]] [-vsym] [-m[Flags] [[-mp Prozess]|[pid]]][Debuggeroptionen]
liveKd [[-w]|[-k <Debugger>]|[-o Dateiname]] -ml [Debuggeroptionen]
liveKd [[-w]|[-k <Debugger>]|[-o Dateiname]] [[-hl]|[-hv <VM-Name> [[-p]|[-hvd]]]] [Debuggeroptionen]

Parameter Beschreibung
-hv Gibt den Namen oder die GUID des zu debuggenden virtuellen Hyper-V-Computers an.
-hvd Schließt Hypervisorseiten ein (ab Windows 8.1).
-hvl Listet die Namen und GUIDs der aktiven virtuellen Hyper-V-Computer auf.
-k  Gibt den vollständigen Pfad und Dateinamen des auszuführenden Debuggerimage an.
-m  Erstellt ein gespiegeltes Abbild, bei dem es sich um eine konsistente Ansicht des Kernelspeichers handelt.
Nur Kernelmodusspeicher ist verfügbar, und diese Option benötigt möglicherweise erhebliche Mengen an verfügbarem physischem Arbeitsspeicher.  Optional kann eine Flags-Maske bereitgestellt werden, die angibt, welche Regionen eingeschlossen werden sollen (siehe folgende Tabelle; Standard: 0x18F8).
0001: Prozess (privat), 0002: zugeordnete Datei,
0004: gemeinsam genutzter Abschnitt, 0008: Seitentabellenseiten,
0010: ausgelagerter Pool, 0020: nicht ausgelagerter Pool,
0040: System-PTEs, 0080: Sitzungsseiten,
0100: Metadatendateien, 0200: AWE-Benutzerseiten,
0400: Treiberseiten, 0800: Kernelstapel,
1000: WS-Metadaten, 2000: große Seiten
Die Standardeinstellung erfasst die meisten Kernelspeicherinhalte und wird empfohlen.
Diese Option kann mit „-o“ verwendet werden, um schnellere konsistente Abbilder zu speichern.
Für gespiegelte Abbilder ist mindestens Windows Vista oder Windows Server 2008 erforderlich.
RamMap von Sysinternals bietet eine grafische Zusammenfassung der Verteilung der verfügbaren Arbeitsspeicherregionen, die zur Aufnahme ausgewählt werden können.
-ml  Generiert ein Liveabbild mit nativer Unterstützung (ab Windows 8.1).
-mp  Gibt einen einzelnen Prozess an, dessen Benutzermodus-Speicherinhalte in ein gespiegeltes Abbild eingeschlossen werden sollen. Nur wirksam in Kombination mit der Option „-m“.
-o Speichert „memory.dmp“ auf dem Datenträger, anstatt den Debugger zu starten.
-p Hält die Hyper-V-Ziel-VM an, während LiveKd aktiv ist (empfohlen für die Verwendung mit „-o“). Gibt den Namen oder die GUID des zu debuggenden virtuellen Hyper-V-Computers an.
-hvl Listet die Namen und GUIDs der aktiven virtuellen Hyper-V-Computer auf.
-vsym Zeigt ausführliche Debuginformationen zu Symbolladevorgängen an.
-w  Führt windbg anstelle von kd aus.

Alle anderen Optionen werden an den Debugger übergeben.

Hinweis: Verwenden Sie STRG+UNTBR, um den Debugger zu beenden und neu zu starten, falls er hängen bleibt.

LiveKd führt standardmäßig „kd.exe“ aus.

Download LiveKd herunterladen (700 KB)

Läuft auf:

  • Client: Windows Vista und höher.
  • Server: Alle Windows Server 2008 und höher.