Mutual exclusion of N processors using an O(N)-valued message variable
The concurrent programming control problem of mutual exclusion can be precisely defined in the framework of data spaces. The size of the shared message variable is introduced as a machine-independent complexity measure for the effort of implementing scheduling schemes for mutual exclusion. Along the lines of a minimal solution for two-processor mutual exclusion using a three-valued message variable, a general n-processor solution is developed using uninterruptable test-and-set instructions on a (2n-1)-valued message variable.
KeywordsData Space Critical Section Mutual Exclusion Work Area Complete Paper
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