ETH Zurich :
Computer Science :
Pervasive Computing :
Distributed Systems :
Education :
DS HS2013
Verteilte Systeme
Prof. Dr. Friedemann Mattern
Prof. Dr. Roger Wattenhofer
Zeit und Ort:
|
Montag
Freitag
|
9:15 – 12:00
9:15 – 12:00
|
|
(Vorlesung, fallweise auch Übung) |
Inhalt:
Einführung (Charakteristika und Konzepte), verteilte Kontrollalgorithmen
(Flooding- / Echo-Verfahren, wechselseitiger Ausschluss, logische Uhren),
Basis-Kommunikationsmodelle (Remote Procedure Call, Client-Server-Modelle,
synchrone und asynchrone Kommunikation, Socket-Programmierschnittstelle),
abstraktere Kommunikationsprinzipien (Broadcast, Ereignisse, Tupelräume),
Namensverwaltung, Middleware und Techniken offener Systeme,
Infrastruktur für spontan vernetzte Systeme (Jini),
Sicherheits- und Schutzmechanismen, Fehlertoleranz (Modelle, Consensus,
Agreement), Replikation (Primary Copy, 2PC, 3PC, Paxos, Quorum-Systeme),
Multi-Prozessor-Programmierung.
Selbständige Arbeit:
Parallel zur Vorlesung finden praktische Übungen in Form von mehrwöchigen
Aufgaben statt, welche zur Verbesserung in die Note eingehen können.
Ziel ist es, praxisbezogene Aspekte verteilter Systeme zu vermitteln. Hierzu
dient Android auf dem HTC Desire als mobile, verteilte Programmierplattform.
Vorlesungsunterlagen:
Folienkopien der Vorlesung werden (in mehreren Teilen) im Laufe
des Semesters hier bereitgestellt.
Übungen:
Im Rahmen der Vorlesung wird es praktische Übungen in Form von
Programmieraufgaben und theoretische Übungen in Form von
schriftlichen Aufgaben geben.
Verantwortlicher Assistent ist Matthias Kovatsch <kovatsch@inf.ethz.ch>.
Praktische Übungen:
Die hier erbrachte Leistung kann mit bis zu 45 Punkten zur Verbesserung in die Prüfungsnote eingehen.
Details zum Praktikum gibt es auf unserer Android-Seite.
Die Abgaben können über nser Abgabesystem eingereicht werden.
Theoretische Übungen:
Zum ersten Teil (Mattern) gibt es ein Übungsblatt zur Vorbereitung auf die schriftliche Prüfung.
Die Aufgaben sind freiwillig und werden nicht korrigiert.
Lösungsvorschläge werden zu einem späteren Zeitpunkt veröffentlicht.
Im zweiten Teil (Wattenhofer) werden regelmässig Übungen zur Vorlesung gehalten. Hier können 20 Prüfungspunkte zur Verbesserung erworben werden.
Literatur:
- G. Coulouris, J. Dollimore, T. Kindberg: Distributed Systems: Concepts and Design, Addison-Wesley
- A. Tanenbaum, M. van Steen: Distributed Systems: Principles and Paradigms, Prentice-Hall
- Mullender (Ed.): Distributed Systems, 2nd Edition, Addison-Wesley
- M. Weber: Verteilte Systeme, Spektrum-Verlag
- B. Schneier: Applied Cryptography, Wiley
- M. Herlihy, N. Shavit: The Art of Multiprocessor Programming, Morgan Kaufmann, 2008
|