NanoVM 1.1 review
DownloadNanoVM is a tiny (less than 8 kB of code including simple native classes and a bootloader) implementation of the Java VM
|
|
NanoVM is a tiny (less than 8 kB of code including simple native classes and a bootloader) implementation of the Java VM. NanoVM project currently runs on Linux and the AVR microcontroller family.
Unix/Linux is supported as the main development and testing platform, whereas the VM is primarily intended to be used on tiny embedded devices such as the AVR. The VM can very easily be ported for other targets.
Here are some key features of "NanoVM":
Support for standard java bytecode
Tested on AVR Mega8 and Mega32
Complete 15 bit integer arithmetic
Garbage collection
Bootloader for simple application upload
Tested with Suns JDK and IBMs jikes
Supports inheritance
Unified stack and heap architecture
Requires less than 8kBytes of code memory
512 Bytes code storage for java byte code (the complete 512 eeprom bytes available on the AVR ATmega8 CPU)
768 Bytes application RAM available (of 1k total RAM available on the AVR ATmega8 CPU)
About 20k Java opcodes per second on 8 Mhz AVR
Native classes include:
java/lang/Object (object handling)
java/lang/System (IO handling)
java/io/PrintStream (console output)
java/lang/StringBuffer (string processing)
asuro (asuro control)
NanoVM 1.1 search tags