Space efficient conservative garbage collection

Space efficient conservative garbage collection
复制标题

节省空间的保守垃圾收集

DOI:
--
复制
发表时间:
1993
期刊:
ACM-SIGPLAN Symposium on Programming Language Design and Implementation
影响因子:
--
通讯作者:
H. Boehm
H. Boehm
中科院分区:
--
文献类型:
--
作者:
H. Boehm

文献摘要

被引文献

相似文献

如果垃圾收集器保守派只有有关指针位置的部分信息,我们将其称为保守派,因此被迫对待任意位模式,就好像它们可能是指针一样,至少在某些情况下。我们表明,一些非常便宜的但以前未使用的技术可能会对保守的垃圾收集者在回收记忆中的有效性产生巨大影响。我们最重要的观察结果是,似乎指向堆的静态数据不应导致对堆的错误识别引用。垃圾收集器有足够的信息来分配此类参考。我们还观察到,编程样式对假保留的存储量有重大影响,即使收藏家并不非常保守,也通常会影响。一些相当常见的C和C ++编程样式大大降低了任何垃圾收集器的有效性。这些观察足以解释文献中出现的保守收藏的一些不同评估。
We call a garbage collector conservative if it has only partial information about the location of pointers, and is thus forced to treat arbitrary bit patterns as though they might be pointers, in at least some cases. We show that some very inexpensive, but previously unused techniques can have dramatic impact on the effectiveness of conservative garbage collectors in reclaiming memory. Our most significant observation is that static data that appears to point to the heap should not result in misidentified references to the heap. The garbage collector has enough information to allocate around such references. We also observe that programming style has a significant impact on the amount of spuriously retained storage, typically even if the collector is not terribly conservative. Some fairly common C and C++ programming style significantly decrease the effectiveness of any garbage collector. These observations suffice to explain some of the different assessments of conservative collection that have appeared in the literature.