Garbage collector verification for proof-carrying code

被引:6
作者
Lin, Chun-Xiao [1 ]
Chen, Yi-Yun [1 ]
Li, Long [1 ]
Hua, Bei [1 ]
机构
[1] Univ Sci & Technol China, Dept Comp Sci & Technol, Hefei 230027, Peoples R China
关键词
program verification; garbage collector; proof-carrying code; program safety;
D O I
10.1007/s11390-007-9049-z
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
We present the verification of the machine-level implementation of a conservative variant of the standard mark-sweep garbage collector in a Hoare-style program logic. The specification of the collector is given on a machine-level memory model using separation logic, and is strong enough to preserve the safety property of any common mutator program. Our verification is fully implemented in the Coq proof assistant and can be packed immediately as foundational proof-carrying code package. Our work makes important attempt toward building fully certified production-quality garbage collectors.
引用
收藏
页码:426 / 437
页数:12
相关论文
共 25 条
[1]   Foundational proof-carrying code [J].
Appel, AW .
16TH ANNUAL IEEE SYMPOSIUM ON LOGIC IN COMPUTER SCIENCE, PROCEEDINGS, 2001, :247-256
[2]   ALGORITHMS FOR ON-THE-FLY GARBAGE COLLECTION [J].
BENARI, M .
ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS, 1984, 6 (03) :333-344
[3]  
BIRKEDAL L, 2004, P 31 ACM SIGPLAN SIG, P220
[4]   GARBAGE COLLECTION IN AN UNCOOPERATIVE ENVIRONMENT [J].
BOEHM, HJ ;
WEISER, M .
SOFTWARE-PRACTICE & EXPERIENCE, 1988, 18 (09) :807-820
[5]  
BURDY L, 2001, P 14 INT C THEOR PRO, P85
[6]  
*COQ DEV TEAM, 2005, COQ PROOF ASS REF MA
[7]   ON-FLY GARBAGE COLLECTION - EXERCISE IN COOPERATION [J].
DIJKSTRA, EW ;
LAMPORT, L ;
MARTIN, AJ ;
SCHOLTEN, CS ;
STEFFENS, EFM .
COMMUNICATIONS OF THE ACM, 1978, 21 (11) :966-975
[8]   An Open Framework for Foundational Proof-Carrying Code [J].
Feng, Xinyu ;
Ni, Zhaozhong ;
Shao, Zhong ;
Guo, Yu .
PROCEEDINGS OF THE TLDI 2007: 2007 ACM SIGPLAN INTERNATIONAL WORKSHOP ON TYPES IN LANGUAGES DESIGN AND IMPLEMENTATION, 2007, :67-78
[9]  
Feng X, 2006, ACM SIGPLAN NOTICES, V41, P401, DOI 10.1145/1133981.1134028
[10]   A Garbage-Collecting Typed Assembly Language [J].
Hawblitzel, Chris ;
Huang, Heng ;
Wittie, Lea ;
Chen, Juan .
PROCEEDINGS OF THE TLDI 2007: 2007 ACM SIGPLAN INTERNATIONAL WORKSHOP ON TYPES IN LANGUAGES DESIGN AND IMPLEMENTATION, 2007, :41-52