On the Weakest Failure Detector for Read/Write-Based Mutual Exclusion
Failure detectors are devices (objects) that provides the processes with information on failures. They were introduced to enrich asynchronous systems so that it becomes possible to solve problems (or implement concurrent objects) that are otherwise impossible to solve in pure asynchronous systems where processes are prone to crash failures. The most famous failure detector (which is called “eventual leader” and denoted \(\varOmega \)) is the weakest failure detector which allows consensus to be solved in n-process asynchronous systems where up to \(t=n-1\) processes may crash in the read/write communication model, and up to \(t<n/2\) processes may crash in the message-passing communication model.
When looking at the mutual exclusion problem (or equivalently the construction of a lock object), while the weakest failure detectors are known for both asynchronous message-passing systems and read/write systems in which up to \(t<n\) processes may crash, for the starvation-freedom progress condition, it is not yet known for weaker deadlock-freedom progress condition in read/write systems. This paper extends the previous results, namely, it presents the weakest failure detector that allows mutual exclusion to be solved in asynchronous n-process read/write systems where any number of processes may crash, whatever the progress condition (deadlock-freedom or starvation-freedom).
This work was partially supported by the French ANR project 16-CE40-0023-03 (16-CE40-0023-03) devoted to layered and modular structures in distributed computing.
- 1.Bhatt, V., Christman, N., Jayanti, P.: Extracting quorum failure detectors. In: Proceedings of the 28th ACM Symposium on Principles of Distributed Computing (PODC 2009), pp. 73–82. ACM Press (2009)Google Scholar
- 2.Bhatt, V., Jayanti, P.: On the existence of weakest failure detectors for mutual exclusion and k-exclusion. In: 23rd International Symposium on Distributed Computing (DISC 2009), LNCS, vol. 5805, pp. 325–339. Springer (2009)Google Scholar
- 6.Delporte-Gallet, C., Fauconnier, H., Guerraoui, R.: A Realistic look at failure detectors. In: Proceedings of the 43rd Annual IEEE/IFIP International Conference on Dependable Systems and Networks (DSN 2002), pp. 345–353. IEEE Computer Press (2002)Google Scholar
- 8.Delporte-Gallet, C., Fauconnier, H., Guerraoui, R., Hadzilacos, V., Kouznetsov, P., Toueg, S.: The weakest failure detectors to solve certain fundamental problems in distributed computing. In: Proceedings of the 23th ACM Symposium on Principles of Distributed Computing (PODC 2004), pp. 338-346. ACM Press (2004)Google Scholar
- 10.Delporte-Gallet, C., Fauconnier, H., Raynal, M.: Fair synchronization in the presence of process crashes and its weakest failure detector. In: 33rd IEEE International Symposium on Reliable Distributed Systems, (SRDS 2014), pp. 161–170. IEEE Press (2014)Google Scholar
- 16.Lo, W.-K., Hadzilacos, V.: Using failure detectors to solve consensus in asynchronous shared memory systems. In: Proceedings of the 8th International Workshop on Distributed Algorithms (WDAG 1994), LNCS, vol. 857, pp. 280–295. Springer (1994)Google Scholar
- 18.Raynal, M.: Concurrent Programming: Algorithms, Principles, and Foundations, p. 515. Springer (2013). ISBN 978-3-642-32027-9Google Scholar
- 19.Raynal, M.: Fault-Tolerant Message-passing Distributed Systems: An Algorithmic Approach, p. 492. Springer (2018). ISBN: 978-3-319-94140-0Google Scholar
- 20.Taubenfeld, G.: Synchronization Algorithms and Concurrent Programming, p. 423. Pearson Education/Prentice Hall (2006). ISBN 0-131-97259-6Google Scholar