Nuremburg
Says "Willkommen" to Hard Real-Time Java
We know that there have been
numerous barriers inhibiting embedded developers from the freedoms
of using Java™. Nobody understands the challenges of breaking down
walls of separation more than Germans. Thus, Nuremburg seemed a
fitting site for the announcement of PERC Pico, the wall crusher of
the embedded world.
Java has already made substantial
inroads into segments of the embedded market. Most notably, Java
Micro Edition (JME) solutions have had tremendous success in
non-real-time applications of modest complexity, such as mobile
devices. On the real-time side, Aonix' PERC Ultra VM has been
providing reliable real-time garbage collection and predictable
threading behavior on many hundreds of thousands of fielded
installations of high functional complexity, since its introduction
nearly a decade ago.
Yet, the broader adoption of Java
programming for embedded devices has been hampered due to real and
perceived limitations of traditional Java technologies. According to
a survey by Embedded Market Forecasters, the top reasons given by
embedded developers for not yet having adopted Java for their
designs are:
-
Run time speed is slow
-
Memory requirements are
large
-
Inability to satisfy hard
real-time constraints
-
Inability to perform
low-level operations
-
Inadequate support for
target systems
-
Startup time is too long
-
Lack of safety certification
At the Embedded World Conference held in
Nuremburg, Germany on February 13-15, 2007, Aonix announced the
first commercial release of PERC Pico, the latest technology from
the PERC product line. PERC Pico technology offers the distinction
of addressing all of the factors that previously blocked the wider
adoption of Java, including:
-
Run time speed comparable or
even faster than C++, up to 3x faster than traditional Java
-
Memory footprint starting at
256k bytes, unoptimized
-
Fully deterministic real-time
constraints with low microsecond latencies
-
Direct access to low level
hardware devices
-
Supportable on all modern
architectures, RTOSs, and bare boards
-
Startup time comparable to C++
-
Characteristics suitable to the
highest level of safety certification
The remaining question that might be
asked is: why? If you've been accustomed to developing in C or C++,
why rock the boat by writing Java code? The top three reasons are:
productivity, productivity, and productivity. Studies
consistently indicate that Java code development is 2-5x more
productive than C/C++, maintenance activities are up to 10x more
productive, and error rates are a tiny fraction of those experienced
with C/C++. From a business perspective, this translates into
millions of dollars of saved engineering costs and months or years
of improved time to market.
As embedded devices become more
prolific, more interconnected, and more capable in terms of speed
and power, embedded application complexity grows exponentially.
C/C++ development truly cannot handle the strain for much longer,
and increasingly is breaking down, taking jobs and businesses with
it. Java alone is not the answer, but many are finding that it is an
increasingly important part of the solution.
It's a message that was welcomed
enthusiastically by the wall crushers in Germany last month.
We hope you enjoy
our new online newsletter format, which allows us to bring you news
in a more timely manner without killing a lot of trees. If you have
any comments or suggestions, we'd love to hear from you. Email us
at: editor@aonixnews.com.
|