Embedded & Real-Time JSE
Most legacy embedded and real-time applications were developed with C or C++. Although error-prone, such approaches were adequate when embedded applications were simple and small, and hardware was slow and expensive. Today, the embedded equation has changed. As hardware costs plummet and capacity soars, embedded software requirements become more complex and demanding. Because software engineering is labor intensive and costly, and because complexity exponentially increases problems of reliability, integration, and maintenance, the old ways are increasingly intractable.
Java offers a solution to increasing complexity, by providing a technology base that is far more scalable and reliable than C or C++. Huge standard libraries and off-the-shelf componentware compatible with Java’s Standard Edition make it easy to assemble highly complex applications while minimizing “wheel reinvention”. Further, Java’s design not only increases productivity as much as 2-5x over C/C++, but also reduces errors by as much as tenfold. The result for you is better software, faster, and for less engineering cost.
Aonix Perc combines predictable and reliable performance with Java Standard Edition compatibility. Compared to traditional development platforms, the benefits of Aonix Perc are both clear and compelling: a more productive development cycle, and more efficient and reliable programs. These advantages result in faster time to market and higher customer satisfaction, on budget, and are why Aonix Perc is the most field-tested virtual machine for real-time Java developers. Aonix Perc is the most widely used and deployed solution for embedded Java developers.
At first glance, the words “Java” and “Hard Real-Time” or “resource-constrained” would appear to be ill-suited to be used in the same sentence. Atego has forever changed the landscape for Java hard real-time development. The Aonix Perc Pico technology breaks performance barriers by making it possible to write Java code to create applications with the performance of C code.
Aonix Perc Pico programs:
- Run 3x faster than typical Java programs
- Have a memory footprint comparable to optimized C, and a tiny fraction of conventional Java progrms
- When integrated with Java SE programs, run as much as twice the speed as the same programs running with C code
- Provide direct hardware device access and interrupt handling capabilities
- Are fully predictable and deterministic
- Offers low microsecond latencies
Aonix Perc Pico is designed as a profile of the Real-Time Specification for Java (RTSJ). The RTSJ specification is very broad in scope, providing a framework for many types of real-time Java implementations. Early implementations of RTSJ have largely failed by trying to be all things to all people, typically resulting in a bloated and unwieldy implementation that is not appropriate for real world applications deeply-embedded or resource constrained, and can come at the expense of Java’s productivity and scalability advantages.
Aonix Perc Pico has solved this problem by extracting the hard real-time essence of RTSJ and augmenting that core capability with low-level features missing from RTSJ. The result is a solution ideal for resource constrained stand-alone applications, or, in a complex multi-layered application, as a replacement for components that might otherwise have been written in C or C++.
Atego has published its RTSJ profile specifications and is working toward standardization through the Java Community Process (JSR-302), an effort being driven by The Open Group.