Combined Static and Dynamic Analysis

被引:21
作者
Artho, Cyrille [1 ]
Biere, Armin [2 ]
机构
[1] Swiss Fed Inst Technol, Inst Comp Syst, Zurich, Switzerland
[2] Johannes Kepler Univ Linz, Inst Formal Models & Verificat, Linz, Austria
关键词
Static analysis; dynamic analysis; !text type='Java']Java[!/text;
D O I
10.1016/j.entcs.2005.01.018
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Static analysis is usually faster than dynamic analysis but less precise. Therefore it is often desirable to retain information from static analysis for run- time verification, or to compare the results of both techniques. However, this requires writing two programs, which may not act identically under the same conditions. It would be desirable to share the same generic algorithm by static and dynamic analysis. In JNuke, a framework for static and dynamic analysis of Java programs, this has been achieved. By keeping the architecture of static analysis similar to a virtual machine, the only key difference between abstract interpretation and execution remains the nature of program states. In dynamic analysis, concrete states are available, while in static analysis, sets of (abstract) states are considered. Our new analysis is generic because it can re-use the same algorithm in static analysis and dynamic analysis. This paper describes the architecture of such a generic analysis. To our knowledge, JNuke is the first tool that has achieved this integration, which enables static and dynamic analysis to interact in novel ways.
引用
收藏
页码:3 / 14
页数:12
相关论文
共 20 条
  • [1] [Anonymous], 2001, 1 2 3 4 WORKSH RUNT, V55(2)
  • [2] Artho C., 2005, 466 ETH ZUR
  • [3] Artho C., 2004, P ATVA 04 SPRING
  • [4] Artho C., 2004, P CAV 04 BOST US SPR
  • [5] Brat G., 2004, FORMAL METHODS SYSTE, V25
  • [6] Bull J., 1999, P ACM JAV GRAND C
  • [7] BURROWS M, 2002, SRCTN2002004 COMP SR
  • [8] Cousot P., 1977, P S PRINC PROGR LANG
  • [9] Eugster P., 2003, THESIS
  • [10] Freund SN, 2004, J OBJECT TECHNOLOGY, V3, P81