skip to main content
article
Free Access

The architecture of a memory management unit for object-oriented systems

Authors Info & Claims
Published:01 July 1991Publication History
Skip Abstract Section

Abstract

We describe the rationale for the design and the architecture of a Memory Management Unit (MMU) for object-oriented systems. The CAMOES1 MMU supports arbitrary size protected objects mapped on a single virtual address space. Support for object invocations is provided in the form of an operations cache closely coupled with the addressing hardware. The MMU only executes in hardware those functions crucial for performance; other functions and, namely, the management of internal buffers and associative memories, and object management policies, are handled in software. This functional organisation is suitable for current generation processors based on RISC principles and is able to support open multi-lingual environments.

References

  1. {1} A. Black, N. Hutchinson, E. Jull, and H. Levy. Object Structure in the Emerald System, OOPSLA 86 Proc., Sep. 1986, pp. 78-86. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. {2} J. Briot, and A. Yonezawa. Inheritance and Synchronization in Concurrent OOP, ECOOP 87 Proc., June 1987, pp. 32-40. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. {3} The Descriptor - a Definition of the B5000 Information Processing System, Burroughs Corp., 1961.Google ScholarGoogle Scholar
  4. {4} A. Chang, and M. Mergen. 801 Storage: Architecture and Programming, ACM Trans. Comp. Sys., Vol. 6, No. 1, Feb. 1988, pp. 28-50. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. {5} D. Cheriton. The Unified Management of Memory in the V Distributed System, Report No. STAN-CS-88-1192, Stanford University, Aug. 1988.Google ScholarGoogle Scholar
  6. {6} R. Colwell, E. Gehringer, and E. Jensen. Performance Effects of Architectural Complexity in the Intel 432, ACM Trans. Comp. Sys., Vol. 6, No. 3, Aug. 1988, pp. 296-339. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. {7} P. Corsini, and L. Lopriori. The Architecture of a Capability-based Microprocessor System, IEEE Micro, Jun. 1987, pp. 35-51.Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. {8} A. Czerniakiewicz. BiiN Solutions to Ada Development Issues, BiiN, reprinted from Proc. Ada Expo '88 Conference & Exposition.Google ScholarGoogle Scholar
  9. {9} W. Dally, and J. Kajiya. An Object Oriented Architecture, Proc. 12th Int. Conf. Comp. Arch., June 1985, pp. 154-161. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. {10} L. Deutsch. The Dorado Smalltalk-80 Implementation: Hardware Architecture's Impact on Software Architecture, in Smalltalk-80: Bits of History, Words of Advice. Addison-Wesley, 1983, pp. 113-126.Google ScholarGoogle Scholar
  11. {11} D. England. Capability Concept Mechanism and Structure in System 250, Proc. Int. Work. Protection in Operating Sys., Aug. 1974.Google ScholarGoogle Scholar
  12. {12} D. Harland, and B. Beloff. Microcoding An Object-Oriented Instruction Set, Comp. Arch. News, Vol. 14, No. 5, Dec. 1986, pp. 3-12. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. {13} IBM System/38 Technical Developments. IBM, 1980.Google ScholarGoogle Scholar
  14. {14} Y. Ishikawa, and M. Tokoro. The Design of an Object Oriented Architecture, Proc. 11th Int. Symp. Comp. Arch., June 1984, pp. 178-187. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. {15} M. Johnson. System Considerations in the Design of the AM29000, IEEE Micro, Aug. 1987, pp. 28-41.Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. {16} J. Kaiser. MUTABOR, A Coprocessor Supporting Memory Management in an Object-Oriented Architecture, IEEE Micro, Oct. 1988, pp. 30-46. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. {17} G. Kane. MIPS R2000 RISC Architecture. Prentice Hall, Englewood Cliffs, NJ, 1988.Google ScholarGoogle Scholar
  18. {18} D. Lewis, D. Galloway, R. Francis, and B. Thompson. Swamp: A Fast Processor for Smalltalk-80, OOPSLA 86 Proc., Sep. 1986, pp. 131-139. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. {19} H. Lieberman. Using Prototypical Objects to Implement Shared Behaviour in Object Oriented Systems, OOPSLA 86 Proc., Sep. 1986, pp. 214-223. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. {20} M. Mahon, R. Lee, T. Miller, J. Huck, and W. Bryg. Hewlett-Packard Precision Architecture: The Processor, Hewlett-Packard Journal, Vol. 37, No. 8, Aug. 1988, pp. 4-21.Google ScholarGoogle Scholar
  21. {21} J. A. Marques, and P. Guedes. Extending the Operating System to Support an Object-Oriented Environment, OOPSLA 89 Proc., Oct. 1989, pp. 113-122. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. {22} T. Nojiri, S. Kawasaki, and K. Sakoda. Microprogrammable Processor for Object-Oriented Architecture, Proc. 13th Int. Symp. Comp. Arch., June 1986, pp. 74-81. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. {23} E. Organick. A Programmer's View of the Intel 432 System. McGraw-Hill, 1983. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. {24} D. Pitts, and P. Dasgupta. Object Memory a Management in the Clouds Kernel, it Proc. 8th Int. Conf. Dist. Comp., June 1988, pp. 10-17.Google ScholarGoogle Scholar
  25. {25} A. Snyder. Encapsulation and Inheritance in Object-Oriented Programming Languages, OOPSLA 86 Proc., Sep. 1986, pp. 38-45. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. {26} J. Stamos. Static Grouping of Small Objects to Enhance Performance of a Paged Virtual Memory, ACM Trans. Comp. Sys., Vol. 2, No. 2, May 1984, pp. 155-180. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. {27} J. Stockton. The M68451 Memory Management Unit, Electronic Engineering, May 1982, pp. 59-73.Google ScholarGoogle Scholar
  28. {28} D. Ungar, R. Blau, P. Foley, D. Samples, and D. Patterson. Architecture of SOAR: Smalltalk on a RISC, Proc. 11th Int. Symp. Comp. Arch., June 1984, pp. 188-197. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. {29} I. Williams, M. Wolczko, and T. Hopkins. Dynamic Grouping of Objects in an Object-Oriented Virtual Memory Hierarchy, ECOOP 87 Proc., June 1987, pp. 87-96. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. {30} W. Wulf, E. Cohen, W. Corwin, A. Jones, R. Levin, C. Pierson, and F. Pollack. Hydra: The Kernel of a Multiprocessor Operating System, Comm. ACM, Vol. 17, No. 6, June 1974. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. {31} M. Young et al., The Duality of Memory and Communication in the Implementation of a Multiprocessor Operating System, Proc. 11th Symp. on Op. Sys. Principles, ACM, Nov. 1987. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. The architecture of a memory management unit for object-oriented systems

                  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

                  • Published in

                    cover image ACM SIGARCH Computer Architecture News
                    ACM SIGARCH Computer Architecture News  Volume 19, Issue 4
                    June 1991
                    184 pages
                    ISSN:0163-5964
                    DOI:10.1145/122576
                    Issue’s Table of Contents

                    Copyright © 1991 Authors

                    Publisher

                    Association for Computing Machinery

                    New York, NY, United States

                    Publication History

                    • Published: 1 July 1991

                    Check for updates

                    Qualifiers

                    • article

                  PDF Format

                  View or Download as a PDF file.

                  PDF

                  eReader

                  View online with eReader.

                  eReader