Skip to main content

TS

High performance static analysis for industry

Authors

Mark Bradley, Franck Cassez, Ansgar Fehnker, Thomas Given-Wilson and Ralf Huuck

NICTA

UNSW

Abstract

Static source code analysis for software bug detection has come a long way since its early beginnings as a compiler technology. The introduction of new technologies and tools based on new theoretical results has drastically changed static analysis. However, with the introduction of more sophisticated algorithmic techniques, such as model checking and constraint solving, questions about performance are a major concern. In this work we present an empirical study of our industrial strength source code analysis tool Goanna that uses a model checking core for static analysis of C/C++ code. We present the core technology and abstraction mechanism with a focus on performance, as guided by experience from having analyzed millions of lines of code. In particular, we present results from our recent study within the NIST/DHS SAMATE program. The results show that, maybe surprisingly, formal verification techniques can be used successfully in practical industry applications scaling roughly linearly, even for millions of lines of code.

BibTeX Entry

  @inproceedings{Bradley_CFGH_12,
    author           = {Bradley, Mark and Cassez, Franck and Fehnker, Ansgar and Given-Wilson, Thomas and Huuck, Ralf},
    month            = sep,
    year             = {2012},
    keywords         = {validation, verification, static analysis, model checking, tools, samate, c/c++, goanna},
    title            = {High Performance Static Analysis for Industry},
    booktitle        = {Tools for Automatic Program AnalysiS (TAPAS 2012)},
    pages            = {3--14},
    address          = {Deauville, France}
  }

Download

Served by Apache on Linux on seL4.