Journal article icon

Journal article

A method to localize faults in concurrent C programs

Abstract:
We describe a new approach to localize faults in concurrent programs, which is based on bounded model checking and sequentialization techniques. The main novelty is the idea of reproducing a faulty behavior, in a sequential version of a concurrent program. In order to pinpoint faulty lines, we analyze counterexamples generated by a model checker, to the new instrumented sequential program, and search for a diagnostic value, which corresponds to actual lines in a program. This approach is useful to improve debugging processes for concurrent programs, since it tells which line should be corrected and what values lead to a successful execution. We implemented this approach as a code-to-code transformation from concurrent into non-deterministic sequential programs, which are used as inputs to existing verification tools. Experimental results show that our approach is effective and capable of identifying faults in our benchmark set, which was extracted from the SV-COMP 2016 suite.
Publication status:
Published
Peer review status:
Peer reviewed

Actions


Access Document


Publisher copy:
10.1016/j.jss.2017.03.010

Authors


More by this author
Institution:
University of Oxford
Division:
MPLS
Department:
Computer Science
Role:
Author


Publisher:
Elsevier
Journal:
Journal of Systems and Software More from this journal
Volume:
132
Pages:
336-352
Publication date:
2017-03-15
Acceptance date:
2017-03-13
DOI:
ISSN:
0164-1212


Keywords:
Pubs id:
pubs:685967
UUID:
uuid:ed5a844b-284a-491f-8bf7-3a58cd7a9cd0
Local pid:
pubs:685967
Source identifiers:
685967
Deposit date:
2017-03-15

Terms of use



Views and Downloads






If you are the owner of this record, you can report an update to it here: Report update to this record

TO TOP