Abstract
Modern object-oriented languages and programming paradigms require finer-grain division of memory than is provided by traditional paging and segmentation systems. This paper describes the design of an OSM (Object Space Manager) that allows partitioning of real memory on object, rather than page, boundaries. The time required by the OSM to create an object, or to find the beginning of an object given a pointer to any location within it, is approximately one memory cycle. Object sizes are limited only by the availability of address bits. In typical configurations of object-oriented memory modules, one OSM chip is required for every 16 RAM chips. The OSM serves a central role in the implementation of a hardware-assisted garbage collection system in which the worst-case stop-and-wait garbage collection delay ranges between 10 and 500 μsec, depending on the system configuration.
- BAKER, H. G. JR. 1978. List processing in real time on a serial computer. Commun. ACM 21, 4 (Apr.), 280-293. Google Scholar
- BARTLETT, J.F. 1988. Compacting garbage collection with ambiguous roots. WRL Res. Rep. 88/2. Digital Equipment Corporation Western Research Laboratory.Google Scholar
- BOEHM, H., AND WEISER, M. 1988. Garbage collection in an uncooperative environment. Softw. Pract. Exp. 18, 9 (Sept.), 807-820. Google Scholar
- BOEHM, H., DEMERS, A. J., AND SHENKER, S. 1991. Mostly parallel garbage collection. In ACM SIGPLAN Notzces Conference on Programming Language Design and Implementation. ACM, New York. Google Scholar
- CHAMBERS, C. 1992. The design and implementation of the SELF compiler, an optimizing compiler for object-oriented programming languages. Ph.D. dissertation, Stanford Univ., Stanford, Calif. Google Scholar
- CHAMBERS, C. 1991. Cost of garbage collection in the SELF system. In the 1991 Workshop on Garbage Collectmn tn Object-Oriented Systems of OOPSLA. ACM, New York.Google Scholar
- CHRISTOPHER, T.W. 1984. Reference count garbage collection. Softw. Prac. Exp. 14, 503-507.Google Scholar
- DETLEFS, D.L. 1990. Concurrent garbage collection for C+ +. CMU-CS-90-119, Carnegie-Mellon Univ., Pittsburgh, Penn.Google Scholar
- DIWAN, A., Moss, E., AND HUDSON, R. 1992. Compiler support for garbage collection m a statically typed language. In ACM SIGPLAN Notices Conference on Programming Language Destgn and Implementatwn 27, 6 (June), 273-282. Google Scholar
- ELLIS, J. R. Lt, K., AND APPEL, A.W. 1988. Real-time concurrent collection on stock multiprocessors. In ACM SIGPLAN Nottces Conference on Programmtng Language Design and Implementation. ACM, New York. Google Scholar
- ENGELSTAD, S. L., AND VANDENDORPE, J.E. 1991. Automatic storage management for systems with real-time constraints. In Oral Presentation at 1991 Workshop on Garbage CoUectzon in Object-Oriented Systems of OOPSLA. ACM, New York.Google Scholar
- GRISWOLD, R. E., AND GRISWOLD, M.T. 1986. The Dnplementation of the Icon Programming Language. Princeton University Press, Princeton, NJ. Google Scholar
- HANSON, D.R. 1977. Storage management for an implementation of SNOBOLA. Softw. Pract. Exp. 7, 179-192.Google Scholar
- JOHNSON, Z. 1992. Reducing the latency of a real-time garbage collector. ACM Lett. Prog. Lang. Syst. 1, 1 ~Mar.), 46-58. Google Scholar
- Moss, J. E. B. 1991. The UMass language independent garbage collector toolkit. In 1991 Workshop on Garbage Collection in Object-Oriented Systems of OOPSLA. ACM, New York.Google Scholar
- NILSEN, K. 1991. Memory cycle accountings for hardware-assisted real-time garbage collection. Tech. Rep 91-21, Iowa State Univ.Google Scholar
- NILSEN, K. 1988. Garbage collection of strings and linked data structures in real time. Softw. Prac. Exp. 18, 7 (July)~ 613-640. Google Scholar
- NILSEN, K. AND SCHMIDT, W.J. 1992a. Hardware-assisted general-purpose garbage collection for hard real-time systems, Tech. Rep. 92-15, Iowa State Univ.Google Scholar
- NILSEN, K. D., AND SCHMIDT, W. J. 1992b. Preferred embodiment of a hardware-assisted garbage~collection system. Tech. Rep. 92-17~ Iowa State Univ.Google Scholar
- SCHMIDT, W.J. 1992. Issues in the design and implementation of a real-time garbage collection architecture. Ph.D. dissertation, Tech. Rep. 92-25, Iowa State Univ. Google Scholar
- SCHMIDT, W. J., AND NILSEN, K.D. 1992. Experimental measurements of a real-time garbage collection architecture. Tech. Rep. 92-26, Iowa State Univ.Google Scholar
- SCHMIT, W. J., AND NILSEN, K. 1991. Architectural support for garbage-collected memory in hard real-time systems. Tech. Rep. 91-23, Iowa State Univ.Google Scholar
- UNGAR, D. 1984. Generation scavenging: A nondisruptive high performance storage reclamation algorithm. SIGPLAN Not. 19, 5 (May), 157-167. Google Scholar
- YUASA, T. 1990. Real-time garbage collection on general-purpose machines. J. Syst. Softw. 11, 181-198. Google Scholar
Index Terms
Cost-effective object space management for hardware-assisted real-time garbage collection
Recommendations
Exploiting the efficiency of generational algorithms for hardware-supported real-time garbage collection
SAC '07: Proceedings of the 2007 ACM symposium on Applied computingGenerational garbage collectors are more efficient than their non-generational counterparts. Unfortunately, however, generational algorithms require both write barriers and write barrier handlers and therefore degrade worst-case performance.
In this ...
Age-based garbage collection
Modern generational garbage collectors look for garbage among the young objects, because they have high mortality; however, these objects include the very youngest objects, which clearly are still live. We introduce new garbage collection algorithms, ...






Comments