Integrating best-effort scheduling into a real-time system

Demand for real-time capability in general-purpose systems is rising and as systems are retrofitted with scheduling features they become increasingly complex. To counter this trend we present the best-effort bandwidth server (BEBS), an aperiodic server for flexible and efficient support of best-effort applications in a real-time system. Recognizing that the responsiveness of a server depends on its period, and that not every best-effort task requires equal responsiveness, the algorithm adjusts its period based on run-time behavior of tasks. We created a prototype implementation of the system to demonstrate that it performs suitably as a general-purpose scheduler in comparison to Linux, and outperforms a common type of hierarchy used in existing general-purpose systems. The result is a system that integrates real-time scheduling with best-effort support, both simple and powerful enough to be used as the only scheduler in a general-purpose operating system.

[1]  G. G. Stokes "J." , 1890, The New Yale Book of Quotations.

[2]  Giorgio Buttazzo Rate Monotonic vs. EDF: Judgment Day , 2003, EMSOFT.

[3]  Giorgio C. Buttazzo,et al.  Rate Monotonic vs. EDF: Judgment Day , 2003, Real-Time Systems.

[4]  Marco Spuri,et al.  Robust aperiodic scheduling under dynamic priority systems , 1995, Proceedings 16th IEEE Real-Time Systems Symposium.

[5]  Michael B. Jones,et al.  Vassal: loadable scheduler support for multi-policy scheduling , 1998 .

[6]  John Regehr,et al.  HLS: a framework for composing soft real-time schedulers , 2001, Proceedings 22nd IEEE Real-Time Systems Symposium (RTSS 2001) (Cat. No.01PR1420).

[7]  Giuseppe Lipari,et al.  Scheduling real-time multi-task applications in an open system , 1999, Proceedings of 11th Euromicro Conference on Real-Time Systems. Euromicro RTS'99.

[8]  Scott A. Brandt,et al.  Dynamic integrated scheduling of hard real-time, soft real-time, and non-real-time processes , 2003, RTSS 2003. 24th IEEE Real-Time Systems Symposium, 2003.

[9]  Klara Nahrstedt,et al.  R-EDF: a reservation-based EDF scheduling algorithm for multiple multimedia task classes , 2001, Proceedings Seventh IEEE Real-Time Technology and Applications Symposium.

[10]  Giorgio C. Buttazzo,et al.  Integrating multimedia applications in hard real-time systems , 1998, Proceedings 19th IEEE Real-Time Systems Symposium (Cat. No.98CB36279).

[11]  Luke D. Postema,et al.  The Institute of Electrical and Electronics Engineers , 1963, Nature.

[12]  Harrick M. Vin,et al.  A hierarchial CPU scheduler for multimedia operating systems , 1996, OSDI '96.

[13]  Victor Yodaiken,et al.  A Real-Time Linux , 2000 .

[14]  Jonathan Walpole,et al.  Supporting time-sensitive applications on general-purpose operating systems , 2002 .

[15]  Harrick M. Vin,et al.  A hierarchial CPU scheduler for multimedia operating systems , 1996, OSDI '96.

[16]  Judy Kay,et al.  A fair share scheduler , 1988, CACM.

[17]  Xin Liu,et al.  A variable rate execution model , 2004, Proceedings. 16th Euromicro Conference on Real-Time Systems, 2004. ECRTS 2004..

[18]  Sanjoy K. Baruah,et al.  Efficient scheduling of real-time multi-task applications in dynamic systems , 2000, Proceedings Sixth IEEE Real-Time Technology and Applications Symposium. RTAS 2000.

[19]  Scott A. Brandt,et al.  Better real-time response for time-share scheduling , 2003, Proceedings International Parallel and Distributed Processing Symposium.

[20]  Giuseppe Lipari,et al.  IRIS: a new reclaiming algorithm for server-based real-time systems , 2004, Proceedings. RTAS 2004. 10th IEEE Real-Time and Embedded Technology and Applications Symposium, 2004..

[21]  Kwei-Jay Lin,et al.  Enhancing the real-time capability of the Linux kernel , 1998, Proceedings Fifth International Conference on Real-Time Computing Systems and Applications (Cat. No.98EX236).

[22]  Giuseppe Lipari,et al.  Elastic Scheduling for Flexible Workload Management , 2002, IEEE Trans. Computers.

[23]  Stephen Childs,et al.  The Linux-SRT integrated multimedia operating system: bringing QoS to the desktop , 2001, Proceedings Seventh IEEE Real-Time Technology and Applications Symposium.

[24]  E. K. Gannett,et al.  THE INSTITUTE OF ELECTRICAL AND ELECTRONICS ENGINEERS , 1965 .

[25]  Marco Spuri,et al.  Scheduling aperiodic tasks in dynamic priority systems , 1996, Real-Time Systems.

[26]  Jane W.-S. Liu,et al.  Scheduling real-time applications in an open environment , 1997, Proceedings Real-Time Systems Symposium.

[27]  James W. Layland,et al.  Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment , 1989, JACM.

[28]  J. Duane Northcutt,et al.  SVR4UNIX Scheduler Unacceptable for Multimedia Applications , 1993, NOSSDAV.