Using runtime analysis to guide model checking of Java']Java programs

被引:0
|
作者
Havelund, K [1 ]
机构
[1] NASA, Ames Res Ctr, Moffett Field, CA 94035 USA
关键词
concurrent programs; runtime analysis; race conditions; deadlocks; program verification; guided model checking; !text type='Java']Java[!/text;
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
This paper describes how two runtime analysis algorithms, an existing data race detection algorithm and a new deadlock detection algorithm, have been implemented to analyze Java programs. Runtime analysis is based on the idea of executing the program once, and observing the generated run to extract various kinds of information. This information can then be used to predict whether other different runs may violate some properties of interest, in addition of course to demonstrate whether the generated run itself violates such properties. These runtime analyses can be performed stand-alone to generate a set of warnings. It is furthermore demonstrated how these warnings can be used to guide a model checker, thereby reducing the search space. The described techniques have been implemented in the home grown Java model checker called Java PathFinder.
引用
收藏
页码:245 / 264
页数:20
相关论文
共 50 条
  • [1] Checking and Correcting Behaviors of Java']Java Programs at Runtime with Java']Java-MOP
    Chen, Feng
    d'Amorim, Marcelo
    Rosu, Grigore
    [J]. ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2006, 144 (04) : 3 - 20
  • [2] Model checking JAVA programs using JAVA PathFinder
    Havelund K.
    Pressburger T.
    [J]. International Journal on Software Tools for Technology Transfer, 2000, 2 (4) : 366 - 381
  • [3] Model checking programs with Java']Java PathFinder
    Visser, W
    Mehlitz, P
    [J]. MODEL CHECKING SOFTWARE, PROCEEDINGS, 2005, 3639 : 27 - 27
  • [4] Heuristic model checking for Java']Java programs
    Groce, A
    Visser, W
    [J]. MODEL CHECKING SOFTWARE, PROCEEDINGS, 2002, 2318 : 242 - 245
  • [5] Verification of MPI Java']Java Programs using Software Model Checking
    Rehman, Waqas Ur
    Ayub, Muhammad Sohaib
    Siddiqui, Junaid Haroon
    [J]. ACM SIGPLAN NOTICES, 2016, 51 (08) : 413 - 414
  • [6] Measurement and analysis of runtime profiling data for Java']Java programs
    Horgan, J
    Power, J
    Waldron, J
    [J]. FIRST IEEE INTERNATIONAL WORKSHOP ON SOURCE CODE ANALYSIS AND MANIPULATION, PROCEEDINGS, 2001, : 122 - 130
  • [7] A JPSL Based Model Checking Approach for Java']Java Programs
    Shu, XinFeng
    Li, YanLin
    Gao, WeiRan
    [J]. STRUCTURED OBJECT-ORIENTED FORMAL LANGUAGE AND METHOD, SOFL+MSVL 2022, 2023, 13854 : 30 - 49
  • [8] Heuristics for model checking Java programs
    Groce A.
    Visser W.
    [J]. International Journal on Software Tools for Technology Transfer, 2004, 6 (4) : 260 - 276
  • [9] Experience Report: Verifying MPI Java']Java Programs using Software Model Checking
    Ayub, Muhammad Sohaib
    Rehman, Waqas Ur
    Siddiqui, Junaid Haroon
    [J]. 2017 IEEE 28TH INTERNATIONAL SYMPOSIUM ON SOFTWARE RELIABILITY ENGINEERING (ISSRE), 2017, : 294 - 304
  • [10] Runtime Exception Detection in Java']Java Programs Using Symbolic Execution
    Kadar, Istvan
    Hegedus, Peter
    Ferene, Rudolf
    [J]. ACTA CYBERNETICA, 2014, 21 (03): : 331 - 352