Objekt-Metadaten
Aspektorientierung und Programmfamilien im Betriebssystembau

Autor :Olaf Spinczyk
Herkunft :OvGU Magdeburg, Fakultät für Informatik
Datum :16.12.2002
 
Dokumente :
Dataobject from HALCoRe_document_00006807
 
Typ :Dissertation
Format :Text
Kurzfassung :Beim Bau maßgeschneiderter Betriebssystemsoftware, wie sie zum Beispiel im Bereich kleinster eingebetteter Systeme benötigt wird, spielt das Konzept der Programmfamilie eine wichtige Rolle. Damit werden die Gemeinsamkeiten und Unterschiede verschiedener Varianten eines Systems modelliert, so dass bei der Implementierung ein hohes Maß an Wiederverwendung erreicht wird. An die Grenzen der Wiederverwendung stößt man jedoch, wenn der für die Implementierung einer bestimmten Systemeigenschaft benötigte Code über weite Teile des Systems verstreut vorliegen muss. Dies gilt beispielsweise für Synchronisationscode. Es handelt sich hierbei um sogenannte Crosscutting Concerns. Eine Lösung für dieses Problem verspricht die aspektorientierte Programmierung (AOP). Sie erlaubt, Crosscutting Concerns modular in Form sogenannter Aspekte zu implementieren. Bisher war die Realisierung eines aspektorientierten Betriebssystems mangels sprachlicher Unterstützung praktisch nicht möglich, obwohl AOP gerade im Kontext von Betriebssystemfamilien sehr vielversprechend ist. So könnten strategische Entwurfsentscheidungen wie die Granularität der Unterbrechungssynchronisation oder die Zuordnung von Kontrollfäden zu Funktionen im Systemkern anders als bisher modular umgesetzt werden, so dass sie in Abhängigkeit vom Anwendungsszenario konfiguriert werden könnten. Das Ziel dieser Arbeit bestand daher darin, alle nötigen Voraussetzungen zu schaffen, um mit konkreten Fallstudien Erfahrungen mit diesem Ansatz zu sammeln. Dazu wurde neben einer aspektorientierten Erweiterung des Entwurfsmodells der funktionalen Hierarchie eine ganze Suite sogenannter Aspektweber entwickelt. Einer davon ist der Übersetzer für AspectC++, einer Spracherweiterung für C++, mit der Aspekte sehr ressourcensparend implementiert werden können. Mit Hilfe von Fallstudien im Kontext der Betriebssystemfamilie Pure wird in dieser Arbeit gezeigt, dass die erhofften Vorteile des Ansatzes tatsächlich eintreten. So bestimmen in einer Studie wenige Aspekte die Architektur und das Synchronisationsschema von Gerätetreibern. In einer anderen Studie wird die Strategie zur Unterbrechungssynchronisation, die sich bisher auf 15 Klassen auswirkte, durch nur einen Aspekt ausdrückt.
Schlagwörter :Betriebssysteme, Programmfamilien, Aspektorientierte Programmierung, AspectC++, Eingebettete Systeme, PURE Betriebssystemfamilie
Rechte :Dieses Dokument ist urheberrechtlich geschützt.
Größe :212 S.
 
Erstellt am :24.04.2009 - 09:41:54
Letzte Änderung :22.04.2010 - 08:50:04
MyCoRe ID :HALCoRe_document_00006807
Statische URL :http://edoc.bibliothek.uni-halle.de/servlets/DocumentServlet?id=6807