An Exact Schedulability Test for Non-Preemptive Self-Suspending Real-Time Tasks

Exact schedulability analysis of limited-preemptive (or non-preemptive) real-time workloads with variable execution costs and release jitter is a notoriously difficult challenge due to the scheduling anomalies inherent in non-preemptive execution. Furthermore, the presence of self-suspending tasks is well-understood to add tremendous complications to an already difficult problem. By mapping the schedulability problem to the reachability problem in timed automata (TA), this paper provides the first exact schedulability test for this challenging model. Specifically, using TA extensions available in UPPAAL, this paper presents an exact schedulability test for sets of periodic and sporadic self-suspending tasks with fixed preemption points that are scheduled upon a multiprocessor under a global fixed-priority scheduling policy. To the best of our knowledge, this is the first exact schedulability test for non- and limited-preemptive self-suspending tasks (for both uniprocessor and multiprocessor systems), and thus also the first exact schedulability test for the special case of global non-preemptive fixed-priority scheduling (for either periodic or sporadic tasks). Additionally, the paper highlights some subtle pitfalls and limitations in existing TA-based schedulability tests for non-preemptive workloads.

[1]  Kim Guldstrand Larsen,et al.  Formal Methods for the Design of Real-Time Systems , 2004, Lecture Notes in Computer Science.

[2]  Xuehai Zhou,et al.  Schedulability Analysis for MultiCore Global Scheduling with Model Checking , 2010, 2010 11th International Workshop on Microprocessor Test and Verification.

[3]  Wang Yi,et al.  Schedulability analysis for non-preemptive fixed-priority multiprocessor scheduling , 2011, J. Syst. Archit..

[4]  Rajeev Alur,et al.  A Theory of Timed Automata , 1994, Theor. Comput. Sci..

[5]  Sanjoy K. Baruah,et al.  The Non-preemptive Scheduling of Periodic Tasks upon Multiprocessors , 2006, Real-Time Systems.

[6]  Eduardo Quiñones,et al.  An Analysis of Lazy and Eager Limited Preemption Approaches under DAG-Based Global Fixed Priority Scheduling , 2017, 2017 IEEE 20th International Symposium on Real-Time Distributed Computing (ISORC).

[7]  Giuseppe Lipari,et al.  A pre-order relation for exact schedulability test of sporadic tasks on multiprocessor Global Fixed-Priority scheduling , 2015, Real-Time Systems.

[8]  Kim G. Larsen,et al.  A Tutorial on Uppaal , 2004, SFM.

[9]  Zdenek Hanzálek,et al.  Formal verification of multitasking applications based on timed automata model , 2007, Real-Time Systems.

[10]  Geoffrey Nelissen,et al.  On Strong and Weak Sustainability, with an Application to Self-Suspending Real-Time Tasks , 2018, ECRTS.

[11]  Zhu Wang,et al.  A model-checking approach to schedulability analysis of global multiprocessor scheduling with fixed offsets , 2014, Int. J. Embed. Syst..

[12]  Thomas A. Henzinger,et al.  The Algorithmic Analysis of Hybrid Systems , 1995, Theor. Comput. Sci..

[13]  Jinkyu Lee,et al.  Improved Schedulability Analysis Using Carry-In Limitation for Non-Preemptive Fixed-Priority Multiprocessor Scheduling , 2017, IEEE Transactions on Computers.

[14]  Franco Cicirelli,et al.  Development of a Schedulability Analysis Framework Based on pTPN and UPPAAL with Stopwatches , 2012, 2012 IEEE/ACM 16th International Symposium on Distributed Simulation and Real Time Applications.

[15]  Jian-Jia Chen,et al.  Many suspensions, many problems: a review of self-suspending tasks in real-time systems , 2018, Real-Time Systems.

[16]  Jakob Engblom,et al.  The worst-case execution-time problem—overview of methods and survey of tools , 2008, TECS.

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

[18]  Ge Yu,et al.  Schedulability Analysis of Global Fixed-Priority or EDF Multiprocessor Scheduling with Symbolic Model-Checking , 2008, 2008 11th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC).

[19]  Mitra Nasri,et al.  An Exact and Sustainable Analysis of Non-preemptive Scheduling , 2017, 2017 IEEE Real-Time Systems Symposium (RTSS).

[20]  Theodore P. Baker,et al.  Brute-Force Determination of Multiprocessor Schedulability for Sets of Sporadic Hard-Deadline Tasks , 2007, OPODIS.

[21]  Wang Yi,et al.  New Schedulability Test Conditions for Non-preemptive Scheduling on Multiprocessor Platforms , 2008, 2008 Real-Time Systems Symposium.

[22]  Kim Guldstrand Larsen,et al.  Model-Based Framework for Schedulability Analysis Using Uppaal 4.1 , 2018, Model-Based Design for Embedded Systems.

[23]  Geoffrey Nelissen,et al.  A Response-Time Analysis for Non-Preemptive Job Sets under Global Scheduling , 2018, ECRTS.

[24]  A. Marchetti-Spaccamela,et al.  Feasibility Analysis of Sporadic Real-Time Multiprocessor Task Systems , 2010, Algorithmica.

[25]  Ge Yu,et al.  Exact Schedulability Analysis for Static-Priority Global Multiprocessor Scheduling Using Model-Checking , 2007, SEUS.

[26]  Eduardo Tovar,et al.  An exact schedulability test for global FP using state space pruning , 2015, RTNS.

[27]  Frédéric Boniol,et al.  Multiprocessor schedulability analyser , 2011, SAC '11.

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