Rewriting History to Exploit Gain Time

With modern processors and more dynamic application requirements it is becoming increasingly difficult to produce tight upper bounds on the worst-case execution time of real-time tasks. As a result, at run-time, considerable spare CPU capacity (termed gain time) becomes available that must be usefully employed if cost effective real-time systems are to be engineered. In this paper we introduce a scheme by which gain time is exploited by retrospectively reassigning execution time from a task’s own budget to the gain time that later become available. As a result of changing the system’s execution history, spare capacity is immediately reallocated and hence preserved. The proposed scheme is shown to work with fixed priority dispatching, the use of servers to provide temporal firewalls, and other capacity sharing approaches. Evaluations are provided via simulations.

[1]  Mathai Joseph,et al.  Finding Response Times in a Real-Time System , 1986, Comput. J..

[2]  Jay K. Strosnider,et al.  The Deferrable Server Algorithm for Enhanced Aperiodic Responsiveness in Hard Real-Time Environments , 1987, IEEE Trans. Computers.

[3]  Jay K. Strosnider,et al.  ENHANCED APERIODIC RESPONSIVENESS IN HARD REAL-TIME ENVIRONMENTS. , 1987, RTSS 1987.

[4]  Mark S. Boddy,et al.  An Analysis of Time-Dependent Planning , 1988, AAAI.

[5]  Lui Sha,et al.  Exploiting unused periodic time for aperiodic service using the extended priority exchange algorithm , 1988, Proceedings. Real-Time Systems Symposium.

[6]  Wei Kuan Shih,et al.  Algorithms for Scheduling Imprecise Computations with Timing Constraints , 1991, SIAM J. Comput..

[7]  John P. Lehoczky,et al.  An optimal algorithm for scheduling soft-aperiodic tasks in fixed-priority preemptive systems , 1992, [1992] Proceedings Real-Time Systems Symposium.

[8]  Alan Burns,et al.  Applying new scheduling theory to static priority pre-emptive scheduling , 1993, Softw. Eng. J..

[9]  Alan Burns,et al.  Integrating Best Effort and Fixed Priority Scheduling , 1994, RTSS 1994.

[10]  Alan Burns,et al.  Engineering a hard real‐time system: From theory to practice , 1995, Softw. Pract. Exp..

[11]  Andy J. Wellings,et al.  Dual priority scheduling , 1995, Proceedings 16th IEEE Real-Time Systems Symposium.

[12]  Shlomo Zilberstein,et al.  Operational Rationality through Compilation of Anytime Algorithms , 1995, AI Mag..

[13]  Alan Burns,et al.  New results on fixed priority aperiodic servers , 1999, Proceedings 20th IEEE Real-Time Systems Symposium (Cat. No.99CB37054).

[14]  Lui Sha,et al.  Capacity sharing for overrun control , 2000, Proceedings 21st IEEE Real-Time Systems Symposium.

[15]  Yann-Hang Lee,et al.  Voltage-clock-scaling adaptive scheduling techniques for low power in hard real-time systems , 2000, Proceedings Sixth IEEE Real-Time Technology and Applications Symposium. RTAS 2000.

[16]  Rami G. Melhem,et al.  Dynamic and aggressive scheduling techniques for power-aware real-time systems , 2001, Proceedings 22nd IEEE Real-Time Systems Symposium (RTSS 2001) (Cat. No.01PR1420).

[17]  Rami G. Melhem,et al.  Scheduling with dynamic voltage/speed adjustment using slack reclamation in multi-processor real-time systems , 2001, Proceedings 22nd IEEE Real-Time Systems Symposium (RTSS 2001) (Cat. No.01PR1420).

[18]  Kang G. Shin,et al.  Real-time dynamic voltage scaling for low-power embedded operating systems , 2001, SOSP.

[19]  John P. Lehoczky,et al.  Analysis of hierar hical fixed-priority scheduling , 2002, Proceedings 14th Euromicro Conference on Real-Time Systems. Euromicro RTS 2002.

[20]  Stefan M. Petters,et al.  Experimental evaluation of code properties for WCET analysis , 2003, RTSS 2003. 24th IEEE Real-Time Systems Symposium, 2003.

[21]  Rami G. Melhem,et al.  Scheduling with Dynamic Voltage/Speed Adjustment Using Slack Reclamation in Multiprocessor Real-Time Systems , 2003, IEEE Trans. Parallel Distributed Syst..

[22]  Alan Burns,et al.  Multiple Servers and Capacity Sharing for Implementing Flexible Scheduling , 2004, Real-Time Systems.

[23]  Lui Sha,et al.  Aperiodic task scheduling for Hard-Real-Time systems , 2006, Real-Time Systems.