Linux-Kernel: Facebooks Debugger läuft dank Skripting besser als GDB
Mit einem neu vorgestellten Tool will Facebook besser Bugs im Linux-Kernel finden als andere Debugger.

Immer wieder stößt das Entwickler-Team von Meta (ehemals Facebook) auf Fehler im Linux-Kernel. Nun stellen sie ein Tool namens Drgn vor, das die Suche erleichtern soll. Es wurde in C und Python geschrieben und soll laut den Entwicklern anderen Debuggern wie dem GNU Project Debugger (GDB) und Crash vor allem beim Skripting überlegen sein.
In einem Blogpost beschreibt Hauptentwickler Omar Sandoval das Problem, dass manche Bugs erst gefunden werden, nachdem die neue Kernel-Version ausgerollt wurde. Um auch die eigenen Systeme zu schützen, beschäftigt Meta ein eigenes Team zur Fehlersuche. In dem Tool, das Dragon ausgesprochen wird, finden sich Entscheidungen, die es von anderen Debuggern unterscheiden.
Debugger mit Python-Anbindung
So soll Drgn unter anderem im Gegensatz zu GDB skriptbar sein, "so dass sich das Debuggen wie Programmieren anfühlt", schreibt Sandoval. Mit generischen Python-Funktionen, die Helpers genannt werden, soll die Fehlersuche leicht in Skripten implementiert werden. Zudem unterstützen die Helpers bei der Erstellung von weiteren Funktionen.
Die Kernfunktionalität beschreibt Sandoval wie folgt: Sie sei "in einer nativen Bibliothek, libdrgn, implementiert. Die Python-Anbindungen werden auf libdrgn aufgesetzt, und die Kommandozeilenschnittstelle und die Hilfsprogramme werden auf diesen Anbindungen aufgebaut." Der Entwickler betont, dass Drgn sich "nicht drastisch von anderen Debuggern unterscheidet". Die wesentlichen Inputs seien die "Speicher des Programms und die Debugsymbole für das Programm", die sich wiederum von Software zu Software unterscheiden.
Drgn habe bereits dabei geholfen, Fehler beim Zusammenspiel von dem Dateisystem Btrfs, Loop-Devices und Linux-Workqueues zu beheben. Sandoval sagt zudem, dass die Unterstützung von Code in C++ geplant sei - ebenso werde Rust-Support angedacht. Das Team bittet um Berichte über Fehler des Debuggers.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
- ohne Werbung
- mit ausgeschaltetem Javascript
- mit RSS-Volltext-Feed
Häh, GDB hat doch selbst schon ewig ein Python Interface??
Ich vermute mal das ist Satire und hat nichts mit deinen Erfahrungen mit dem Debugger zu tun?