Open Source im professionellen Einsatz

Debugger Kgdb: Aufnahme in den Kernel ungewiss

02.08.2007

Hat der Debugger Kgdb eine Chance auf Aufnahme in den Kernel? Möglicherweise gelangt die Software in die übernächste Release.

273

Aufgeworfen hat diese Frage der Entwickler Mike Frysinger. Hintergrund ist die wechselhafte Geschichte des Debuggers. Bereits 2004 gab es einen Anlauf, den Kgdb-Tree zu mergen. Dies scheiterte nicht zuletzt am Widerstand von Linus Torvalds, der Debugger nicht besonders leiden kann. "Ich mag keine Debugger. Habe das niemals, und werde es wahrscheinlich auch nie", schrieb er im Jahr 2000 in einer Mailingliste. Er begründete seine Abneigung damit, dass er die Kernel-Entwicklung nicht zu sehr vereinfachen möchte. Dennoch hat es der Debugger in einigen Patch-Sets für ausgewählte Architekturen wie i386, x86_64, PPC und ARM in den von Andrew Morton gepflegten Kernel-Zweig geschafft.

Morton antwortet auf Frysingers Anfrage, er hoffe, die Aufnahme von Kgdb finde im Kernel 2.6.24 statt. Aber bisher habe er selbst sich den Code nicht angeschaut. Er hofft allerdings auf einen baldigen Review durch andere Kernel-Entwickler. Morton selbst empfindet Runtime-Testing zur Zeit nicht als wichtigste Tätigkeit und ist deshalb der Auffassung, dass man den Code einfach flicken werde, wenn er derzeit noch nicht gut genug sei - Fehler gäbe es schließlich immer wieder.

Der Kgdb-Debugger ist ein Produkt der Firma Linsyssoft Technologies. Seine freie Variante ist unter der GPL lizenziert. Die kommerzielle Version bietet erweiterte Funktionen und kostet knapp 1.500 US-Dollar pro Jahr.

Beide Versionen liegen als Kernel-Patch vor. Um Kgdb zur Fehlersuche zu benutzen werden zwei Rechner benötigt, die entweder seriell über die RS232-Schnittstelle oder per Ethernet-Netzwerk (KGDBoE) verbunden sind. Zur Untersuchung wird die zu debuggende Maschine (Target) mit dem gepachten Kernel betrieben. Auf dem anderen Host läuft währenddessen der GNU Debugger. Die Kommunikation zwischen beiden Maschinen wird über das Gdb-Remote-Protocol gewährleistet.

Ähnliche Artikel

  • Kernel 2.6.26: Debugger, schnelles WLAN und mehr

    Linus Torvalds hat den neuen Kernel 2.6.26 freigegeben. Er kommt mit einer Hand voll neuer Treiber und Verbesserungen. Zu den neuen Funktionen zählen ein eigener Speichertest und der Debugger Kgdb.

  • Kern-Technik

    Für KGDB, den eingebauten Debugger des Linux-Kernels, gibt es die beiden Frontends KDB und GDB. Mit KDB und der richtigen Konfigurationsdatei kann es unter Ubuntu sofort losgehen. Wer Hochsprachen-Debugging mit GDB wünscht, installiert noch Virtualbox, Socat und einen speziellen Kernel.

  • Kern-Technik

    Den Kern eines laufenden Betriebssystems zu debuggen war und ist problematisch. Doch der Emulator Qemu ermöglicht plattformunabhängiges Kernel- und Modul-Debugging auf Hochsprachen-Niveau. Dank der virtuellen Maschine braucht der Kernelhacker noch nicht einmal einen zweiten Rechner.

  • Kernel-Next: Zwischenstufe für höhere Effizienz

    Andrew Morton hatte einen Traum: Ein neuer Kerneltree, der die Kernelentwicklung übersichtlicher und effizienter macht. Er suchte einen Maintainer und hat ihn in Stephen Rothwell gefunden.

  • Btrfs will in den Kernel

    Chris Mason, der Hauptentwickler des Copy-on-Write-Dateisystems Btrfs, hat auf der Kernel-Mailingliste um dessen Aufnahme gebeten.

comments powered by Disqus

Stellenmarkt

Artikelserien und interessante Workshops aus dem Magazin können Sie hier als Bundle erwerben.