Title :
Effective Static Analysis to Find Concurrency Bugs in Java
Author :
Zhi Da Luo ; Hillis, Linda ; Das, Raja ; Qi, Yao
Author_Institution :
IBM China Dev. Lab., Beijing, China
Abstract :
Multithreading and concurrency are core features of the Java language. However, writing a correct concurrent program is notoriously difficult and error prone. Therefore, developing effective techniques to find concurrency bugs is very important. Existing static analysis techniques for finding concurrency bugs either sacrifice precision for performance, leading to many false positives, or require sophisticated analysis that incur significant overhead. In this paper, we present a precise and efficient static concurrency bugs detector building upon the Eclipse JDT and the open source WALA toolkit (which provides advanced static analysis capabilities). Our detector uses different implementation strategies to consider different types of concurrency bugs. We either utilize JDT to syntactically examine source code, or leverage WALA to perform interprocedural data flow analysis. We describe a variety of novel heuristics and enhancements to existing analysis techniques which make our detector more practical, in terms of accuracy and performance. We also present an effective approach to create inter-procedural data flow analysis using WALA for complex analysis. Finally we justify our claims by presenting the results of applying our detector to a range of real-world applications and comparing our detector with other tools.
Keywords :
Java; concurrency control; data analysis; multi-threading; Eclipse JDT; Java development tool; Java language; WALA toolkit; concurrency bugs; interprocedural data flow analysis; multi-threading; static analysis technique; Computer bugs; Concurrent computing; Detectors; Instruction sets; Java; Monitoring; Synchronization; bug pattern; concurrency; multithread; static analysis;
Conference_Titel :
Source Code Analysis and Manipulation (SCAM), 2010 10th IEEE Working Conference on
Conference_Location :
Timisoara
Print_ISBN :
978-1-4244-8655-7
DOI :
10.1109/SCAM.2010.20