Towards an Open Framework for C Verification Tools Benchmarking

The paper presents a twofold verification system that aimes to be an open platform for experimentation with various verification techniques as well as an industrial-ready domain specific verification tool for Linux device drivers. We describe the architecture of the verification system and discuss a perspective to build an open benchmarking suite on top of it.

[1]  David Evans,et al.  Improving Security Using Extensible Lightweight Static Analysis , 2002, IEEE Softw..

[2]  Andreas Podelski,et al.  ARMC: The Logical Choice for Software Model Checking with Abstraction Refinement , 2007, PADL.

[3]  David Hovemeyer,et al.  Finding bugs is easy , 2004, SIGP.

[4]  Rajeev Alur,et al.  A Temporal Logic of Nested Calls and Returns , 2004, TACAS.

[5]  Vladimir Nesov Automatically Finding Bugs in Open Source Programs , 2009 .

[6]  George C. Necula,et al.  CIL: Intermediate Language and Tools for Analysis and Transformation of C Programs , 2002, CC.

[7]  Dirk Beyer,et al.  Software model checking via large-block encoding , 2009, 2009 Formal Methods in Computer-Aided Design.

[8]  Daniel Kroening,et al.  Model checking concurrent linux device drivers , 2007, ASE.

[9]  Alexandre Petrenko,et al.  Establishing Linux Driver Verification Process , 2009, Ershov Memorial Conference.

[10]  Thomas Ball,et al.  The Static Driver Verifier Research Platform , 2010, CAV.

[11]  Murali Sitaraman,et al.  Incremental Benchmarks for Software Verification Tools and Techniques , 2008, VSTTE.

[12]  Daniel Kroening,et al.  A Tool for Checking ANSI-C Programs , 2004, TACAS.

[13]  Vladimir A. Zakharov,et al.  How to Cook an Automated System for Linux Driver Verification , 2008 .

[14]  Brian N. Bershad,et al.  Improving the reliability of commodity operating systems , 2005, TOCS.

[15]  Daniel Kroening,et al.  SATABS: SAT-Based Predicate Abstraction for ANSI-C , 2005, TACAS.

[16]  Edmund M. Clarke,et al.  Counterexample-Guided Abstraction Refinement , 2000, CAV.

[17]  Dirk Beyer,et al.  CPAchecker: A Tool for Configurable Software Verification , 2009, CAV.

[18]  Wolfgang Küchlin,et al.  Automatic data environment construction for static device drivers analysis , 2006, SAVCBS '06.

[19]  Thomas A. Henzinger,et al.  The software model checker Blast , 2007, International Journal on Software Tools for Technology Transfer.

[20]  Wolfgang Küchlin,et al.  Integrated Static Analysis for Linux Device Driver Verification , 2007, IFM.

[21]  Junfeng Yang,et al.  An empirical study of operating systems errors , 2001, SOSP.

[22]  Thomas Ball,et al.  SLAM2: Static driver verification with under 4% false alarms , 2010, Formal Methods in Computer Aided Design.

[23]  Sriram K. Rajamani,et al.  SLIC: A Specification Language for Interface Checking (of C) , 2002 .

[24]  Thomas A. Henzinger,et al.  The software model checker B last : Applications to software engineering , 2007 .

[25]  Mark A. Hillebrand,et al.  Invariants, Modularity, and Rights , 2009, Ershov Memorial Conference.

[26]  Isil Dillig,et al.  Sound, complete and scalable path-sensitive analysis , 2008, PLDI '08.

[27]  Robert J. Simmons,et al.  Proofs from Tests , 2008, IEEE Transactions on Software Engineering.

[28]  Robert Love,et al.  Linux Kernel Development , 2003 .