Formalizing Some Classic Synchronization Primitives

  • J. J. Horning
Part of the Texts and Monographs in Computer Science book series (MCS)


Semaphores, introduced by Dijkstra in 1968, and condition variables, introduced by Hoare in 1974, are still useful in structuring concurrent systems. It is important that programmers using them understand their precise properties. Concurrent programming is difficult enough without uncertainty about the details of the synchronization primitives. This note documents the version provided by the Threads interface of the Modula-2+ programming system [7].


Critical Section Atomic Action Concurrent Program Concurrent System Interface Language 
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]
    A. D. Birrell, J. V. Guttag, J. J. Horning, and R. Levin. Synchronization primitives for a multiprocessor: a formal specification. Operating Systems Review, 21(5):94–102, Nov. 1987. Proceedings of the Eleventh ACM Symposium on Operating Systems Principles.Google Scholar
  2. [2]
    E. W. Dijkstra. The structure of the “THE”-multiprogramming system. Comm. ACM, 11 (5): 341–346, 1968.MATHCrossRefGoogle Scholar
  3. [3]
    John V. Guttag, James J. Horning, and Jeannette M. Wing. The Larch family of specification languages. IEEE Software, 2 (5): 24–36, 1985.CrossRefGoogle Scholar
  4. [4]
    C. A. R. Hoare. Monitors: an operating system structuring concept. Comm. ACM, 17 (10): 549–557, 1974.MATHCrossRefGoogle Scholar
  5. [5]
    Leslie Lamport. A simple approach to specifying concurrent systems. Comm. ACM, 32 (1): 32–45, 1989.MathSciNetCrossRefGoogle Scholar
  6. [6]
    Leslie Lamport. Specifying concurrent program modules. ACM TOPLAS, 5 (2): 190–222, 1983.MATHCrossRefGoogle Scholar
  7. [7]
    Paul Rovner. Extending Modula-2 to build large, integrated systems. IEEE Software, 3 (6): 46–57, 1986.CrossRefGoogle Scholar

Copyright information

© Springer-Verlag New York, Inc. 1990

Authors and Affiliations

  • J. J. Horning
    • 1
  1. 1.Systems Research CenterDigital Equipment CorporationPalo AltoUSA

Personalised recommendations