Towards automatic software model checking of thousands of Linux modules-a case study with Avinux

被引:5
作者
Post, Hendrik [1 ]
Sinz, Carsten [1 ]
Kuechlin, Wolfgang [1 ]
机构
[1] Univ Tubingen, Symbol Computat Grp, Tubingen, Germany
关键词
software model checking; integration and application of formal methods; operating systems; software verification; model checking; case study; STATIC ANALYSIS; C-PROGRAMS; VERIFICATION; TOOL;
D O I
10.1002/stvr.399
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Modular software model checking of large real-world systems is known to require extensive manual effort in environment modelling and preparing source code for model checking. Avinux is a tool chain that facilitates the automatic analysis of Linux and especially of Linux device drivers. The tool chain is implemented as a plugin for the Eclipse IDE, using the source code bounded model checker CBMC as its backend. Avinux supports a verification process for Linux that is built upon specification annotations with SLICx (an extension of the SLIC language), automatic data environment creation, source code transformation and simplification, and the invocation of the verification backend. In this paper technical details of the verification process are presented: Using Avinux on thousands of drivers from various Linux versions led to the discovery of six new errors. In these experiments, Avinux also reduced the immense overhead of manual code preprocessing that other projects incurred. Copyright (C) 2008 John Wiley & Sons, Ltd.
引用
收藏
页码:155 / 172
页数:18
相关论文
共 50 条
  • [21] Member Checking in Software Engineering Research: Lessons Learned from an Industrial Case Study
    Santos, Ronnie E. S.
    Magalhaes, Cleyton V. C.
    da Silva, Fabio Q. B.
    11TH ACM/IEEE INTERNATIONAL SYMPOSIUM ON EMPIRICAL SOFTWARE ENGINEERING AND MEASUREMENT (ESEM 2017), 2017, : 187 - 192
  • [22] Verification of Railway Control Systems Using Model Checking and CTL, Explained Through a Case Study
    Lukács, Gábor
    Bartha, Tamás
    Periodica Polytechnica Transportation Engineering, 2024, 52 (04): : 402 - 411
  • [23] Towards a Wide Acceptance of Formal Methods to the Design of Safety Critical Software: An Approach Based on UML and Model Checking
    Eras, Eduardo Rohde
    Rebelo dos Santos, Luciana Brasil
    de Santiago Junior, Valdivino Alexandre
    Vijaykumar, Nandamudi Lankalapalli
    COMPUTATIONAL SCIENCE AND ITS APPLICATIONS - ICCSA 2015, PT IV, 2015, 9158 : 612 - 627
  • [24] Efficient model checking of properties of a distributed application: a multimedia case study
    Mazzocca, N
    Santone, A
    Vaglini, G
    Vittorini, V
    SOFTWARE TESTING VERIFICATION & RELIABILITY, 2002, 12 (01) : 3 - 21
  • [25] Towards a Better Understanding of Software Features and Their Characteristics: A Case Study of Marlin
    Krueger, Jacob
    Gu, Wanzi
    Shen, Hui
    Mukelabai, Mukelabai
    Hebig, Regina
    Berger, Thorsten
    TWELFTH INTERNATIONAL WORKSHOP ON VARIABILITY MODELLING OF SOFTWARE-INTENSIVE SYSTEMS (VAMOS 2018), 2017, : 105 - 112
  • [26] Verification of a safety-related I&C system for nuclear power plant by model checking, test case generation and automatic testing
    Ausberger, Tomas
    Kubicek, Karel
    Medvecova, Pavla
    Wolf, Jindrich
    2022 IEEE 27TH INTERNATIONAL CONFERENCE ON EMERGING TECHNOLOGIES AND FACTORY AUTOMATION (ETFA), 2022,
  • [27] Method and case study of model checking concurrent systems that use unbounded timestamps
    Nakano, Shinya
    Tsuchiya, Tatsuhiro
    2017 IEEE 22ND PACIFIC RIM INTERNATIONAL SYMPOSIUM ON DEPENDABLE COMPUTING (PRDC 2017), 2017, : 261 - 266
  • [28] Deadlock and starvation free reentrant readers-writers: A case study combining model checking with theorem proving
    van Gastel, Bernard
    Lensink, Leonard
    Smetsers, Sjaak
    van Eekelen, Marko
    SCIENCE OF COMPUTER PROGRAMMING, 2011, 76 (02) : 82 - 99
  • [29] Ultimate TestGen: Test-Case Generation with Automata-based Software Model Checking (Competition Contribution)
    Barth, Max
    Dietsch, Daniel
    Heizmann, Matthias
    Jakobs, Marie-Christine
    FUNDAMENTAL APPROACHES TO SOFTWARE ENGINEERING, FASE 2024, 2024, 14573 : 326 - 330
  • [30] Towards Formal Verification for Cyber-physically Agnostic Software: a Case Study
    Drozdov, Dmitrii
    Patil, Sandeep
    Dubinin, Victor
    Vyatkin, Valeriy
    IECON 2017 - 43RD ANNUAL CONFERENCE OF THE IEEE INDUSTRIAL ELECTRONICS SOCIETY, 2017, : 5509 - 5514