Login
Newsletter
Werbung

Do, 8. Juni 2006, 21:38

Software::Kommunikation

Kooperative Fehlersuche in freier Software

Mit Software der Universität Wisconsin in Madison soll es allen Anwendern möglich sein, sich an der Fehlersuche von freier Software zu beteiligen.

Möglich wird dies durch Software der US-amerikanischen Universität Wisconsin in Madison, die im Rahmen des Projektes »Cooperative Bug Isolation« entstanden ist. Die Software soll den Entwicklern Rückmeldungen über Programmfehler, aber auch über das reibungslose Funktionieren des Programmes geben. Dabei wird sowohl auf Datenschutz geachtet als auch auf die Rechnerleistung. Die Installation der Software soll keine spürbaren Auswirkungen auf die Geschwindigkeit der Programmausführung haben.

Das Forschungsprojekt »Bug Isolation« will ergründen, warum Programme abstürzen und was dabei schief ging. Die Vorgehensweise des Projektes ist es, modifizierte Versionen populärer freier Softwarepakete anzubieten, die Rückmeldungen über ihr Verhalten geben. Das Verfahren ist nur mit freier Software möglich, da nur diese in modifizierter Form weitergegeben werden kann.

Dabei werden sowohl erfolgreiche als auch fehlerhafte Läufe erfasst. Jeder Anwender, der diese modifizierte Software ausführt, trägt dazu bei, das Verhalten des Programmes zu ergründen. Fehler sollen so erkannt und behoben werden. Die Anwender der modifizierten Software müssen keine Programmierkenntnisse haben, sondern lediglich das Programm installieren.

Das Projekt bietet derzeit folgende Pakete im Binärformat für Fedora Core 4 und teilweise auch für Fedora Core 1 und 2 zum Download an: Evolution, Gaim, GIMP, GNOME Panel, Gnumeric, Nautilus, Rhythmbox und SPIM. Zusätzlich benötigt man den Instrumentierungs-Code, der für die Rückmeldungen sorgt und im Paket »Sampler 1.3« steckt.

Der Instrumentierungs-Code selbst ist freie Software unter der BSD-Lizenz. Eine Hürde für die meisten Entwickler dürfte jedoch die Implementation in der wenig bekannten Sprache »Objective Caml« (OCaml) sein.

Im Prinzip arbeitet die Instrumentierungs-Software so, dass sie Datenwerte und Programmverzweigungen beobachtet. Damit dies nicht die Privatsphäre beeinträchtigt und das Programm nicht merklich verlangsamt, ist die Beobachtung nur zeitweise aktiv. Sie wird zu zufälligen Zeitpunkten ein- und ausgeschaltet und ist den größten Teil der Zeit inaktiv.

An das Projekt liefert die Instrumentierung beim Programmende die grundlegenden Informationen über das Programm und die Instrumentierung, darunter die Versionsnummern. Ferner werden die Messwerte übermittelt sowie im Fall eines Absturzes die Liste der Shared Libraries und ein Stacktrace. Die Daten sollen nach und nach ein Bild des Laufzeitverhaltens der Anwendung liefern. Durch statistische Auswertung wollen die Forscher die Fehler in der Anwendung finden.

Werbung
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung