zurück zum Artikel

GNU Debugger lernt Rückwärtslaufen

Christian Kirsch

Der Debugger des GNU-Projekts kann in Version 7 Programme nicht nur vorwärts, sondern auch rückwärts durchlaufen - zumindest auf Intel-Architekturen.

Eine der Neuerungen im freien GNU Debugger GDB 7 ist "Reverse Debugging" [1]: 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 [2] 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 [3] enthält eine Liste aller Änderungen. Quellen [4] und Dokumentation [5] des Debuggers stehen ebenfalls online zur Verfügung.


(ck [6])


URL dieses Artikels:
https://www.heise.de/-817379

Links in diesem Artikel:
[1] http://www.gnu.org/software/gdb/news/reversible.html
[2] http://llvm.org/
[3] http://sourceware.org/cgi-bin/cvsweb.cgi/~checkout~/src/gdb/NEWS?content-type=text/x-cvsweb-markup&cvsroot=src
[4] http://www.gnu.org/software/gdb/download/
[5] http://sourceware.org/gdb/download/onlinedocs/
[6] mailto:ck@ix.de