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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
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 ).
Abramson, D. “Hardware for Capability Based Addressing”, Proc. 9th Australian Computer Conference, Hobart, 1982.
Abramson, D., Ph.D. Thesis, Department of Computer Science, Monash University (in preparation).
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).
Brinch-Hansen, P. “The Programming Language Concurrent Pascal”, IEEE Transactions on Software Engineering, 1, 2, 1975, pp 199–207.
Dijkstra, E.W. “Cooperating Sequential Processes”, in “Programming Languages”, ed. F. Genuys, Academic Press, 1968, pp 43–112.
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.
England, D.M. “Architectural Features of ’ 250”, Infotech State of the Art Report 14, Operating Systems, 1972, pp 395–426.
Fabry, R.S. “Capability Based Addressing”, Comm. ACM, 17, 7, 1974, pp 403–412.
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.
Georgiades, A., Richards, I. and Keedy, J.L. “A File ’ for the MONADS Operating ”, Proc. 8th Australian Computer Conference, pp 547–558, Canberra 1978.
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.
Hoare, C.A.R., “Monitors: An Operating ’ Structuring Concept”, Comm. ACM, 17, 10, pp 549–557.
Houdek, M.E. and Mitchell, G.R. “Translating a Large Virtual Address”, IBM ’/ 38 Technical Developments, 1978, pp 19–21.
Intel Corporation “Introduction to the iAPX432 Architecture”, Intel Corporation Manual, Order No. 171821-001, 1981.
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.
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.
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.
Keedy, J.L. “The MONADS Operating ”, Proc. of 8th Australian Computer Conference, pp. 903–910, Canberra 1978.
Keedy, J.L. “On the Exportation of Variables”, Australian Computer Journal 12, 1, 1980, pp 23–27.
Keedy, J.L. “Paging and Small Segments: A Memory Management Model”, Proc. IFIP-80, 8th World Computer Congress, pp 337–342, Melbourne 1980.
Keedy, J.L. “The MONADS View of Software Modules”, Proc. 9th Australian Computer Conference, Hobart 1982.
Keedy, J.L. “A Comparison of Processes Structuring Models”, MONADS Report No. 4, Monash University.
Keedy, J.L. “Inter-Module Binding and Calling in the MONADS Systems”(in preparation)
Keedy, J.L. “Module Capability Management in the MONADS Systems” (in preparation)
Keedy, J.L. “Module Creation in the MONADS ’” (in preparation)
Keedy, J.L. “A Stack Model and its Implementation in the MONADS Systems” (in preparation)
Keedy, J.L. “The Internal Structure of Modules in the MONADS Systems” (in preparation)
Keedy, J.L. “Data Abstractions, Opened Files and Resource Control in the MONADS Architecture” (in preparation).
Keedy, J.L. and Ramamohanarao, K. “A Job Management Model for In=Process Systems” MONADS Report No. 7, Monash University.
Keedy, J.L. and Richards, I. “A Software Engineering View of Files”, Australian Computer Journal, 14, 2, 1982, pp. 56–61.
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.
Keedy, J.L., Rosenberg, J. and Ramamohanarao, K. “On Implementing Semaphores with Sets”, The Computer Journal, 22, 2, 1979, pp 146–150.
Keedy, J.L., Rosenberg, J. and Ramamohanarao, K. “On Synchronising Readers and Writers with Semaphores”, The Computer Journal, 25, 1, 1982, pp. 121–125.
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.
Lampson, B. and Sturgis, H. “Reflections on Operating ’ Design”, Comm. ACM, 19, 5, 1976, pp 251–265.
Lauer, H.C. and Needham, R.M. “On the Duality of Operating ’ Structures”, ACM Operating Systems Review, 13, 2, 1979, pp. 13–19.
Liskov, B., Snyder, A., Atkinson, R. and Schaffert, C. “Abstraction Mechanisms in CLU”, Comm. ACM, 20, 8, 1977, pp 564–576.
Naur, P., Randell, B. and Buxton, J.N. “Software Engineering Concepts and Techniques”, Petrocelli/Charter, New York, 1976.
Organick, E.I. “The Multics ’: An Examination of its Structure”, MIT Press, Cambridge, Mass., 1972.
Organick, E.I. “Computer Systems Organization, the B5700/6700 Series”, Academic Press, New York, 1973.
Parnas, D.L. “Information Distribution Aspects of Design Methodology”, Proceedings 5th World Computer Congress, IFIP-71, pp. 339–344.
Parnas, D.L. “On the Criteria to be Used in Decomposing Systems into Modules”, Comm. ACM, 15, 12, pp 1053–1058.
Ramamohanarao, K. “A New Model for Job Management Systems”, Ph.D. Thesis, Monash University, 1980.
Ramamohanarao, J. and Keedy, J.L. “Job Management in the MONADS Operating ” Proc. 8th Australian Computer Conference, pp. 1476–1488, Canberra 1978.
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.
Randell, B. “A Note on Storage Fragmentation and Program Segmentation”, Comm. ACM, 12, 7, 1969, pp. 365–369.
Richards, I. “The Organisation and Protection of Information in a Computer Utility”, Ph.D. Thesis, Monash University, 1981.
Richards, I. and Keedy, J.L. “Subsystem Management in the MONADS Operating ”, Proc. 8th Australian Computer Conference, pp. 1520–1529, Canberra, 1978.
Rosenberg, J. “The Concept of a Hardware Kernel and its Implementation in a Minicomputer”, Ph.D. Thesis, Dept. of Computer Science, Monash University, 1979.
Rosenberg, J. “MONADS Series III Instruction Set”, MONADS Series III Technical Report No. 1, Version 1. 0, June 1981.
Rosenberg, J. and Keedy, J.L. “The MONADS Hardware Kernel”, Proc. 8th Australian Computer Conference, pp. 1542–1552, Canberra, 1978.
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.
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 ).
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.
Spier, M.J. “A Model Implementation of Protective Domains”, Int. Journal of Computer and Information Sciences, 2, 3, 1973, pp 201–229.
Thomson, J.V., Ph.D. Thesis, Department of Computer Science, Monash University, (in preparation)
Wallace, C.S. Memory and Addressing Extensions to a HP2100A, Proc. 8th Australian Computer Conference, pp. 1796–1811, Canberra 1978.
Wilkes, M.V. and Needham, R.H. “The Cambridge CAP Computer and its Operating ”, North Holland, Oxford, 1979.
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.
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.
Wulf, W.A., Levin, R. and Harbison, S.P. 1’ HYDRA/C. mmp: An Experimental Computer, McGraw-Hill, New York, 1981.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights 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