Semaphor
Ein Semaphor (nach Dijkstra) ist ein betriebssystemgestütztes Konzept zur Prozesssynchronisation. Es stellt eine Zählsperre dar und besteht aus einem nicht-negativ initialisierten Zähler sowie einer Warteschlange für blockierte Prozesse.
Grundoperationen
P(s)(Passieren / Sperren): Der Zähler wird dekrementiert. Ist der Zähler danach negativ, wird der aktuelle Prozess blockiert und in die Warteschlange eingereiht.V(s)(Verlassen / Freigeben): Der Zähler wird inkrementiert. War der Zähler vorher negativ, wird ein wartender Prozess aus der Warteschlange (meist FIFO) deblockiert.
Der Startwert des Zählers bestimmt, wie viele Prozesse sich gleichzeitig im Kritischen Bereich aufhalten dürfen.