Construct · 1 fields · 1 citations

semaphore: a standalone construct

One name. One construct. A landmark on the map.

● anchor · a standalone construct Nearest construct by meaningsynchronizationcompare the meanings
How to read this

Every construct on the map is compared with every other by the meaning of its definitions, and the closest one is surfaced here. The nearest construct to semaphore is synchronization.

Hold this as a prompt, not a verdict. Two constructs sitting close in meaning is a reason to read them side by side and decide for yourself whether they are one idea under two names. It is not proof that they are. Compare the meanings in the Collider.

semaphore1 CONSTRUCTSemaphore (CS)DIJKSTRA · P/V COUNTER

A single standalone construct; nearby constructs are located against it in the Collider. Tap a field for its definition, unit, and measures.

Computer science

A concurrency synchronisation counter

A synchronisation primitive for concurrent programs: an integer counter guarded so that two atomic operations, a wait that decrements it and blocks when it would go negative, and a signal that increments it and releases a waiting process, control how many processes may enter a protected region at once. Dijkstra introduced it in his 1968 Cooperating sequential processes, naming the two operations P and V, and distinguished a binary semaphore that acts as a simple lock from a counting semaphore that admits a fixed number of holders. The referent is an abstract counter inside a running program, measured by its value and the queue of blocked processes, and it borrowed its name by analogy from the arm signals below; it is not a machine that waves an arm on a hillside or beside a railway track.[1]

Unit
An integer counter with atomic wait and signal operations
Recovery means
The signal operation increments the counter and wakes one blocked process, restoring an available slot
Measured by
Observed by its current value, its maximum count, and the length of the queue of processes waiting on it

Next

Run it through the Collider, or take the citations with you.

See how semaphore sits against neighbouring constructs in the Collider, or export every reference on this page in one click.

Open in ColliderExport BibTeXReport this entry

Nearby constructs

lock2 fields · 2 citationsjingle · one word, two constructsalphabet2 fields · 5 citationsjingle · one word, two constructsanalogy4 fields · 4 citationsjingle · one word, four constructs

References

  1. Dijkstra, E. W. (2002). Cooperating sequential processes. In The origin of concurrent programming (pp. 65–138). Springer. (Original work published 1968) https://doi.org/10.1007/978-1-4757-3472-0_2

Cited on this page?

Confirm your construct, or correct us.

If your work is cited behind one of these entries, you know better than we do whether we captured the meaning right. Confirm it, suggest an edit, or dispute it, and your name goes on the entry as an author who has checked it, linked to your ORCID.

Claim your construct