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
| |