Flip van Spaendonck: The Busy-Forbidden Protocol, an efficient shared-exclusive access lock

Event Details

Mutual exclusion algorithms such as Peterson’s, make sure only a single thread can be present in the exclusive section at a given time. Similarly, a shared-exclusive lock also provides a shared section, in which any number of threads can be present, but only if no thread is present in the exclusive section.
In this talk, we will look at one such shared-exclusive lock, the Busy-Forbidden protocol, the safety properties it satisfies, and its performance.
Of special note is the low cost of entering and leaving the shared section using this protocol. Making it especially useful for situations in which a significant amount of the workload takes place in the shared section.