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.
- {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 ScholarDigital Library
- {2} J. Briot, and A. Yonezawa. Inheritance and Synchronization in Concurrent OOP, ECOOP 87 Proc., June 1987, pp. 32-40. Google ScholarDigital Library
- {3} The Descriptor - a Definition of the B5000 Information Processing System, Burroughs Corp., 1961.Google Scholar
- {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 ScholarDigital Library
- {5} D. Cheriton. The Unified Management of Memory in the V Distributed System, Report No. STAN-CS-88-1192, Stanford University, Aug. 1988.Google Scholar
- {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 ScholarDigital Library
- {7} P. Corsini, and L. Lopriori. The Architecture of a Capability-based Microprocessor System, IEEE Micro, Jun. 1987, pp. 35-51.Google ScholarDigital Library
- {8} A. Czerniakiewicz. BiiN Solutions to Ada Development Issues, BiiN, reprinted from Proc. Ada Expo '88 Conference & Exposition.Google Scholar
- {9} W. Dally, and J. Kajiya. An Object Oriented Architecture, Proc. 12th Int. Conf. Comp. Arch., June 1985, pp. 154-161. Google ScholarDigital Library
- {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 Scholar
- {11} D. England. Capability Concept Mechanism and Structure in System 250, Proc. Int. Work. Protection in Operating Sys., Aug. 1974.Google Scholar
- {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 ScholarDigital Library
- {13} IBM System/38 Technical Developments. IBM, 1980.Google Scholar
- {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 ScholarDigital Library
- {15} M. Johnson. System Considerations in the Design of the AM29000, IEEE Micro, Aug. 1987, pp. 28-41.Google ScholarDigital Library
- {16} J. Kaiser. MUTABOR, A Coprocessor Supporting Memory Management in an Object-Oriented Architecture, IEEE Micro, Oct. 1988, pp. 30-46. Google ScholarDigital Library
- {17} G. Kane. MIPS R2000 RISC Architecture. Prentice Hall, Englewood Cliffs, NJ, 1988.Google Scholar
- {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 ScholarDigital Library
- {19} H. Lieberman. Using Prototypical Objects to Implement Shared Behaviour in Object Oriented Systems, OOPSLA 86 Proc., Sep. 1986, pp. 214-223. Google ScholarDigital Library
- {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 Scholar
- {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 ScholarDigital Library
- {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 ScholarDigital Library
- {23} E. Organick. A Programmer's View of the Intel 432 System. McGraw-Hill, 1983. Google ScholarDigital Library
- {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 Scholar
- {25} A. Snyder. Encapsulation and Inheritance in Object-Oriented Programming Languages, OOPSLA 86 Proc., Sep. 1986, pp. 38-45. Google ScholarDigital Library
- {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 ScholarDigital Library
- {27} J. Stockton. The M68451 Memory Management Unit, Electronic Engineering, May 1982, pp. 59-73.Google Scholar
- {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 ScholarDigital Library
- {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 ScholarDigital Library
- {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 ScholarDigital Library
- {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 ScholarDigital Library
Index Terms
- The architecture of a memory management unit for object-oriented systems
Recommendations
Scratchpad memory management for portable systems with a memory management unit
EMSOFT '06: Proceedings of the 6th ACM & IEEE International conference on Embedded softwareIn this paper,we present a dynamic scratchpad memory allocation strategy targeting a horizontally partitioned memory subsystem for contemporary embedded processors. The memory subsystem is equipped with a memory management unit (MMU), and physically ...
Write-aware memory management for hybrid SLC-MLC PCM memory systems
In recent years, phase-change memory (PCM) has generated a great deal of interest because of its byte addressability and non-volatility properties. It is regarded as a good alternative storage medium that can reduce the performance gap between the main ...
Comments