(-> Vorlesungsskripte und Übungsblätter)
Ziel ist es, daß ein Verteiltes System an der Benutzerschnittstelle sich genauso wie ein Einzelrechnersystem verhält. Gewünscht ist Transparenz bei Zugriff, Speicherort, Nebenläufigkeit, Replikation, Fehlern, Migration, Leistung und Skalierbarkeit.
Die Prinzipien von TCP/IP mit ARP und RARP werden am Beispiel XINU eingeführt.
Der Fernaufruf (Remote Procedure Call, RPC) soll idealerweise eine transparente Erweiterung des lokalen Prozeduraufrufs (mit exactly-once- und last-one-Semantik) darstellen. Es werden verschiedene Aufrufsemantiken unterschieden (at-least-once, last-of-many, at-most-once, u.a.) und eine Implementierung für die last-of-many-Semantik vorgestellt.
Wie kann ein gegenseitiger Ausschluß in einem Verteilten System erreicht werden. Wie viele Rechner müssen oder sollen an der Entscheidung beteiligt sein, wenn Teilkomponenten ausfallen können, und wie hoch ist die Anzahl der zu sendenden Nachrichten.
Wie genau können Uhren in Verteilten Systemen synchronisiert werden? Es werden verschiedene Verfahren vorgestellt, die auch dann noch eine Synchronisation erreichen, wenn falsch gehende Uhren beteiligt sind.
Transaktionen stellen sicher, daß ein konsistenter Zustand auch nach einem Systemzusammenbruch vorgefunden wird. Basierend auf Stabilen Speichern, RPC usw. können vom Betriebssystem Transaktionen angeboten werden.
Wahlverfahren dienen dazu, einen ausgezeichneten Knoten zu bestimmen, z.B. den Koordinator eines Sicherungspunktes. Die Verfahren laufen dabei im Prinzip immer in drei Schritten ab: Explosionsphase, Kontraktionsphase und Informationsphase. Besonderes Augenmerk muß darauf gelegt werden, wenn zwei Knoten quasi gleichzeitig ein Wahlverfahren starten und es trotzdem nur einen Gewinner geben darf. Es werden Verfahren für verschiedene Topologien (Ringe, Bäume, Netze) vorgestellt.
In Verteilten Systemen ist es von großem Interesse, ob eine Anwendung noch aktiv ist, fertig ist oder sich verklemmt hat. Das Terminierungsproblem ist eines der schwierigsten Probleme bei Verteilten Systemen. Es ist von grundsätzlicher Bedeutung für die Theorie verteilter Algorithmen.
Bei lange laufenden, verteilten Anwendungen muß damit gerechnet werden, daß mindestens ein Rechner während der Bearbeitungszeit ausfällt. Darum müssen vom Anwenderprogramm selbst von Zeit zu Zeit Sicherungspunkte (globale konsistente Zustände) erzeugt werden, auf denen bei einem Wiederanlauf des Systems aufgesetzt werden kann.
Vorlesungsskripte und Übungsblätter
Autor : Singhal, Mukesh Shivaratri, Niranjan G. Titel : Advanced concepts in operating systems Impressum : New York u. a. McGraw-Hill 1994 Autor : Comer, Douglas Titel : Operating system design, Volume II Schlagwort : XINU Betriebssystem / Entwurf Impressum : Englewood Cliffs, NJ Prentice-Hall Autor : Nelson, Bruce J. Titel : Remote procedure call Impressum : Pittsburgh