This preview shows pages 1–2. Sign up to view the full content.
This preview has intentionally blurred sections. Sign up to view the full version.
View Full Document
Unformatted text preview: 1 A Reliable Optimization on Distributed Mutual Exclusion Algorithm Moharram Challenger Department of computer Engineering IAU of ShabestarIran Challenger@iaushab.ac.ir Peyman Bayat Department of computer Engineering IAU of TafreshIran Bayat_p@engineer.com M.R. Meybodi Department of computer science AUTIran 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 (N1) and 2(N1) 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(N1) and 2(N1) 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(N1) messages per access to the CS, depending on their features. Distributed mutual exclusion algorithms are either tokenbased [14] or nontokenbased. In tokenbased mutual exclusion algorithms, a unique token exists in the system and only the holder of token can access the protected resource. Examples of tokenbased mutual exclusion algorithms are SuzukiKasami's algorithm [18], (N messages for each CS), Singhal's heuristic algorithm [17], ([N/2,N] messages), Raymond's treebased algorithm [19], (log (N) messages), Yan etal.'s algorithm [21], (O(N) messages), and Naimi etal.'s algorithm [16], (O(log(N)) messages). Non tokenbased mutual exclusion algorithms exchange messages to determine which process can access the CS next. Examples of nontokenbased mutual exclusion algorithms are Lamport's algorithm [6,8], (3(N1) messages), Ricart Agrawala's algorithm [5], (2(N1) messages), CarvalhoRoucairol's modification on Ricart 1 CS: Critical section Agrawalas algorithm ([0,2(N1)] messages), Maekawa's algorithm [7,11], ([3 N, 5 N] messages), and Singhal's dynamic data structure algorithm [20], ([N1, 3(N1)/2] messages)....
View Full
Document
 Spring '11
 annieliu

Click to edit the document details