|
ABSTRACT
This paper develops Brinch-Hansen's concept of a monitor as a method of structuring an operating system. It introduces a form of synchronization, describes a possible method of implementation in terms of semaphores and gives a suitable proof rule. Illustrative examples include a single resource scheduler, a bounded buffer, an alarm clock, a buffer pool, a disk head optimizer, and a version of the problem of readers and writers.
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
|
Brinch-Hansen, P. "A comparison of two synchronizing concepts," Aeta Information 1 (1972), 190-199.
|
| |
3
|
|
 |
4
|
|
| |
5
|
Courtois, P.J., Heymans, F., Parnas, D.L. Comments on {2}. Acta lnformatica 1 (1972), 375-376.
|
| |
6
|
Dahl, O.J. Hierarchical program structures. In Structured Programming, Academic Press, New York, 1972.
|
| |
7
|
Dijkstra, E.W. Cooperating Sequential Processes. In Programming Languages (Ed. F. Genuys), Academic Press, New York, 1968.
|
| |
8
|
Dijkstra, E.W. A constructive approach to the problem of program correctness. BIT8 (1968), 174-186.
|
| |
9
|
Dijkstra, E.W. Hierarchical ordering of sequential processes. In Operating Systems Techniques, Academic Press, New York, 1972.
|
| |
10
|
Dijkstra, E.W. Information streams sharing a finite buffer. Information Processing Letters 1, 5 (Oct. 1972), 179-180.
|
| |
11
|
Dijkstra, E.W. A class of allocation strategies inducing bounded delays only. Proc AFIPS 1972 SJCC, Vol. 40, AFIPS Press, Montvale, N.J., pp. 933-936.
|
| |
12
|
Hoare, C.A.R. Towards a theory of parallel programming. In Operathg Systems Techniques, Academic Press, New York, 1972.
|
| |
13
|
Hoare, C.A.R. Proof of correctness of data representations. Acta Informatica 1 (1972), 271-281.
|
| |
14
|
Hoare, C.A.R. A structured paging system. Computer J. 16, 3 (1973), 209-215.
|
| |
15
|
Wirth, N. The programming language PASCAL. Acta blformatica 1, 1 (1971), 35-63.
|
CITED BY 409
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Michal Young , Richard N. Taylor , David L. Levine , Kari A. Nies , Debra Brodbeck, A concurrency analysis tool suite for Ada programs: rationale, design, and preliminary experience, ACM Transactions on Software Engineering and Methodology (TOSEM), v.4 n.1, p.65-106, Jan. 1995
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
William Weihl , Barbara Liskov, Specification and implementation of resilient, atomic data types, Proceedings of the 1983 ACM SIGPLAN symposium on Programming language issues in software systems, p.53-64, June 27-29, 1983, San Francisco, California, United States
|
|
|
|
|
|
|
|
|
|
|
|
D. Tsichritzis , E. Fiume , S. Gibbs , O. Nierstrasz, KNOs: KNowledge acquisition, dissemination, and manipulation Objects, ACM Transactions on Information Systems (TOIS), v.5 n.1, p.96-112, Jan. 1987
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
A. J. Wellings , B. Johnson , B. Sanden , J. Kienzle , T. Wolf , S. Michell, Integrating object-oriented programming and protected objects in Ada 95, ACM Transactions on Programming Languages and Systems (TOPLAS), v.22 n.3, p.506-539, May 2000
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Kathryn Heninger Britton , R. Alan Parker , David L. Parnas, A procedure for designing abstract interfaces for device interface modules, Proceedings of the 5th international conference on Software engineering, p.195-204, March 09-12, 1981, San Diego, California, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
K. S. Shankar , C. S. Chandersekaran, Data flow, abstraction levels and specifications for communications switching systems, Proceedings of the 2nd international conference on Software engineering, p.585-591, October 13-15, 1976, San Francisco, California, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
R. Atkinson , A. Demers , C. Hauser , C. Jacobi , P. Kessler , M. Weiser, Experiences creating a portable cedar, ACM SIGPLAN Notices, v.24 n.7, p.322-329, July 1989
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Donald I. Good , Richard M. Cohen , Lawrence W. Hunter, A Report On The Development Of Gypsy, Proceedings of the 1978 annual conference, p.116-122, December 04-06, 1978, Washington, D.C., United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
A. J. Wellings , B. Johnson , B. Sanden , J. Kienzle , T. Wolf , S. Michell, Integrating object-oriented programming and protected objects in Ada 95, ACM SIGAda Ada Letters, v.XXII n.2, p.11-44, June 2002
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Joseph Bergin , Thomas L. Naps , Constance G. Bland , Stephen J. Hartley , Mark A. Holliday , Pamela B. Lawhead , John Lewis , Myles F. McNally , Christopher H. Nevison , Cheng Ng , George J. Pothering , Tommi Teräsvirta, Java resources for computer science instruction, Working Group reports of the 3rd annual SIGCSE/SIGCUE ITiCSE conference on Integrating technology into computer science education, p.14-34, December 1998, Dublin, Ireland
|
|
|
|
|
|
William E. Riddle , Jack C. Wileden , John H. Sayler , Alan R. Segal , Allan M. Stavely, Behavior modelling during software design, Proceedings of the 3rd international conference on Software engineering, p.13-22, May 10-12, 1978, Atlanta, Georgia, United States
|
|
|
Nan C. Schaller , Michael Berman , Judith Bishop , Paddy Nixon , Evelyn Rozanski , Peter Welch, Using Java in computer science education (panel), The supplemental proceedings of the conference on Integrating technology into computer science education: working group reports and supplemental proceedings, p.140-143, June 01-05, 1997, Uppsala, Sweden
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Guy Almes , Andrew Black , Carl Bunje , Douglas Wiebe, EDMAS: A locally distributed mail system, Proceedings of the 7th international conference on Software engineering, p.56-66, March 26-29, 1984, Orlando, Florida, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
John Plevyak , Xingbin Zhang , Andrew A. Chien, Obtaining sequential efficiency for concurrent object-oriented languages, Proceedings of the 22nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages, p.311-321, January 23-25, 1995, San Francisco, California, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Paul J. Leach , Paul H. Levine , James A. Hamilton , Bernard L. Stumpf, The file system of an integrated local network, Proceedings of the 1985 ACM thirteenth annual conference on Computer Science, p.309-324, March 1985, New Orleans, Louisiana, United States
|
|
|
Joseph Bergin , Thomas L. Naps , Constance G. Bland , Stephen J. Hartley , Mark A. Holliday , Pamela B. Lawhead , John Lewis , Myles F. McNally , Christopher H. Nevison , Cheng Ng , George J. Pothering , Tommi Teräsvirta, Java resources for computer science instruction, ACM SIGCUE Outlook, v.26 n.4, p.14-34, Oct. 1998
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
L. Cardelli , J. Donahue , M. Jordan , B. Kalsow , G. Nelson, The Modula–3 type system, Proceedings of the 16th ACM SIGPLAN-SIGACT symposium on Principles of programming languages, p.202-212, January 11-13, 1989, Austin, Texas, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
David J. Taylor , Thomas Kunz , James P. Black, Achieving target-system independence in event visualisation, Proceedings of the 1995 conference of the Centre for Advanced Studies on Collaborative research, p.58, November 07-09, 1995, Toronto, Ontario, Canada
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
D. Comte , G. Durrieu , O. Gelly , A. Plas , J. C. Syre, Parallelism, control and synchronization expression in a single assignment language, ACM SIGPLAN Notices, v.13 n.1, p.25-33, January 1978
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Philippe Charles , Christian Grothoff , Vijay Saraswat , Christopher Donawa , Allan Kielstra , Kemal Ebcioglu , Christoph von Praun , Vivek Sarkar, X10: an object-oriented approach to non-uniform cluster computing, ACM SIGPLAN Notices, v.40 n.10, October 2005
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Dick Mays , Richard J. LeBlanc, Jr., The cyclefree methodology: a simple approach to building reliable, robust, real-time systems, Proceedings of the 24th International Conference on Software Engineering, May 19-25, 2002, Orlando, Florida
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
B. Alpern , C. R. Attanasio , J. J. Barton , M. G. Burke , P. Cheng , J.-D. Choi , A. Cocchi , S. J. Fink , D. Grove , M. Hind , S. F. Hummel , D. Lieber , V. Litvinov , M. F. Mergen , T. Ngo , J. R. Russell , V. Sarkar , M. J. Serrano , J. C. Shepherd , S. E. Smith , V. C. Sreedhar , H. Srinivasan , J. Whaley, The Jalapeño virtual machine, IBM Systems Journal, v.39 n.1, p.211-238, January 2000
|
|
|
|
|
|
S. S. Yau , R. C. Cheung , D. C. Cochrane, An approach to error-resistant software design, Proceedings of the 2nd international conference on Software engineering, p.429-436, October 13-15, 1976, San Francisco, California, United States
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Raoul Bhoedjang , Tim Ruhl , Rutger Hofman , Koen Langendoen , Henri Bal , Frans Kaashoek, Panda: a portable platform to support parallel programming languages, USENIX Systems on USENIX Experiences with Distributed and Multiprocessor Systems, p.11-11, September 22-23, 1993, San Diego, California
|
|
|
|
|
|
Bent Bruun Kristensen , Ole Lehrmann Madsen , Birger Møller-Pedersen, The when, why and why not of the BETA programming language, Proceedings of the third ACM SIGPLAN conference on History of programming languages, p.10-1-10-57, June 09-10, 2007, San Diego, California
|
|
|
|
|
|
Andrew P. Black , Norman C. Hutchinson , Eric Jul , Henry M. Levy, The development of the Emerald programming language, Proceedings of the third ACM SIGPLAN conference on History of programming languages, p.11-1-11-51, June 09-10, 2007, San Diego, California
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Jean D. Ichbiah , Bernd Krieg-Brueckner , Brian A. Wichmann , John G. P. Barnes , Olivier Roubine , Jean-Claude Heliard, Rationale for the design of the Ada programming language, ACM SIGPLAN Notices, v.14 n.6b, p.1-261, June 1979
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
William T. Overman , Stephen D. Crocker , Vittal Kini, A multiprocessor description language, Proceedings of the May 4-7, 1981, national computer conference, May 04-07, 1981, Chicago, Illinois
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Luis Ceze , Christoph von Praun , Călin Caşcaval , Pablo Montesinos , Josep Torrellas, Concurrency control with data coloring, Proceedings of the 2008 ACM SIGPLAN workshop on Memory systems performance and correctness: held in conjunction with the Thirteenth International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS '08), March 02-02, 2008, Seattle, Washington
|
|
|
|
|
|
|
|
|
|
|
|
Kevin Klues , Vlado Handziski , Chenyang Lu , Adam Wolisz , David Culler , David Gay , Philip Levis, Integrating concurrency control and energy management in device drivers, ACM SIGOPS Operating Systems Review, v.41 n.6, December 2007
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|