Chalagar-82 - 1 A Reliable Optimization on Distributed...

Info iconThis preview shows pages 1–2. Sign up to view the full content.

View Full Document Right Arrow Icon

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: 1 A Reliable Optimization on Distributed Mutual Exclusion Algorithm Moharram Challenger Department of computer Engineering IAU of Shabestar-Iran Challenger@iaushab.ac.ir Peyman Bayat Department of computer Engineering IAU of Tafresh-Iran Bayat_p@engineer.com M.R. Meybodi Department of computer science AUT-Iran Meybodi@cs.aut.ac.ir Abstract This paper presents a reliable decentralized mutual exclusion algorithm for distributed systems in which processes communicate by asynchronous message passing. When any failure happens in system, the algorithm protects the distributed system against any crash. It also makes possible the recovery of lost data in system. It requires between (N-1) and 2(N-1) messages per critical section access, where N is the number of processes in the system. The exact message complexity can be expressed as a order function of clients in computation. The algorithm does not introduce any other overhead over Lamport's and Ricart- Agrawala's algorithms, which require 3(N-1) and 2(N-1) messages per critical section access, respectively. Keywords: distributed mutual exclusion, DMX or DME, reliability, process concurrency, synchronization and fault tolerance 1. I NTRODUCTION he mutual exclusion problem states that only a single process can be allowed to access a protected resource, also termed as a critical section 1 , at any time. Mutual exclusion is a form of synchronization and one of the most fundamental paradigms in computing systems. Mutual exclusion has been widely studied in distributed systems where processes communicate by asynchronous message passing. A comprehensive survey is given in [4,12,13]. For a system with N processes, competitive algorithms have a message complexity between logN and 3(N-1) messages per access to the CS, depending on their features. Distributed mutual exclusion algorithms are either token-based [14] or nontoken-based. In token-based mutual exclusion algorithms, a unique token exists in the system and only the holder of token can access the protected resource. Examples of token-based mutual exclusion algorithms are Suzuki-Kasami's algorithm [18], (N messages for each CS), Singhal's heuristic algorithm [17], ([N/2,N] messages), Raymond's tree-based algorithm [19], (log (N) messages), Yan et-al.'s algorithm [21], (O(N) messages), and Naimi et-al.'s algorithm [16], (O(log(N)) messages). Non token-based mutual exclusion algorithms exchange messages to determine which process can access the CS next. Examples of nontoken-based mutual exclusion algorithms are Lamport's algorithm [6,8], (3(N-1) messages), Ricart- Agrawala's algorithm [5], (2(N-1) messages), Carvalho-Roucairol's modification on Ricart- 1 CS: Critical section Agrawalas algorithm ([0,2(N-1)] messages), Maekawa's algorithm [7,11], ([3 N, 5 N] messages), and Singhal's dynamic data structure algorithm [20], ([N-1, 3(N-1)/2] messages)....
View Full Document

Page1 / 8

Chalagar-82 - 1 A Reliable Optimization on Distributed...

This preview shows document pages 1 - 2. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online