| T. Kaehler, "Virtual Memory for an Object-Oriented Language," BYTE Magazine, Aug., p. 386, 1981. |
....This allows highly shared pages to be represented compactly. For example, the empty zero page filled completely with zero bytes is typically shared with a large reference count. A similar overflow technique for large reference counts was used to save space in the early OOZE virtual memory system [15]. A fast, high quality hash function [14] is used to generate a 64 bit hash value for each scanned page. Since the chance of encountering a false match due to hash aliasing is incredibly small the system can make the simplifying assumption that all shared pages have unique hash values. Any ....
Ted Kaehler. "Virtual Memory for an Object-Oriented Language," Byte, August 1981.
....several attempts had been made to solve the problem. Implementations of Smalltalk on the Alto and Dorado at PARC had used memory systems tailored to Smalltalk s behaviour. The Alto used the Object Oriented Zoned Environment (OOZE) to access up to 2 16 objects on a machine with 64Kb of memory [Kae81] The Dorado used a development of this system called the Large ObjectOriented Memory (LOOM) that could access up to 2 31 objects on a machine with 1 8Mb of memory [KK83] Both these systems required microcode support to be effective, and both exacted a performance penalty. They both used ....
T. Kaehler. Virtual memory for an objectoriented language. Byte, 6(8):378--387, August 1981.
....since there is a low locality of references between adjacent objects in a page, and objects tend to be much smaller than a page, the majority of space in physical memory is taken by useless objects that just happen to be on the same pages as useful objects. Object swapping schemes such as OOZE [Kaehler 81] or LOOM compact the active objects into physical memory, so that more objects can be mapped. However in LOOM object faults occur on a per object basis, whereas in a paged system, a page fault may solve several object faults at the same time. The results of an extensive study comparing paging and ....
Ted Kaehler. Virtual memory for an object-oriented language. Byte, 6(8), August 1981.
....with very limited storage and no in terest in prefetching, since it can send individual objects in response to requests. But by using prefetching and crystals, clients with more resources can also achieve higher performance than would be possible in a strict object fetching system. OOZE [4] and LOOM [5, 10] already demonstrated the value of object faulting for small memories. Tunable prefetching seems likely to be useful for a wider range of clients than clustering into fixed size pages could be. ....
Ted Kaehler. Virtual memory for an object-oriented language. Byte, pages 378--387, August 1981.
....will be used to speed up object fetch time: caching, precomputation, and prefetching. This section describes how these strategies will be implemented. The application process will cache objects fetched from the database. The cache will be similar to a conventional Smalltalk run time system [Kae81]. An object index will be maintained in main memory to allow the run time system to determine quickly if a referenced object is in the cache. Each index entry will contain an object identifier and the main memory address of the object. All object references, even instance variables that reference ....
T. Kaehler, "Virtual Memory for an Object-Oriented Language", Byte 6, 8 (Aug. 1981).
No context found.
T. Kaehler, "Virtual Memory for an Object-Oriented Language," BYTE Magazine, Aug., p. 386, 1981.
No context found.
Ted Kaehler. Virtual memory for an object-oriented language. Byte, 6(8):378--387, August 1981.
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC