GNU Debugger lernt Rückwärtslaufen
Der Debugger des GNU-Projekts kann in Version 7 Programme nicht nur vorwärts, sondern auch rückwärts durchlaufen - zumindest auf Intel-Architekturen.
- Christian Kirsch
Eine der Neuerungen im freien GNU Debugger GDB 7 ist "Reverse Debugging": Auf Plattformen, die diese Funktion unterstützen, kann der Debugger den untersuchten Code von der aktuellen Position aus rückwärts ausführen – auch schrittweise. Dies funktioniert zurzeit unter anderem auf den Plattformen i386-linux und amd64-linux.
Auf geeigneten Architekturen lässt sich die Programmausführung mit dem neuen GDB aufzeichnen und später wieder abspielen ("processs record and replay"). Auch dabei kann man zwischen Vorwärts- und Rückwärtsgang wechseln.
Neu ist ebenfalls eine Schnittstelle für die JIT-Übersetzung (Just in Time). Solche Compiler können Symboldateien für die Prozesse im Speicher erzeugen und den GDB darüber informieren. Anwender des Debuggers sollen davon nichts bemerken, Compiler-Entwickler müssen ihre Software jedoch geeignet erweitern. Bislang gibt es nur im JIT-Compiler des LLVM-Projekts eine solche Anpassung.
Eine neue Scripting-Schnittstelle erlaubt den Einsatz von Python zur Steuerung des GDB. Sie muss beim Übersetzen des Debuggers aktiviert werden.
Die NEWS-Datei enthält eine Liste aller Änderungen. Quellen und Dokumentation des Debuggers stehen ebenfalls online zur Verfügung.
(ck)