Chapter

Middleware 2005

Volume 3790 of the series Lecture Notes in Computer Science pp 225-248

RTZen: Highly Predictable, Real-Time Java Middleware for Distributed and Embedded Systems

  • Krishna RamanAffiliated withDepartment of Electrical Engineering and Computer Science, University of California
  • , Yue ZhangAffiliated withDepartment of Electrical Engineering and Computer Science, University of California
  • , Mark PanahiAffiliated withDepartment of Electrical Engineering and Computer Science, University of California
  • , Juan A. ColmenaresAffiliated withDepartment of Electrical Engineering and Computer Science, University of California
  • , Raymond KlefstadAffiliated withDepartment of Electrical Engineering and Computer Science, University of California
  • , Trevor HarmonAffiliated withDepartment of Electrical Engineering and Computer Science, University of California

Abstract

Distributed real-time and embedded (DRE) applications possess stringent quality of service (QoS) requirements, such as predictability, latency, and throughput constraints. Real-Time CORBA, an open middleware standard, allows DRE applications to allocate, schedule, and control resources to ensure predictable end-to-end QoS. The Real-Time Specification for Java (RTSJ) has been developed to provide extensions to Java so that it can be used for real-time systems, in order to bring Java’s advantages, such as portability and ease of use, to real-time applications.

In this paper, we describe RTZen, an implementation of a Real-Time CORBA Object Request Broker (ORB), designed to comply with the restrictions imposed by RTSJ. RTZen is designed to eliminate the unpredictability caused by garbage collection and improper support for thread scheduling through the use of appropriate data structures, threading models, and memory scopes. RTZen’s architecture is also designed to hide the complexities of RTSJ related to distributed programming from the application developer. Empirical results show that RTZen is highly predictable and has acceptable performance. RTZen therefore demonstrates that Real-Time CORBA middleware implemented in real-time Java can meet stringent QoS requirements of DRE applications, while supporting safer, easier, cheaper, and faster development in real-time Java.

Keywords

RTSJ Real-Time CORBA Design Patterns Middleware DRE