Predictable communication protocol processing in real-time Mach

Scheduling of many different kinds of activities takes place in distributed real time and multimedia systems. It includes scheduling of computations, window services, filesystem management, I/O services and communication protocol processing. We investigate the problem of scheduling communication protocol processing in real time systems. Communication protocol processing takes a relatively substantial amount of time and if not structured correctly, unpredictable priority inversion and undesirable timing behavior can result to applications communicating with other processors but are otherwise scheduled correctly. We describe the protocol processing architecture in the RT-Mach operating system, which allows the timing of protocol processing to be under strict application control. An added benefit is also obtained in the form of higher performance. This scheduling architecture is consistent with the: other RT-Mach scheduling mechanisms including fixed priority scheduling and processor reservation. The benefits of this protocol architecture are demonstrated both under synthetic workloads and in a realistic distributed videoconferencing system we have implemented in RT-Mach. End to end delays for both audio and video are as predicted even with other threads competing for the CPU and the network.

[1]  Hideyuki Tokuda,et al.  An evaluation of priority consistency in protocol architectures , 1991, [1991] Proceedings 16th Conference on Local Computer Networks.

[2]  Larry L. Peterson,et al.  The x-Kernel: An Architecture for Implementing Network Protocols , 1991, IEEE Trans. Software Eng..

[3]  Stefan Savage,et al.  Processor Capacity Reserves for Multimedia Operating Systems , 1993 .

[4]  Hideyuki Tokuda,et al.  Integrated management of priority inversion in Real-Time Mach , 1993, 1993 Proceedings Real-Time Systems Symposium.

[5]  Ragunathan Rajkumar,et al.  Synchronization in Real-Time Systems , 1991 .

[6]  Brian N. Bershad,et al.  Efficient Packet Demultiplexing for Multiple Endpoints and Large Messages , 1994, USENIX Winter.

[7]  Jay Lepreau,et al.  Evolving Mach 3.0 to A Migrating Thread Model , 1994, USENIX Winter.

[8]  Ragunathan Rajkumar,et al.  Experiences with Processor Reservation and Dynamic QOS in Real-Time Mach , 1996 .

[9]  Kevin Jeffay,et al.  Adaptive, best-effort delivery of live audio and video across packet-switched networks , 1994, MULTIMEDIA '94.

[10]  Ragunathan Rajkumar,et al.  Temporal protection in real-time operating systems , 1994, Proceedings of 11th IEEE Workshop on Real-Time Operating Systems and Software.

[11]  Brian N. Bershad,et al.  Lightweight remote procedure call , 1989, TOCS.

[12]  Kevin Jeffay,et al.  Kernel Support for Live Digital Audio and Video , 1991, NOSSDAV.

[13]  Armando P. Stettner The design and implementation of the 4.3BSD UNIX operating system , 1988 .

[14]  Lui Sha,et al.  Real-time scheduling theory and Ada , 1990, Computer.

[15]  Brian N. Bershad,et al.  Protocol service decomposition for high-performance networking , 1994, SOSP '93.

[16]  Ragunathan Rajkumar,et al.  Synchronization in Real-Time Systems: A Priority Inheritance Approach , 1991 .

[17]  Jochen Liedtke,et al.  Improving IPC by kernel design , 1994, SOSP '93.

[18]  Hideyuki Tokuda,et al.  Priority inversions in real-time communication , 1989, [1989] Proceedings. Real-Time Systems Symposium.

[19]  Alessandro Forin,et al.  UNIX as an Application Program , 1990, USENIX Summer.

[20]  Lui Sha,et al.  The real-time publisher/subscriber inter-process communication model for distributed real-time systems: design and implementation , 1995, Proceedings Real-Time Technology and Applications Symposium.

[21]  Samuel J. Leffler,et al.  The design and implementation of the 4.3 BSD Unix operating system , 1991, Addison-Wesley series in computer science.

[22]  Hideyuki Tokuda,et al.  ARTS: a distributed real-time kernel , 1989, OPSR.

[23]  Stefan Savage,et al.  Processor capacity reserves: operating system support for multimedia applications , 1994, 1994 Proceedings of IEEE International Conference on Multimedia Computing and Systems.

[24]  Hideyuki Tokuda,et al.  Real-Time Mach: Towards a Predictable Real-Time System , 1990, USENIX MACH Symposium.

[25]  P. Venkat Rangan,et al.  Multimedia conferencing in the Etherphone environment , 1991, Computer.