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 条
  • [1] A Lesson on Verification of IoT Software with Frama-C
    Blanchard, Allan
    Kosmatov, Nikolai
    Loulergue, Frederic
    PROCEEDINGS 2018 INTERNATIONAL CONFERENCE ON HIGH PERFORMANCE COMPUTING & SIMULATION (HPCS), 2018, : 21 - 30
  • [2] Frama-C: A software analysis perspective
    Kirchner, Florent
    Kosmatov, Nikolai
    Prevosto, Virgile
    Signoles, Julien
    Yakobowski, Boris
    FORMAL ASPECTS OF COMPUTING, 2015, 27 (03) : 573 - 609
  • [3] Lemma Functions for Frama-C: C Programs as Proofs
    Volkov, Grigoriy
    Mandrykin, Mikhail
    Efremov, Denis
    2018 IVANNIKOV ISPRAS OPEN CONFERENCE (ISPRAS), 2018, : 31 - 38
  • [4] An Optimized Memory Monitoring for Runtime Assertion Checking of C Programs
    Kosmatov, Nikolai
    Petiot, Guillaume
    Signoles, Julien
    RUNTIME VERIFICATION, RV 2013, 2013, 8174 : 167 - 182
  • [5] Static Analysis of the XEN Kernel using Frama-C
    Puccetti, Armand
    JOURNAL OF UNIVERSAL COMPUTER SCIENCE, 2010, 16 (04) : 543 - 553
  • [6] Runtime Assertion Checking with the XJML Tool
    Ramirez-de-Leon, Edgar D.
    Garcia-Alcocer, Eddy A.
    Torres-Martinez, Nicolas
    Chavez-Bosquez, Oscar A.
    Francisco-Leon, Julian J.
    2014 IEEE BIENNIAL CONGRESS OF ARGENTINA (ARGENCON), 2014, : 141 - 146
  • [7] Analysis of crypto module in RIOT OS using Frama-C
    Rai, Nirnai
    Grover, Jyoti
    JOURNAL OF SUPERCOMPUTING, 2024, 80 (13): : 18521 - 18543
  • [8] Formal Specification and Automated Verification of Railway Software with Frama-C
    Prevosto, Virgile
    Burghardt, Jochen
    Gerlach, Jens
    Hartig, Kerstin
    Pohl, Hans
    Voellinger, Kim
    2013 11TH IEEE INTERNATIONAL CONFERENCE ON INDUSTRIAL INFORMATICS (INDIN), 2013, : 710 - 715
  • [9] Exploring the Potential of Frama-C in IoT Static Analysis
    Tran, Minh
    King, William
    Siy, Harvey
    PROCEEDINGS OF THE 2023 INTERNATIONAL SYMPOSIUM ON THEORY, ALGORITHMIC FOUNDATIONS, AND PROTOCOL DESIGN FOR MOBILE NETWORKS AND MOBILE COMPUTING, MOBIHOC 2023, 2023, : 436 - 441
  • [10] Verifying the Mathematical Library of an UAV Autopilot with Frama-C
    Pollien, Baptiste
    Garion, Christophe
    Hattenberger, Gautier
    Roux, Pierre
    Thirioux, Xavier
    FORMAL METHODS FOR INDUSTRIAL CRITICAL SYSTEMS, FMICS 2021, 2021, 12863 : 167 - 173