APractical Sub-Optimal Solution for the Dual Priority Scheduling Problem

consider uniprocessor platforms, the scheduling of synchronous implicit deadline periodic task sets and the dual priority scheme where each task is assigned two fixed priorities. That is, at run time each task starts executing using its primary priority and is promoted if not completed at an intermediate deadline. We present counter-intuitive examples illustrating how difficult this scheduling problem is. We propose a preprocessing approach to remove from the scheduling problem lowest priority viable tasks as defined by Audsley's procedure. We revisit one solution called RM + RM conjectured optimal. We propose a procedure to compute promotion deadlines based on multiple simulations over an hyperperiod called FDMS. That solution has an exponential time complexity but an experimental success ratio of 100%. Then we propose a new sub-optimal solution to assign priorities called 1 /RM + RM along with a very simple promotion deadline assignment scheme called RML for which no simulation are required, the procedure is simple and the success ratio is close to 99.99%. We show that the method is fast and scalable to very large task sets which makes it ideal for practical applications.

[1]  Joël Goossens,et al.  Limitation of the hyper-period in real-time periodic task set generation , 2001 .

[2]  Risat Mahmud Pathan,et al.  Unifying fixed- and dynamic-priority scheduling based on priority promotion and an improved ready queue management technique , 2015, 21st IEEE Real-Time and Embedded Technology and Applications Symposium.

[3]  Nicole Megow,et al.  Polynomial-Time Exact Schedulability Tests for Harmonic Real-Time Tasks , 2013, 2013 IEEE 34th Real-Time Systems Symposium.

[4]  Chung Laung Liu,et al.  Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment , 1989, JACM.

[5]  Joël Goossens,et al.  Dual Priority and EDF: a closer look , 2014, RTSS 2014.

[6]  Joël Goossens,et al.  A New Configurable and Parallel Embedded Real-time Micro-Kernel for Multi-core platforms , 2015 .

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

[8]  Neil Audsley,et al.  OPTIMAL PRIORITY ASSIGNMENT AND FEASIBILITY OF STATIC PRIORITY TASKS WITH ARBITRARY START TIMES , 2007 .

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

[11]  Sangchul Han,et al.  Predictability of Least Laxity First Scheduling Algorithm on Multiprocessor Real-Time Systems , 2006, EUC Workshops.

[12]  Wang Yi,et al.  Fixed-Priority Schedulability of Sporadic Tasks on Uniprocessors is NP-Hard , 2017, 2017 IEEE Real-Time Systems Symposium (RTSS).

[13]  Alan Burns,et al.  Dual Priority Assignment: A Practical Method For Increasing Processor Utilisation , 1993, Fifth Euromicro Workshop on Real-Time Systems.