Share on Facebook Tweet on Twitter Share on LinkedIn Share by email
Scalable Shape Analysis for Systems Code

Hongseok Yang, Oukseh Lee, Josh Berdine, Cristiano Calcagno, Byron Cook, Dino Distefano, and Peter O'Hearn

Abstract

Pointer safety faults in device drivers are one of the leading causes of crashes in operating systems code. In principle, shape analysis tools can be used to prove the absence of this type of error. In practice, however, shape analysis is not used due to the unacceptable mixture of scalability and precision provided by existing tools. In this paper we report on a new join operation |†| for the separation domain which aggressively abstracts information for scalability yet does not lead to false error reports. |†| is a critical piece of a new shape analysis tool that provides an acceptable mixture of scalability and precision for industrial application. Experiments on whole Windows and Linux device drivers (firewire, pcidriver, cdrom, md, etc.) represent the first working application of shape analysis to verification of whole industrial programs.

Details

Publication typeInproceedings
Published inComputer Aided Verification, 20th International Conference, CAV 2008, Princeton, NJ, USA, July 7-14, 2008, Proceedings
Pages385-398
Volume5123
SeriesLecture Notes in Computer Science
ISBN978-3-540-70543-7
PublisherSpringer Verlag
> Publications > Scalable Shape Analysis for Systems Code