UBC Theses and Dissertations
Memory reclamation in Emerald: an object-oriented programming language Han, Xiaomei
Storage management is an important part of a programming system. There are two basic storage management techniques: explicit storage management and automatic storage management. This thesis investigates automatic storage management, garbage collection techniques, in the object-oriented programming language Emerald. In general, garbage collection algorithms fall into four categories, namely, reference counting, markand- sweep , copying, and generational copying based algorithms. Since these garbage collection techniques have been proposed, there has been a large amount of work done. However, the work has mainly focussed on garbage collection of functional programming languages. How well will these garbage collection techniques perform in an objectoriented programming paradigm in which the behavior is rather diiferent from that of functional programming languages? This thesis mainly aims at studying the most promising garbage collection technique — the generational garbage collection algorithm, and gathering and measuring the parameters that affect the generational garbage collection. We use both simulation and measurement of an actual implementation to compare the performance of several alternating garbage collection techniques in Emerald.
Item Citations and Data