A Lesson on Runtime Assertion Checking with Frama-C

被引:0
|
作者
Kosmatov, Nikolai [1 ]
Signoles, Julien [1 ]
机构
[1] CEA, LIST, Software Reliabil Lab, F-91191 Gif Sur Yvette, France
来源
关键词
runtime assertion checking; program monitoring; executable specification; invalid pointers; FRAMA-C; E-ACSL;
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Runtime assertion checking provides a powerful, highly automatizable technique to detect violations of specified program properties. This paper provides a lesson on runtime assertion checking with FRAMA-C, a publicly available toolset for analysis of C programs. We illustrate how a C program can be specified in executable specification language E-ACSL and how this specification can be automatically translated into instrumented C code suitable for monitoring and runtime verification of specified properties. We show how various errors can be automatically detected on the instrumented code, including C runtime errors, failures in postconditions, assertions, preconditions of called functions, and memory leaks. Benefits of combining runtime assertion checking with other FRAMA-C analyzers are illustrated as well.
引用
收藏
页码:386 / 399
页数:14
相关论文
共 50 条
  • [41] Lightweight runtime checking of C programs with RTC
    Milewicz, Reed
    Vanka, Rajesh
    Tuck, James
    Quinlan, Daniel
    Pirkelbauer, Peter
    COMPUTER LANGUAGES SYSTEMS & STRUCTURES, 2016, 45 : 191 - 203
  • [42] Using JML Runtime Assertion Checking to Automate Metamorphic Testing in Applications without Test Oracles
    Murphy, Christian
    Shen, Kuang
    Kaiser, Gail
    SECOND INTERNATIONAL CONFERENCE ON SOFTWARE TESTING, VERIFICATION, AND VALIDATION, PROCEEDINGS, 2009, : 436 - 445
  • [43] Assertion checking unified
    Gulwani, Sumit
    Tiwari, Ashish
    VERIFICATION, MODEL CHECKING, AND ABSTRACT INTERPRETATION, PROCEEDINGS, 2007, 4349 : 363 - +
  • [44] 静态程序分析过程中形式化验证工具Frama-C的应用
    崔少轩
    喻垚慎
    计算技术与自动化, 2019, 38 (01) : 114 - 117+121
  • [45] RECKA and RPromF: two Frama-C Plug-ins for Optimizing Registers usage in CUDA, OpenACC and OpenMP Programs
    Diarra, Rokiatou
    Merigot, Alain
    Vincke, Bastien
    2018 IEEE 18TH INTERNATIONAL WORKING CONFERENCE ON SOURCE CODE ANALYSIS AND MANIPULATION (SCAM), 2018, : 187 - 192
  • [46] Assertion checking environment (ACE) for formal verification of C programs
    Sharma, B
    Dhodapkar, SD
    Ramesh, S
    RELIABILITY ENGINEERING & SYSTEM SAFETY, 2003, 81 (03) : 281 - 290
  • [47] An experimental Study using ACSL and Frama-C to formulate and verify Low-Level Requirements from a DO-178C compliant Avionics Project
    Dordowsky, Frank
    ELECTRONIC PROCEEDINGS IN THEORETICAL COMPUTER SCIENCE, 2015, (187): : 28 - 41
  • [48] Checking and Enforcing Safety: Runtime Verification and Runtime Reflection
    Leucker, Martin
    ERCIM NEWS, 2008, (75): : 35 - 36
  • [49] Sufficient preconditions for modular assertion checking
    Moy, Yannick
    VERIFICATION, MODEL CHECKING, AND ABSTRACT INTERPRETATION, 2008, 4905 : 188 - +
  • [50] Sufficient preconditions for modular assertion checking
    France Télécom, Lannion, F-22307
    不详
    不详
    Lect. Notes Comput. Sci., 1600, (188-202):