• DocumentCode
    2449049
  • Title

    Model Checking C Programs with Dynamic Memory Allocation

  • Author

    Gallardo, María Del Mar ; Merino, Pedro ; Sanan, D.

  • Author_Institution
    Dept. of Comput. Sci., Univ. of Malaga, Malaga
  • fYear
    2008
  • fDate
    July 28 2008-Aug. 1 2008
  • Firstpage
    219
  • Lastpage
    226
  • Abstract
    Software model checking technology is based on an exhaustive and efficient simulation of all possible execution paths in concurrent programs. Existing tools based on this method can rapidly detect execution errors, preventing malfunctions in the final system. However dealing with dynamic memory allocation is still an open trend. In this paper, we present a novel method to extend explicit model checking of C programs with dynamic memory management. The method consists in defining a canonical representation of the heap that is based on moving most of the information from the state vector to a global structure. We give a formal semantics of the method in order to show its soundness. Our experimental results show that this method can be efficiently implemented in many well known model checkers, like CADP or SPIN.
  • Keywords
    C language; programming language semantics; storage allocation; concurrent programs; dynamic memory allocation; formal semantics; model checking C programs; software model checking technology; Application software; Computational modeling; Computer applications; Computer languages; Computer science; Concurrent computing; Dynamic programming; Java; Memory management; Specification languages; Model extraction; dynamic memory; pointers; software model checking;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Computer Software and Applications, 2008. COMPSAC '08. 32nd Annual IEEE International
  • Conference_Location
    Turku
  • ISSN
    0730-3157
  • Print_ISBN
    978-0-7695-3262-2
  • Electronic_ISBN
    0730-3157
  • Type

    conf

  • DOI
    10.1109/COMPSAC.2008.143
  • Filename
    4591560