skip to main content
article
Free Access

Sharing memory robustly in message-passing systems

Authors Info & Claims
Published:03 January 1995Publication History
Skip Abstract Section

Abstract

Emulators that translate algorithms from the shared-memory model to two different message-passing models are presented. Both are achieved by implementing a wait-free, atomic, single-writer multi-reader register in unreliable, asynchronous networks. The two message-passing models considered are a complete network with processor failures and an arbitrary network with dynamic link failures.

These results make it possible to view the shared-memory model as a higher-level language for designing algorithms in asynchronous distributed systems. Any wait-free algorithm based on atomic, single-writer multi-reader registers can be automatically emulated in message-passing systems, provided that at least a majority of the processors are not faulty and remain connected. The overhead introduced by these emulations is polynomial in the number of processors in the system.

Immediate new results are obtained by applying the emulators to known shared-memory algorithms. These include, among others, protocols to solve the following problems in the message-passing model in the presence of processor or link failures: multi-writer multi-reader registers, concurrent time-stamp systems, l-exclusion, atomic snapshots, randomized consensus, and implementation of data structures.

References

  1. ~ABRAHAMSON, K. 1988. On achieving consensus using a shared memory. In Proceedings of the ~7th Annual ACM Symposium on Principles of Distributed Computing (Toronto, Ont., Canada, ~~ ~Aug ~15-17). ACM, New York, pp. 291-302. Google ScholarGoogle Scholar
  2. ~AFEK, Y., ATrlYA, H., DOLEV, D., GAFNI, E., MERRITT, M., AND SHAVlT, N. 1993. Atomic ~snapshots of shared memory. J. ACM 40, 4 (Sept.), 873-890. Google ScholarGoogle Scholar
  3. ~AFEK, Y., AWERBUCH, B., AND GAFNI, E. 1987. Applying static network protocols to dynamic ~networks. In Proceedings of the 28th Symposium on Foundations of Computer Science. IEEE, ~New York, pp. 358-369.Google ScholarGoogle Scholar
  4. ~AFEK, Y., DOLEV, D., GAFNI, E., MERRITT, M., AND SHAVIT, N. 1990. A bounded first-in ~first-enabled-solution to the /-exclusion problem. In Proceedings of the International ~~ ~Workshop~on Distributed Algorithms. Lecture Notes in Computer Science, vol. 486, ~~ ~Springer-Verlag, New~York. Google ScholarGoogle Scholar
  5. ~FEK, Y. AND GAFNI, E. 1988. End-to-end communication in unreliable networks. In ~Proceed- ~ings of the 7th Annual ACM Symposium on Principles of Distributed Computing (Toronto, Ont., ~Canada, Aug. 15-17). ACM, New York, pp. 131-147. Google ScholarGoogle Scholar
  6. ~AFEK, Y. AND GAFNL E. 1991. Bootstrap network resynchronization. In Proceedings of the lOth ~Annual ACM Symposium on Principles of Distributed Computing (Montreal, Que., Canada, Aug. ~19-21~). ACM, New York, pp. 295-307. Google ScholarGoogle Scholar
  7. ~ANDERSON, J.H. 1993. Composite registers. Dist. Computing 6, 3, 141-154. Google ScholarGoogle Scholar
  8. ~ASPNES, J., AND MERLIHY, M. 1990a. Fast randomized consensus using shared memory. J. ~Algorithms 15, 1 (Sept.), 441-460. Google ScholarGoogle Scholar
  9. ~ASPNES, J., AND HERLIHY, M.P. 1990b. Wait-free data structures in the asynchronous PRAM ~model. In Proceedings of the 22nd Annual ACM Symposium on Parallel Algorithms and Architec- ~tures (Island of Crete, Greece, July 2-6). ACM, New York, pp. 340-349. Google ScholarGoogle Scholar
  10. ~ATrlYA, H., BAR-No~, A., DOLEV, D., PELEO, D. AND REISCHUK, R. 1990. Renaming in an ~asynchronous environment. J. ACM 37, 3 (July), 524-548. Google ScholarGoogle Scholar
  11. ~ATrIYA, H., DOLEV, D. AND SHAVIT, N. 1987. Bounded polynomial randomized consensus. In ~Proceedings of the 8th Annual ACM Symposium on Principles' of Distributed Computing (Edmon- ~ton, Alb., Canada, Aug. 14-16). ACM, New York, pp. 281-293. Google ScholarGoogle Scholar
  12. ~AWERBUCH, B. 1987. Optimal distributed algorithms for minimum weight spanning tree, count- ~ing, leader election and related problems. In Proceedhzgs of the 19th Symposium on Theory of ~Computing. (New York, N.Y., May 25-27). ACM, New York, pp. 230-240. Google ScholarGoogle Scholar
  13. ~AWERBUCH, B., MANSOUR, Y., AND SHAVIT, N. 1989. Polynomial end-to-end comnmnication. In ~Proceedings of the 30th Symposium of Computer Science. IEEE, New York, pp. 358-363.Google ScholarGoogle Scholar
  14. ~BAR-NOY, A. AND DOLEV, D. 1989. Shared-memory vs. message-passing in an asynchronous ~distributed environment. In Proceedings of the 8th Annual ACM Symposium on Principles of ~Distributed Computing (Edmonton, Alb., Canada, Aug. 14-16). ACM, New York, pp. 307-318. Google ScholarGoogle Scholar
  15. ~BEN-OR, M. 1983. Another advantage of free choice: Completely asynchronous agreement ~protocols. In Proceedings of the 2nd Annual ACM Symposium on Principles of Distributed ~Computing (Montreal, Que., Canada, Aug. 17-19). ACM, New York, pp. 27-30. Google ScholarGoogle Scholar
  16. ~BURNS, J. E., AND PETERSON, G.L. 1989. The ambiguity of choosing. In Proceedings of the 8th ~Annual ACM Symposium on Principles of Distributed Computing (Edmonton, Alb., Canada, Aug. ~14-16). ACM, New York, pp. 145-157. Google ScholarGoogle Scholar
  17. ~CHOR, B., ISRAELI, A., AND CI, M. 1987. On processor coordination using asynchronous ~hardware. In Proceedings of the 6th Annual ACM Symposium on Pnnciples of Distributed ~Computing (Vancouver, B.C., Canada, Aug. 10-12). ACM, New York, pp. 86-97. Google ScholarGoogle Scholar
  18. ~CHOR, B., MERRITT, M., AND SHMOYS, D. 1985. Simple constant-time consensus protocols in ~realistic failure models. In Proceedings of the 4th Annual ACM Symposium on Principles of ~Distributed Computing (Minakk Ont., Canada, Aug. 5-7). ACM, New York, pp. 152-160. Google ScholarGoogle Scholar
  19. ~CHOR, B., AND MoscovIcI, L. 1989. Solvability in asynchronous environments. In Proceedings ~of the 30th Symposium on Foundations of Computer Science. IEEE, New York, pp. 422-427.Google ScholarGoogle Scholar
  20. ~DIJKSTRA, E. W., AND SCHOLTEN, C.S. 1988. Termination detection for diffusing computations. ~Inf. Proc. Lett., 1, i (Aug)., 1-4.Google ScholarGoogle Scholar
  21. ~DOLEV, D., GAFNI, E., AND SHAVIT, N. 1988. Toward a non-atomic era: /-exclusion as a test ~case. In Proceedings of the 20th Annual A CM Symposium on Theory of Computing (Chicago, IlL, ~May 2-4). ACM, New York, pp. 78 92. Google ScholarGoogle Scholar
  22. ~DOLEV, D., AND SHAVIT, N. 1987. Unpublished manuscript. July. Cited in Awerbuch et al. {1989}.Google ScholarGoogle Scholar
  23. ~DOLEV, D., AND SHAVIT, N. 1989. Bounded concurrent time-stamp systems are constructible. ~SIAM J. Computing, to appear. Also: Proceedings of the 21st Symposium on Theory of Computing ~(Seattle, Wash., May 15-17), ACM, New York, pp. 454-466. Google ScholarGoogle Scholar
  24. ~DWORK, C., SHMOYS, D., AND STOCKMEYER, L. 1986. Flipping persuasively in constant expected ~time. In Proceedings of the 27th Symposmm on Foundations of Computer Science, IEEE, New ~York, pp. 222-232.Google ScholarGoogle Scholar
  25. ~FELDMAN, J. A., AND NIGAM, m. 1980. A model and proof technique for message-based ~systems. SIAM J. Computing 9, 4 (Nov). 768-784.Google ScholarGoogle Scholar
  26. ~FINN, S.G. 1979. Resynch procedures and a fail-safe network protocol. IEEE Trans. Comm. ~COM-27, 840-845.Google ScholarGoogle Scholar
  27. ~FISCHER, M. J., LYNCH, N. A., AND PATERSON, M.S. 1985. Impossibility of distributed consen- ~sus with one faulty processor. J. ACM 32, 2 (Apr.), 374-382. Google ScholarGoogle Scholar
  28. ~HERHHY, M.P. 1988. Impossibility and universality results for wait-free synchronization. In ~Proceedings of the 7th Annual A CM Symposium on Principles of Distributed Computing (Toronto, ~Ont., Canada, Aug. t5-17). ACM, New York, pp. 276-290. Google ScholarGoogle Scholar
  29. ~HERLIHY, M.P. 1991. Wait-free synchronization. ACM Trans. Prog. Lang. Syst. 13, t (Jan.), ~124-149. (Earlier version appeared as: Randomized wait-free concurrent objects. In Proceed- ~ings of the lOth Annual ACM Symposium on Principles of Distributed Computmg (Montreal, Que., ~Canada, Aug. 19-21). ACM, New York, pp. 11-21. Google ScholarGoogle Scholar
  30. ISRAELI, h., AND LI, M. 1993. Bounded time-stamps. Dist. Comput. 6, 4, 205-209. Google ScholarGoogle Scholar
  31. LAMPORT, L. 1986. On interprocess communication: Part I and II. Dist. Comput. 1, 77-101.Google ScholarGoogle Scholar
  32. ~LI, M., TROMP, J. AND VITANYI, P. 1989. How to share concurrent wait-free variables. Report ~CS-R8916. CWI, Amsterdam, The Netherlands.Google ScholarGoogle Scholar
  33. ~PETERSON, G. L., AND BURNS. J.E. 1987. Concurrent reading while writing II: The multiwriter ~case. In Proceedings of the 28th Symposmm on Foundations of Computer Science. IEEE, New ~York, pp. 383-392.Google ScholarGoogle Scholar
  34. ~VISHK~N, U. 1983. A distributed orientation algorithm. IEEE Trans. Inf. Theory (June).Google ScholarGoogle Scholar
  35. ~VITANYI, P., AND AWERBUCH, B. 1986. Atomic shared register access by asynchronous hard- ~ware. In Proceedings of the 27th Symposium on Foundations of Computer Science. IEEE, New ~York, pp. 233-243.Google ScholarGoogle Scholar

Index Terms

  1. Sharing memory robustly in message-passing systems

          Recommendations

          Comments

          Login options

          Check if you have access through your login credentials or your institution to get full access on this article.

          Sign in

          Full Access

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader