Altering Java']Java semantics via bytecode manipulation

被引:0
|
作者
Tanter, E
Ségura-Devillechaise, M
Noyé, J
Piquer, J
机构
[1] Univ Chile, Comp Sci Dept, Santiago, Chile
[2] OCM Grp, Ecole Mines Nantes, F-44307 Nantes 3, France
关键词
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Altering the semantics of programs has become of major interest. This is due to the necessity of adapting existing software, for instance to achieve interoperability between off-the-shelf components. A system allowing such alterations should operate at the bytecode level in order to preserve portability and to be useful for pieces of software whose source code is not available. Furthermore, working at the bytecode level should be done while keeping high-level abstractions so that it can be useful to a wide audience. In this paper, we present Jinline, a tool that operates at load time through bytecode manipulation. Jinline makes it possible to inline a method body before, after, or instead of occurrences of language mechanisms within a method. It provides appropriate high-level abstractions for fine-grained alterations while offering a good expressive power and a great ease of use.
引用
收藏
页码:283 / 298
页数:16
相关论文
共 50 条
  • [1] Dynamic semantics of Java']Java bytecode
    Bertelsen, P
    [J]. FUTURE GENERATION COMPUTER SYSTEMS, 2000, 16 (07) : 841 - 850
  • [2] Extending operational semantics of the Java']Java bytecode
    Czarnik, Patryk
    Schubert, Aleksy
    [J]. TRUSTWORTHY GLOBAL COMPUTING, 2008, 4912 : 57 - 72
  • [3] Exploiting runtime bytecode manipulation to add roles to Java']Java agents
    Cabri, G
    Ferrari, L
    Leonardi, L
    [J]. SCIENCE OF COMPUTER PROGRAMMING, 2005, 54 (01) : 73 - 98
  • [4] Injecting roles in Java']Java agents through runtime bytecode manipulation
    Cabri, G
    Ferrari, L
    Leonardi, L
    [J]. IBM SYSTEMS JOURNAL, 2005, 44 (01) : 185 - 208
  • [5] Java']Java bytecode optimizations
    Lambright, HD
    [J]. IEEE COMPCON 97, PROCEEDINGS, 1997, : 206 - 210
  • [6] Java']Java bytecode verification
    Nipkow, T
    [J]. JOURNAL OF AUTOMATED REASONING, 2003, 30 (3-4) : 233 - 233
  • [7] A Java']Java Bytecode Formalisation
    Czarnik, Patryk
    Chrzaszcz, Jacek
    Schubert, Aleksy
    [J]. VERIFIED SOFTWARE: THEORIES, TOOLS, AND EXPERIMENTS, (VSTTE 2018), 2018, 11294 : 135 - 154
  • [8] On object initialization in the Java']Java bytecode
    Doyon, S
    Debbabi, M
    [J]. COMPUTER COMMUNICATIONS, 2000, 23 (17) : 1594 - 1605
  • [9] Java']Java bytecode verification via static single assignment form
    Gal, Andreas
    Probst, Christian W.
    Franz, Michael
    [J]. ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS, 2008, 30 (04):
  • [10] Deadlock Detection of Java']Java Bytecode
    Laneve, Cosimo
    Garcia, Abel
    [J]. LOGIC-BASED PROGRAM SYNTHESIS AND TRANSFORMATION (LOPSTR 2017), 2018, 10855 : 37 - 53