Flexible Soft Real-Time Processing in Middleware

  • Authors:
  • Scott A. Brandt;Gary J. Nutt

  • Affiliations:
  • Computer Science Department, Jack Baskin School of Engineering, University of California, 1156 High Street, Santa Cruz, CA 95064 sbrandt@cse.ucse.edu;Computer Science Department, Campus Box 430, University of Colorado, Boulder, CO 80309-0430 nutt@cs.colorado.edu

  • Venue:
  • Real-Time Systems - Flexible Scheduling on Real-Time Systems
  • Year:
  • 2002

Quantified Score

Hi-index 0.00

Visualization

Abstract

As desktop computer computational power continues to increase dramatically, it is becoming commonplace to run a combination of deadline-sensitive applications. Despite the proliferation of computational power, the detailed nature of these applications causes new problems for the system resource allocation mechanisms. First, these applications are designed to meet their deadlines as long as nearly all the system’s resources are available to them; once the system approaches saturation, the collective applications will fail to meet their deadlines. To aggravate the situation, conventional best effort managers will allocate resources to the competing applications based on a static form of equitability rather than addressing the dynamic relative benefit provided by each application. Second, the applications differ from conventional real-time applications: though members of this new class of desktop applications are sensitive to deadlines, their constraints are non-critical. They are also typically designed to use the full spectrum of functions provided by a general purpose system call interface rather than the more limited interface of a real-time operating system (OS). This paper describes a flexible soft real-time system design that addresses these two problems. The CPU scheduling strategy accommodates the community of applications by taking application benefit into account during times of heavy load. Applications are written to use the full interface of a general purpose system call interface, yet the system is able to schedule them according to their deadlines and resource reservation and availability. This paper describes the theoretical foundation of the approach, additional application responsibilities, the design of a middleware system to implement the approach, and then it presents an extensive set of experimental studies that demonstrate the behavior of the approach. The Dynamic QoS Manager middleware (implemented on top of two different versions of Unix), is shown to be a highly effective system for supporting contemporary soft real-time desktop applications.