Advanced UNIX programming
The design of the UNIX operating system
The design of the UNIX operating system
Paradigms for process interaction in distributed programs
ACM Computing Surveys (CSUR)
Rationale for the design of the Ada programming language
Rationale for the design of the Ada programming language
Semaphores for fair scheduling monitor conditions
ACM SIGOPS Operating Systems Review
OSF DCE application development reference, revision 1.0
OSF DCE application development reference, revision 1.0
Fundamentals of operating systems (5th ed.)
Fundamentals of operating systems (5th ed.)
Semaphore primitives and starvation-free mutual exclusion
Journal of the ACM (JACM)
ACM Computing Surveys (CSUR)
Communicating sequential processes
Communications of the ACM
Monitors: an operating system structuring concept
Communications of the ACM
Synchronization of communicating processes
Communications of the ACM
Concurrent control with “readers” and “writers”
Communications of the ACM
Process management and resource sharing in the multiaccess system in ESOPE
Communications of the ACM
The structure of the “THE”-multiprogramming system
Communications of the ACM
Hi-index | 0.00 |
The objective of this article is to realize an in-depth study of MMS semaphores. This article is not a tutorial on MMS semaphores although it does explain to some extent how MMS semaphores behave and can be utilized. What we are trying to achieve is a definitive clarification of the MMS semaphore concept in order to make its use easier to MMS programmers and to encourage its adoption in the industrial applications and products. We compare MMS semaphores to Dijkstra's classical semaphores and show that real differences exist. Other mechanisms are also discussed (monitors, CSP). Examples are provided to illustrate our analysis and references to the semaphore mechanism of some operating systems are given to ease the comparison. We come to the conclusion that MMS semaphores are flexible but cannot be utilized to solve all kinds of problems classical semaphores usually cope with. We also explain why the two kinds of semaphores provided by MMS are redundant.