APHELION OVERVIEW

Aphelion is comprised of reliable and high performance JREs (Java Runtime Environments) for deploying Java applications on devices based on embedded systems. Aphelion also includes a complete JDE (Java Development Environment) optionally offered with each JRE in a configuration that is customized for and works seamlessly with this JRE.

All Aphelion JREs are based on core Java technologies licensed by Apogee from IBM, such as the J9 Java Virtual Machine (J9VM) compatible with Sun's J2ME CDC VM and the advanced Just-In-Time (JIT) compiler, which are enhanced by Apogee for the needs of Apogee's customers and ported to customer-requested OS/processor platforms. This results in base J9VM+JIT JREs that are completed for the specific needs of Apogee's customers by adding to them the optional components and features requested by such customers.

Aphelion brings to the developers of software for devices based on embedded system the benefits that made Java highly popular on desktops and enterprise systems, such as:

  • Creation of Java applications in shorter and fewer development cycles.
  • Simple and reliable runtime deployments.
  • Less costly technical support, maintenance, and updates.
  • Easy migration of Java applications to other target platforms.
  • distribution of Java applications in hardware-independent bytecode JAR files.
Main features of Aphelion JREs

Aphelion JREs are highly suitable for effective deployments on many types of devices based on embedded systems, such as the wireless communication devices, electronic consumer appliances, industrial devices, RFID readers, Internet related devices, point-of-sale terminals, and Infotainment and Telematics devices. After Apogee became a source-code licensee of IBM's Java technologies in July 2003, it created at least one JRE (over 50 JREs in total) for each these types of devices.

Aphelion JREs are also highly suitable for running, with exceptional runtime performance, many kinds of Java applications, including: (i) large and/or complex applications targeted at sophisticated devices, such as set-top boxes, residential gateways, and Telematics devices; (ii) applications the components of which come in form of dynamically loaded OSGi bundles or CORBA objects; (iii) applications that use complex graphics; (iv) applications that use extensively C/C++written native methods; etc. Please note that each such application can only use the components (Java API packages, client-side runtimes, application-level packages) the ports of which are included in the targeted JRE. However, should a given application need any additional components, Apogee can always add the ports of such components to the JRE.

Each JRE is created for a customer-requested OS/processor platform in one of the following two main configurations selected to best satisfy the needs of Java applications that will be running on this JRE:

  • The micro edition JRE (ME JRE) compatible with Sun's J2ME platform.

  • The standard edition JRE (SE JRE) compatible with Sun's Java 5 (J2SE 1.5) platform or with a customer requested subset of Java 5 platform. The SE JREs compatible with Sun's Java 6 (J2SE 1.6) platform will be available in near future.
To create an ME or SE JRE for a given OS/processor platform, Apogee first creates a base OS/processor-targeted J9VM+JIT JRE. Then, in case of the ME JRE, Apogee adds to the base JRE the OS/processor ports of IBM's Foundation Class Library (FCL) compatible with Sun's J2ME CDC Foundation Profile and customer-requested optional components, such as:
  • Additional Java class libraries from IBM. For example, the Personal Class Library (PCL) compatible with Sun's J2ME CDC Personal Profile.

  • IBM's and Apogee's implementations of API packages defined by J2ME Java Specification Requests (JSRs). For example, the XML Support & Web Services package defined by JSR-172.

  • J2ME-compatible client-side 'runtimes' from IBM or providers of open-source Java software. For example, the Equinox OSGi R4 runtime from Eclipse eRCP (embedded Rich Client Platform).

  • J2ME-compatible application-level packages from providers of open-source Java softwware. For example, the log4J package from Apache.org.
In case of the SE JRE, Apogee adds to the base J9VM+JIT JRE the OS/processor ports of: (i) either the entire Harmony class library from Apache.org compatible with Sun's Java 5 (J2SE 1.5) platform or a subset of Harmony API packages needed by customer's Java applications, other components of the final JRE (see below), or because of the manner a customer will use the SE JRE; (ii) the "glue layer" of special Apogee-created Java classes that make the ports of Java 5 compatible Harmony APIs work with the port of J2ME compatible J9VM; and (iii) the customer-requested optional components, such as:
  • Java 5 or J2ME compatible client client-side runtimes from IBM or providers of open-source Java software, as long as each such runtime only uses the API packages available in Harmony class library. For example, the full J2SE-level Quinox OSGi runtime from Eclipse.org or Jetty webserver from Mortbay.org.

  • Java 5 or J2ME compatible application-level packages from providers of open-source Java software, as long as each such packages only uses the API packages available in Harmony class library. For example, the Tomcat servlet container from Apache.org.

  • IBM's or Apogee's implementation of such API packages defined by J2ME JSRs that do not have the functionally equivalent API packages in Harmony.
Then, Apogee extensively tunes the completed ME or SE JRE for the highest possible performance when running customer's Java applications. And, in case of a memory-constrained target device, the final JRE is also tuned for the smallest possible runtime "footprint" on the RAM of such a device.

Each ME JRE can be certified by IBM as compliant with Sun's J2ME CDC platform. This means that devices having the ME JRE installed on them can be distributed with Sun's "steaming coffee cup" logo and/or "Java Powered" slogan. Note that IBM has the right given to it by Sun to certify ME JREs as compliant with the J2ME platform as long as a given ME JREs passes all tests in relevant Sun's J2ME TCK test suites.

Each SE JRE accepts and runs the JAR files of Java applications in Java 5 format, and can include Apogee's implementations of customer-requested Java 5 features provided in one of the following sets:

  • The Basic set includes: (i) fully supported Enhanced 'for Loop', Autoboxing/Unboxing, Static Import, and Varargs; and (ii) partially supported Typesafe Enums, Generics, Reflections, Assertions, and Annotations/Metadata. Note that a partial support for a given feature does not include the underlying support that would be provided by a port of J9VM for the full support. For example, the partial support of assertions means that each assertion is accepted but is not acted upon by a port of J9VM.

  • The Full set includes: (i) all that is included in the Basic set; (ii) the ports of java.lang, java.util, java.rmi, java.jdbc, and other relevant API packages from Harmony; and (iii) fully supported JAXB (Java Architecture for XML Binding adopted from Sun's open-source Glassfish project) and Reflections (needed by JAXB APIs).

  • The Expert set includes: (i) all that is included in the Full set; (ii) fully supported Assertions, and Annotations/Metadata; and (iv) fully supported remaining Java 5 features requested by a customer, such as Typesafe Enums, Generics, Assertions, Extended Math, Annotations/Metadata, Process builder, Formatter, High precision timing, etc.
Each ME or SE JRE can be provided in a configuration compliant with the Real-Time Specification for Java (RTS), in which case:
  • It also includes the RTOS/processor port of Apogee's RTSJ Class Library (RTSJCL) with the implementations of RTSJ features that does not have to be implemented in a Java VM.

  • Its port of J9VM includes Apogee's implementations of RTSJ features that must be implemented in a Java VM.

  • ;It includes, instead of the JIT compiler, Apogee's JAOT (Just-Ahead-of-Time) compiler based on IBM's JIT compiler technology.
Please check more detailed description of ME and SE JREs for the additional features, technology enhancements, and information on many optional components that can be included in ME or SE JREs.

Operating systems (OSs) that can be targeted by ME and SE JREs:

  • 'Embedded' Linuxes based on recent Linux kernels (2.4.x and higher) from commercial providers (MontaVista Linux, Wind River's Commercial Grade Linux, LynuxWorks' BlueCat Linux, TimeSys Linux, etc.) and 'open source' providers (Debian Linux, Deng Linux, OpenWRT, etc.), as well as 'in-house created' Linuxes of Apogee's customers.

  • Enterprise Linuxes (RedHat Linux, RedHat MRG Linux, SUSE Linux, etc.).

  • Windows Mobile, Windows CE, VxWorks, LynxOS, QNX Neutrino, Integrity, and BSD UNIX.
Processor types that can be targeted by ME and SE JREs:

  • x86, PowerPC, ARM, XScale, MIPS, or SH4 processors running any Linux.

  • x86, ARM, or XScale processors running Windows Mobile or Windows CE.

  • x86, PowerPC, ARM, XScale, or MIPS processors running VxWorks.

  • x86, PowerPC, or MIPS processors running LynxOS, Neutrino, Integrity, or BSD UNIX.
Features of Aphelion JDE

Based on IBM WebSphere Studio Device Developer, Aphelion JDE provides an easy-to-use yet powerful GUI, project manager, editors, browsers, ANT tools, and other tools, including IBM's JLink, an ahead-of-time optimizer of runtime footprint and ROMizer.

If requested for a given JRE, JDE is provided in configurations customized for this JRE, which allows the use of JDE GUI to remotely control, analyze, and debug the Java applications running on a given JRE. This results in a comprehensive cross-development & deployment environment.

Host platforms of JDE

Windows/x86 and Linux/x86 (any desktop or enterprise Linux).

In summary, Aphelion JREs and JDE comprise a complete software offering highly suitable for productive development and high performance deployments of all kinds of Java applications targeted at many types of devices based on embedded systems.

Please contact Apogee by phone or email for more information about Aphelion JREs and JDEs. We will also be pleased to discuss with you:

  • The most effective and least costly strategy on creating an ME or CE JRE and (optionally) a corresponding configuration of JDE for your RTOS/processor target platform.

  • Customizing the created JRE for your specific needs.

  • The most effective use of the final JRE for deploying your Java applications.

  • Licensing of created JRE for permanent internal use by your organization and/or for commercial distribution to your customers and other third parties.

  • Licensing of created JDE configuration for permanent internal use by your organization.

Home | Corporate Info | Products | Download | Order | News | Resellers






Google
www.apogee.com Web