||Architecture for Enhanced Reprogrammability and Operability|
AERO-VM - Hard Real-Time Java Virtual Machine
AERO-VM is a standard Java bytecode interpreter and an ahead of time compiler for hard real-time embedded space systems. The AERO-VM provides hard real-time guarantees for all primitive Java operations. This enables all of Java's features to be used for on-board hard real-time tasks. This includes features essential to object-oriented software development like dynamic allocation of objects, inheritance, and dynamic binding. Sophisticated automatic class file compaction and dead-code elimination techniques are involved to reduce the code footprint to the bare minimum
Class files and the AERO-VM may be linked into a standalone binary for execution out of ROM. A unique feature is provided with a new dual execution mode that allows the possibility to mix compiled and interpreted Java code. A file-system is not neccessary for running Java code even if the final systems use VxWorks and RTEMS operating sytems.
The use of dynamic class loading with AERO-VM enables the hot swapping of code and the dynamic addition of new features.
AERO-VM provide native performance with secure Java execution model and class loading capabilities.