Precautious-RM: a predictable non-preemptive scheduling algorithm for harmonic tasks

A major requirement of many real-time embedded systems is to have time-predictable interaction with the environment. More specifically, they need fixed or small sampling and I/O delays, and they cannot cope with large delay jitters. Non-preemptive execution is a known method to reduce the latter delay; however, the corresponding scheduling problem is NP-Hard for periodic tasks. In this paper, we present Precautious-RM as a predictable linear-time online non-preemptive scheduling algorithm for harmonic tasks which can also deal with the former delay, namely sampling delay. We derive conditions of optimality of Precautious-RM and show that satisfying those conditions, tight bounds for best- and worst-case response times of the tasks can be calculated in polynomial-time. More importantly, response time jitter of the tasks is analyzed and it is proven that under specific conditions, each task has either one or two values for response time, which leads to improving the predictability of the system interaction with the environment. Simulation results demonstrate efficiency of Precautious-RM in increasing accuracy of control applications.

[1]  Gerhard Fohler,et al.  Improving quality-of-control using flexible timing constraints: metric and scheduling , 2002, 23rd IEEE Real-Time Systems Symposium, 2002. RTSS 2002..

[2]  Sergey V. Drakunov,et al.  Sliding mode control of an inverted pendulum , 1996, Proceedings of 28th Southeastern Symposium on System Theory.

[3]  Alan Burns,et al.  Towards a fixed priority scheduler for an aircraft application , 1996, Proceedings of the Eighth Euromicro Workshop on Real-Time Systems.

[4]  Giorgio C. Buttazzo,et al.  Limited Preemptive Scheduling for Real-Time Systems. A Survey , 2013, IEEE Transactions on Industrial Informatics.

[5]  Maurizio Piaggio,et al.  Pre-emptive versus non-pre-emptive real time scheduling in intelligent mobile robotics , 2000, J. Exp. Theor. Artif. Intell..

[6]  Jerzy R. Nawrocki,et al.  Scheduling Cyclic Tasks with Binary Periods , 1998, Inf. Process. Lett..

[7]  Paul Muhlethaler,et al.  A Few Results on Non-Preemptive Real Time Scheduling , 1999 .

[8]  Friedrich Eisenbrand,et al.  EDF-schedulability of synchronous periodic task systems is coNP-hard , 2010, SODA '10.

[9]  Björn B. Brandenburg,et al.  Cache-Related Preemption and Migration Delays : Empirical Approximation and Impact on Schedulability ∗ , 2010 .

[10]  Charles U. Martel,et al.  On non-preemptive scheduling of period and sporadic tasks , 1991, [1991] Proceedings Twelfth Real-Time Systems Symposium.

[11]  Anton Cervin,et al.  Comparative Assessment and Evaluation of Jitter Control Methods , 2007 .

[12]  Krishna M. Kavi,et al.  A non-preemptive scheduling algorithm for soft real-time systems , 2007, Comput. Electr. Eng..

[13]  Qiang Ling,et al.  Firm real-time system scheduling based on a novel QoS constraint , 2003, IEEE Transactions on Computers.

[14]  Yang Cai,et al.  Nonpreemptive scheduling of periodic tasks in uni- and multiprocessor systems , 1996, Algorithmica.

[15]  Chenyang Lu,et al.  Feedback Thermal Control for Real-time Systems , 2010, 2010 16th IEEE Real-Time and Embedded Technology and Applications Symposium.

[16]  Mehdi Kargahi,et al.  A Method for Improving Delay-Sensitive Accuracy in Real-Time Embedded Systems , 2012, 2012 IEEE International Conference on Embedded and Real-Time Computing Systems and Applications.

[17]  Isaac Skog,et al.  Joint state and measurement time-delay estimation of nonlinear state space systems , 2010, 10th International Conference on Information Science, Signal Processing and their Applications (ISSPA 2010).

[18]  Yves Sorel,et al.  Schedulability conditions for non-preemptive hard real-time tasks with strict period , 2010 .

[19]  Sébastien Gérard,et al.  On the gap between schedulability tests and an automotive task model , 2013, J. Syst. Archit..

[20]  Tei-Wei Kuo,et al.  Load adjustment in adaptive real-time systems , 1991, [1991] Proceedings Twelfth Real-Time Systems Symposium.

[21]  Anton Cervin,et al.  Delay-Aware Period Assignment in Control Systems , 2008, 2008 Real-Time Systems Symposium.

[22]  Yifan Wu,et al.  Improving task responsiveness with limited preemptions , 2009, 2009 IEEE Conference on Emerging Technologies & Factory Automation.

[23]  Friedrich Eisenbrand,et al.  Static-Priority Real-Time Scheduling: Response Time Computation Is NP-Hard , 2008, 2008 Real-Time Systems Symposium.

[24]  Alan Burns,et al.  Controller Area Network (CAN) schedulability analysis: Refuted, revisited and revised , 2007, Real-Time Systems.

[25]  Gerhard Fohler,et al.  Jitter compensation for real-time control systems , 2001, Proceedings 22nd IEEE Real-Time Systems Symposium (RTSS 2001) (Cat. No.01PR1420).

[26]  Björn Andersson,et al.  The utilization bound of non-preemptive rate-monotonic scheduling in Controller Area Networks is 25% , 2009, 2009 IEEE International Symposium on Industrial Embedded Systems.

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

[28]  Lui Sha,et al.  Scheduling real-time dwells using tasks with synthetic periods , 2003, RTSS 2003. 24th IEEE Real-Time Systems Symposium, 2003.

[29]  Karl-Erik Årzén,et al.  A FEEDBACK SCHEDULER FOR REAL-TIME CONTROLLER TASKS , 2000 .

[30]  Jitender S. Deogun,et al.  On Periodic Scheduling of Time-Critical Tasks , 1986, IFIP Congress.

[31]  Johnny Steven Lam Control of an Inverted Pendulum , 2004 .

[32]  Cecilia Ekelin,et al.  Clairvoyant non-preemptive EDF scheduling , 2006, 18th Euromicro Conference on Real-Time Systems (ECRTS'06).

[33]  Ching-Chih Han,et al.  A better polynomial-time schedulability test for real-time fixed-priority scheduling algorithms , 1997, Proceedings Real-Time Systems Symposium.

[34]  Moonju Park Non-preemptive Fixed Priority Scheduling of Hard Real-Time Periodic Tasks , 2007, International Conference on Computational Science.

[35]  Morteza Mohaqeqi,et al.  Scheduling of Accuracy-Constrained Real-Time Systems in Dynamic Environments , 2012, IEEE Embedded Systems Letters.

[36]  Balakrishna J. Prabhu,et al.  A Best-Response Algorithm for Multiprocessor Periodic Scheduling , 2011, 2011 23rd Euromicro Conference on Real-Time Systems.

[37]  Andy J. Wellings,et al.  Using harmonic task-sets to increase the schedulable utilization of cache-based preemptive real-time systems , 1996, Proceedings of 3rd International Workshop on Real-Time Computing Systems and Applications.

[38]  Prashant J. Shenoy,et al.  Real-time support for mobile robotics , 2003, The 9th IEEE Real-Time and Embedded Technology and Applications Symposium, 2003. Proceedings..