(semaphore)
elementarna konstrukcja ¤ synchronizacji, ¤ typ danych zlozony ze ¤ zmiennej calkowitej S, na której (oprócz nadania wartosci poczatkowej) sa dozwolone dwa dzialania: wait (czekaj) i signal (sygnalizuj).
wait(S), czyli test(S): while S <= 0 do nic; S := S - 1; signal(S): S:= S + 1;
Operacje na zmiennej semaforowej sa wykonywane niepodzielnie (sa nieprzerywalne); tradycyjnie oznacza sie je literami P i V (od dunskiego "proberen" i "verhogen" lub "passeren" i "vrijgeven"). Pomyslodawca s. jest Ä Dijkstra. Realizacja s. musi miec wsparcie sprzetowe. Ä Proces czekajacy pod zmienna semaforowa wskutek wykonania operacji wait powinien byc uaktywniony przez inny proces, który spowoduje odpowiednia zmiane S za pomoca operacji signal. Zob. tez zamek, sekcja krytyczna, glodzenie, blokada.