Abstract
This paper presents a schematic algorithm for distributed systems. This schematic algorithm uses a “black-box” procedure for communication, the output of which must meet two requirements: a global-order requirement and a deadlock-free requirement. This algorithm is valid in any distributed system model that can provide such a communication procedure that complies with these requirements. Two such models exist in an asynchronous fail-stop environment: one in the shared-memory model and one in the message-passing model. The implementation of the block-box procedure in these models enables us to translate existing algorithms between the two models whenever these algorithms are based on the schematic algorithm.
We demonstrate this idea in two ways. First, we present a randomized algorithm for the consensus problem in the message-passing model based on the algorithm of Aspnes and Herlihy [AH] in the shared-memory model. This solution is the fastest known randomized algorithm that solves the consensus problem against a strong fail-stop adversary with one-half resiliency. Second, we solve the processor renaming problem in the shared-memory model based on the solution of Attiyaet al. [ABD+] in the message-passing model. The existence of the solution to the renaming problem should be contrasted with the impossibility result for the consensus problem in the shared-memory model [CIL], [DDS], [LA].
References
K. Abrahamson, On Achieving Consensus Using a Shared Memory,Proc. 7th ACM Symp. on Principles of Distributed Computing, pp. 291–302, 1988.
J. Aspnes and M. Herlihy, Fast Randomized Consensus Using Shared Memory,Journal of Algorithms,11, 441–461, 1990.
H. Attiya, A. Bar-Noy, D. Dolev, D. Peleg, and R. Reischuk, Renaming in an Asynchronous Environment,Journal of the ACM,37, 524–548, 1990.
H. Attiya, D. Dolev, and N. Shavit. Bounded Polynomial Randomized Consensus,Proc. 8th ACM Symp. on Principles of Distributed Computing, pp. 281–293, 1989.
M. Ben-Or, Another Advantage of Free Choice: Completely Asynchronous Agreement Protocols,Proc. 2nd ACM Symp. on Principles of Distributed Computing, pp. 27–30, 1983.
O. Biran, S. Moran, and S. Zaks, A Combinatorial Characterization of the Distributed Tasks Which are Solvable in the Presence of One Faulty Processor,Proc. 7th ACM Symp. on Principles of Distributed Computing, pp. 263–275, 1988.
M. F. Bridgland and R. J. Watro, Fault-Tolerant Decision Making in totally Asynchronous Distributed Systems,Proc. 6th ACM Symp. on Principles of Distributed Computing, pp. 52–63, 1987.
B. Chor, A. Israeli, and M. Li, On Processor Coordination Using Asynchronous Hardware,Proc. 6th ACM Symp on Principles of Distributed Computing, pp. 86–97, 1987.
B. Chor, M. Merritt, and D. Shmoys, Simple Constant-Time Consensus Protocols in Realistic Failure Models,Journal of the ACM,36, 591–614, 1989.
B. Chor and L. Moscovici, Solvability in Asynchronous Environments,Proc. 30th Symp. on Foundations of Computer Science, pp. 422–427, 1989.
D. Dolev, C. Dwork, and L. Stockmeyer, On the Minimal Synchronism Needed for Distributed Consensus,Journal of the ACM,34, 77–97, 1987.
D. Dolev and N. Shavit, Bounded Concurrent Time-Stamp Systems are Constructible,Proc. 21st ACM SIGACT Symp. on Theory of Computing, 1989.
C. Dwork, N. Lynch, and L. Stockmeyer, Consensus in the Presence of Partial Synchrony,Journal of the ACM,35, 288–323, 1988.
C. Dwork, D. Shmoys, and L. Stockmeyer, Flipping Persuasively in Constant Expected Time,Proc. 27th Symp. on Foundations of Computer Science, pp. 222–232, 1986.
P. Feldman, Private communication.
M. J. Fischer, The Consensus Problem in Unreliable Distributed Systems (a Brief Survey), YALEU/DCS/RR-273, June 1983.
M. J. Fischer, N. A. Lynch, and M. S. Paterson, Impossibility of Distributed Consensus with One Faulty Processor,Journal of the ACM,32, 374–382, 1985.
R. G. Gallagher, P. A. Humblet, and P. M. Spira, A Distributed Algorithm for Minimum-Weight Spanning Trees,ACM Transactions on Programming Languages and Systems,5, 66–77, 1983.
M. P. Herlihy, Impossibility and Universality Results for Wait-Free Synchronization,Proc. 7th ACM Symp. on Principles of Distributed Computing, pp. 276–290, 1988.
A. Israeli and M. Li, Bounded Time-Stamps,Proc. 28th Symp. on Foundations of Computer Science, pp. 371–382, 1987.
L. Lamport, On Interprocess Communication, Part I and II,Distributed Computing,1, 77–101, 1986.
M. G. Loui and H. Abu-Amara, Memory Requirements for Agreement Among Unreliable Asynchronous Processes,Advances in Computing Research,4, 163–183, 1987.
M. Pease, R. Shostak, and L. Lamport, Reaching Agreement in the Presence of Faults,Journal of the ACM,27, 228–234, 1980.
Author information
Authors and Affiliations
Additional information
A preliminary version of this paper, “Shared-Memory vs. Message-Passing in an Asynchronous Distributed Environment,” appeared inProc. 8th ACM Symp. on Principles of Distributed Computing, pp. 307–318, 1989. Part of this work was done while A. Bar-Noy visited the Computer Science Department, Stanford University, Stanford, CA 94305, USA, and his research was supported in part by a Weizmann fellowship, by Contract ONR N00014-88-K-0166, and by a grant of Stanford's Center for Integrated Systems.
Rights and permissions
About this article
Cite this article
Bar-Noy, A., Dolev, D. A partial equivalence between shared-memory and message-passing in an asynchronous fail-stop distributed environment. Math. Systems Theory 26, 21–39 (1993). https://doi.org/10.1007/BF01187073
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/BF01187073