STORM static unit checking of concurrent programs

Concurrency is inherent in today's software. Unexpected interactions between concurrently executing threads often cause subtle bugs in concurrent programs. Such bugs are hard to discover using traditional testing techniques since they require executing a program on a particular unit test (i.e....

Full description

Saved in:
Bibliographic Details
Published in2010 ACM/IEEE 32nd International Conference on Software Engineering Vol. 2; pp. 519 - 520
Main Author Rakamaric, Z.
Format Conference Proceeding
LanguageEnglish
Published New York, NY, USA ACM 01.05.2010
IEEE
SeriesACM Conferences
Subjects
Online AccessGet full text
ISBN9781605587196
1605587192
ISSN0270-5257
DOI10.1145/1810295.1810460

Cover

More Information
Summary:Concurrency is inherent in today's software. Unexpected interactions between concurrently executing threads often cause subtle bugs in concurrent programs. Such bugs are hard to discover using traditional testing techniques since they require executing a program on a particular unit test (i.e. input) through a particular thread interleaving. A promising solution to this problem is static program analysis since it can simultaneously check a concurrent program on all inputs as well as through all possible thread interleavings. This paper describes a scalable, automatic, and precise approach to static unit checking of concurrent programs implemented in a tool called Storm. Storm has been applied on a number of real-world Windows device drivers, and the tool found a previously undiscovered concurrency bug in a driver from Microsoft's Driver Development Kit.
ISBN:9781605587196
1605587192
ISSN:0270-5257
DOI:10.1145/1810295.1810460