Quite often these two distinct types of systems are lumped together. There is significant overlap between them but they are not synonymous. The links below may deal just with real-time systems, embedded systems or both.
One aspect of this that I have recently been investigating is the specification of standards for real-time extensions to Java. The National Institute for Standards and Technology (NIST) had a working group defining requirements for adding real-time extensions to Java. These requirements were published in early 1999. At about the same time, IBM put forward under Sun's Java Community Process a Java Specification Request JSR-000001 Real-Time Specification for Java. This was based on the published NIST requirements. The NIST process stalled at that time when the National Committee for Information Technology Standards (NCITS) rejected the group's request to start a standardization effort in real-time Java. At this point, several companies did not want to join the Java Community Process effort because they did not want to sign Sun's required Participatory Agreement. The J-Consortium was formed to move forward a parallel specification effort outside the Sun process. In late 1999 both groups issued specifications for public review. Implementations have started appearing in Spring of 2001.
The following are links for material about real-time Java.
- The NIST's Requirements for Real-time Extensions for the Java Platform
- Sun's Real-time Java Expert's Group (www.rtj.org) web page
- The J-Consortium (www.j-consortium.org) web page
- Slides from my department colloquium on the topic
- Implementations
- Timesys JTime
- Systronix JRealtime
- Ajile Systems aJ processors
- Embedded System Conference, April 2001
Several groups have created real-time and embedded versions of Linux. Linux is becoming an operating system of choice for embedded devices especially those with real-time constraints. Here are some links for information about these Linux implementations.