Java ME Embedded and Java Embedded Suite: New Java Technologies for the Embedded Market
Oracle has released Java ME Embedded 3.2 and Java Embedded Suite 7.0, two new additions to Oracle's line of Java Embedded technologies. Java ME Embedded is a Java runtime optimized for microcontrollers and other resource-constrained devices based on the ARM architecture. Java Embedded Suite is a Java application platform for embedded systems, which consists of Java SE Embedded, GlassFish Embedded Profile, Jersey and Java DB.
Java ME Embedded
Java ME Embedded is a runtime stack designed and optimized for embedded, low power devices such as microcontrollers and other resource-constrained devices based on the ARM chipset. By using Java technology, applications for embedded devices are no longer tied to a single hardware platform. Java ME Embedded also enables secure application upgrades in the field, providing for after-market updates to certified devices. Target markets include wireless modules for Machine to Machine (M2M) communication, industrial and building control, smart grid infrastructure, home automation, vending machines, and environmental sensors and tracking.
Java ME Embedded Product Stack
The system requirement for Java ME Embedded is an ARM architecture SoC (System on Chip), which includes ARM9, ARM11, and Cortex-M, Cortex-R, and Cortex-A chips. It requires only 130 KB RAM, 350 KB ROM for a minimal, customized configuration, and 700 KB RAM, 1500 KB ROM for a full, standard configuration.
With the Java ME SDK and IDE plug-ins, device developers get a complete application development environment. Applications can be tested and debugged on desktop computers using embedded device emulators, with built-in support for profiling and network monitoring. Also provided is the ability to deploy, debug and test applications directly on the target hardware.
For more information, please read the Java ME Embedded FAQ. The FAQ talks about both the standard and embedded-specific APIs provided by Java ME Embedded. It also discusses the differences between Java ME Embedded, Java Embedded Client and Java SE Embedded. Note that the Java ME Embedded runtime does not support hard real-time capabilities, and developers will need to leverage the underlying RTOS for native real-time operations.
Java Embedded Suite
Java Embedded Suite is a packaged application platform that facilitates the creation of applications for more powerful embedded systems. It can be used as a foundation for building applications for devices like network appliances, medical devices, multi-function printers and military defense systems. Oracle has pre-integrated a standards-based web server, relational database server, and REST web services framework optimized for embedded devices. The stack consists of Java SE Embedded 7u6+, GlassFish 3.1+ Embedded Profile, Java DB 10.8+ and Jersey 1.11+. The Java platform has been optimized for embedded devices but remains fully compliant with the Java SE 7 and Java Servlet 3 specifications. Configuration options are available to enable deployment-specific tuning and performance optimizations.
Java Embedded Suite is available for Linux on x86 and Linux on ARM. Minimum requirements are 64 MB RAM, 66 MB ROM and a Linux kernel 2.6.28 with glibc 2.9. ARM-based devices must have an ARM V6 and V7 CPU. An evaluation implementation of Java Embedded Suite is available for download.