Software:Mika VM
Original author(s) | Chris Gray |
---|---|
Developer(s) | Kiffer |
Initial release | December 15, 2006 |
Stable release | 1.4.6
/ May 30, 2010 |
Preview release | 1.4.7-RC2
/ October 24, 2010 |
Repository | github |
Available in | English |
License | BSD-style licence |
Website | k-embedded-java.com/mika/ (Offline) |
Mika VM is an open-source implementation of the Java virtual machine specification, together with class libraries which implement the Connected Device Configuration of Java ME. Mika VM is based on Wonka VM, which was developed independently of any other implementation, including Sun Microsystem's RI. The same is true of most of the class libraries, but in this case some code is drawn from the GNU Classpath and Apache Harmony projects. MikaVM support MIDP (Mobile Information Device Profile) 1.0 and 2.0, CDC (Connected Device Configuration) Personal Profile.[1]
Mika VM was created by one of the original Wonka VM developers after Acunia's demise and the acquisition of its assets by Punch International. The original intention was to create a smaller VM (a mini- or micro-Wonka, hence the name) which would be useful for example on ARM7TDMI devices with no MMU. In time however Mika became a full replacement for Wonka, and may be considered as its successor. Mika is based on the Wonka codebase, and is also open source under the BSD license.
Like Wonka, Mika is intended for use in embedded devices. The VM and class libraries are therefore purposely limited to the packages required by the OSGi Execution Environment, and features introduced in Java5 or later are not supported. This results in a smaller footprint, with non-AWT versions requiring less than 2 MB of persistent storage. Supported operating systems are Linux and uClinux (a proof-of-concept port to eCos has also been made), and supported architectures include x86, arm, mips, and powerpc, including non-MMU variants where applicable. In principle it should be possible to build Mika for any 32-bit CPU for which a GNU toolchain is available.
See also
- List of Java virtual machines
- Comparison of application virtual machines
- List of JVM languages
References