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
- Files:
-
-
(Preview, Accepted manuscript, pdf, 828.6KB, Terms of use)
-
- Publisher copy:
- 10.1016/j.jss.2017.03.010
Authors
- 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
- Copyright holder:
- Elsevier Inc
- Copyright date:
- 2017
- Notes:
- Copyright © 2017 Elsevier Inc. This is the accepted manuscript version of the article. The final version is available online from Elsevier at: https://doi.org/10.1016/j.jss.2017.03.010
If you are the owner of this record, you can report an update to it here: Report update to this record