Aufgabenblatt 11  
Ausgabetermin: 12.1.01
Abgabetermin: Montag d. 22.1.01 bis 24 Uhr per Email an die Übungsgruppenleiter 
Motivation: Begleitende Übungen zum Vorlesungsthema "Nebenläufigkeit"
Aufgabe 1: Implementieren Sie einen S/T-Netz-Baukasten in Java. Realisieren Sie Transitionen als Threads, die einen Schaltvorgang zwischen Eingangsstellen und Ausgangsstellen nach den Regeln eines S/T-Netzes durchführen. Realisieren Sie Stellen des S/T-Netzes als Objekte ähnlich der Klasse Buffer (s. Vorlesung). Ein konkretes Netz wird durch Erzeugen von Transitionsinstanzen mit bestimmten Eingangs- und Ausgangsstellen aufgebaut. Schaltvorgänge werden durch Starten aller Threads ermöglicht.
Geschätzter Zeitbedarf: 1 h
3 Punkte
a) Implementieren Sie mithilfe des Baukastens zwei zyklische Prozesse A und B mit den Aktivitäten A1 und A2 bzw. B1 und B2, wobei A1 und B1 sich gegenseitig ausschließen sollen (zB Druckerbenutzung). Geben Sie den Ablauf der Schaltvorgänge im S/T-Netz durch eine Trace-Möglichkeit aus.
Geschätzter Zeitbedarf: 1 h
3 Punkte
b) Erweitern Sie das Netz von a) dahingehend, daß jeder Prozeß 2 Betriebsmittel mit gegenseitigem Ausschluß benötigt (s. 2-Band-Problem in der Vorlesung). Zeigen Sie, daß Deadlocks entstehen können. 
Geschätzter Zeitbedarf: 45 min
2 Punkte
c) Überlegen Sie, wie Verklemmungen
- erkannt,
- behoben und /oder
- vermieden werden können.
Geschätzter Zeitbedarf: 45 min
2 Punkt
Abzugebende
Dokumente
Aufgabe 1 a - b: Implementierte und dokumentierte Testumgebung sowie Protokolle von Probeläufen.
Aufgabe 1 c: Informelle Beschreibung Ihrer Überlegungen.

Schicken Sie bitte Ihre Dokumente - ein Exemplar je Übungsteam - 
als ein im Zip-Code komprimiertes Nur-Text-Datei-Attachment 
per Email an Ihren Übungsgruppenbetreuer.