Arbitration and queueing under limited shared storage requirements
An algorithm is presented which implements mutual exclusion for a system of n processes by means of protocol-controled communication on a (n + const.)-valued shared buffer. The algorithm uses a generalized test-and-set instruction, and schedules processes into their critical sections on a first-come, first-serve basis. The method can be extended to accomodate any queueing discipline defined as a function of the system history between consecutive idle periods.
KeywordsShared Variable Critical Section Mutual Exclusion Recent Arrival Shared Buffer
Unable to display preview. Download preview PDF.
- 1.Dijkstra, E.W., "Solution of a problem in concurrent programming control", CACM 8 (1965), 569.Google Scholar
- 2.Knuth, D.E., "Additional comments on a problem in concurrent programming control", CACM 9 (1966), 321.Google Scholar
- 3.de Bruijn, N.G., "Additional comments on a problem in concurrent programming control", CACM 10 (1967), 137.Google Scholar
- 4.Eisenberg, M.A., and M.R. McGuire, "Further comments on Dijkstra's concurrent control problem", CACM 15 (1972), 999.Google Scholar
- 5.Lamport, L., "A new solution of Dijkstra's concurrent programming problem", CACM 17 (1974), 453.Google Scholar
- 6.Cremers, A.B., and T.N. Hibbard, "An algebraic approach to concurrent programming control and related complexity problems", Symposium on Algorithms and Complexity, Pittsburgh, April 1976, (Copies available from the authors.)Google Scholar
- 7.Rivest, R.L., and V.R. Pratt, "The mutual exclusion problem for unreliable processes: preliminary report", 17th Symposium on Foundations of Computer Science, October 1976.Google Scholar
- 8.Peterson, G.L., and M.J. Fischer, "Economical solutions for the critical section problem in a distributed system", 9th Symposium on Theory of Computing, May 1977.Google Scholar
- 9.Cremers, A.B., and T.N. Hibbard, "Mutual Exclusion of N Processors Using an O(N)-Valued Message Variable", 5th ICALP, Udine, Italy, Springer Lecture Notes in Computer Science 62, 165–176. July 1978.Google Scholar
- 10.Burns, J.E., M.J. Fischer, P. Jackson, N.A. Lynch, G.L. Peterson, "Shared Data Requirements for Implementation of Mutual Exclusion Using a Test-and-Set Primitive", Computer Science Tech. Rept. 3, University of Washington, Seattle, August 1978.Google Scholar