Avoiding Register Overflow in the Bakery Algorithm

07/04/2020
by   Amirhossein Sayyadabdi, et al.
0

Computer systems are designed to make resources available to users and users may be interested in some resources more than others, therefore, a coordination scheme is required to satisfy the users' requirements. This scheme may implement certain policies such as "never allocate more than X units of resource Z". One policy that is of particular interest is the inability of users to access a single resource at the same time, which is called the problem of mutual exclusion. Resource management concerns the coordination and collaboration of users, and it is usually based on making a decision. In the case of mutual exclusion, that decision is about granting access to a resource. Therefore, mutual exclusion is useful for supporting resource access management. The first true solution to the mutual exclusion problem is known as the Bakery algorithm that does not rely on any lower-lever mutual exclusion. We examine the problem of register overflow in real-world implementations of the Bakery algorithm and present a variant algorithm named Bakery++ that prevents overflows from ever happening. Bakery++ avoids overflows without allowing a process to write into other processes' memory and without using additional memory or complex arithmetic or redefining the operations and functions used in Bakery. Bakery++ is almost as simple as Bakery and it is straightforward to implement in real systems. With Bakery++, there is no reason to keep implementing Bakery in real computers because Bakery++ eliminates the probability of overflows and hence it is more practical than Bakery. Previous approaches to circumvent the problem of register overflow included introducing new variables or redefining the operations or functions used in the original Bakery algorithm, while Bakery++ avoids overflows by using simple conditional statements. (the abstract does not end here.)

READ FULL TEXT

page 1

page 2

page 3

page 4

research
08/19/2022

Technical Report: Asymmetric Mutual Exclusion for RDMA

Coordinating concurrent access to a shared resource using mutual exclusi...
research
05/09/2023

Opportunistic Mutual Exclusion

Mutual exclusion is an important problem in the context of shared resour...
research
03/01/2020

Process algebra, process scheduling, and mutual exclusion

In the case of multi-threading as found in contemporary programming lang...
research
10/21/2022

A Q# Implementation of a Quantum Lookup Table for Quantum Arithmetic Functions

In this paper, we present Q# implementations for arbitrary single-variab...
research
11/09/2020

Resource Allocation in One-dimensional Distributed Service Networks with Applications

We consider assignment policies that allocate resources to users, where ...
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
05/20/2019

Toward Operator-to-Waveform 5G Radio Access Network Slicing

Radio access network (RAN) slicing realizes a vision where physical netw...

Please sign up or login with your details

Forgot password? Click here to reset