PostgreSQL and Oracle's shared-memory buffer pools pair exactly this SysV semaphore pattern with shared segments because raw shared memory has zero built-in coordination, meaning concurrent writers can interleave byte-by-byte and corrupt a struct mid-update. The unmatched wait/signal bug this task guards against is a real, common source of production hangs: a process that crashes while holding a semaphore leaves every future waiter blocked forever unless the semaphore has `SEM_UNDO` semantics.