Skip to main content

Architectural Support for Software in the MONADS III Computer Design

  • Conference paper
GI-12. Jahrestagung

Part of the book series: Informatik-Fachberichte ((INFORMATIK,volume 57))

Abstract

The MONADS Project was established in 1976 at Monash University in Melbourne, Australia, with the main aim of investigating improved techniques for designing and developing large software systems. In the first stage of investigation a new operating ’ [11, 19, 45, 49, 52] was developed for the MONADS I computer, which is a Hewlett Packard 2100A ’ locally modified to support a virtual memory and to provide additional addressing modes and registers, including hardware-assisted process stacks [12, 58]. As the operating ’ design progressed it was realised that even the modified hardware was unsuitable for implementing efficiently the software ideas which we had in mind, although we were partly able to overcome the deficiencies by developing a kernel which presented the main ’ with a more idealised view of the hardware [50, 52], Subsequent investigations undertaken by the MONADS team have concentrated on the design and development of new computer hardware more amenable to our software aims. First a pilot project was undertaken in which a new architecture was implemented by rather more drastic modifications to a second HP2100A, known as MONADS II [2, 3]. But although MONADS II in principle demonstrates the feasibility of our ideas, certain deficiencies in the basic HP2100A design (e. g. the basic instruction set and the size of address spaces) could not be overcome. For this reason the design and development of a completely new computer ’, MONADS III [24–29, 55] commenced in 1981. This paper briefly describes the software ideas behind the MONADS III design and then sketches the main features of its architecture.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 54.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 69.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Abramson, D. “Hardware Management of a Large Virtual Memory”, Proc. 4th Australian Computer Science Conference, Brisbane 1981 (Australian Computer Science Communications 3, 1, pp 1–13 ).

    Google Scholar 

  2. Abramson, D. “Hardware for Capability Based Addressing”, Proc. 9th Australian Computer Conference, Hobart, 1982.

    Google Scholar 

  3. Abramson, D., Ph.D. Thesis, Department of Computer Science, Monash University (in preparation).

    Google Scholar 

  4. Bishop, B. “Computer Systems with a Very Large Address Space and Garbage Collection”, Ph.D. Thesis, Massachusetts Institute of Technology, 1977 (MIT LCS TR-178).

    Google Scholar 

  5. Brinch-Hansen, P. “The Programming Language Concurrent Pascal”, IEEE Transactions on Software Engineering, 1, 2, 1975, pp 199–207.

    Google Scholar 

  6. Dijkstra, E.W. “Cooperating Sequential Processes”, in “Programming Languages”, ed. F. Genuys, Academic Press, 1968, pp 43–112.

    Google Scholar 

  7. Edwards, D.B.G., Knowles, A.E. and Woods, J.V. “The MU6-G: A New Design to Achieve Mainframe Performance from a Mini Sized Computer”, Proc. 7th Annual Symposium on Computer Architecture, 1980, pp 161–167.

    Google Scholar 

  8. England, D.M. “Architectural Features of ’ 250”, Infotech State of the Art Report 14, Operating Systems, 1972, pp 395–426.

    Google Scholar 

  9. Fabry, R.S. “Capability Based Addressing”, Comm. ACM, 17, 7, 1974, pp 403–412.

    Article  Google Scholar 

  10. Gehringer, E.F., Keedy, J.L. and Thompson, J.V. “Dynamic Data Structure Management in MONADS III”, Proc. 5th Australian Computer Science Conference, pp 68–78, Perth 1982.

    Google Scholar 

  11. Georgiades, A., Richards, I. and Keedy, J.L. “A File ’ for the MONADS Operating ”, Proc. 8th Australian Computer Conference, pp 547–558, Canberra 1978.

    Google Scholar 

  12. Hagan, R.A. and Wallace, C.S. “A Virtual Memory ’ for the Hewlett Packard 2100A”, ACM Computer Architecture News, 6, 5, 1979, pp 5–13.

    Article  Google Scholar 

  13. Hoare, C.A.R., “Monitors: An Operating ’ Structuring Concept”, Comm. ACM, 17, 10, pp 549–557.

    Google Scholar 

  14. Houdek, M.E. and Mitchell, G.R. “Translating a Large Virtual Address”, IBM ’/ 38 Technical Developments, 1978, pp 19–21.

    Google Scholar 

  15. Intel Corporation “Introduction to the iAPX432 Architecture”, Intel Corporation Manual, Order No. 171821-001, 1981.

    Google Scholar 

  16. Jones, A.K. “The Object Model, a Conceptual Tool for Structuring Software”, in Bayer“Operating Systems, An Advanced Course”, Lecture Notes in Computer Science, 60, Springer Verlag, Berlin, 1978, pp 7–16.

    Google Scholar 

  17. Keedy, J.L. “An Outline of the ICL 2900 Series ’ Architecture”, Australian Computer Journal, 9, 2, 1977, pp 53–62; reprinted in “Computer Structures: Principles and Examples” ed. D.P. Siewiorek, C.G.. Bell and A. Newell, McGraw- Hill 1981, pp 251–259.

    Google Scholar 

  18. Keedy, J.L. “On Structuring Operating Systems with Monitors”, Australian Computer Journal, 10, 1, 1978, pp 23–27; reprinted in ACM Operating Systems Review, 13, 1, 1979, pp 5–9.

    Google Scholar 

  19. Keedy, J.L. “The MONADS Operating ”, Proc. of 8th Australian Computer Conference, pp. 903–910, Canberra 1978.

    Google Scholar 

  20. Keedy, J.L. “On the Exportation of Variables”, Australian Computer Journal 12, 1, 1980, pp 23–27.

    Google Scholar 

  21. Keedy, J.L. “Paging and Small Segments: A Memory Management Model”, Proc. IFIP-80, 8th World Computer Congress, pp 337–342, Melbourne 1980.

    Google Scholar 

  22. Keedy, J.L. “The MONADS View of Software Modules”, Proc. 9th Australian Computer Conference, Hobart 1982.

    Google Scholar 

  23. Keedy, J.L. “A Comparison of Processes Structuring Models”, MONADS Report No. 4, Monash University.

    Google Scholar 

  24. Keedy, J.L. “Inter-Module Binding and Calling in the MONADS Systems”(in preparation)

    Google Scholar 

  25. Keedy, J.L. “Module Capability Management in the MONADS Systems” (in preparation)

    Google Scholar 

  26. Keedy, J.L. “Module Creation in the MONADS ’” (in preparation)

    Google Scholar 

  27. Keedy, J.L. “A Stack Model and its Implementation in the MONADS Systems” (in preparation)

    Google Scholar 

  28. Keedy, J.L. “The Internal Structure of Modules in the MONADS Systems” (in preparation)

    Google Scholar 

  29. Keedy, J.L. “Data Abstractions, Opened Files and Resource Control in the MONADS Architecture” (in preparation).

    Google Scholar 

  30. Keedy, J.L. and Ramamohanarao, K. “A Job Management Model for In=Process Systems” MONADS Report No. 7, Monash University.

    Google Scholar 

  31. Keedy, J.L. and Richards, I. “A Software Engineering View of Files”, Australian Computer Journal, 14, 2, 1982, pp. 56–61.

    Google Scholar 

  32. Keedy, J.L. and Rosenberg, J. “Information Hiding - A Key to Successful Software Engineering”, Proc. Conference on Computers and Engineering 1981, Institution of Engineers, Australia, Publication No. 81 /8, pp 1–5, 1981.

    Google Scholar 

  33. Keedy, J.L., Rosenberg, J. and Ramamohanarao, K. “On Implementing Semaphores with Sets”, The Computer Journal, 22, 2, 1979, pp 146–150.

    Article  MATH  Google Scholar 

  34. Keedy, J.L., Rosenberg, J. and Ramamohanarao, K. “On Synchronising Readers and Writers with Semaphores”, The Computer Journal, 25, 1, 1982, pp. 121–125.

    Google Scholar 

  35. Kilburn, T., Edwards, D.B.E., Lanigan, M.J. and Sumner, F.H. “One Level Storage ”, I.R. E. Transactions on Electronic Computation, EC-11, 2, 1962, pp. 223–234.

    Google Scholar 

  36. Lampson, B. and Sturgis, H. “Reflections on Operating ’ Design”, Comm. ACM, 19, 5, 1976, pp 251–265.

    Article  Google Scholar 

  37. Lauer, H.C. and Needham, R.M. “On the Duality of Operating ’ Structures”, ACM Operating Systems Review, 13, 2, 1979, pp. 13–19.

    Article  Google Scholar 

  38. Liskov, B., Snyder, A., Atkinson, R. and Schaffert, C. “Abstraction Mechanisms in CLU”, Comm. ACM, 20, 8, 1977, pp 564–576.

    Article  MATH  Google Scholar 

  39. Naur, P., Randell, B. and Buxton, J.N. “Software Engineering Concepts and Techniques”, Petrocelli/Charter, New York, 1976.

    Google Scholar 

  40. Organick, E.I. “The Multics ’: An Examination of its Structure”, MIT Press, Cambridge, Mass., 1972.

    Google Scholar 

  41. Organick, E.I. “Computer Systems Organization, the B5700/6700 Series”, Academic Press, New York, 1973.

    Google Scholar 

  42. Parnas, D.L. “Information Distribution Aspects of Design Methodology”, Proceedings 5th World Computer Congress, IFIP-71, pp. 339–344.

    Google Scholar 

  43. Parnas, D.L. “On the Criteria to be Used in Decomposing Systems into Modules”, Comm. ACM, 15, 12, pp 1053–1058.

    Google Scholar 

  44. Ramamohanarao, K. “A New Model for Job Management Systems”, Ph.D. Thesis, Monash University, 1980.

    Google Scholar 

  45. Ramamohanarao, J. and Keedy, J.L. “Job Management in the MONADS Operating ” Proc. 8th Australian Computer Conference, pp. 1476–1488, Canberra 1978.

    Google Scholar 

  46. Ramamohanarao, J. and Sacks-Davis, R. “Hardware Address Translation for Machines with a Large Virtual Memory”, Information Processing Letters, 13, 1, 1981, pp. 23–29.

    Article  Google Scholar 

  47. Randell, B. “A Note on Storage Fragmentation and Program Segmentation”, Comm. ACM, 12, 7, 1969, pp. 365–369.

    Article  Google Scholar 

  48. Richards, I. “The Organisation and Protection of Information in a Computer Utility”, Ph.D. Thesis, Monash University, 1981.

    Google Scholar 

  49. Richards, I. and Keedy, J.L. “Subsystem Management in the MONADS Operating ”, Proc. 8th Australian Computer Conference, pp. 1520–1529, Canberra, 1978.

    Google Scholar 

  50. Rosenberg, J. “The Concept of a Hardware Kernel and its Implementation in a Minicomputer”, Ph.D. Thesis, Dept. of Computer Science, Monash University, 1979.

    Google Scholar 

  51. Rosenberg, J. “MONADS Series III Instruction Set”, MONADS Series III Technical Report No. 1, Version 1. 0, June 1981.

    Google Scholar 

  52. Rosenberg, J. and Keedy, J.L. “The MONADS Hardware Kernel”, Proc. 8th Australian Computer Conference, pp. 1542–1552, Canberra, 1978.

    Google Scholar 

  53. Rosenberg, J. and Keedy, J.L. “Information Hiding - A Case Study”, Proc. Conference on Computers in Engineering, 1981, Institution of Engineers, Australia, Publication No. 81 /8, pp. 6–9, 1981.

    Google Scholar 

  54. Rosenberg, J. and Keedy, J.L. “Software Management of a Large Virtual Memory”, Proc. 4th Australian Computer Science Conference, Brisbane, 1981 (Australian Computer Science Communications, 3, 1, pp. 173–181 ).

    Google Scholar 

  55. Rosenberg, J., Rowe, D.M. and Keedy, J.L. “An Overview of the MONADS Series III Architecture”, Proc. 5th Australian Computer Science Conference, pp. 58–67, Perth 1982.

    Google Scholar 

  56. Spier, M.J. “A Model Implementation of Protective Domains”, Int. Journal of Computer and Information Sciences, 2, 3, 1973, pp 201–229.

    Article  Google Scholar 

  57. Thomson, J.V., Ph.D. Thesis, Department of Computer Science, Monash University, (in preparation)

    Google Scholar 

  58. Wallace, C.S. Memory and Addressing Extensions to a HP2100A, Proc. 8th Australian Computer Conference, pp. 1796–1811, Canberra 1978.

    Google Scholar 

  59. Wilkes, M.V. and Needham, R.H. “The Cambridge CAP Computer and its Operating ”, North Holland, Oxford, 1979.

    Google Scholar 

  60. Wulf, E., Cohen, E., Corwin, W., Jones, A., Levin, R., Pierson, C. and Pollack, F. “HYDRA: The Kernel of a Multiprocessor Operating ”, Comm. ACM, 17, 3, 1974, pp. 336–345.

    Google Scholar 

  61. Wulf, W., London, R. and Shaw, M. “An Introduction to the Construction and Verification of Alphard Programs”, IEEE Transactions on Software Engineering, SE-2, 4, 1976, pp. 253–264.

    Article  Google Scholar 

  62. Wulf, W.A., Levin, R. and Harbison, S.P. 1’ HYDRA/C. mmp: An Experimental Computer, McGraw-Hill, New York, 1981.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1982 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Keedy, J.L., Rosenberg, J. (1982). Architectural Support for Software in the MONADS III Computer Design. In: Nehmer, J. (eds) GI-12. Jahrestagung. Informatik-Fachberichte, vol 57. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-68603-0_5

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-68603-0_5

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-11609-7

  • Online ISBN: 978-3-642-68603-0

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics