Magic-sets transformation for the analysis of Java']Java bytecode

被引:0
|
作者
Payet, Etienne [1 ]
Spot, Fausto [2 ]
机构
[1] Univ Reunion, IREMIA, St Denis, France
[2] Univ Verona, Dipartimento Informat, I-37100 Verona, Italy
来源
STATIC ANALYSIS, PROCEEDINGS | 2007年 / 4634卷
关键词
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Denotational static analysis of Java bytecode has a nice and clean compositional definition and an efficient implementation with binary decision diagrams. But it models only the functional i.e., input/output behaviour of a program P, not enough if one needs P's internal behaviours i.e., from the input to some internal program points. We overcome this limitation with a technique used up to now for logic programs only. It adds new magic blocks of code to P, whose functional behaviours are the internal behaviours of P. We prove this transformation correct with an operational semantics. We define an equivalent denotational semantics, whose denotations for the magic blocks are hence the internal behaviours of P. We implement our transformation and instantiate it with abstract domains modelling sharing of two variables and non-cyclicity of variables. We get a static analyser for full Java bytecode that is faster and scales better than another operational pair-sharing analyser and a constraint-based pointer analyser.
引用
收藏
页码:452 / +
页数:3
相关论文
共 50 条
  • [41] Path Executions of Java']Java Bytecode Programs
    Soomro, Safeeullah
    Alansari, Zainab
    Belgaum, Mohammad Riyaz
    PROGRESS IN ADVANCED COMPUTING AND INTELLIGENT ENGINEERING, VOL 2, 2018, 564 : 261 - 271
  • [42] Java Bytecode Verification
    Tobias Nipkow
    Journal of Automated Reasoning, 2003, 30 : 233 - 233
  • [43] Extending operational semantics of the Java']Java bytecode
    Czarnik, Patryk
    Schubert, Aleksy
    TRUSTWORTHY GLOBAL COMPUTING, 2008, 4912 : 57 - 72
  • [44] Data-flow based vulnerability analysis and Java']Java bytecode
    Chen, Hua
    Zou, Tao
    Wang, Dongxia
    PROCEEDINGS OF THE 7TH WSEAS INTERNATIONAL CONFERENCE ON APPLIED COMPUTER SCIENCE: COMPUTER SCIENCE CHALLENGES, 2007, : 201 - +
  • [45] A Comparative Analysis of Static and Dynamic Java']Java Bytecode Watermarking Algorithms
    Kumar, Krishan
    Kaur, Prabhpreet
    SOFTWARE ENGINEERING (CSI 2015), 2019, 731 : 319 - 334
  • [46] A Java']Java bytecode optimizer using side-effect analysis
    Clausen, LR
    CONCURRENCY-PRACTICE AND EXPERIENCE, 1997, 9 (11): : 1031 - 1045
  • [47] Java']Java bytecode verification for @NonNull types
    Male, Chris
    Pearce, David J.
    Potanin, Alex
    Dymnikov, Constantine
    COMPILER CONSTRUCTION, 2008, 4959 : 229 - 244
  • [48] Bytecode verification on Java']Java smart cards
    Leroy, X
    SOFTWARE-PRACTICE & EXPERIENCE, 2002, 32 (04): : 319 - 340
  • [49] Bytecode fault injection for Java']Java software
    Ghosh, Sudipto
    Kelly, John L.
    JOURNAL OF SYSTEMS AND SOFTWARE, 2008, 81 (11) : 2034 - 2043
  • [50] A type system for Java']Java bytecode subroutines
    Stata, R
    Abadi, M
    ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS, 1999, 21 (01): : 90 - 137