skip to main content
article
Free Access

On structuring operating systems with monitors

Published:01 January 1979Publication History
Skip Abstract Section

Abstract

This paper considers whether Hoare's monitor proposal for structuring operating systems could usefully be applied in the design of substantial operating systems for medium or large computers. Attention is drawn to problems which might arise in terms of the structural form of monitors, the approach to resource scheduling, and the monitor approach to synekrordsation and process scheduling. An appended note considers the related technique proposed by Wirth in the Modula language.

References

  1. BURROUGHS (1970), Burroughs B6700 Master Control Program Information Manual.]]Google ScholarGoogle Scholar
  2. BRINCH HANSEN, P. (1972), "Structured Multiprogramming", Comm. A.C.M., Vol. 15, No. 7, p 574.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. BRINCH HANSEN, P. (1973), "Operating System Principles", Prentice-Hall, Englewood Cliffs, N.J., 1973.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. BRINCH HANSEN, P. (1975), "The Purpose of Concurrent Pascal", Proceedings of the International Conference on Reliable Software, April, 1975, Los Angeles, in: A.C.M. Sigplan Notices, Vol. 10, No. 6, p 305.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. BRINCH HANSEN, P. (1976), "The Solo Operating System", Software -- Practice and Experience, Vol. 6, p 141.]]Google ScholarGoogle ScholarCross RefCross Ref
  6. DAHL, O.J., MYHRHAUG, B. and NYGAARD, K. (1968), "The Simula 67 Common Base Language", Norwegian Computer Centre, Oslo, 1968.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. DENNING, P.J. (1976), "Fault Tolerant Operating Systems", ACM Computing Surveys, Vol. 8, No. 4, p 359.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. DIJKSTRA, E.W. (1968a), "Cooperating Sequential Processes" in: Languages, ed. F. Genuys, p 43, Academic Press, London.]]Google ScholarGoogle Scholar
  9. DIJKSTRA, E.W. (1968b), "The Structure of the 'THE' -- Multiprogramming System", Comm. A.C.M., Vol. 11, No. 3, p 341.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. HOARE, C.A.R. (1972a), "'Operating Systems: Their Purpose, Objectives, Functions and Scope", in: Operating System Techniques, eds. C.A.R. Hoare and R.H. Perrott, p 11, Academic Press, London.]]Google ScholarGoogle Scholar
  11. HOARE, C.A.R. (1972b), "Proof of Correctness of Data Representations", Acta Informatica, Vol. 1, p 271.]]Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. HOARE, C.A.R. (1974), "Monitors: An Operating System Structuring Concept", Comm. A.C.M., Vol. 17, No. 10, p 549. p 549.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. IBM (1967), "Operating System/360 Concepts and Facilities", in: Programming Systems and Languages, ed. S. Rosen, p 598, McGraw-Hill Book Company, New York.]]Google ScholarGoogle Scholar
  14. JENSEN, K. and WIRTH, N. (1975), "PASCAL -- User Manual and Report", Springer-Verlag, 2nd Ed., New York, 1975.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. JOHNSON,, R.T. and MORRIS, J.B. (1976), "Abstract Data Types in the MODEL Programming Language". Proceedings of the Conference on Data: Abstraction, Definition and Structure, March, 1976, Salt Lake City, in: A.C.M. Sigplan Notices, Vol. 11, 1976, Special Issue, p 36.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. KEEDY, J.L. (1976), "The Management and Technological Approach to the Design of System B", Proceedings o f the 7th Australian Computer Conference, Perth, 1976, Vol. 2, p 997.]]Google ScholarGoogle Scholar
  17. KEEDY, J.L. (1977), "An Outline of the ICL2900 Series System Architecture", Australian Computer Journal, Vol. 9, No. 2, p 53.]]Google ScholarGoogle Scholar
  18. KEEDY, J.L., RAMAMOHANARAO, K. and ROSENBERG, J. (1977), "On Implementing Semaphores with Sets", Dept of Computer Science, Monash University, Clayton, Vic., 3168.]]Google ScholarGoogle Scholar
  19. LANDY, B. (1971), "Development of Scheduling Strategies in the TITAN Operating System", Software -- Practice and Experience, Vol. 1, p 279.]]Google ScholarGoogle ScholarCross RefCross Ref
  20. LISKOV, B. and ZILLES, S. (1974), "Programming with Abstract Data Types", Proceedings of the A.C.M. Sigplan Conference on Very High Level Languages in: A.C.M. Sitgplan Notices, Vol. 9, No. 4, p 50.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. LISTER, A.M. and MAYNARD, K.J. (1976), "An Implementation ot Monitors", Software -- Practice and Experience, Vol. 6, p 377.]]Google ScholarGoogle ScholarCross RefCross Ref
  22. ORGANICK, E.I. (1972), "The Multics System: An Examination of its Structure", MIT Press, Cambridge, Mass. and London, England.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. PARNAS, D.L. (1971): "Information Distribution Aspects of Design Methodology", IFIP Congress 71, Booklet TA-3, p 26.]]Google ScholarGoogle Scholar
  24. PARNAS, D.L. (1972a), "A Technique for Software Module Specification with Examples", Comm. A.C.M., Vol. 15, No. 5, p 330.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. PARNAS, D.L. (1972b), "On the Criteria to be Used in Decomposing Systems into Modules", Comm. A.C.M., Vol. 15, No. 12, p 1053.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. PARNAS, D.L. (1975a), "The Influence of Software Structure on Reliability", Proceedings of the International Conference on Reliable Software, April, 1975, Los Angeles, in: A.C.M. Sigplan Notices, Vol. 10, No. 6, p 358.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. PARNAS, D.L. (1975b), "Use of the Concept of Transparency in the Design of Hierarchially Structured Systems", Comm. A.C.M., Vol. 18, No. 7, p 401.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. SAXENA, A.R. and BREDT, T.H. (1975), "A Structured Specification of a Hierarchial Operating System", Proceedings of the International Conference on Reliable Software, April 1975. Los Angeles. in: A.C.M. Sigplan Notices, Vol. 10, No. 6, p310.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. SHRIVASTAVA, S.K. (1976), "Systematic Programming of Scheduling Algorithms", Software -- Practice and Experience, Vol. 6, p 357.]]Google ScholarGoogle ScholarCross RefCross Ref
  30. SILBERSCHATZ, A., KIEBURTZ, R.B. and BERNSTEIN, A.J. (1977), "Extending Concurrent Pascal to Allow Dynamic Resource Management", IEEE Transactions on Software Engineering, Vol. SE-3. No. 3, p 210.]] Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. WILSON, R. (1976), "The TITAN Supervisor" in Studies in Operating Systems by R.M. McKeag and R. Wilson, ed. D.H.R. Hustable, p 185, Academic Press, London.]]Google ScholarGoogle Scholar
  32. WIRTH, N. (1977a), "Modula: A Language for Modular Multiprogramming", Software -- Practice and Experience, Vol. 7, p 3.]]Google ScholarGoogle ScholarCross RefCross Ref
  33. WIRTH, N. (1977b), "The Use of Modula", Software -- Practice and Experience, Vol. 7,, p 37.]]Google ScholarGoogle ScholarCross RefCross Ref
  34. WIRTH, N. (1977c), "Design and Implementation of Modula", Software -- Practice and Experience, Vol. 7, p 67.]]Google ScholarGoogle ScholarCross RefCross Ref
  35. WULF, W.A., LONDON, R.L. and SHAW, M. (1976), "Abstraction and Verification in Alphard: Introduction to Language and Methodology", Dept of Computer Science, Carnegie-Mellon University, June, 1976.]]Google ScholarGoogle ScholarCross RefCross Ref

Recommendations

Comments

Login options

Check if you have access through your login credentials or your institution to get full access on this article.

Sign in

Full Access

PDF Format

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader