Simple garbage-collector-safety

被引:7
作者
Boehm, HJ
机构
关键词
D O I
10.1145/249069.231394
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
A conservative garbage collector can typically be used with conventionally compiled programs written in C or C+ +. But two safety issues must be considered. First, the source code must not hide pointers from the garbage collector. This primarily requires stricter adherence to existing restrictions in the language definition. Second, we must ensure that the compiler will not perform transformations that invalidate this requirement. We argue that the same technique can be used to address both issues. We present an algorithm for annotating source or intermediate code to either check the validity of pointer arithmetic in the source, or to guarantee that under minimal, clearly defined assumptions about the compiler, the optimizer cannot ''disguise'' pointers. We discuss an implementation based on a preprocessor for the GNU C compiler (gee), and give some measurements of program slowdown.
引用
收藏
页码:89 / 98
页数:10
相关论文
共 50 条
[41]   A comparative evaluation of parallel garbage collector implementations [J].
Attanasio, CR ;
Bacon, DF ;
Cocchi, A ;
Smith, S .
LANGUAGES AND COMPILERS FOR PARALLEL COMPUTING, 2003, 2624 :177-192
[42]   GUARDIANS IN A GENERATION-BASED GARBAGE COLLECTOR [J].
DYBVIG, RK ;
BRUGGEMAN, C ;
EBY, D .
SIGPLAN NOTICES, 1993, 28 (06) :207-216
[43]   A Correct and Useful Incremental Copying Garbage Collector [J].
Kero, Martin ;
Nordlander, Johan ;
Lindgren, Per .
ISMM'07: PROCEEDINGS OF THE 2007 INTERNATIONAL SYMPOSIUM ON MEMORY MANAGEMENT, 2007, :129-140
[44]   A simple garbage bin design for garbage classification and recycling [J].
Wang, Junyan ;
Hu, Ziqiang ;
Bi, Shihang ;
Zhang, Zechao ;
Wang, Junxiang ;
Liu, Baojian ;
Chen, Yifei .
2020 3RD WORLD CONFERENCE ON MECHANICAL ENGINEERING AND INTELLIGENT MANUFACTURING (WCMEIM 2020), 2020, :819-822
[45]   Alligator Collector: A Latency-Optimized Garbage Collector for Functional Programming Languages [J].
Gamari, Ben ;
Dietz, Laura .
PROCEEDINGS OF THE 2020 ACM SIGPLAN INTERNATIONAL SYMPOSIUM ON MEMORY MANAGEMENT, ISMM 2020, 2020, :87-99
[46]   GARBAGE COLLECTOR, CACHE BRING SMALLTALK TO IBM PC [J].
WEISS, R .
ELECTRONIC DESIGN, 1985, 33 (25) :44-44
[47]   STOPLESS: A Real-Time Garbage Collector for Multiprocessors [J].
Pizlo, Filip ;
Frampton, Daniel ;
Petrank, Erez ;
Steensgaard, Bjarne .
ISMM'07: PROCEEDINGS OF THE 2007 INTERNATIONAL SYMPOSIUM ON MEMORY MANAGEMENT, 2007, :159-172
[48]   Garbage collector verification for proof-carrying code [J].
Lin, Chun-Xiao ;
Chen, Yi-Yun ;
Li, Long ;
Hua, Bei .
JOURNAL OF COMPUTER SCIENCE AND TECHNOLOGY, 2007, 22 (03) :426-437
[49]   Garbage Collector Verification for Proof-Carrying Code [J].
林春晓 ;
陈意云 ;
李隆 ;
华蓓 .
Journal of Computer Science & Technology, 2007, (03) :426-437
[50]   Optimal Policies for a Generational Garbage Collector with Tenuring Threshold [J].
Zhao, Xu-Feng ;
Nakamura, Syouji ;
Qian, Cun-Hua .
OPERATIONS RESEARCH AND ITS APPLICATIONS, 2010, 12 :39-+