JamVM

JamVM is a new Java Virtual Machine which conforms to the JVM specification version 2 (blue book). In comparison to most other VM's (free and commercial) it is extremely small, with a stripped executable on PowerPC? of only ~180K, and Intel 150K. However, unlike other small VMs (e.g. KVM) it is designed to support the full specification, and includes support for object finalisation, Soft/Weak/Phantom References, class-unloading, the Java Native Interface (JNI) and the Reflection API.

Building ClassPath?

First download and build classpath at http://www.gnu.org/software/classpath. Only one change needs to be applied, in native/fdlibm/ieeefp.h you need to add

#ifdef __AVR32__
#define __IEEE_BIG_ENDIAN
#endif

Configure and build using

./autogen.sh --target=avr32-linux --host=avr32-linux --without-x --without-alsa --disable-gtk-peer --disable-plugin --disable-gconf-peer --disable-examples

The patch is submitted to the classpath bugzilla but not yet included in a release.

Building JamVM

Download the attached source directory. Configure and build using
./autogen.sh --target=avr32-linux --host=avr32-linux --without-x --without-alsa --disable-gtk-peer

These are the sources of jamvm 1.5.0 with the avr32 patches applied. * jamvm-1.5.0-avr32-src.tgz: jamvm-1.5.0-avr32-src.tgz

You can also find binaries for classpath and jamvm below. They should be unpacked to /usr/local/classpath and /usr/local/jamvm respectively.

Attachment sort Action Size Date Who Comment
zipjamvm-1.5.0-avr32-src.tgz manage 5271.6 K 08 Feb 2008 - 12:43 LeenToelen  
zipusr_local_jamvm.tgz manage 1096.2 K 08 Feb 2008 - 12:50 LeenToelen  
zipusr_local_classpath.tgz manage 9464.4 K 08 Feb 2008 - 12:49 LeenToelen