29.01.2010, 11:02 Uhr
Schweizer Tool verhindert Programmabstürze
Informatiker des Dependable Systems Lab der École Polytechnique Fédérale de Lausanne haben ein Tool entwickelt, das Software-Fehler erkennt und vor den Programm-Bugs schützen soll.
Beim ersten Auftreten eines Fehlers zeichnet das Programm «Dimmunix» eine Reihe von Informationen zum Bug und dem Systemverhalten im Anschluss daran auf. Somit kann das Tool nicht nur erkennen, wenn das Problem erneut aufzutreten droht, sondern auch korrigierend in die Programmausführung eingreifen. Hierdurch soll die absturzgefährdete Applikation einwandfrei weiterlaufen.
«Die Dimmunix-Runtime passt dabei einfach das Scheduling der Programm-Threads auf einer Ebene unter dem betreffenden Programm an, um es praktisch auszutricksen, damit es fehlerfrei läuft», erklärt Informatikprofessor George Candea von der École Polytechnique Fédérale de Lausanne (EPFL). Die Änderungen bewegten sich dabei im Rahmen dessen, was bei Schedulern normal ist. Für das Programm selbst sind die Korrekturen daher nicht bemerkbar und der Ablauf insgesamt normal - sodass auch trotz korrigierenden Eingriffs sicher richtige Ergebnisse geliefert werden.
Serverabstürze vermeiden
Ein mögliches Anwendungsbeispiel wäre, dass der Webbrowser via Dimmunix lernt, mit von Plug-Ins verursachten Fehlern umzugehen und so Totalabstürze zu vermeiden. Allerdings ist der Schwerpunkt des für Java- und C/C++-Programme geeigneten Tools bisher anders gelagert. Die Informatiker haben seine Tauglichkeit bislang unter anderem für Apache, JBoss und MySQL demonstriert. Dem EPFL-Professor zufolge hätte man Dimmunix zunächst für Server bereitgestellt, weil der Umgang damit am schwierigsten sei. «Sie sind gross, haben viele Threads und ein Aufhängen oder Einfrieren ist sehr teuer», so Candea.
Serverabstürze vermeiden
Ein mögliches Anwendungsbeispiel wäre, dass der Webbrowser via Dimmunix lernt, mit von Plug-Ins verursachten Fehlern umzugehen und so Totalabstürze zu vermeiden. Allerdings ist der Schwerpunkt des für Java- und C/C++-Programme geeigneten Tools bisher anders gelagert. Die Informatiker haben seine Tauglichkeit bislang unter anderem für Apache, JBoss und MySQL demonstriert. Dem EPFL-Professor zufolge hätte man Dimmunix zunächst für Server bereitgestellt, weil der Umgang damit am schwierigsten sei. «Sie sind gross, haben viele Threads und ein Aufhängen oder Einfrieren ist sehr teuer», so Candea.
Auf dieser Website haben die EPFL-Informatiker nun den Dimmunix-Quellcode publiziert. Damit adressieren sie zunächst vor allem Entwickler. «Gewissermassen ist das ein Hilferuf nach weiteren Personen, die unsere Bemühungen unterstützen und uns helfen, ein Dimmunix zu schaffen, das auch Durchschnittsanwender herunterladen und zu ihrem Schutz nutzen wollen», erklärt Candea.
Harald Schodl