C H A P T E R V I - S O F T W A R E I P

RTJ COMPUTING PTY. LTD.

SimpleRTJ – JAVA VIRTUAL MACHINE

CONTACTS

AUSTRALIA

RTJ Computing Pty. Ltd.

18 Hockin Street

Willagee WA 6156 - Australia

Phone: +61 403 947343

Fax: +61 8 6210 1103

e-mail: info@rtjcom.com

The simpleRTJ is a clean room implementation of the Java Virtual machine that has been specially optimized to run on devices with limited amount of memory and without the support of any RTOS.

It has all the key features that are required from any decent VM implementation including multi-threading and garbage collection. The simpleRTJ’s customisation options make it ideal to run on a wide range of 8, 16 and 32 bit microcontrollers afit can be easily tailored to suit the target system.

Performance

Uses pre-linked Java application, which significantly reduces the application startup times as no dynamic class loading is required.

Pre-linked classes allow VM to execute bytecodes at full speed without any delays that are otherwise required to resolve constant pool symbolic references.

Efficient memory and method frames allocation schemes improve overall VM performance.

Debugging

The remote debugger is available for Java source code debugging. Debugging can be performed on the host PC (virtual debugging) or directly on the target device via serial or TCP communication drivers.

Possible applications

Smart cards, smart card readers/writers.

Electronic payment terminals.

Factory automation.

Robotic controllers.

Small consumer devices - pagers, cellular phones, etc.

Electronic toys.

Various embedded devices.

Requirements

A host computer capable of running Java and target processor development tools.

ANSI C cross-compiler for the target processor or microcontroller.

JDK 1.2 (or higher) or similar Java IDE for compiling Java applications and running the ClassLinker.

Additional tools for uploading binary images into the target devices.

Supports threads, exceptions, interfaces, multi-dim arrays, soft real-time support via javax.events

Can operate as a mini JavaOS

Three-color mark & sweep garbage collection

Java apps can be built for 64KB, banked 64KB and 16MB memory models

Remote in-device debugging

VI-09