• DocumentCode
    3516741
  • Title

    WYSIWIB: A declarative approach to finding API protocols and bugs in Linux code

  • Author

    Lawall, Julia L. ; Brunel, Julien ; Palix, Nicolas ; Hansen, René Rydhof ; Stuart, Henrik ; Muller, Gilles

  • Author_Institution
    DIKU, Univ. of Copenhagen, Copenhagen, Denmark
  • fYear
    2009
  • fDate
    June 29 2009-July 2 2009
  • Firstpage
    43
  • Lastpage
    52
  • Abstract
    Eliminating OS bugs is essential to ensuring the reliability of infrastructures ranging from embedded systems to servers. Several tools based on static analysis have been proposed for finding bugs in OS code. They have, however, emphasized scalability over usability, making it difficult to focus the tools on specific kinds of bugs and to relate the results to patterns in the source code. We propose a declarative approach to bug finding in Linux OS code using a control-flow based program search engine. Our approach is WYSIWIB (What You See Is Where It Bugs), since the programmer expresses specifications for bug finding using a syntax close to that of ordinary C code. The key advantage of our approach is that search specifications can be easily tailored, to eliminate false positives or catch more bugs. We present three case studies that have allowed us to find hundreds of potential bugs.
  • Keywords
    Linux; application program interfaces; formal specification; program debugging; program diagnostics; protocols; software reliability; specification languages; API protocol; Coccinelle transformation tool; Linux OS code; OS bug elimination; WYSIWIB declarative approach; control-flow based program search engine; program specification; software reliability; specification language; static analysis; Computer bugs; Computer crashes; Embedded system; Kernel; Linux; Memory management; Protocols; Scalability; Search engines; Usability; Linux; Protocol finding; bug finding;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Dependable Systems & Networks, 2009. DSN '09. IEEE/IFIP International Conference on
  • Conference_Location
    Lisbon
  • Print_ISBN
    978-1-4244-4422-9
  • Electronic_ISBN
    978-1-4244-4421-2
  • Type

    conf

  • DOI
    10.1109/DSN.2009.5270354
  • Filename
    5270354