Im ersten Teil der Vorlesung wird eine Einführung in die Grundkonzepte objektorientierter Programmierung gegeben. Die Konzepte werden jeweils mit Hilfe von Beispielen aus den Sprachen Java und C++ erläutert [a]. Im Übungsteil erfolgt eine ausführliche Einführung in die Programmierung mit Java sowie ein Überblick über die für die weiteren Übungen relevanten Unterschiede von C++ zu Java [a+b].
Im zweiten Teil der Vorlesung wird aufbauend auf den Grundlagen objektorientierter, verteilter und nebenläufiger Systeme CORBA (Common Object Request Broker Architecture) behandelt. Diese Middleware-Architektur ermöglicht den Aufbau verteilter Anwendungssysteme durch verteilte CORBA-Objekte, unabhängig von dem darunter liegenden Betriebssysstem [a]. Im Übungsteil werden auf der Basis von Java-RMI (Remote Method Invocation) und mit verschiedenen CORBA-Implementierungen kleine Beispielanwendungen realisiert. Dabei soll auch das Zusammenspiel von Java- und C++-Objekten innerhalb einer verteilten Anwendung erprobt werden [a+b].
Im letzten Teil der Vorlesung werden nach einer Einführung
in die verschiedenen Grundstrukturen von Betriebssystemarchitekturen (monolithisch, Minimalkern,
objektbasiert) verschiedene Projekte aus dem Betriebssystembereich
vorgestellt, in denen objektorientierte Konzepte zur Konstruktion
moderener Betriebssysteme eingesetzt wurden.
Ein aktuelles Thema stellt hier die Laufzeitumgebung für Java dar.
Neben seiner
Aktualität als "die Programmiersprache für das Internet" eröffnet
Java auch sehr interessante Perspektiven für Betriebssystemarchitekturen:
Schutzmechanismen werden nicht mehr durch Adreßraumgrenzen, sondern
durch sichere Sprachkonstrukte realisiert. Die an sich schon
sehr interessante Sicherheitsproblematik erhält durch die enge Einbindung
von Java-Anwendungen in die Internet-Welt noch weitaus größere Bedeutung.
Es werden die Architektur der virtuellen Java-Maschine,
das in Java geschriebene Betriebssystem JavaOS und die Konzepte
für die Java-Prozessoren besprochen [a].
Schließlich werden noch einige Ergebnisse aus Forschungsprojekten
aus dem Bereich objektorientierter Betriebssysteme (Choices, Clouds, Spring)
und eigene Forschungsarbeiten
(MetaJava) vorgestellt [a].
Das Vorlesungsskript besteht aus dem Inhalt der in der Vorlesung verwendeten Folien und ausführlichen Kommentaren. Eine Kopie des Skripts kann in der ersten Vorlesung gekauft werden (erstes Kapitel + Gutschein für die weiteren Kapitel, Preis 5 DM). Das Skript steht außerdem über WWW in Form von Postskript-Dateien zur Verfügung und kann damit auch ausgedruckt werden (es kann allerdings nicht garantiert werden, daß die aktuelle Version jeweils so rechtzeitig vor der Vorlesung bereitsteht, daß sie noch ausgedruckt werden kann!)
Im Rahmen der "alten" Hauptdiplomprüfung kann die Vorlesung (2-stündig) zusammen mit Betriebsprogrammierung-I für die normale Hautdiplomprüfung oder zusammen mit Betriebsprogrammierung-I und Betriebsprogrammierung-II für die Schwerpunktfachprüfung gewählt werden. Der 4-stündige, unbenotete Schein (Vorlesung und Übung) wird auf die erfolgreiche Bearbeitung der Übungsaufgaben und ein Kolloquium vergeben. Daneben kann auch ein 2-stündiger, unbenoteter Schein (Vorlesung) durch ein Kolloquium erworben werden.
Für eine Hauptdiplomprüfung nach der neuen Fachprüfungsordnung kann die Lehrveranstaltung (4-stündig) zusammen mit Betriebsprogrammierung-I gewählt werden.
Ein benoteter Schein über 4 Stunden wird auf die Übungsaufgaben und ein Kolloquium (über Vorlesungs- und Übungsstoff) vergeben, ein benoteter Schein über 2 Stunden kann durch ein Kolloquium über den Vorlesungsstoff erworben werden. Die Vergabe unbenoteter Schein ist im Absatz über das "alte" Hauptstudium beschrieben.