vix.ing · top · new · best · stats · spec

Fair Mutual Exclusion for N Processes (extended version)

2021/11/03 by Yousra Hafidi, Hafidi, Yousra, Jeroen J. A. Keiren +3
Computer Science · #Cryptography and Data Security #Distributed #Distributed systems and fault tolerance #FOS: Computer and information sciences #Formal Methods in Verification #Logic in Computer Science (cs.LO) #Parallel #and Cluster Computing (cs.DC)

paper · pdf · doi:10.48550/arxiv.2111.02251

openalex publication_date 2021/11/03 · openalex created_date 2025/10/10 · openalex updated_date 2026/07/28

Abstract

Peterson's mutual exclusion algorithm for two processes has been generalized to N processes in various ways. As far as we know, no such generalization is starvation free without making any fairness assumptions. In this paper, we study the generalization of Peterson's algorithm to N processes using a tournament tree. Using the mCRL2 language and toolset we prove that it is not starvation free unless weak fairness assumptions are incorporated. Inspired by the counterexample for starvation freedom, we propose a fair N-process generalization of Peterson's algorithm. We use model checking to show that our new algorithm is correct for small N. For arbitrary N, model checking is infeasible due to the state space explosion problem, and instead, we present a general proof that, for N ≥ 4, when a process requests access to the critical section, other processes can enter first at most (N-1)(N-2) times.

Citations

Related