Kerneldebugging mit einer virtuellen Maschine
Dieser Artikel beschreibt die Möglichkeit Windows auf Kernelebene zu debuggen, wenn es in einer virtuellen Maschine läuft. Dies hat den Vorteil, dass für das Debuggen kein zweiter Computer notwendig ist und das Entwickeln und Testen auf einer Maschine stattfinden kann. Diese Anleitung setzt VMWare Workstation und ein Windows voraus, welches für das Debuggen auf Kernelebene vorbereitet wurde.
Zunächst muss man die serielle Schnittstelle in VMWare (Workstation) so konfigurieren, dass eine named pipe verwendet wird. Weiterhin sollte das Häckchen bei “Yield CPU on Poll” aktiviert werden.
WinDbg startet man nun nun mit der Angabe der eingestellten Pipe:
windbg.exe -k com:port=\\.\pipe\com_1,pipe
bzw. mit der Angabe des Symbolservers (und einen lokalen Ordner zum Speichern), falls man die Symbole des zu debuggenden Betriebssystems im Moment nicht zur Hand hat:
windbg.exe -y srv*C:\WebSymbols*http://msdl.microsoft.com/download/symbols -k com:port=\\.\pipe\com_1,pipe

Kernel-Debugging mit VMWare
Getestet wurde das Ganze mit:
- WinDbg 6.8
- VMWare Workstation 5.5.5
- Windows 2000/Windows Server 2008 als Gastsystem
- Windows XP als Hostsystem
Weiterführende Informationen zum Artikel
- Einführung in das Kernel-Mode Driver Framework – Dort wird u.a. beschrieben, wie Windows zum Debuggen konfiguriert werden muss

Schreiben Sie einen Kommentar zum Artikel