Lehrveranstaltungshandbuch Betriebssysteme Verteilte Systeme 1
Verantwortlich: Prof. Dr. Vogt
Lehrveranstaltung
Befriedigt Modul (MID)
Organisation
Version |
erstellt |
2012-05-03 |
VID |
1 |
gültig ab |
WS 2012/13 |
gültig bis |
|
|
|
Bezeichnung |
Lang |
Betriebssysteme Verteilte Systeme 1 |
LVID |
F07_BVS1 |
LVPID (Prüfungsnummer) |
|
|
Semesterplan (SWS) |
Vorlesung |
2 |
Übung (ganzer Kurs) |
|
Übung (geteilter Kurs) |
1 |
Praktikum |
1 |
Projekt |
|
Seminar |
|
Tutorium (freiwillig) |
|
|
|
Präsenzzeiten |
Vorlesung |
30 |
Übung (ganzer Kurs) |
|
Übung (geteilter Kurs) |
15 |
Praktikum |
15 |
Projekt |
|
Seminar |
|
Tutorium (freiwillig) |
|
|
|
max. Teilnehmerzahl |
Übung (ganzer Kurs) |
|
Übung (geteilter Kurs) |
30 |
Praktikum |
18 |
Projekt |
|
Seminar |
|
|
Gesamtaufwand: 150
Unterrichtssprache
Niveau
Notwendige Voraussetzungen
- Strukturierte und prozedurale Programmierung
- Architektur von Computern (Grundkenntnisse)
Literatur
Dozenten
Wissenschaftliche Mitarbeiter
Zeugnistext
Betriebssysteme und Verteilte Systeme 1
Kompetenznachweis
Form |
sK |
Regelfall (bei geringer Prüfungszahl: sMP) |
Intervall: 3/Jahr
Lehrveranstaltungselemente
Vorlesung / Übung
Lernziele
Lerninhalte (Kenntnisse)
- Grundlagen von Betriebssystemen und Verteilten Systemen
- Einordnung und Aufgaben eines Betriebssystems im Rechensystem
- zu verwaltende Betriebsmittel
- Nebenläufigkeit in Hard- und Software
- Komponenten und Eigenschaften Verteilter Systeme
- Software-Strukturen
- Betriebssystemkern
- Hierarchische Strukturen
- Virtuelle Maschinen
- Client-Server-Systeme
- Peer-to-Peer-Systeme
- Das UNIX/Linux-Betriebssystem
- Geschichte und Standards
- Schalenstruktur
- Kern mit Programmierschnittstelle
- Shell mit Benutzerschnittstelle
- wichtige Benutzerkommandos
- Aufbau des Dateisystems
- Programmierung in C
- Nebenläufigkeit
- Prozesse und Threads
- grundlegende Eigenschaften
- Prozesse in UNIX
- Threads in Java
- Synchronisation
- grundlegende Synchronisationsbedingungen
- wechselseitiger Ausschluss
- Reihenfolge
- Mechanismen zur Durchsetzung
- Interruptsperrung
- Spinlocks
- Signale
- Semaphore
- Monitore
- Deadlocks
- Kommunikation
- Grundbegriffe
- speicher- vs. nachrichtenbasierte Kommunikation
- Mailboxen und Ports
- synchrone vs. asynchrone Kommunikation
- lokale Kommunikation
- Shared Memory
- Message Queues
- Pipes
- Kommunikation in verteilten Systemen
- Kooperation
- Client-Server-Modell
- Beispiele: Namens- und Dateidienste
- geschichtete Architekturen
- Peer-to-Peer-Modell
- prozedurale Kooperation: Remote Procedure Call
- objektorientierte Kooperation
- Remote Method Invocation
- objektorientierte Middleware
- Web-basierte Dienste
- dynamische Web-Seiten
- Web Services
Fertigkeiten
- Einordnung der Betriebsmittel, die durch ein Betriebssystem zu verwalten sind
- Umgang mit den Schnittstellen eines Betriebssystems
- zeichenorientierte Benutzerschnittstelle
- Programmierschnittstelle
- Steuerung nebenläufiger Aktivitäten in einem Betriebssystem
- von der Benutzerschnittstelle aus
- durch Funktionen der Programmierschnittstelle
- Synchronisation nebenläufiger Ausführungen durch Synchronisationsmechanismen
- Nutzung verschiedener Kommunikationsmechanismen
- lokale Mechanismen
- Mechanismen in Rechnernetzen
Begleitmaterial
- elektronische Vortragsfolien zur Vorlesung
- elektronische Animationen zur Vorlesung
- elektronische Arbeitsblätter zu Übungen
- elektronische Sammlung von Beispielprogrammen
- kommentierte Schnittstellendokumentationen
- Links auf relevante Web-Seiten, insbesondere auch auf Lehrvideos
- Literaturempfehlungen
Besondere Voraussetzungen
Besondere Literatur
Besonderer Kompetenznachweis
Praktikum
Lernziele
Lerninhalte (Kenntnisse)
- Befehle der zeichenorientierten UNIX/Linux-Benutzerschnittstelle
- Nutzung durch Eingabe über die Tastatur
- Nutzung durch Einbettung in Shell Scripts
- Speicherorganisation unter UNIX/Linux
- Stack bei Funktionsaufrufen
- Heap bei dynamischer Speicherzuteilung durch malloc()
- C-Funktionen der UNIX/Linux-Programmierschnittstelle
- zum Zugriff auf Dateien und Geräte
- zur Erzeugung und elementaren Steuerung von Prozessen
- zur Synchronisation von Prozessen
Fertigkeiten
- Umgang mit den Schnittstellen von UNIX/Linux
- zeichenorientierte Benutzerschnittstelle
- Programmierschnittstelle
- elementare Steuerung nebenläufiger Aktivitäten in UNIX/Linux
- von der Benutzerschnittstelle aus
- durch Funktionen der Programmierschnittstelle
- Synchronisation nebenläufiger Ausführungen durch Synchronisationsmechanismen (insbesondere Semaphore)
Handlungskompetenz demonstrieren
- Anwendung der unter "Kenntnisse" und "Fertigkeiten" genannten Aspekte auf praxisbezogene Szenarien durch selbstständige Arbeit in kleinem Team.
Begleitmaterial
- elektronische Arbeitsblätter
- elektronische Sammlung von Beispielprogrammen
- kommentierte Schnittstellendokumentationen
Besondere Voraussetzungen
Besondere Literatur
Besonderer Kompetenznachweis
Das Urheberrecht © liegt bei den mitwirkenden Autoren. Alle Inhalte dieser Kollaborations-Plattform sind Eigentum der Autoren.
Ideen, Anfragen oder Probleme bezüglich Foswiki?
Feedback senden