| Managing Reentrant Structures Using Reference Counts |
| Full text |
Pdf
(318 KB)
|
| Source
|
ACM Transactions on Programming Languages and Systems (TOPLAS)
archive
Volume 2 , Issue 3 (July 1980)
table of contents
Pages: 269 - 273
Year of Publication: 1980
ISSN:0164-0925
|
|
Author
|
|
Daniel G. Bobrow
|
Xerox Corporation, Palo Alto Research Center, 3333 Coyote Hill Rd., Palo Alto, CA
|
|
| Publisher |
|
| Bibliometrics |
Downloads (6 Weeks): 1, Downloads (12 Months): 30, Citation Count: 16
|
|
|
ABSTRACT
Automatic storage management requires that one identify storage unreachable by a user's program and return it to free status. One technique maintains a count of the references from user's programs to each cell, since a count of zero implies the storage is unreachable. Reentrant structures are self-referencing; hence no cell in them will have a count of zero, even though the entire structure is unreachable. A modification of standard reference counting can be used to manaage the deallocation of a large class of frequently used reentrant structures, including two-way and circularly linked lists.
All the cells of a potentially reentrant structure are considered as part of a single group for deallocation purposes. Information associated with each cell specifies its group membership. Internal references (pointers from one cell of the group to another) are not reference counted. External references to any cell of this group are counted as references to the group as a whole. When the external reference count goes to zero, all the cells of the group can be deallocated. This paper describes several ways of specifying group membership, properties of each implementation, and properties of mutable and immutable group membership.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
 |
1
|
|
| |
2
|
FRIEDMAN, D.P., AND WINE, D.S. Reference counting can manage the circular environments of mutual recursion. Inform. Process. Lett. 8, 1 (1979).
|
| |
3
|
HOPCRAFT, J.E., A~D ULLMAN, J.D. Set merging algorithms. SIAM J. Comput. 2 (1973).
|
| |
4
|
K~VTH, D.E. The Art of Computer Programming, Vol. 1: Fundamental Algorithms. Addison- Wesley, Reading, Mass., 1973.
|
 |
5
|
|
 |
6
|
|
|