Integrated static analysis for Linux device driver verification

  • Authors:
  • Hendrik Post;Wolfgang Küchlin

  • Affiliations:
  • University of Tübingen, Germany;University of Tübingen, Germany

  • Venue:
  • IFM'07 Proceedings of the 6th international conference on Integrated formal methods
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

We port verification techniques for device drivers from the Windows domain to Linux, combining several tools and techniques into one integrated tool-chain. Building on ideas from Microsoft's Static Driver Verifier (SDV) project, we extend their specification language and combine its implementation with the public domain bounded model checker CBMC as a new verification back-end. We extract several API conformance rules from Linux documentation and formulate them in the extended language SLICx. Thus SDV-style verification of temporal safety specifications is brought into the public domain. In addition, we show that SLICx, together with CBMC, can be used to simulate preemption in multi-threaded code, and to find race conditions and to prove the absence of deadlocks and memory leaks.