Towards preemption control using CPU frequency scaling in sporadic task systems

Preemptions in real-time systems scheduling typically lead to variations in task execution times, increase the temporal overhead required for various RTOS related operations and may even cause unschedulability. We examine the preemption behavior of sporadic tasks scheduled under the Fixed Priority Scheduling (FPS) policy, and evaluate the possibility of using CPU frequency scaling for preemption control. We propose an online heuristic-based algorithm, of linear complexity, to control the number of preemptions in a sporadic task system using CPU frequency scaling. Evaluation results show that CPU frequency scaling is an attractive option to control the preemption behavior of real-time sporadic task systems.

[1]  Giorgio C. Buttazzo,et al.  Measuring the Performance of Schedulability Tests , 2005, Real-Time Systems.

[2]  Sanjoy K. Baruah,et al.  Preemptively scheduling hard-real-time sporadic tasks on one processor , 1990, [1990] Proceedings 11th Real-Time Systems Symposium.

[3]  Alan Burns,et al.  Effective Analysis for Engineering Real-Time Fixed Priority Schedulers , 1995, IEEE Trans. Software Eng..

[4]  Giorgio C. Buttazzo,et al.  Bounding the Maximum Length of Non-preemptive Regions under Fixed Priority Scheduling , 2009, 2009 15th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications.

[5]  Manas Saksena,et al.  Scheduling fixed-priority tasks with preemption threshold , 1999, Proceedings Sixth International Conference on Real-Time Computing Systems and Applications. RTCSA'99 (Cat. No.PR00306).

[6]  Rami G. Melhem,et al.  The interplay of power management and fault recovery in real-time systems , 2004, IEEE Transactions on Computers.

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

[8]  Giorgio C. Buttazzo,et al.  Preemption Points Placement for Sporadic Task Sets , 2010, 2010 22nd Euromicro Conference on Real-Time Systems.

[9]  Aloysius Ka-Lau Mok,et al.  Fundamental design problems of distributed systems for the hard-real-time environment , 1983 .

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

[11]  Sasikumar Punnekkat,et al.  Reducing the Number of Preemptions in Real-Time Systems Scheduling by CPU Frequency Scaling , 2010 .

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

[13]  Lui Sha,et al.  Impact of Cache Partitioning on Multi-tasking Real Time Embedded Systems , 2008, 2008 14th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications.

[14]  Giorgio C. Buttazzo,et al.  Comparative evaluation of limited preemptive methods , 2010, 2010 IEEE 15th Conference on Emerging Technologies & Factory Automation (ETFA 2010).

[15]  Sanjoy K. Baruah,et al.  The limited-preemption uniprocessor scheduling of sporadic task systems , 2005, 17th Euromicro Conference on Real-Time Systems (ECRTS'05).

[16]  Gerhard Fohler,et al.  Reducing the number of preemptions in fixed priority scheduling , 2004, Proceedings. 16th Euromicro Conference on Real-Time Systems, 2004. ECRTS 2004..