Loading [MathJax]/extensions/MathMenu.js
Debugging Multithreaded Programs Using Symbolic Analysis | IEEE Conference Publication | IEEE Xplore

Debugging Multithreaded Programs Using Symbolic Analysis


Abstract:

Debugging multithreaded software is challenging because the basic assumption that underlies sequential software debugging, i.e. the program behavior is deterministic unde...Show More
Notes: This article was mistakenly omitted from the original submission to IEEE Xplore. It is now included as part of the conference record.

Abstract:

Debugging multithreaded software is challenging because the basic assumption that underlies sequential software debugging, i.e. the program behavior is deterministic under fixed inputs, is no longer valid due to the nondeterminism brought by thread scheduling. To restore this basic assumption, we propose a proactive debugging method so that programmers can debug multithreaded programs as if they were sequential. Our approach is based on the synergistic integration of a set of new symbolic analysis and dynamic analysis techniques. In particular, symbolic analysis is used to investigate the program behavior under multiple thread interleavings and then drive the dynamic execution to new branches. Dynamic analysis is used to execute these new branches and in turn guide the symbolic analysis further. The net effect of applying this feedback loop is a systematic and complete coverage of the program behavior under a fixed test input.
Notes: This article was mistakenly omitted from the original submission to IEEE Xplore. It is now included as part of the conference record.
Date of Conference: 13-17 March 2017
Date Added to IEEE Xplore: 20 July 2017
ISBN Information:
Conference Location: Tokyo, Japan

Contact IEEE to Subscribe

References

References is not available for this document.