Semwork ist ein Lernprogramm für Studenten des Fachbereichs Nachrichtentechnik der Fachhochschule
Köln. Es beschreibt die Funktionsweise von Semaphoren. Semaphore werden
in der Datenverarbeitung als Sperrmechanismen eingesetzt, die unter bestimmten Voraussetzungen Prozesse
blockieren.
Zunächst wird der Aufbau und die Funktionsweise eines einzelnen Semaphors beschrieben.
Anschließend wird die Verwendung von Semaphoren zur Prozeßverwaltung anhand einiger
Beispielprogramme verdeutlicht. Im dritten Abschnitt werden die Systemoperationen vorgestellt,
die in dem Betriebsystem UNIX implementiert wurden, um Semaphore zu erzeugen und zu manipulieren.
Am Ende dieses Workshops hat man auf der Seite write and test die Möglichkeit, selbst
Semaphoroperationen einzugeben und zu testen.
Die einzelnen Beispiele wurden in Form von Java-Applets realisiert, das Programm kann daher nur
mit einem java-fähigen Browser durchlaufen werden.
Was ist ein Semaphor ? | Beispiele |
Aufbau Datenstrukturen Zugriffsoperationen P(), V(), INIT() |
Reihenfolgedurchsetzung
wechselseitiger Ausschluß Erzeuger-/ Verbraucherproblem Philosophenproblem |
UNIX - Systemoperationen | write and test |
semget() semctl() semop() | Semaphoroperationen eingeben und testen |