Home

News: Sun unveils first real-time Java implementation

  1. Sun on Tuesday in the US released its first Java platform that offers real-time capabilities. The platform, Java Real-Time System 1.0, implements the Real-time Specification for Java (RTSJ), a blueprint for how Java can be extended to support real-time application programming.

    This is one of the oldest JSRs (JSR-1!), indicating that real-time for Java is either very low priority or that it's a "hard problem." (Probably the latter.) Real-time systems aren't required to be fast, but are required to be predictable, which can be much harder than it sounds, especially given Java's thread model.

    The real-time implementation looks to be closer to Java Micro Edition than Java SE, such that programmers will have to directly handle things like memory allocation.

    With so many devices running Java now (two and a half billion java devices deployed worldwide, compared to 700 million PCs being Java-enabled, according to Sun on Day One of Java One 2005), should Java EE be eyeing this market for access from and to the enterprise? What possibilities do you see?

    (Editors' note: we are aware that a link for Sun's realtime release is missing. This will be added as soon as it's publicly available.)

    Threaded Messages (7)

  2. OVMJ[ Go to top ]

    I think the realtime release is based on this: http://ovmj.org/
  3. OVMJ[ Go to top ]

    I think the realtime release is based on this: http://ovmj.org/

    It could be. However, there are other realtime VMs, as well, based on JSR-1 - but no Sun VMs that I know of.
  4. Use?[ Go to top ]

    What are some examples of Real Time programing, or Rea Time applications?
  5. Use?[ Go to top ]

    What are some examples of Real Time programing, or Rea Time applications?

    There was a fun example at JavaOne last year were a real-time java application kept some unstable system (a long stick balanced on its end) constantly upright through monitoring of its position and working out corrections in real time.
  6. Use?[ Go to top ]

    What are some examples of Real Time programing, or Rea Time applications?

    "A real-time system is one in which the correctness of the computations not only depends on their logical correctness, but also on the time at which the result is produced. In other words, a late answer is a wrong answer.

    As an example of a real-time system, consider a computer-controlled machine on the production line at a bottling plant. The machine's function is simply to cap each bottle as it passes within the machine's field of motion on a continuously moving conveyor belt. If the machine operates too quickly, the bottle won't be there yet. If the machine operates too slowly, the bottle will be too far along for the machine to reach it. Stopping the conveyor belt is a costly operation, because the entire production line must correspondingly be stopped. Therefore, the range of motion of the machine coupled with the speed of the conveyor belt establishes a window of opportunity for the machine to put the cap on the bottle....."

    Here is a great introduction to "Real time computing": http://www.embedded.com/shared/printableArticle.jhtml;jsessionid=AH5X5W5BOKOI4QSNDBGCKH0CJUMEKJVN?articleID=9900353

    Dmitriy.
  7. Use?[ Go to top ]

    Steve and Dmitriy,

    Thanks for the examples, now I get it. Funny I had never thought about an application this way before.
  8. Use?[ Go to top ]

    What are some examples of Real Time programing, or Rea Time applications?

    A better question might be: Which real time systems would be the first migrated to Java? Despite another poster's factory suggestion in this thread, my guess is that embedded systems aren't the primary candidate. Instead I naively suppose that realtime transaction processing systems running on enterprise server operating systems and traditionally coded in C/++ would be the first migrated to realtime Java. Ie, realtime Java might simply be an incremental step further into the enterprise server.