Header1  
  Header2  
 
   
> Fachgruppe Betriebssysteme > Aktivitäten > Treffen > Berlin-2002 > Tutorium
 

Linie




   
Herbsttreffen 2002 in Berlin


Tutorium: Aspektorientierung und Betriebssysteme

Olaf Spinczyk und Andreas Gal
(Olaf.Spinczyk,Andreas.Gal)@informatik.uni-erlangen.de
 
Friedrich-Alexander-Universität Erlangen-Nürnberg

Zeit und Ort
Datum: 7. November 2002
Zeit: 9:30 bis etwa 13 Uhr
  (Kaffeepause von 11:00 bis 11:30)
Adresse: Technische Universität Berlin
  Raum CR 102
  Jebensstr. 1 / Eingang: Hertzallee 41
  10787 Berlin

Die Teilnahme ist kostenlos.

Motivation

Unter dem Begriff Aspektorientierte Programmierung (AOP) werden verschiedene Techniken zusammengefasst, mit denen im Sinne des Prinzips Separation of Concerns die modulare Implementierung sogenannter Crosscutting Concerns möglich ist. Das sind Teilaufgaben eines Softwaresystems, die bei Verwendung herkömmlicher Programmiersprachen nicht in Module gekapselt werden können und so zu Code führen, der über weite Teile des Systems verstreut vorliegt. Ein Beispiel dafür ist die Synchronisation nebenläufiger Aktivitäten in einem Betriebssystem, bei der sich die verfolgte Strategie, etwa grob- oder feingranulares Sperren, durch die Punkte im Programmcode ausdrückt, von denen aus die Sychronisationsprimitiven aufgerufen werden. Mit AOP ist die modulare und getrennte Implementierung solcher Strategien möglich.

Seit 1997 finden regelmäßig Workshops zum Thema Aspektorientierte Programmierung bei namenhaften, programmiersprachlich ausgerichteten Konferenzen wie der ECOOP und der OOPSLA statt. In diesem Jahr wurde dazu sogar eine eigene Konferenzserie namens AOSD ins Leben gerufen. Immer mehr Wissenschaftler und Unternehmen setzen sich mit diesem neuen Konzept auseinander und versuchen, es gewinnbringend in den verschiedensten Anwendungsbereichen einzusetzen. Erste Ansätze dazu gibt es auch im Betriebssystemsektor.

Dieses Tutorium soll vermitteln, warum AOP gerade für den Betriebssystembau eine interessante Technologie ist und welche Ergebnisse bisher erzielt wurden.

Inhalt

Das Tutorium gliedert sich in zwei etwa 90-minütige Vortragsblöcke mit abschließender Diskussion. Dabei wird folgender Inhalt abgedeckt:

  • Einführung in die aspektorientierte Programmierung: Die Idee und frühe Arbeiten
  • Erste Anwendungsbeispiele für AOP im Betriebssystemsektor, z. B. a-kernel (University of British Columbia - Kiczales/Coady) und AOSA (Illinois Institute of Technology - Elrad/Netinant)
  • Einordnung von AOP, verwandte Konzepte: Metaobjektprotokolle, Reflektion, Subjektorientiertes Programmieren, Rewriting, Programmspezialisierung, ...
  • Sprachliche Unterstützung für AOP im Betriebssystemsektor: AspectC++ und Alternativen
  • Aspekte für die Entwicklungsphase: Kontrollflussverfolgung, Profiling, Zusicherungen und Kontrakte
  • Produktionsaspekte: Unterbrechungssynchronisation, Fadensynchronisation
  • Bewertung: Vorteile und Risiken von AOP im Betriebssystembau
  • Ausblick
  • Fragen & Antworten
Adressaten

Ansprechen möchten wir jeden, der sich für die Strukturierung von Betriebssystemen interessiert, oder AOP einmal anhand konkreter Beispiel erläutert bekommen möchte. Spezielle Vorkenntnisse zum Thema AOP werden nicht vorausgesetzt. Grundlegende Kenntnisse über Aufgaben und Struktur von Betriebssystemen sowie ein grobes Verständnis der Programmiersprache C++ sind dagegen wünschenswert.

Vortragende
Olaf Spinczyk
befasst sich seit 1998 mit dem Thema AOP im Hinblick auf die Anwendung im Betriebssystemsektor. Er hat an der Otto-von-Guericke-Universität Magdeburg Teile der Betriebssystemfamilie PURE aspektorientiert entworfen und implementiert. Nach der Fertigstellung seiner Dissertation mit dem Titel ``Aspektorientierung und Programmfamilien im Betriebssystembau'' arbeitet er heute am Lehrstuhl für Informatik 4 (Betriebssysteme und Verteilte Systeme, Prof. Schröder-Preikschat) der Universität Erlangen-Nürnberg.
Andreas Gal
war als wissenschaftlicher Mitarbeiter und Doktorand an der Otto-von-Guericke-Universität Magdeburg, der University of California (Irvine) und ist heute ebenfalls an der Universität Erlangen-Nürnberg tätig. Zusammen mit Olaf Spinczyk ist er maßgeblich am Entwurf und an der Implementierung der aspektorientierten C++ Spracherweiterung AspectC++ beteiligt.


   
Nav        
 
 
-Impressum Stand: 2005-01-24   PU