I noticed that Real Time Java 2.2 was released back in September, seems to have come a long way from when I last looked at it. However, does anybody know of any real world uses, commercial or academic to date?
They are increasingly being used in banking, for Algorithmic Trading Applications. In these systems it is imperative that things happen when you want them to happen and no later. For example, if you are going to place an order to execute a trade in the market you need to know that will happen now, and not in 1 seconds time by which time the price may have moved against you.
There are no doubt other applications in industry where "soft" real time is not good enough. e.g. guidance & control systems.
I offered some publicly-disclosed users of real-time Java in answer to another question; I'll reproduce here:
The Real-Time Specification for Java now has several commercial-grade implementations:
- Sun's JavaRTS
- IBM's WebSphere Real-Time
- Aonix PERC
- aicas JamaicaVM
- Apogee Aphelion
These products span the continuum from compilation to native code (Aonix) to J2ME (aicas, apogee), to full J2SE (Sun, IBM). Most, if not all, have seen deployments in small numbers of safety- or mission-critical systems, but momentum is building. Examples include Eglin AFB's space surveillance radar modernization and the US Navy's use of RTSJ in the DDG-1000/Zumwalt destroyer. Sun also claims deployment in the financial transaction processing domain.
If you are interested in RTSJ, I suggest Peter Dibble's Real-Time Platform Programming, or Professor Wellings' Concurrent and Real-Time Programming in Java.
On a related note, there is also work underway to provide a Safety-Critical profile for the Java programming language, built as a subset of RTSJ. Also, an expert group has formed to explore a Distributed RTSJ DRTSJ, but the work is stalled.
Not all of the above refers to Sun's JavaRTS or even RTSJ; several vendors have pursued their own proprietary path for real-time Java because they feel the RTSJ doesn't match their customers' needs.
Some additional users I'm aware of now include Army Future Combat Systems and several of the DARPA Urban Challenge contenders.
Very realtime, but not all of the RTSJ standard is Ajile systems, they make hardware realtime java.
I used it on the M101 CROWS fire control computer. It's NOT the bit that failed in the video on youtube.
A version of Korean jet trainer T-50 will have a core application written in Real-time Java.
This Java application provides HUD, MFD diplays and all the core functions of the mission computer.
JamaicaVM from aicas is ported to indigenously developed mission computer.
Flight test is scheduled at the 4th quarter of 2010.