Title
Verifying periodic programs with priority inheritance locks
Abstract
Periodic real-time programs are ubiquitous: they control robots, radars, medical equipment, etc. They consist of a set of tasks, each of which executes (in a separate thread) a specific job, periodically. A common synchronization mechanism for such programs is via Priority Inheritance Protocol (PIP) locks. PIP locks have low programming overhead, but cause deadlocks if used incorrectly. We address the problem of verifying safety and deadlock freedom of such programs. Our approach is based on sequentialization - converting the periodic program to an equivalent (non-deterministic) sequential program, and verifying it with a model checker. Our algorithm, called pipVerif, is iterative and optimal - it terminates after sequentializing with the smallest number of rounds required to either find a counterexample, or prove the program safe and deadlock-free. We implemented pipVerif and validated it on a number of examples derived from a robot controller.
Year
DOI
Venue
2013
10.1109/FMCAD.2013.6679402
Formal Methods in Computer-Aided Design
Keywords
Field
DocType
iterative methods,program verification,protocols,safety-critical software,synchronisation,PIP locks,PIPVERIF,deadlock freedom,equivalent sequential program,iterative algorithm,model checker,nondeterministic sequential program,optimal algorithm,periodic real-time program verification,priority inheritance protocol locks,programming overhead,safety verification,sequentialization,synchronization mechanism
Synchronization,Programming language,Model checking,Computer science,Iterative method,Deadlock,Theoretical computer science,Thread (computing),Real-time computing,Priority inheritance,Counterexample,Robot
Conference
Citations 
PageRank 
References 
3
0.38
14
Authors
3
Name
Order
Citations
PageRank
Sagar Chaki168741.58
Arie Gurfinkel293955.15
Ofer Strichman3107163.61