Imperial College London
NICTA
We develop a practical solution to the problem of automatic verification of the interface between device drivers and the OS. Our solution relies on a combination of improved driver architecture and verification tools. It supports drivers written in C and can be implemented in any existing OS, which sets it apart from previous proposals for verification-friendly drivers. Our Linux-based evaluation shows that this methodology amplifies the power of existing verification tools in detecting driver bugs, making it possible to verify properties beyond the reach of traditional techniques.
@inproceedings{Amani_CDLRZ_12, address = {Sydney, Australia}, author = {Amani, Sidney and Chubb, Peter and Donaldson, Alastair and Legg, Alexander and Ryzhyk, Leonid and Zhu, Yanjin}, booktitle = {Systems Software Verification}, keywords = {device drivers, reliability, model checking}, month = nov, pages = {1--14}, paperurl = {https://trustworthy.systems/publications/nicta_full_text/6331.pdf}, title = {Automatic Verification of Message-Based Device Drivers}, year = {2012} }