Mi|k|a is a solution allowing Java(TM) programs to be run on resource-constrained embedded systems, including "headless" systems and MMU-less architectures such as ARM7TDMI. The VM and runtime environment are based on the open-source Wonka(TM) project, with special adaptations to reduce footprint, improve performance on low-memory devices, and to support MMU-less operating systems such as uClinux in addition to the Linux and NetBSD platforms already supported by Wonka.
The class libraries supplied with mi|k|a include support for all the most commonly-used packages and APIs used for embedded Java programming, so most existing applications developed for other embedded Java offerings will run on mi|k|a with little or no modification.
The source code is covered by a BSD-style license, which allows modified versions to be distributed without an obligation to supply source code. Mi|k|a can safely be linked with native code libraries without endangering confidential or proprietary information that these may contain. See the open-source Mika developers' site for more details.
A special version of Mi|k|a is available which can execute encrypted bytecode (Dragon128 stream cypher). This offers a level of protection beyond mere obfuscation; to a Java disassembler the method bytecode appears as random gibberish (the disassembler may even crash). Further information on request.
Mi|k|a is available now for ARM (ARM7TDMI, StrongARM, XScale), MIPS, x86-family and PowerPC CPU types, running under Linux, uClinux, and NetBSD.
See also: