Semaphor

Ein Semaphor ist ein Flag im System, das verhindert, dass bestimmte Aktivitäten gleichzeitig ausgeführt werden. Jedes Semaphor ist eine Kennzeichnung, die vom System verwaltet wird. Ein Projekt oder ein Schritt, für den ausschließlich die Verwendung einer Ressource erforderlich ist, erhält normalerweise ein Semaphor, um diese exklusive Nutzung zu gewährleisten.

Das Festlegen eines Semaphors in einem Schritt erfolgt mit dem Befehl .semget. Das Semaphor wird in einem eigenen Schritt mit dem Befehl .semput wieder freigegeben. Nachdem Sie ein Semaphor erhalten haben, kann es keinem anderen Schritt zugewiesen werden. Schritte, die das Semaphor zu beziehen versuchen, warten, bis es freigegeben wurde.

Sobald ein Projekt abgeschlossen ist, gibt das System automatisch alle Semaphore frei, die im Projekt verwendet wurden. In einigen Fällen, z. B. wenn ein Vorgang wegen eines Systemfehlers beendet wird, werden Semaphore nicht freigegeben. Sie können dann manuell freigegeben werden.