★ wanayoo — archive 1999 http://java.sun.com/aboutJava/communityprocess/jsr/jsr_001_real_time.htmlNouvelle recherche | Portail wanayoo
Java Technology Home Page
Downloads, APIs, Documentation
Java Developer Connection
Docs, Tutorials, Tech Articles, Training
Online Support
Community Discussion
News & Events from Everywhere
Products from Everywhere
How Java Technology is Used Worldwide

A-Z Index

The Source for Java Technology

JSR-000001 Real-time Specification for Java
(APPROVED Dec. 16, 1998)

Identification | Request | Contributions

Section 1: Identification

This JSR is being submitted jointly by the International Business Machines Corporation (IBM) and Sun Microsystems Inc. (Sun).

Contact information:

Greg Bollella (IBM)

bollella@us.ibm.com

+1 919 254 4602


Kevin Russell (Sun)

kevin.russell@eng.sun.com

+1 408/863-3168

Section 2: Request

This request is for the Real-time Extension Specification. This extension targets the EmbeddedJavaTM, PersonalJavaTM, JavaOS for Business, JavaOS for Consumer, and Enterprise Java (when implemented on an RTOS) platforms. The specification will require updates and/or additions to both the Java Virtual Machine* Specification and the Java Language Specification at least at the semantic level. These changes are anticipated to be backwards compatible with the installed base.

The specification will extend the JavaTM Platform with an industry-standard set of extensions that enables the construction of systems that exhibit real-time behavior. It will bring advantages of the Java Platform -- binary portability, dynamic code loading, tool support, safety, security, and simplicity -- to an important industry segment: real-time systems. This extension targets both "hard real-time" and "soft real-time" systems.

This extension is necessary because the guarantees and APIs provided by the standard Java platform do not meet the needs of real-time systems. For example, real-time systems require strong deterministic guarantees and/or control in the areas of thread scheduling, synchronization overhead, lock queuing order, class initialization, maximum interrupt response latency, and GC characteristics. These needs are not met by the standard Java platform, and there is no other extension that addresses them.

We propose to develop a real-time Java standard extension specification and reference implementation. The specification will address many issues, including GC semantics, synchronization, thread scheduling, JVM-RTOS interface, and high-resolution time management.

The underlying technology needed to implement this spec is essentially a Java VM that is built to honor deterministic guarantees of its run-time behavior. A central component of this VM is a real-time garbage collector. In addition to GC, the VM would need to honor the other guarantees and APIs laid out in the spec. This VM would only be implementable atop suitable target platforms, such as a real-time operating system (RTOS).

This extension is expected to have only minor security implications, in that some of the new operations would be subject to a security check. There are no significant internationalization or localization implications.

This extension is central to the success of the EmbeddedJava platform. From an implementation standpoint, it imposes fundamental, substantial requirements; this is justified by the need to support real-time in embedded systems.

The impact on the PersonalJava platform is less. The implementation impact will be small, because EmbeddedJava work can be leveraged. It is believed that supporting real-time systems will create new opportunities for PersonalJava.

Section 3: Contributions

The real-time team within the EmbeddedJava group is developing a starting point for the Real-time Extension Specification. It is available at http://wombat.eng/~billf/real-time/ within Sun, or at http://www.sdct.itl.nist.gov/~carnahan/real-time/sun/index.html externally. It is hoped that this document will provide a good place for the expert group's discussions to begin.

The National Institute of Standards and Technology (NIST) has organized a real-time Java requirements group. This is an open group that is defining requirements for real-time Java. Their requirements document will be a valuable input to the experts group, and the expert group will be expected to at least respond to each requirement in their document. More information about the NIST requirements group can be found at http://www.nist.gov/rt-java.

*As used on this web site, the terms "Java virtual machine" or "JVM" mean a virtual machine for the Java platform.
See Also
Details of the Community Process
New Specification Proposals
Open Calls for Experts


[ This page was updated: 27-Sep-99 ]

Products & APIs | Developer Connection | Docs & Training | Support
Community Discussion | Industry News | Solutions Marketplace | Case Studies
Glossary - Applets - Tutorial - Employment - Business & Licensing - Java Store - Java in the Real World
Feedback | Map | A-Z Index

For more information on Java technology
and other software from Sun Microsystems, call:
(800) 786-7638
Outside the U.S. and Canada, dial your country's AT&T Direct Access Number first.
Sun Microsystems, Inc.
Copyright © 1995-99 Sun Microsystems, Inc.
All Rights Reserved. Legal Terms. Privacy Policy.