DocumentCode
651318
Title
Verifying periodic programs with priority inheritance locks
Author
Chaki, Sagar ; Gurfinkel, Arie ; Strichman, Ofer
Author_Institution
Software Eng. Inst., USA
fYear
2013
fDate
20-23 Oct. 2013
Firstpage
137
Lastpage
144
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.
Keywords
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; Law; Programming; Protocols; Safety; Synchronization; System recovery;
fLanguage
English
Publisher
ieee
Conference_Titel
Formal Methods in Computer-Aided Design (FMCAD), 2013
Conference_Location
Portland, OR
Type
conf
DOI
10.1109/FMCAD.2013.6679402
Filename
6679402
Link To Document