Ja, dann darf ich euch alle herzlich begrüßen zur Vorlesung verteilte Systeme jetzt im Sommersemester
2011. Ich vermute die meisten kennen mich, aber einerseits für die Aufzeichner und
diejenigen, die mich vielleicht nicht kennen, werde ich mich kurz vorstellen. Also mein
Name ist Jürgen Kleinöder, ich bin hier am Währstil für verteilte Systeme und Betriebssysteme,
katholische direktor und beschäftige mich eigentlich jetzt seit, oh Gott, größten Ordnung 15 Jahren
auf jeden Fall mit diesem Themenkomplex verteilte Systeme, hatte auch in der Vergangenheit schon
öfters Lehrveranstaltungen zu diesem Thema gemacht, habe mich auch vielen Forschungsprojekten
mit diesem Themenkomplex beschäftigt und bis zum letzten Jahr hat ja Rüdiger Capizza die
Vorlesung gehalten, nachdem er jetzt seit 1. Januar eine Professur in Darmstadt angetreten
hat, in Braunschweig, sorry, in Braunschweig angetreten hat, werde ich das jetzt also wieder
übernehmen und ja, bevor wir anfangen im ersten Abschnitt vielleicht ein paar Worte zu organisatorischen
Themen, gut, die Dozenten, also im Wesentlichen bin es ich, es wird ein, eventuell vielleicht
auch zwei Termine geben, an den Tobias Distler für mich halten wird, die Übungen wird Tobias
zusammen mit Tim Hönig und Klaus Stängel betreuen, ich weiß nicht, zeigt ihr euch mal
ganz kurz vielleicht, spoon it down movements and yeah, vielleicht erstmal ein paar Worte
zu den Zielen von dieser Veranstaltung, was wie ich hier überhaupt vorhaben, also im Wesentlichen
geht es eigentlich darum, sich mal zu überlegen, was macht ein verteiltes System eigentlich
zu einem verteinten System, und in sofern eigentlich hier falsch geschrieben, man sollte
eigentlich groß schreiben, also verteiltes System als stehender Begriff.
Und letztendlich ist es ja mehr wie einfach die Vernetzung von paar Rechner, sondern es ist im
Endeffekt ja irgendwo die gemeinsame Zusammenarbeit von mehreren Rechnern zur Lösung von Problemen.
Und das wollen wir uns also im Detail anschauen. Es geht weniger darum, die Rechnernetze als
solches zu betrachten. Also die Rechnernetze selbst sind jetzt nicht Thema der Veranstaltung,
sondern es geht eigentlich eher um die Schichte drüber. Also im Endeffekt das, was man häufig
auch unter diesem Themenkomplex Mittelware sieht, also das, was das Betriebssystem eigentlich
mehr oder weniger direkt oberhalb der Hardware ist, ist die Mittelware oberhalb des Netzwerkes.
Letztendlich auch eine Software-Schicht, die Systemdienste bereitstellt, die letztendlich
Abstraktionen bereitstellt, um das mehr oder weniger komplette Netzwerk besser nutzen zu
können und mit diesem Themenkomplex werden wir uns in erster Linie dann eben auch beschäftigen.
Also verteiltes System aus Systemsicht, aus der Sicht eines Betriebssystemmenschen. Welche
Abstraktionen können wir bereitstellen? Wie gehen wir mit den Ressourcen im verteilten
System um und so weiter. Ein ganz wesentliches Element bei diesen Abstraktionen ist der
Fernaufruf und das werden wir auch im Rahmen der Übung machen. Wir werden so ein Fernaufrufsystem
von Grund auf entwickeln und auf die Weise natürlich dann auch verstehen, welche Probleme
man im verteilten System bei verteilten Anwendungen so alles zu berücksichtigen hat. Dann geht
es allerdings auch noch um ein tieferes Verständnis für die Problemstellung in verteilten Systemen
und einfach um ein paar Beispiele mal für solche Probleme zu nennen. Ein solches Problem
ist die Behandlung von Zeit. Wenn man mehrere Rechner hat, dann haben die nicht unbedingt
die gleiche Uhrzeit. Also jedenfalls nicht, wenn man das Ganze auf Mikro- oder Nanosekunden
genau betrachtet. Eine Folge daraus ist letztendlich, dass die verschiedenen Prozesse, die auf den
verschiedenen Knoten im verteilten System laufen, letztendlich immer eine unterschiedliche
Sicht auf den aktuellen Systemzustand haben. Und damit muss man natürlich irgendwie umgehen
können. Ein ganz wesentlicher Aspekt ist natürlich auch der Umgang mit Fehlern. Das werden wir
auch in den Einführungsfolien dann gleich sehen. Und eine Möglichkeit mit Fehlern umzugehen,
ist natürlich, wesentliche Teile des Systems zu replizieren, um mit Ausfällen dann kompensieren
zu können. Und auch das wird also eins der Themen sein. So, wenn man sich jetzt nochmal
den Inhalt der Vorlesung anschauen, vielleicht, ich weiß nicht, mit den Skripten sind noch
genug da oder? Ja, sind noch welche da. Lass sie einfach mal so hinten irgendwo am Rand
liegen dann. Okay. So, die Vorlesung oder die setzt sich im Wesentlichen eigentlich
in zwei Teile. Der erste Teil beschäftigt sich mit diesem Themenkomplex verteilte Systeme,
Presenters
Zugänglich über
Offener Zugang
Dauer
01:19:24 Min
Aufnahmedatum
2012-04-17
Hochgeladen am
2019-05-08 08:49:03
Sprache
de-DE
- Übersicht und Grundlagen verteilter Systeme
-
Verteilte Programmierung, Client/Server-Konzept
-
Kommunikation, Prozesse, Namensgebung
-
Koordinierung, Konsistenzwahrung
-
Grundlagen verteilter Algorithmen
-
Zeit in verteilten Systemen (logische Uhren, NTP)
-
Java, weiterführende Konzepte (z.B. Threads, Reflections)
-
Sun RPC, Java RMI
-
Dynamische Erzeugung von Proxies, Callback
Lernziele und Kompetenzen:
Die Studierenden
-
erwerben fundierte Kenntnisse über Grundlagen von verteilten Systemen
-
verstehen Zusammenhänge, die die verteilte Ausführung von Programmen in vernetzten Rechensystemen ermöglichen
-
erlernen die verteilte Programmierung in Java
-
entwickeln eine Middleware-Plattform zur Ausführung verteilter Programme