Skip to content

Concurrent Computing

← Back to Domain-Specific Abstractions by Domain

5 domain-specific abstractions whose origin domain is Concurrent Computing.

  • Dining philosophers problem — A concurrency problem modeling processes that alternately need pairs of shared resources, exposing deadlock, starvation and fairness constraints.
  • Load-link/store-conditional — An atomic instruction pair that reads a memory location and commits a later store only if the implementation has observed no conflicting update since the linked load.
  • Reentrant mutex — A mutual-exclusion lock that its owning thread may acquire repeatedly, tracking recursion depth and releasing ownership only after a matching number of unlocks.
  • Semaphore (programming) — A concurrency synchronization object maintaining a nonnegative permit count with atomic wait and signal operations that block or release execution according to resource availability.
  • Sleeping barber problem — A classic synchronization problem modeling one service worker, a bounded waiting room and arriving clients to illustrate mutual exclusion, blocking and coordination without lost wakeups.