Multi-writer Consistency Conditions for Shared Memory Objects

  • Cheng Shao
  • Evelyn Pierce
  • Jennifer L. Welch
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2848)


Regularity is a shared memory consistency condition that has received considerable attention, notably in connection with quorum-based shared memory. Lamport’s original definition of regularity assumed a single-writer model, however, and is not well-defined when each shared variable may have multiple writers. In this paper, we address this need by formally extending the notion of regularity to a multi-writer model. We give three possible definitions of regularity in the presence of multiple writers. We then present a quorum-based algorithm to implement each of the three definitions and prove them correct. We study the relationships between these definitions and a number of other well-known consistency conditions, and give a partial order describing the relative strengths of these consistency conditions. Finally, we provide a practical context for our results by studying the correctness of two well-known algorithms for mutual exclusion under each of our proposed consistency conditions.


Shared Memory Consistency Condition Critical Section Mutual Exclusion Read Operation 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Ahamad, M., Bazzi, R., John, R., Kohli, P., Neiger, G.: The Power of Processor Consistency. In: ACM Symposium on Parallel Algorithms and Architectures, pp. 251–260 (1993)Google Scholar
  2. 2.
    Attiya, H., Bar-Noy, A., Dolev, D.: Sharing Memory Robustly in Message Passing Systems. Journal of the ACM 42(1), 124–142 (1996)CrossRefGoogle Scholar
  3. 3.
    Attiya, H., Friedman, R.: A Correctness Condition for High Performance Multiprocessors. In: Proceedings of the 24th ACM Symposium on Theory of Computing, pp. 679–690 (1992)Google Scholar
  4. 4.
    Attiya, H., Welch, J.: Distributed Computing: Fundamentals, Simulations and Advanced Topics. McGraw-Hill, New York (1998)Google Scholar
  5. 5.
    Bazzi, R.A.: Synchronous Byzantine Quorum Systems. Distributed Computing 13(1), 45–52 (2000)CrossRefMathSciNetGoogle Scholar
  6. 6.
    Chandra, T.D., Toueg, S.: Unreliable Failure Detectors for Reliable Distributed Systems. Journal of the ACM 43(2), 225–267 (1996)zbMATHCrossRefMathSciNetGoogle Scholar
  7. 7.
    Goodman, J.: Cache Consistency and Sequential Consistency. Technical Report 61, IEEE Scalable Coherent Interface Working Group (1989)Google Scholar
  8. 8.
    Herlihy, M., Wing, J.: Linearizability: A Correctness Condition for Concurrent Objects. ACM Transactions on Programming Languages and Systems 12(3), 463–492 (1990)CrossRefGoogle Scholar
  9. 9.
    Higham, L., Kawash, J.: Bounds for Mutual Exclusion with Only Processor Consistency. In: Proceedings of the 14th International Symposium on Distributed Computing, pp. 44–58 (2000)Google Scholar
  10. 10.
    Lamport, L.: How to Make a Multiprocessor Computer That Correctly Executes Multiprocess Programs. IEEE Transactions on Computers C-28(9), 690–691 (1979)CrossRefGoogle Scholar
  11. 11.
    Lamport, L.: On Interprocessor Communication. Part I and II. Distributed Computing 1(2), 77–101 (1986)zbMATHCrossRefGoogle Scholar
  12. 12.
    Lipton, R., Sandberg, J.: PRAM: A Scalable Shared Memory. Technical Report 180-88, Department of Computer Science, Princeton University (1988)Google Scholar
  13. 13.
    Lynch, N., Shvartsman, A.: RAMBO: A Reconfigurable Atomic Memory Service for Dynamic Networks. In: Proceedings of the 16th International Symposium on Distributed Computing (2002)Google Scholar
  14. 14.
    Lee, H., Welch, J.: Applications of Probabilistic Quorums to Iterative Algorithms. In: Proceedings ofthe 21st International Conference on Distributed Computing Systems, pp. 21–30 (2001)Google Scholar
  15. 15.
    Malkhi, D., Reiter, M.: Byzantine Quorum Systems. Distributed Computing 11(4), 203–213 (1998)CrossRefGoogle Scholar
  16. 16.
    Malkhi, D., Reiter, M., Wool, A., Wright, R.: Probabilistic Quorum Systems. Information and Computation 170(2), 184–206 (2001)zbMATHCrossRefMathSciNetGoogle Scholar
  17. 17.
    Peterson, G.L.: Myths about the Mutual Exclusion Problem. Information Processing Letters 12(3), 115–116 (1981)zbMATHCrossRefGoogle Scholar
  18. 18.
    Raynal, M.: Algorithms for Mutual Exclusion. The MIT Press, Cambridge (1986)zbMATHGoogle Scholar
  19. 19.
    Shao, C., Pierce, E., Welch, J.: Multi-Writer Consistency Conditions for Shared Memory Objects. Technical Report 2003-7-1, Department of Computer Science, Texas A&M University (July 2003)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2003

Authors and Affiliations

  • Cheng Shao
    • 1
  • Evelyn Pierce
    • 1
  • Jennifer L. Welch
    • 1
  1. 1.Department of Computer ScienceTexas A&M UniversityCollege StationU.S.A

Personalised recommendations