ACM Home Page
Please provide us with feedback. Feedback
A mark-and-sweep collector C++
Full text PdfPdf (836 KB)
Source Annual Symposium on Principles of Programming Languages archive
Proceedings of the 19th ACM SIGPLAN-SIGACT symposium on Principles of programming languages table of contents
Albuquerque, New Mexico, United States
Pages: 51 - 58  
Year of Publication: 1992
ISBN:0-89791-453-8
Author
Sponsors
SIGACT: ACM Special Interest Group on Algorithms and Computation Theory
SIGPLAN: ACM Special Interest Group on Programming Languages
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 7,   Downloads (12 Months): 37,   Citation Count: 8
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/143165.143178
What is a DOI?

ABSTRACT

Our research is concerned with compiler-independent, tag-free garbage collection for the C++ programming language. We have previously presented a copying collector based on root registration. This paper presents a mark-and-sweep garbage collector that ameliorates shortcomings of the previous collector. We describe the two collectors and discuss why the new one is an improvement over the old one. We have tested this collector and a conservative collector in a VLSI CAD application, and this paper discusses the differences. Currently this prototype of the collector imposes too much overhead on our application. We intend to solve that problem, and then use the techniques described in this paper to implement a generational Mark-and-Sweep collector for C++.


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.

 
App87
 
App89
Andrew W. Appel. Runtime tags aren't necessary. In Lisp and Symbolic Computation, volume 2, pages 153-162, 1989.
 
Ass91
Association for Computing Machinery. Proceedings of the SIGPLAN '91 Conference on Programming Language Design and Implementation. ACM Press, June 1991.
 
Bar88
Joel F. Bartlett. Compacting garbage collection with ambiguous roots. Technical Report 88/2, Digital Equipment Corporation, Western Research Laboratory, Palo Alto, California, February 1988.
 
Bar89
Joel F. Bartlett. Mostly copying garbage collection picks up generations and C++. Technical Report TN-12, DEC WRL, October 1989.
BDS91
 
BW88
 
CDG+88
L. CardeIIi, J. Donahue, L. Glassmaa, M. Jordan, B. Kalsow, and G. Nelson. Moduia-3 report. Technical report, Digital Systems Research Center and Olivetti Research Center, Palo Alto, CA, 1988.
CUL89
 
Det90
David Detlefs. Concurrent garbage collection for C++. Technical Report CMU-CS- 90-119, Carnegie Mellon, 1990.
 
Ede90
 
EP91
Daniel Edelson and Ira Pohl. A copying collector for C++. In Usenix C-~--t- Conference Proceedings {Use91}, pages 85-102.
FY69
Gol91
 
GR83
 
Ken91
Brian Kennedy. The features of the objectoriented abstract type hierarchy (OATH). In Usenix C++ Conference Proceedings
 
Usegl
, pages 41-50.
 
Knu73
 
Lam83
Butler W. Lampson. A description of the Cedar language: A Cedar language reference manual. Technical Report CLS-83- 15, Xerox PARC, 1983.
 
Lea91
Doug Lea. A memory allocator for libg+4-, 1991. private communication.
 
Mey88
 
RMC90
Vincent Russo, Peter W. Madany, and Roy H. Campbell. C++ and operating systems performance: A case study. in Usenix C++ Conference Proceedings, pages 103-114, San Francisco, CA, April 1990. Usenix Association.
 
Rus91
Vincent Russo, 1991. Using the parallel Boehm/Weiser/Demers collector in an operating system: private communication.
 
Ste84
 
Str87
Bjarne Stroustrup. The evolution of C++ 1985 to 1987. In Usenix C++ Workshop Proceedings, pages 1-22, Santa Fe, NM, November 1987. Usenix Association.
 
Str91
Bjarne Stroustrup. The C++ Reference Manual. Addison-Wesley, 2~d edition, 1991.
 
Use91
Usenix Association. Usenix C+-/- Conference Proceedings, Washington, DC, April 1991.
 
Wik87
 
X3J91
ANSI Committee X3J16. Draft standard for programming language C++, May 1991.