Skip to main navigation Skip to search Skip to main content

N-Process mutual exclusion with bounded waiting by 4 · Log2 N-valued shared variable

Research output: Contribution to journalArticlepeer-review

41 Scopus citations

Abstract

The problem of implementing mutual exclusion of N asynchronous parallel processes in a model where the primitive communication mechanism is a test-and-set operation on a shared variable has been the subject of extensive research. While a two-valued variable suffices to insure mutual exclusion, it is shown in (Burns, et al., J. Assoc. Comput. Mach. 9 (1982)) that N/2 values are necessary to avoid lockout of any process, and N + 1 values are required to ensure bounded waiting time. We introduce the idea of employing randomization in the mutual exclusion protocol and achieve a mutual exclusion, and with probability 1 lockout-free and bounded-waiting, solution using just a 4 · log2 N-valued shared variable. The protocol is extremely simple, easy to implement, and avoids certain undesirable features present in some of the other solutions. The protocols of the processes are identical and this symmetry is preserved throughout the computation. In particular, unlike (Burns, et al., J. Assoc. Comput. Mach. 9 (1982); Cremers and Hibbard, "Mutual Exclusion of N Processors using O(N)-Valued Message Variable", Extended Abstract, University of Southern California, 1977), no single process ever becomes, even temporarily, controller of the computation, which would make everything depend on it.

Original languageEnglish
Pages (from-to)66-75
Number of pages10
JournalJournal of Computer and System Sciences
Volume25
Issue number1
DOIs
StatePublished - Aug 1982

Fingerprint

Dive into the research topics of 'N-Process mutual exclusion with bounded waiting by 4 · Log2 N-valued shared variable'. Together they form a unique fingerprint.

Cite this