Diplomarbeit : Aspektorientierte Realisierung eines generischen Systemmonitors
Motivation
Bei der Entwicklung von Software kommt es oftmals darauf an,
die technologischen Vorgaben des Einsatzumfeldes zu beachten. Dies
gilt speziell für die Entwicklung von Betriebssystemen für
den Einsatz im eingebetteten Bereich. Die Einhaltung dieser
Vorgaben muss messtechnisch nachgewiesen werden können. Die
Messung von Systemeigenschaften zur Laufzeit (Monitoring)
erfordert die Erweiterung des Systems um Programmcode, der an
interessanten Stellen den Systemzustand nach aussen hin sichtbar
macht. In vielen Fällen erfolgt die Einbringung solcher
Messerweiterungen durch reine "Handarbeit" oder durch einfache
Werkzeuge, die meist auf den Anwendungsfall hin zugeschnitten
sind. Diese Vorgehensweise führt aber zu einer Reihe von Problemen
beim Einfügen, Entfernen und Warten der
Messerweiterungen. Nützlich wäre deshalb ein generischer
Systemmonitor, der es erlaubt, alle interessanten
Zustandsänderungen mit beliebigen Aktionen (z.B. zur
Protokollierung) zu verbinden. Sowohl die Beschreibung der
gesuchten Zustandsänderungen als auch die damit zu verbindenen
Aktionen müssen vom eigentlichen System und speziell seiner
Codebasis getrennt erfolgen, um diese nicht zu
beeinträchtigen. Eine Möglichkeit, dies zu realisieren, ist
die Möglichkeit der Nutzung des Konzepts der
Aspektorientierten Programmierung.
Aufgabe
Im Rahmen der Arbeit sollte ein System entwickelt werden, dass es
unter Nutzung des Konzepts der aspektorientierten Programmierung
gestattet, ein beliebiges C/C++-System um Programmcode zur
Durchführung von Mess- und Überwachungsaufgaben
(Monitoring) zu erweitern. Dazu soll das System auf der
Basis von Komponenten abstrakt beschrieben werden
können. Des weiteren sollte eine geeignete Ausdrucksform
zur Entwicklung von Aspektprogrammen gefunden werden, mit der die zur
Durchführung von Monitoring-Aufgaben notwendigen
Änderungen am Quelltext beschrieben werden können.
Zur Durchführung der Transformationen am Quelltext war auf
der Basis der Puma-Bibliothek ein System zu entwickeln,
dass es gestattet, einen gegebenen Quelltext auf alle
Zustandsänderungen und den Kontrollfluss hin zu analysieren
und an geeigneten Stellen Änderungen vorzunehmen.
Zur Nachweis der praktischen Einsatfähigkeit sollten im Rahmen
einer Anwendungsfallstudie einige Eingeschaften des
Pure-Systems messtechnisch erfasst und geeignet
dargestellt werden.
Ergebnis
Weitere Informationen zum Thema
|