|
ABSTRACT
One of the most natural, elegant, and efficient mechanisms for synchronization and communication, especially for systems with shared memory, is the monitor. Over the past twenty years many kinds of monitors have been proposed and implemented, and many modern programming languages provide some form of monitor for concurrency control. This paper presents a taxonomy of monitors that encompasses all the extant monitors and suggests others not found in the literature or in existing programming languages. It discusses the semantics and performance of the various kinds of monitors suggested by the taxonomy, and it discusses programming techniques suitable to each.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
 |
1
|
|
| |
2
|
ADAMS, J. M., AND BLACK, A. P. 1983. Letter to the editor. Oper. Syst. Rev. 17, i (Jan.), 6-8.
|
 |
3
|
|
| |
4
|
|
| |
5
|
|
| |
6
|
BRINCH HANSEN, P. 1975. The programming language concurrent pascal. IEEE Trans. Softw. Eng. 2 (June), 199--206.
|
| |
7
|
BUHR, P. A., ANn STROOBOSSCHER, R.A. 1990. The /~System: Providing lightweight concurrency on shared-memory multiprocessor computers running UNIX. Softw. Pract. Exper. 20, 9 (Sept.), 929-963.
|
| |
8
|
|
| |
9
|
|
| |
10
|
CARDELLI, L., DONAHUE, J., GLASSMAN, L., JORDAN, M., KALSOW, B., AND NELSON, G. 1988. Modula-3 report. Tech. Rep. 31, Systems Research Center, Pale Alto, Calif.
|
| |
11
|
|
 |
12
|
|
 |
13
|
|
| |
14
|
|
 |
15
|
|
| |
16
|
FORTT~.R, M. 1989. Study of monitors. Master's thesis, Dept. of Computer Science, Univ. of Waterloo, Waterloo, Ont.
|
| |
17
|
GENTLEMAN, W.M. 1985. Using the harmony operating system. Tech. Rep. 24685, National Research Council of Canada, Ottawa.
|
| |
18
|
GOSLING, J., ROSENTHAL, D. S. H., AND ARDEN, R. J. 1989. The NeWS Book. Springer Verlag, New York.
|
| |
19
|
GRIES, D. 1981. The Science of Computer Programming. Springer Verlag, New York.
|
| |
20
|
HANSEN, P. B. 1981a. The design of Edison. Softw. Pract. Exper. 11, 4 (Apr.), 363-396.
|
| |
21
|
HANSEN, P.B. 1981b. Edison--a multiprocessor language. Softw. Pract. Exper. 11, 4 (Apr.), 325-361.
|
| |
22
|
HANSEN, P. B. 1981c. Edison programs. Softw. Pract. Exper. 11, 4 (Apr.), 397-414.
|
 |
23
|
|
 |
24
|
|
| |
25
|
HOLT, R.C. 1992. Turing Reference Manual, 3rd ed. Holt Software Associates, Inc.
|
 |
26
|
|
| |
27
|
|
 |
28
|
|
| |
29
|
|
 |
30
|
|
 |
31
|
|
| |
32
|
MITCHELL, J. G., MAYBURY, W., AND SWEET, R. 1979. Mesa language manual. Tech. Rep. CSL-79-3, Xerox Pale Alto Research Center.
|
| |
33
|
|
| |
34
|
Rajendra K. Raj , Ewan Tempero , Henry M. Levy , Andrew P. Black , Norman C. Hutchinson , Eric Jul, Emerald: a general-purpose programming language, Software—Practice & Experience, v.21 n.1, p.91-118, Jan. 1991
[doi> 10.1002/spe.4380210107]
|
| |
35
|
|
CITED BY 16
|
|
|
|
|
|
|
|
Ole Agesen , David Detlefs , Alex Garthwaite , Ross Knippel , Y. S. Ramakrishna , Derek White, An efficient meta-lock for implementing ubiquitous synchronization, ACM SIGPLAN Notices, v.34 n.10, p.207-222, Oct. 1999
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|