Advertisement

Springer Nature is making SARS-CoV-2 and COVID-19 research free. View research | View latest news | Sign up for updates

Tight space bounds for \(\ell \)-exclusion

  • 103 Accesses

  • 1 Citations

Abstract

The \(\ell \)-exclusion problem is to design an algorithm which guarantees that up to \(\ell \) processes and no more may simultaneously access identical copies of the same non-sharable resource when there are several competing processes. For \(\ell =1\), the 1-exclusion problem is the familiar mutual exclusion problem. The simplest deadlock-free algorithm for mutual exclusion requires only one single-writer non-atomic bit per process (Burns in SIGACT News 10(2):42–47, 1978; Burns and Lynch in Inf Comput 107(2):171–184, 1993; Lamport in J ACM 33:327–348, 1986). This algorithm is known to be space optimal (Burns and Lynch in 18th Annual Allerton conference on communication, control and computing, pp 833–842, 1980; Burns and Lynch in Inf Comput 107(2):171–184, 1993). For over 20 years now it has remained an intriguing open problem whether a similar type of algorithm, which uses only one single-writer bit per process, exists also for \(\ell \)-exclusion for some \(\ell \ge 2\). We resolve this longstanding open problem. For any \(\ell \) and \(n\), we provide a tight space bound on the number of single-writer bits required to solve \(\ell \)-exclusion for \(n\) processes. It follows from our results that it is not possible to solve \(\ell \)-exclusion with one single-writer bit per process, for any \(\ell \ge 2\). In an attempt to understand the inherent difference between the space complexity of mutual exclusion and that of \(\ell \)-exclusion for \(\ell \ge 2\), we define a weaker version of \(\ell \)-exclusion in which the liveness property is relaxed, and show that, similarly to mutual exclusion, this weaker version can be solved using one single-writer non-atomic bit per process.

This is a preview of subscription content, log in to check access.

Fig. 1

References

  1. 1.

    Afek, Y., Dolev, D., Gafni, E., Merritt, M., Shavit, N.: A bounded first-in, first-enabled solution to the \(\ell \)-exclusion problem. ACM Trans. Program. Lang. Syst. 16(3), 939–953 (1994)

  2. 2.

    Afek, Y., Stupp, G., Touitou, D.: Long-lived adaptive collect with applications. In: Proceedings of the 40th IEEE Symposium on Foundations of Computer Science, pp. 262–272 (1999)

  3. 3.

    Anderson, J.H., Moir, M.: Using local-spin k-exclusion algorithms to improve wait-free object implementations. Distrib. Comput. 11, 1–20 (1997)

  4. 4.

    Attiya, H., Bar-Noy, A., Dolev, D., Koller, D., Peleg, D., Reischuk, R.: Achievable cases in an asynchronous environment. In: Proceedings of the 28th IEEE Symposium on Foundations of Computer Science, pp. 337–346 (1987)

  5. 5.

    Bar-Noy, A., Dolev, D., Koller, D., Peleg, D.: Fault-tolerant critical section management in asynchronous environments. Inf. Comput. 95(1), 1–20 (1991)

  6. 6.

    Burns, J.E.: Mutual exclusion with linear waiting using binary shared variables. SIGACT News 10(2), 42–47 (1978)

  7. 7.

    Burns, J.E., Lynch, A.N.: Mutual exclusion using indivisible reads and writes. In: 18th Annual Allerton conference on communication, control and computing, pp. 833–842 (1980)

  8. 8.

    Burns, J.E., Peterson, G.L.: The ambiguity of choosing. In: Proceedings of the 8th ACM Symposium on Principles of Distributed Computing, pp. 145–158 (1989)

  9. 9.

    Burns, J.N., Lynch, N.A.: Bounds on shared-memory for mutual exclusion. Inf. Comput. 107(2), 171–184 (1993)

  10. 10.

    Dijkstra, E.W.: Solution of a problem in concurrent programming control. Commun. ACM 8(9), 569 (1965)

  11. 11.

    Dolev, D., Gafni, E., Shavit, N.: Toward a non-atomic era: \(\ell \)-exclusion as a test case. In: Proceedings of the 20th ACM Symposium on Theory of Computing, pp. 78–92 (1988)

  12. 12.

    Fischer, M.J., Lynch, M.J., Burns, J.E., Borodin, A.: Resource allocation with immunity to limited process failure. In: Proceedings of the 20th IEEE Symposium on Foundations of Computer Science, pp. 234–254 (1979)

  13. 13.

    Fischer, M.J., Lynch, N.A., Burns, J.E., Borodin, A.: Distributed FIFO allocation of identical resources using small shared space. ACM Trans. Program. Lang. Syst. 11(1), 90–114 (1989)

  14. 14.

    Fischer, M.J., Lynch, N.A., Paterson, M.S.: Impossibility of distributed consensus with one faulty process. J. ACM 32(2), 374–382 (1985)

  15. 15.

    Lamport, L.: On interprocess communication, Parts I and II. Distrib. Comput. 1(2), 77–101 (1986)

  16. 16.

    Lamport, L.: The mutual exclusion problem: Part II—statement and solutions. J. ACM 33, 327–348 (1986)

  17. 17.

    Loui, M.C., Abu-Amara, H.: Memory requirements for agreement among unreliable asynchronous processes. Adv. Comput. Res. 4, 163–183 (1987)

  18. 18.

    Peterson, G.L.: New Bounds on Mutual Exclusion Problems. Technical Report TR68, University of Rochester, 1980 (Corrected 1994)

  19. 19.

    Peterson, G.L.: Observations on \(\ell \)-exclusion. In: 28th Annual Allerton conference on communication, control and computing, pp. 568–577 (1990)

  20. 20.

    Taubenfeld, G.: Synchronization Algorithms and Concurrent Programming. Pearson/Prentice-Hall. ISBN 0-131-97259-6 (2006)

Download references

Acknowledgments

I wish to thank the three anonymous referees and the associate editor Eric Ruppert for their constructive suggestions and corrections.

Author information

Correspondence to Gadi Taubenfeld.

Additional information

A preliminary version of the results presented in this paper, appeared in proceedings of the 25th international symposium on distributed computing (DISC 2011), Rome, Italy, September 2011. In: LNCS 6950 Springer Verlag 2011, 110–124.

Rights and permissions

Reprints and Permissions

About this article

Cite this article

Taubenfeld, G. Tight space bounds for \(\ell \)-exclusion. Distrib. Comput. 27, 165–179 (2014). https://doi.org/10.1007/s00446-014-0207-6

Download citation

Keywords

  • Mutual exclusion
  • \(\ell \)-Exclusion
  • Space complexity
  • Tight bounds