跳到主要导航 跳到搜索 跳到主要内容

HEAT: A combined approach for thread escape analysis

  • Qichang Chen
  • , Liqiang Wang
  • , Zijiang Yang

科研成果: 期刊稿件文章同行评审

3 引用 (Scopus)

摘要

Thread escape analysis can determine whether and when a variable becomes shared by multiple threads, which is a foundation for many other program analysis and software testing techniques. Most existing escape analysis tools are either purely dynamic or static analyses. Static analysis, which considers all possible behaviors of a program, may produce false positives; whereas dynamic approaches miss the information from unexecuted code sections of a program. This paper presents a hybrid approach that integrates static and dynamic analyses to address this problem. We first perform static analysis to obtain succinct summaries of accesses to all variables and interprocedural information. Dynamic analysis is then used to confirm variable sharing; for unexecuted code, we determine the sharing of variables by performing an interprocedural synthesis based on the runtime information and static summaries. Compared to dynamic analysis, the hybrid approach is able to determine the escape property of variables in unexecuted code. Compared to static analysis, the hybrid approach produces fewer false alarms. We implemented this hybrid escape analysis in Java. Our experiments on several benchmarks and real-world applications show that the hybrid approach improves the accuracy of escape analysis compared to existing approaches and significantly reduces the performance overhead of a subsequent program analysis.

源语言英语
页(从-至)135-143
页数9
期刊International Journal of System Assurance Engineering and Management
2
2
DOI
出版状态已出版 - 6月 2011

学术指纹

探究 'HEAT: A combined approach for thread escape analysis' 的科研主题。它们共同构成独一无二的指纹。

引用此