The DOI matches its Crossref record; 33 of the 33 references it cites were found in a registry or an index.
Thorough static analysis of device drivers
Abstract
Bugs in kernel-level device drivers cause 85% of the system crashes in the Windows XP operating system [44]. One of the sources of these errors is the complexity of the Windows driver API itself: programmers must master a complex set of rules about how to use the driver API in order to create drivers that are good clients of the kernel. We have built a static analysis engine that finds API usage errors in C programs. The Static Driver Verifier tool (SDV) uses this engine to find kernel API usage errors in a driver. SDV includes models of the OS and the environment of the device driver, and over sixty API usage rules. SDV is intended to be used by driver developers "out of the box." Thus, it has stringent requirements: (1) complete automation with no input from the user; (2) a low rate of false errors. We discuss the techniques used in SDV to meet these requirements, and empirical results from running SDV on over one hundred Windows device drivers.
Overview
The claims and statistics of this paper haven’t been checked yet.
Run the check — free, no account needed. It reads the open-access text and checks the sources it cites.
Integrity signals
Registry
Cites
Statistics
Verification
Claims the paper makes
The claims and statistics of this paper haven’t been checked yet.
Run the check — free, no account needed. It reads the open-access text and checks the sources it cites.
Self-check
Percentages, sums and reported differences re-computed from the paper’s own numbers.
The self-check needs the paper’s full text.
Citations
Cites
Graph-Based Algorithms for Boolean Function Manipulation
Bryant (1986) · IEEE Transactions on Computers · doi:10.1109/tc.1986.1676819 · Cited by 8,891
Cousot, P., & Cousot, R. (1977) · Proceedings of the 4th ACM SIGACT-SIGPLAN symposium on Principles of programming languages - POPL '77 · doi:10.1145/512950.512973 · Cited by 6,279
Counterexample-Guided Abstraction Refinement
Clarke, E., Grumberg, O., Jha, S., Lu, Y., & Veith, H. (2000) · Lecture Notes in Computer Science · doi:10.1007/10722167_15 · Cited by 1,702
(2017) · Lexikon des gesamten Buchwesens Online · doi:10.1163/9789004337862_lgbo_com_161117 · Cited by 1,432
Extended static checking for Java
Flanagan, C., Leino, K. R. M., Lillibridge, M., Nelson, G., Saxe, J. B., & Stata, R. (2002) · Proceedings of the ACM SIGPLAN 2002 conference on Programming language design and implementation · doi:10.1145/512529.512558 · Cited by 1,340
Schneider, F. B. (2000) · ACM Transactions on Information and System Security · doi:10.1145/353323.353382 · Cited by 1,289
Henzinger, T. A., Jhala, R., Majumdar, R., & Sutre, G. (2002) · Proceedings of the 29th ACM SIGPLAN-SIGACT symposium on Principles of programming languages · doi:10.1145/503272.503279 · Cited by 1,155
Proving the Correctness of Multiprocess Programs
Lamport, L. (1977) · IEEE Transactions on Software Engineering · doi:10.1109/tse.1977.229904 · Cited by 1,138
Computer-aided verification of coordinating processes: The automata-theoretic approach
(1995) · Computers & Mathematics with Applications · doi:10.1016/0898-1221(95)90267-8 · Cited by 786
Simplify: a theorem prover for program checking
Detlefs, D., Nelson, G., & Saxe, J. B. (2005) · Journal of the ACM · doi:10.1145/1066100.1066102 · Cited by 786
Cited by
A survey of symbolic execution techniques
Baldoni, R., Coppa, E., D’elia, D. C., Demetrescu, C., & Finocchi, I. (2019) · ACM Computing Surveys · doi:10.1145/3182657 · Cited by 708
Lessons from building static analysis tools at Google
Sadowski, C., Aftandilian, E., Eagle, A., Miller-Cushon, L., & Jaspan, C. (2018) · Communications of the ACM · doi:10.1145/3188720 · Cited by 242
Upgrading Your Android, Elevating My Malware: Privilege Escalation through Mobile OS Updating
Xing, L., Pan, X., Wang, R., Yuan, K., & Wang, X. (2014) · 2014 IEEE Symposium on Security and Privacy · doi:10.1109/sp.2014.32 · Cited by 111
Metadata
- Authors
- Ball, T., Bounimova, E., Cook, B., Levin, V., Lichtenberg, J., McGarvey, C., Ondrusek, B., Rajamani, S. K., & Ustuner, A.
- Venue
- Proceedings of the 1st ACM SIGOPS/EuroSys European Conference on Computer Systems 2006
- Publisher
- ACM
- Published
- 2006-04-18
- Pages
- 73-85
- OpenAlex
- W2131195907
- Cited by
- 371
- References
- 33
- FWCI
- 22.38
- Type
- conference paper
- Language
- en
- Open access
- closed
About these checks
Registry, retraction, Cites and statistics results are computed, not judged, with one exception: a printed reference that no index lists is read once by a model before it counts as a citation error. Claims are extracted by a model and kept only when their quote appears verbatim in the text; each cited source is then checked, with a model’s help, for whether it says what the claim relies on. Those verdicts can be wrong — read the claim’s quote and the cited source before relying on one.
Statistics and arithmetic are recomputed, not judged.
Confidence bands are shown only for fields calibrated on our annotated test set. None is calibrated yet, so no band is shown.
What counts as a claim ›How we measure confidence ›How we check this ›
Are you an author, or do you see a problem with this page? Request a review
How to cite
Cite CoChat for the checks on this page, and the paper for its own findings.
- This page
- CoChat. (2026). Citation check: Thorough static analysis of device drivers. https://app.cochat.ai/papers/10.1145/1217935.1217943
- The paper
- Ball, T., Bounimova, E., Cook, B., Levin, V., Lichtenberg, J., McGarvey, C., Ondrusek, B., Rajamani, S. K., & Ustuner, A. (2006). Thorough static analysis of device drivers. Proceedings of the 1st ACM SIGOPS/EuroSys European Conference on Computer Systems 2006. https://doi.org/10.1145/1217935.1217943
Data sources
Bibliographic data: Semantic Scholar, OpenAlex, Crossref.
Contains information from the Semantic Scholar Academic Graph Datasets, made available under the ODC Attribution License (ODC-BY 1.0).
Semantic Scholar’s data is described in: Kinney, R., et al. (2023). The Semantic Scholar Open Data Platform. arXiv:2301.10140.