Published on

The presentation on RTSJ, I had given in Aftek Ltd.

Published in: Business, Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide


  1. 1. RTSJ Real Time Specification for Java
  2. 2. Real Time <ul><li>“Real-Time” Does Not Mean “Real Fast” </li></ul><ul><li>“Scientifically speaking, real-time means the ability to reliably and predictably reason about and control the temporal behavior of program logic” </li></ul><ul><li>Real time control system: sensing, control, and actuation </li></ul>
  3. 3. Why not Java SE ? <ul><li>Unpredictable latencies introduced by automatic memory management (garbage collectors) </li></ul><ul><li>Inadequate scheduling control </li></ul><ul><li>Unpredictable synchronization delays </li></ul><ul><li>Very coarse timer support </li></ul><ul><li>No asynchronous event processing </li></ul><ul><li>No &quot;safe&quot; asynchronous transfer of control </li></ul>
  4. 4. Features and Benefits <ul><li>New Real-Time Threads, Scheduling, and Synchronization </li></ul><ul><ul><li>Real-time threads </li></ul></ul><ul><ul><ul><li>More levels (28) of thread priority and enforced strictly </li></ul></ul></ul><ul><ul><ul><li>Precise thread scheduling hence no priority inversion scenario </li></ul></ul></ul><ul><ul><ul><li>Real time GC </li></ul></ul></ul><ul><ul><li>No-heap real-time threads </li></ul></ul><ul><ul><ul><li>Uninterruptible by GC </li></ul></ul></ul><ul><ul><ul><li>Uses immortal and scoped memory </li></ul></ul></ul>
  5. 5. Features and Benefits <ul><li>New Memory Management Schemes </li></ul><ul><ul><li>Immortal memory </li></ul></ul><ul><ul><ul><li>Used for life long objects in a process </li></ul></ul></ul><ul><ul><ul><li>Be cautious while allocating and managing </li></ul></ul></ul><ul><ul><li>Scoped memory </li></ul></ul><ul><ul><ul><li>Used while a process executes within a particular scope </li></ul></ul></ul><ul><ul><ul><li>Object creation/deletion within a particular scope </li></ul></ul></ul><ul><ul><li>No GC interference </li></ul></ul>
  6. 6. Features and Benefits <ul><li>Asynchronous Events Handling & Asynchronous Transfer of Control </li></ul><ul><ul><li>Asynchronous event handlers </li></ul></ul><ul><ul><ul><li>Responds happenings outside JVM </li></ul></ul></ul><ul><ul><ul><li>Can schedule a response to happening </li></ul></ul></ul><ul><ul><li>Asynchronous Transfer of Control </li></ul></ul><ul><ul><ul><li>Thread interruption in safe manner </li></ul></ul></ul>
  7. 7. Features and Benefits <ul><li>Time & Timers </li></ul><ul><ul><li>Nanosecond accuracy </li></ul></ul><ul><ul><li>Absolute and relative time </li></ul></ul><ul><li>Direct Access to Physical Memory </li></ul><ul><ul><li>Write device drivers in java </li></ul></ul>
  8. 8. Requirements <ul><li>dual UltraSparc III or higher with 512 MB preferred </li></ul><ul><li>Solaris 10 </li></ul><ul><li>Java version 1.4.1 hotspot </li></ul><ul><li>(for RTS 1.0) </li></ul>
  9. 9. Performance <ul><li>Non real time </li></ul><ul><ul><li>Throughput 85% more than J2SE program </li></ul></ul><ul><li>Hard real time </li></ul><ul><ul><li>Latency 20 micro seconds </li></ul></ul><ul><ul><li>Jitter 10 micro seconds </li></ul></ul>
  10. 10. Applications <ul><li>RT-CORBA ORB vendors </li></ul><ul><li>Application Servers </li></ul><ul><li>Mars Rover </li></ul><ul><li>The 2006 JavaOne Conference Slot Car Programming Challenge </li></ul>
  11. 11. Today <ul><li>Mackinac commercial project by Sun </li></ul><ul><li>Support for Java SE 5.0, PowerPC, x86 and various RTOS </li></ul><ul><li>NetBeans as IDE </li></ul><ul><li>Current release 1.0.2 (JSR 1) </li></ul><ul><li>Next release 1.1 (JSR 282) </li></ul>
  12. 12. Tomorrow <ul><li>In physical systems that make use of RTSJ code, a lot of non-real-time Java code will have to be written as well, another opportunity for Java programmers. </li></ul><ul><li>In my opinion, there's no way that the code for the 2009 mission for the Mars Science Laboratory (MSL) will be written in C++. It's just too complex. I think that Java technology is going to be a requirement for that system. </li></ul><ul><li>… Greg Bollella </li></ul>
  13. 13. Summary <ul><li>RTSJ is NOT an OS but cleverly uses underneath OS features and provides simple APIs for real time application development </li></ul><ul><li>Don’t compare with languages like C/C++ </li></ul>
  14. 14. References <ul><li>http://java.sun.com/javase/technologies/realtime.jsp </li></ul><ul><li>http://www.rtsj.org/ </li></ul><ul><li>http://jcp.org/en/home/index (JSR 1 and 182) </li></ul><ul><li>http://java.sun.com/developer/technicalArticles/Interviews/Bollella_qa2.html </li></ul><ul><li>http://java.sun.com/developer/technicalArticles/Interviews/Bollella_qa.html </li></ul><ul><li>http://research.sun.com/projects/mackinac/ </li></ul>
  15. 15. Thanks <ul><li>Preetam Palwe </li></ul><ul><ul><li>Aftek Limited </li></ul></ul>
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.