Visualization of Deadlock and Wait-Notify Anomaly in Multithreaded Programs

Loading...
Thumbnail Image

Supervisors

Journal Title

Journal ISSN

Volume Title

Publisher

Abstract

Multithreaded programs deal with simultaneous execution of multiple threads. There are various types of bugs that can occur during execution of multithreaded programs like deadlock, livelock, race condition and synchronization faults. These bugs are difficult to detect and correct due to non-deterministic nature of multithreaded program execution. This thesis work presents a critical analysis of these bugs by categorizing them on the basis of their detection and visualization techniques. Here, deadlock due to lock acquisition and wait-notify dependency have been addressed. Dependencies have been visualized with four types of dependence graphs, namely data-control, lock acquisition, wait-notify and thread dependence graphs. A prototype tool Bug Visualizer has been proposed to provide a graphical representation for multithreaded programs and finally to locate the bugs. Suspicion of deadlock is detected due to the presence of cycle in lock dependence and thread dependence graphs. Algorithms have also been proposed for visualizing deadlock and wait-notify anomaly in multi-threaded programs.

Description

ME, CSED

Citation

Endorsement

Review

Supplemented By

Referenced By