2008
DOI: 10.15514/syrcose-2008-2-14
|View full text |Cite
|
Sign up to set email alerts
|

How to Cook an Automated System for Linux Driver Verification

Abstract: Abstract-We present the preliminary results of our work on designing an automatic toolset for verification of Linux kernelspace drivers. By now the toolset includes three components:• a library of verification models; each model is a formal description of some safety property to be checked; • a preprocessor unit; it is intended for simulating an environment of a driver; • a verification unit BLAST; it is a general-purpose toolkit intended for automatic program verification based on Boolean abstraction and coun… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1

Citation Types

0
6
0

Year Published

2011
2011
2012
2012

Publication Types

Select...
2
1
1

Relationship

1
3

Authors

Journals

citations
Cited by 4 publications
(6 citation statements)
references
References 24 publications
(19 reference statements)
0
6
0
Order By: Relevance
“…Since the elements of the symbolic store lattice, unlike predicates, do not form a powerset domain (simply speaking, this means that this domain not always contains an element for representing the union of several other elements), this termination operator could cut off some satisfiable paths contain ing, among others, real errors. The number of such cases increased when using certain environment mod els-automatically generated main functions for the analysis of kernel drivers (see [3]). Therefore, we implemented another termination operator (stop sep) checking the termination of lattice elements of regions at each vertex separately.…”
Section: Configurable Verificationmentioning
confidence: 99%
See 2 more Smart Citations
“…Since the elements of the symbolic store lattice, unlike predicates, do not form a powerset domain (simply speaking, this means that this domain not always contains an element for representing the union of several other elements), this termination operator could cut off some satisfiable paths contain ing, among others, real errors. The number of such cases increased when using certain environment mod els-automatically generated main functions for the analysis of kernel drivers (see [3]). Therefore, we implemented another termination operator (stop sep) checking the termination of lattice elements of regions at each vertex separately.…”
Section: Configurable Verificationmentioning
confidence: 99%
“…To construct an open automated verifier for Linux drivers, described in [3], an industrial level tool of static analysis is required. However, the same paper describes BLAST as a tool "intended for academic research in software verification."…”
Section: Introduction Blast (The Berkeley Lazy Abstraction Softwarementioning
confidence: 99%
See 1 more Smart Citation
“…To build an open automated system for Linux device drivers described in [13], we needed a verification tool, and that article outlines BLAST as a tool "intended for academic research in software verification". The experiments demonstrated that its potential may spread beyond mere academic application, serving as a verification engine in an intensive driver checking workflow, as well as provide a ground for research in the domain of static analysis.…”
Section: Introductionmentioning
confidence: 99%
“…Environment models are "main" functions generated based on templates for Linux device drivers. For more see[13] 7. Predicate equality was tested via BDDs that stored them 8.…”
mentioning
confidence: 99%