Skip to main content
  • 3024 Accesses

Abstract

This chapter is on the strongest consistency condition for concurrent objects. This condition is called atomicity when considering shared registers, and linearizability when considering more sophisticated types of objects. In the following, these two terms are considered as synonyms.

The chapter first introduces the notion of a distributed shared memory. It then defines formally the atomicity concept, and presents its main composability property, and several implementations on top of a message-passing system.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 54.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 69.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 99.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. S. Adve, K. Gharachorloo, Shared memory consistency models. IEEE Comput. 29(12), 66–76 (1996)

    Article  Google Scholar 

  2. S. Adve, M. Mill, A unified formalization of four shared memory models. IEEE Trans. Parallel Distrib. Syst. 4(6), 613–624 (1993)

    Article  Google Scholar 

  3. Y. Afek, G.M. Brown, M. Merritt, Lazy caching. ACM Trans. Program. Lang. Syst. 15(1), 182–205 (1993)

    Article  Google Scholar 

  4. M. Ahamad, G. Neiger, J.E. Burns, P.W. Hutto, P. Kohli, Causal memory: definitions, implementation and programming. Distrib. Comput. 9, 37–49 (1995)

    Article  MathSciNet  Google Scholar 

  5. H. Attiya, S. Chaudhuri, R. Friedman, J.L. Welch, Non-sequential consistency conditions for shared memory, in Proc. 5th ACM Symposium on Parallel Algorithms and Architectures (SPAA’93) (ACM Press, New York, 1993), pp. 241–250

    Google Scholar 

  6. H. Attiya, J.L. Welch, Sequential consistency versus linearizability. ACM Trans. Comput. Syst. 12(2), 91–122 (1994)

    Article  Google Scholar 

  7. H.E. Bal, F. Kaashoek, A. Tanenbaum, Orca: a language for parallel programming of distributed systems. IEEE Trans. Softw. Eng. 18(3), 180–205 (1992)

    Article  Google Scholar 

  8. N. Carriero, D. Gelernter, T.G. Mattson, A.H. Sherman, The Linda alternative to message-passing systems. Parallel Comput. 20(4), 633–655 (1994)

    Article  MATH  Google Scholar 

  9. L.M. Censier, P. Feautrier, A new solution to coherence problems in multicache systems. IEEE Trans. Comput. C-27(12), 112–118 (1978)

    Article  Google Scholar 

  10. P.J. Denning, Virtual memory. ACM Comput. Surv. 2(3), 153–189 (1970)

    Article  MATH  Google Scholar 

  11. M. Dubois, C. Scheurich, Memory access dependencies in shared memory multiprocessors. IEEE Trans. Softw. Eng. 16(6), 660–673 (1990)

    Article  Google Scholar 

  12. R. Friedman, Implementing hybrid consistency with high-level synchronization operations, in Proc. 12th Annual ACM Symposium on Principles of Distributed Computing (PODC’93) (ACM Press, New York, 1993), pp. 229–240

    Google Scholar 

  13. V.K. Garg, M. Raynal, Normality: a consistency condition for concurrent objects. Parallel Process. Lett. 9(1), 123–134 (1999)

    Article  Google Scholar 

  14. K. Gharachorloo, D. Lenoski, J. Laudon, P. Gibbons, A. Gupta, J.L. Hennessy, Memory consistency and event ordering in scalable shared memory multiprocessors, in Proc. 17th ACM Int’l Symposium on Computer Architecture (ISCA’90) (1990), pp. 15–26

    Chapter  Google Scholar 

  15. M. Herlihy, J. Wing, Linearizability: a correctness condition for concurrent objects. ACM Trans. Program. Lang. Syst. 12(3), 463–492 (1990)

    Article  Google Scholar 

  16. P. Hutto, M. Ahamad, Slow memory: weakening consistency to enhance concurrency in distributed shared memories, in Proc. 10th IEEE Int’l Conference on Distributed Computing Systems (ICDCS’90) (IEEE Press, New York, 1990), pp. 302–311

    Google Scholar 

  17. E. Jiménez, A. Fernández, V. Cholvi, A parameterized algorithm that implements sequential, causal, and cache memory consistencies. J. Syst. Softw. 81(1), 120–131 (2008)

    Article  Google Scholar 

  18. P. Keleher, A.L. Cox, W. Zwaenepoel, Lazy release consistency for software distributed shared memory, in Proc. 19th ACM Int’l Symposium on Computer Architecture (ISCA’92), (1992), pp. 13–21

    Chapter  Google Scholar 

  19. R. Kordale, M. Ahamad, A scalable technique for implementing multiple consistency levels for distributed objects, in Proc. 16th IEEE Int’l Conference on Distributed Computing Systems (ICDCS’96) (IEEE Press, New York, 1996), pp. 369–376

    Chapter  Google Scholar 

  20. L. Lamport, How to make a multiprocessor computer that correctly executes multiprocess programs. IEEE Trans. Comput. C-28(9), 690–691 (1979)

    Article  Google Scholar 

  21. L. Lamport, On inter-process communications, part I: basic formalism. Distrib. Comput. 1(2), 77–85 (1986)

    Article  MATH  Google Scholar 

  22. L. Lamport, On inter-process communications, part II: algorithms. Distrib. Comput. 1(2), 86–101 (1986)

    Article  MATH  Google Scholar 

  23. K. Li, K.P. Huda, Memory coherence in shared virtual memory systems. ACM Trans. Comput. Syst. 7(4), 321–359 (1989)

    Article  Google Scholar 

  24. R.J. Lipton, J.S. Sandberg, PRAM: a scalable shared memory. Tech Report CS-TR-180-88, Princeton University, 1988

    Google Scholar 

  25. M. Mavronicolas, D. Roth, Efficient, strong consistent implementations of shared memory, in Proc. 6th Int’l Workshop on Distributed Algorithms (WDAG’92). LNCS, vol. 647 (Springer, Berlin, 1992), pp. 346–361

    Chapter  Google Scholar 

  26. J. Misra, Axioms for memory access in asynchronous hardware systems. ACM Trans. Program. Lang. Syst. 8(1), 142–153 (1986)

    Article  MATH  Google Scholar 

  27. N. Mittal, V.K. Garg, Consistency conditions for multi-objects operations, in Proc. 18th IEEE Int’l Conference on Distributed Computing Systems (ICDCS’98) (IEEE Press, New York, 1998), pp. 582–589

    Google Scholar 

  28. B. Nitzberg, V. Lo, Distributed shared memory: a survey of issues and algorithms. IEEE Comput. 24(8), 52–60 (1991)

    Article  Google Scholar 

  29. Ch.H. Papadimitriou, The serializability of concurrent database updates. J. ACM 26(4), 631–653 (1979)

    Article  MathSciNet  MATH  Google Scholar 

  30. J. Protic, M. Tomasevic, Distributed shared memory: concepts and systems. IEEE Concurr. 4(2), 63–79 (1996)

    Google Scholar 

  31. M. Raynal, Sequential consistency as lazy linearizability, in Proc. 14th ACM Symposium on Parallel Algorithms and Architectures (SPAA’02) (ACM Press, New York, 2002), pp. 151–152

    Google Scholar 

  32. M. Raynal, A. Schiper, A suite of formal definitions for consistency criteria in distributed shared memories, in Proc. 9th Int’l IEEE Conference on Parallel and Distributed Computing Systems (PDCS’96) (IEEE Press, New York, 1996), pp. 125–131

    Google Scholar 

  33. M. Raynal, K. Vidyasankar, A distributed implementation of sequential consistency with multi-object operations, in Proc. 24th IEEE Int’l Conference on Distributed Computing Systems (ICDCS’04) (IEEE Press, New York, 2004), pp. 544–551

    Chapter  Google Scholar 

  34. F. Torres-Rojas, M. Ahamad, M. Raynal, Lifetime-based consistency protocols for distributed objects, in Proc. 12th Int’l Symposium on Distributed Computing (DISC’98). LNCS, vol. 1499 (Springer, Berlin, 1998), pp. 378–392

    Google Scholar 

  35. F. Torres-Rojas, M. Ahamad, M. Raynal, Timed consistency for shared distributed objects, in Proc. 18th Annual ACM Symposium on Principles of Distributed Computing (PODC’99) (ACM Press, New York, 1999), pp. 163–172

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

Copyright information

© 2013 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Raynal, M. (2013). Atomic Consistency (Linearizability). In: Distributed Algorithms for Message-Passing Systems. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-38123-2_16

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-38123-2_16

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-38122-5

  • Online ISBN: 978-3-642-38123-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics