Home

 Arbeitsgebiet

 Lehre

 Forschung

 Chancen

 Publikationen

 Vita

 Home Fakultät

 Home Hochschule

 Rechtliche Hinweise

Prof. Dr. Christoph Pleier

Sicherheit, Verteilte Systeme, Rechnernetze

Lehre:

Vorlesung "Verteilte Softwaresysteme"

Inhalt:

Verteilte Systeme sind IT-basierte Konglomerate von Einzelkomponenten/-diensten, die über Netzwerke miteinander verbunden sind und gemeinsam eine bestimmte Funktionalität realisieren. Verteilten Systemen kommt in der IT ein besonderer Stellenwert zu: sie bieten mehr Funktionalität als konventionelle Systeme, mehr und mehr Informationen werden digitalisiert, dezentralisiert, vernetzt und mehr und mehr Dienste / Systeme werden miteinander gekoppelt - nahezu jedes relevante IT-System heutzutage ist ein Verteiltes System oder enthält Konzepte / Mechanismen Verteilter Systeme!

Diese Vorlesung vermittelt die Grundlagen und Prinzipien verteilter Systeme. Der Fokus liegt dabei auf Softwaresystemen. Behandelte Themen sind Grundlagen (Motivation, Herausforderungen, Hardware- und Software-Architektur-Prinzipien), Prozesse (Prozesse, Threads, Agenten, Prozeßmigration), Interaktion (Grundprinzipien und komplexere Formen der Synchronisation und Kommunikation), Programmierung (Prozesse, Netzwerk-orientierte, Bibliothek-orientierte, Hochsprach-orientierte, Web-orientierte Interaktion), Software-Engineering (Vorgehensmodelle, Design-Prinzipien allgemein und betreffend Prozesse, besondere Algorithmen), Sicherheit (Grundlagen, Sicherheitsmanagement, Basismechanismen) und Formen (Standard-Anwendungen/-Dienste und besondere verteilte Systeme).

Dabei werden unter anderem besprochen: Multiprozessoren, Multicomputer, Rechnernetze, Distributed Shared Memory, Amoeba, DCE (Distributed Computing Environment), Prozesse und Threads, (heterogene) Prozeßmigration, Sockets (allgemein und in Java), PVM (Parallel Virtual Machine), RPC und RMI (allgemein und Java RMI), Web-Services.

Die Modulbeschreibung des Bachelor Informatik befindet sich hier.

>> zurück

Script:

Teilnehmer der Vorlesung erhalten die Präsentationsfolien als PDF-Dateien. Diese sind zugriffsgeschützt. Das Passwort ist in der Vorlesung erhältlich.
  • Teil 0: Vorwort:
    Organisatorisches, Einordnung, Inhaltsüberblick und -gliederung
    (script ...Vorwort.pdf)

  • Teil 1: Grundlagen:
    Einleitung, Motivation, Chancen, Herausforderungen, Architekturen
    (script ...Grundlagen.pdf)

  • Teil 2: Prozesse:
    Prozesse, Threads, Agenten, Prozeßmigration
    (script ...Prozesse.pdf)

  • Teil 3: Interaktion:
    Prinzipien und Mechanismen zur Synchronisation und Kommunikation
    (script ...Interaktion.pdf)

  • Teil 4: Programmierung:
    Prozesse und Netzwerk-orientierte, Bibliothek-orientierte, Hochsprach-orientierte, Web-orientierte Interaktion
    (script ...Programmierung.pdf)

  • Teil 5: Software-Engineering:
    Vorgehensmodelle, Design-Prinzipien allgemein und betreffend Prozesse, besondere Algorithmen
    (script ...Software-Engineering.pdf)

  • Teil 6: Sicherheit:
    Grundlagen, Gefahren, Sicherheitsmanagement, Basismechanismen
    (script ...Sicherheit.pdf)

  • Teil 7: Formen:
    Standard-Anwendungen/-Dienste und besondere verteilte Systeme
    (Eigenarbeiten mit Info-Märkten)
>> zurück

Praktikum:

Zielsetzung des Praktikums ist die Vermittlung von besserem Verständnis und Können zum Thema Konzepte, Programmierung und Nutzung Verteilter Systeme.
Weitere Zielsetzung ist das Aufbauen von Wissen und Können zu PC-Virtualisierung und zu Entwicklungsumgebungen zur Programmierung verteilter Systeme.

Hard-/Softwarearchitektur ist ein homogenes und/oder heterogenes Rechnernetz, bestehend aus Linux- und/oder Windows-Systemen, das entweder als virtuelles Rechnernetz im Labor mittels VMware (Standard-Lösung) oder als privates Rechnernetz durch direkte Verbindung zweier Studenten-Laptops realisiert wird. Das virtuelle Rechnernetz kann nach Absprache auch außerhalb des Labors realisiert werden, z.B. auf einzelnen Studenten-Rechnern.

Die Praktikumsdurchführung erfolgt in Gruppen von typischerweise 2 Personen.

Teilnehmer der Vorlesung erhalten die Aufgaben als PDF-Dateien. Diese sind zugriffsgeschützt. Das Passwort ist in der Vorlesung bzw. dem Praktikum erhältlich. Änderungen der Aufgaben sind möglich.
  • Aufgabe 1: Einführung:
    Gruppenbildung, Einrichten des virtuellen Rechnernetzes, Testen des virtuellen Rechnernetzes, Einarbeitung in VMware
    (Aufgabe_1)

  • Aufgabe 2: Netzwerkbetriebssysteme:
    Anwendung von elementaren Systemfunktionalitäten wie Adressierung, Systemdienste, Kommunikationskontrolle und sichere Remote Administration.
    (Aufgabe_2)

  • Aufgabe 3: Prozesse und Threads:
    Threads in Java mit typischen Aktivitäten wie Erzeugung, Scheduling, Synchronisation, Kommunikation
    (Aufgabe_3)

  • Aufgabe 4: Netzwerk-orientierte Programmierung:
    Programmierung verteilter Anwendungen unter Verwendung von Java Sockets.
    (Aufgabe_4)

  • Aufgabe 5: Hochsprach-orientierte Programmierung:
    Programmierung verteilter Anwendungen unter Verwendung von Java RMI.
    (Aufgabe_5)

  • Aufgabe 6: Massiv verteilte Programmierung:
    Programmierung einer massiv verteilten Anwendung unter Verwendung von Java.
    (Aufgabe_6)

>> zurück

Anmeldung:

Im Praktikum ist eine Anmeldung zwingend erforderlich.
Dazu ist das ZPA-System zu verwenden.

>> zurück



Copyright © Prof. Dr. C. Pleier. Alle Rechte vorbehalten.