Fixing the Java Bytecode Verifier by a Suitable Type Domain
Recommend Documents
system for a sequential fragment of the Java Virtual Machine (JVM) with ob- ... of bytecode verification and thus can be integrated in a standard Java security.
is the Java VM itself|including the bytecode veri er|plus .... the load and store instructions respectively. ..... While testing does not provide an adequate re-.
A typical example of this situation is to download a web page ... version of the bug-free software. ... class inheritance, polymorphism and dynamic binding. [4, 11 ...
two diff erent back-ends: one that compiles the transition system and properties to the input language of the S M V model checker and a second that generates.
used for this purpose must be side-effect free, and are called pure meth- ods. ... examples shown in this paper can be downloaded from the authors' home- .... show how Kassios' solution applies to Java-like inheritance [3, Future Work].
Sep 20, 2010 - NASA Ames Research Center, Moffett Field, CA 94035, USA. {corina.s.pasareanu ... D.2.5 [Software Engineering]: Testing and Debuggingâ. Symbolic Execution .... dispatch them to an appropriate constraint solver that can.
I thank Tobias Nipkow for supervising this thesis. ...... So hp ⣠v ::⼠T (v conforms to T in hp) implies that v is either a value of primitive ...... [94] Phillip M. Yelland.
BCEL (formerly JavaClass) allows you to load a class, iterate through the
methods and fields ... BCEL also makes it easy to create new classes from
scratch. [2].
There was a problem previewing this document. Retrying... Download. Connect more apps... Try one of the apps below to op
2 Dept. of Computer Science, Trinity College Dublin, Ireland. .... The bigram at rank seven is made up of the same bytecodes as the top ranked bigram. - but in a ...
To prove termination of Java Bytecode (JBC) automatically, we transform JBC to finite termination graphs which represent all pos- sible runs of the program.
compiled by Hyperion can be executed with true parallelism in all these envi- ronments. In this paper we describe the overall design of the Hyperion system, the.
ing class related data and bytecode instructions (Figure. 1 shows a simple ... One way is to use program dependence analysis tech- nique. ... control ows and data ows in the program. ... A control ow graph (CFG) of a bytecode method M is.
backward slice, since it associates a slicing criterion with a set of program locations ...... http://www.epcc.ed.ac.uk/javagrande/seq/contents.html. [7] Kawa, a Java ...
chine (JVM) pioneered the concept of code verification, by which a receiving host ... then the original bytecode is forwarded to the JVM's execution component, ..... plicable to other mobile-code systems besides the JVM, such as Microsoft's .
bytecode level, the program source code is not needed. In ... ASM [12], Javassist [7], JOIE [8], etc. ..... clude the name of the Java source file and a line number for.
Debray and Lin's work [11] investigates key features of ...... [3] A. V. Aho, R. Sethi, and J. D. Ullman. ... Rocco De Nicola, editor, 16th European Symposium on Programming, ESOP'07, Lecture Notes in ... [21] P. Vasconcelos and K. Hammond.
... AND OPTIMIZATION OF JAVA CLASSES. A Thesis. Submitted to the Faculty of
..... For example, in the program in Figure 2.2a we wish to hoist the expression.
Modern programming languages are, however, very com- plex. ... 1, taken from the Google's HoneycombGallery Android application. The statement.
Technical Report CLIP1/2007.0, School of Computer. Science, UPM, February 2007. [10] M. Hermenegildo, G. Puebla, K. Marriott, and P. Stuckey. Incremental ...
... to support the software. anymore, or they are out of business), the user is the only ... of software engineering tools for Java Bytecode programs. The Kafer is a ...
Dec 22, 1997 - This paper gives a mathematical specification the Java Virtual ... bytecode), not Java⢠source is transmitted when an âapplet" is sent over the ...
1. Introduction generation and transformation. The ASM1 library was therefore designed to work on compiled Java classes.
a system, dubbed FINCH (Fertile Darwinian Bytecode Harvester), to evolution- arily improve actual, extant software, which was not intentionally written for.
Fixing the Java Bytecode Verifier by a Suitable Type Domain
a domain of types which is more expressive than the one used ... Jump to address L and push the address of the following instruction onto the stack ret x.
Fixing the Java Bytecode Verifier by a Suitable Type Domain Roberto Barbuti Luca Tesei
Cinzia Bernardeschi Nicoletta De Francesco
Dipartimento di Informatica Universita` di Pisa Corso Italia 40 56100 Pisa, Italy
Dipartimento di Ingegneria dell’Informazione Universita` di Pisa Via Diotisalvi 2 56100 Pisa, Italy
ABSTRACT
!
" # $ % & ' Æ
1.
INTRODUCTION
() *+, - . - / ! 0 & 1 *2 3 4 5 6
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. SEKE ’02, July 15-19, Ischia, Italy. Copyright 2002 ACM 1-58113-556-4/02/0700 ...75.00
89 8:, ; & " # . ; / B - D I $ ' ' J ; ' K L @ :99: *:, > @ > J $ ' " ' @ @?@-E++ $> @ :F5M:35 86++ *F, > @ > J > E $(8)"2FM3+ 86+6 *2, / . B > $ / / I - $> > ?#? @ . - N $ 8666 *3, G 1 $ ? B ;! $ . . $ . E65 -B>. 839F . 8665 *4, - O " ' @ >$E98 . -B>. :89: :998
*+, - P / . . $ = 8666 *5, B I /?..$>. :998 -B>. :9F9 . :998 *6, ?E> J $ . > . I . $> . @ @ - 8666 *89, Q R .