Memory-Anonymous Starvation-Free Mutual Exclusion: Possibility and Impossibility Results

09/20/2023
by   Gadi Taubenfeld, et al.
0

In an anonymous shared memory system, all inter-process communications are via shared objects; however, unlike in standard systems, there is no a priori agreement between processes on the names of shared objects [14,15]. Furthermore, the algorithms are required to be symmetric; that is, the processes should execute precisely the same code, and the only way to distinguish processes is by comparing identifiers for equality. For such a system, read/write registers are called anonymous registers. It is known that symmetric deadlock-free mutual exclusion is solvable for any finite number of processes using anonymous registers [1]. The main question left open in [14,15] is the existence of starvation-free mutual exclusion algorithms for two or more processes. We resolve this open question for memoryless algorithms, in which a process that tries to enter its critical section does not use any information about its previous attempts. Almost all known mutual exclusion algorithms are memoryless. We show that (1) there is a symmetric memoryless starvation-free mutual exclusion algorithm for two processes using m ≥ 7 anonymous registers if and only if m is odd; and (2) there is no symmetric memoryless starvation-free mutual exclusion algorithm for n≥ 3 processes using (any number of) anonymous registers. Our impossibility result is the only example of a system with fault-free processes, where global progress (i.e., deadlock-freedom) can be ensured, while individual progress to each process (i.e., starvation-freedom) cannot. It complements a known result for systems with failure-prone processes, that there are objects with lock-free implementations but without wait-free implementations [2,5].

READ FULL TEXT

page 1

page 2

page 3

page 4

research
10/08/2018

Optimal Memory-Anonymous Symmetric Deadlock-Free Mutual Exclusion

The notion of an anonymous shared memory (recently introduced in PODC 20...
research
09/12/2019

Fully Anonymous Shared Memory Algorithms

Process anonymity has been studied for a long time. Memory anonymity is ...
research
03/25/2019

Two Mutual Exclusion Algorithms for Shared Memory

In this paper, we introduce two algorithms that solve the mutual exclusi...
research
08/19/2022

Technical Report: Asymmetric Mutual Exclusion for RDMA

Coordinating concurrent access to a shared resource using mutual exclusi...
research
09/12/2018

Constant Amortized RMR Complexity Deterministic Abortable Mutual Exclusion Algorithm for CC and DSM Models

The abortable mutual exclusion problem was introduced by Scott and Scher...
research
09/20/2023

Better Sooner Rather Than Later

This article unifies and generalizes fundamental results related to n-pr...
research
05/13/2018

Fast and Scalable Group Mutual Exclusion

The group mutual exclusion (GME) problem is a generalization of the clas...

Please sign up or login with your details

Forgot password? Click here to reset