A Separation Logic for Heap Space under Garbage Collection

被引:7
|
作者
Madiot, Jean-Marie [1 ]
Pottier, Francois [1 ]
机构
[1] INRIA, Paris, France
关键词
separation logic; tracing garbage collection; live data; program verification; VERIFICATION; FRAMEWORK; CHECKING;
D O I
10.1145/3498672
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
We present SL lozenge, a Separation Logic that allows controlling the heap space consumption of a program in the presence of dynamic memory allocation and garbage collection. A user of the logic works with space credits, a resource that is consumed when an object is allocated and produced when a group of objects is logically deallocated, that is, when the user is able to prove that it has become unreachable and therefore can be collected. To prove such a fact, the user maintains pointed-by assertions that record the immediate predecessors of every object. Our calculus, SpaceLang, has mutable state, shared-memory concurrency, and code pointers. We prove that SL lozenge is sound and present several simple examples of its use.
引用
收藏
页数:28
相关论文
共 50 条
  • [21] 'Sermon of the garbage heap'
    Mahapatra, J
    GEORGIA REVIEW, 2005, 59 (02): : 277 - 277
  • [22] Heap-Dependent Expressions in Separation Logic
    Smans, Jan
    Jacobs, Bart
    Piessens, Frank
    FORMAL TECHNIQUES FOR DISTRIBUTED SYSTEMS, PROCEEDINGS, 2010, 6117 : 170 - 185
  • [23] Parallel Generational-Copying Garbage Collection with a Block-Structured Heap
    Marlow, Simon
    Harris, Tim
    James, Roshan P.
    Jones, Simon Peyton
    ISMM'08: PROCEEDINGS OF THE 2008 INTERNATIONAL SYMPOSIUM ON MEMORY MANAGEMENT, 2008, : 11 - 20
  • [24] On bounding time and space for multiprocessor garbage collection
    Blelloch, GE
    Cheng, P
    ACM SIGPLAN NOTICES, 1999, 34 (05) : 104 - 117
  • [25] On bounding time and space for multiprocessor garbage collection
    Blelloch, Guy E.
    Cheng, Perry
    Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), 1999, : 104 - 117
  • [26] On bounding time and space for multiprocessor garbage collection
    Blelloch, GE
    Cheng, P
    ACM SIGPLAN NOTICES, 2004, 39 (04) : 626 - 627
  • [27] Modular Verification of Heap Reachability Properties in Separation Logic
    Ter-Gabrielyan, Arshavir
    Summers, Alexander J.
    Mueller, Peter
    PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2019, 3 (OOPSLA):
  • [28] Automatic Verification of Heap Manipulation Using Separation Logic
    Berdine, Josh
    SOFSEM 2009-THEORY AND PRACTICE OF COMPUTER SCIENCE, PROCEEDINGS, 2009, 5404 : 34 - 34
  • [29] Heap Memory Requirements Analysis via Separation Logic
    He, Guanhua
    Luo, Chenguang
    THIRD INTERNATIONAL SYMPOSIUM ON THEORETICAL ASPECTS OF SOFTWARE ENGINEERING, PROCEEDINGS, 2009, : 321 - 322
  • [30] Controlling garbage collection and heap growth to reduce the execution time of Java']Java applications
    Brecht, T
    Arjomandi, E
    Li, C
    Pham, H
    ACM SIGPLAN NOTICES, 2001, 36 (11) : 353 - 366