Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What exactly is RTSJ, the Real-Time Specification for Java?

What exactly is the Java Real Time Specification? That is, how does it differ from the "regular" Java SE or Java EE specifications?

like image 449
Marcus Leon Avatar asked Apr 06 '10 01:04

Marcus Leon


1 Answers

At its core, real-time computing is about predictability -- the knowledge that the system will always perform within the required time frame.

Basically, this is something you won't be able to achieve with the regular VM (and its stop-the-world GC amongst other things), hence the need for another specification:

The Real-Time Specification for Java (RTSJ), or JSR 1, specifies how Java systems should behave in a real-time context and was developed over several years by experts from both the Java and real-time domains.

The RTSJ is designed to seamlessly extend any Java family -- whether the Java Platform, Standard Edition (Java SE); Java Platform, Micro Edition (Java ME); or Java Platform, Enterprise Edition (Java EE) -- and has the requirement that any implementation pass both the JSR 1 technology compatibility kit (TCK) and the TCK of the platform -- Java SE, Java ME, or Java EE -- on which it is based.

The RTSJ introduces several new features to support real-time operations. These features include new thread types, new memory-management models, and other newly introduced frameworks. (...)

I warmly recommend the reading of:

like image 73
Pascal Thivent Avatar answered Oct 12 '22 11:10

Pascal Thivent