harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Nick Lothian" <nloth...@educationau.edu.au>
Subject Pluggable bytecode verifiers (was RE: Summer of Code, something for Harmony?)
Date Mon, 06 Jun 2005 01:47:02 GMT
Bytecode verifiers appear to be one thing where the Harmony project
could contribute some work in standardising interfaces.

At the moment I know of two open source verifiers written in Java: BCEL
(http://jakarta.apache.org/bcel/index.html, Apache Licence) and ASM
(http://asm.objectweb.org/, BSD Licence)

I believe that GCJ also has a verifier which it is (planning on?)
sharing with Kaffe, but I haven't looked at that.

The BCEL verifier can be used from the Verifier class

The ASM verifier can be used from CheckClassAdapter:

>From a short investigation, both verifiers have their advantages: for
instance BCEL provides more complete verification, while ASM is faster
and provides some JDK1.5 features. A more complete comparison can be
found at
3E> and

It would appear to be a relatively simple task to create an interface
that wrapped either of these verifiers. Presumably it would be no more
work to integrate that common interface than it would be to integrate
the native BCEL verifier.

> I posted a proposal in the wiki
> http://wiki.apache.org/general/SummerOfCode2005 
> It is about integrating the BCEL class verifier with one or 
> more OS JVM (written in C or Java).
> JikesRVM has no current class verifier, neither jamvm or 
> sableVM. As far as I know, the spec mandates to have class 
> verification (I just read it in my JVM Spec (a bit old).
> I have been testing how feasible it is, and it looks the 
> right size for someone interested in understanding this 
> world, and something doable in a summer.


IMPORTANT: This e-mail, including any attachments, may contain private or confidential information.
If you think you may not be the intended recipient, or if you have received this e-mail in
error, please contact the sender immediately and delete all copies of this e-mail. If you
are not the intended recipient, you must not reproduce any part of this e-mail or disclose
its contents to any other party.
This email represents the views of the individual sender, which do not necessarily reflect
those of education.au limited except where the sender expressly states otherwise.
It is your responsibility to scan this email and any files transmitted with it for viruses
or any other defects.
education.au limited will not be liable for any loss, damage or consequence caused directly
or indirectly by this email. 

View raw message