On Schedulability Analysis of EDF Scheduling by Considering Suspension as Blocking
OOn Schedulability Analysis of EDF Scheduling byConsidering Suspension as Blocking (cid:63)
Mario G¨unzel and Jian-Jia Chen
Department of Informatics, TU Dortmund University, Germany
Abstract.
During the execution of a job, it may suspend itself, i.e., its compu-tation ceases to process until certain activities are complete to be resumed. Thispaper provides a counterexample of the schedulability analysis by Devi in Eu-romicro Conference on Real-Time Systems (ECRTS) in 2003, which is the onlyexisting suspension-aware analysis specialized for uniprocessor systems whenpreemptive earliest-deadline-first (EDF) is applied for scheduling dynamic self-suspending tasks.
Self-suspension behavior has been demonstrated to appear in complex cyber-physicalreal-time systems, e.g., multiprocessor locking protocols, computation offloading, andmulticore resource sharing, as demonstrated in [3, Section 2]. Although the impact ofself-suspension behavior has been investigated since 1990, the literature of this researchtopic has been flawed as reported in the review by Chen et al. [3].Although the review by Chen et al. [3] provides a comprehensive survey of theliterature, two unresolved issues are listed in the concluding remark. One of them isregarding the “ correctness of Theorem 8 in [4, Section 4.5] · · · supported with a rigor-ous proof, since self-suspension behavior has induced several non-trivial phenomena ”.This paper provides a counterexample of Theorem 8 in [4, Section 4.5] and disprovesthe schedulability test.We consider a set of implicit-deadline periodic tasks, in which each task τ i has itsperiod T i , worst-case self-suspension time S i , and worst-case execution time C i . Therelative deadline D i is set to T i . There are two main models of self-suspending tasks:the dynamic self-suspension and segmented (or multi-segment ) self-suspension models.Devi’s analysis in [4] considers the dynamic self-suspension model. That is, a taskinstance (job) released by a task τ i can suspend arbitrarily as long as the total amountof suspension time of the job is not more than S i .The analysis by Devi in Theorem 8 in [4, Section 4.5] extended the analysis pro-posed by Jane W.S. Liu in her book [7, Page 164-165] for uniprocessor preemptivefixed-priority scheduling to uniprocessor preemptive EDF scheduling. Under preemp-tive EDF scheduling, the job that has the earliest absolute deadline has the highest pri-ority. Despite the non-optimality of EDF for scheduling self-suspending task systemsas shown in [8,1], EDF remains one of the most adopted scheduling strategies. (cid:63) This work has been supported by Deutsche Forschungsgemeinschaft (DFG), as part of Sus-Aware (Project no. 398602212) and the collaborative research center SFB876, subproject A1. a r X i v : . [ c s . O S ] F e b evi’s analysis quantifies the additional interference due to self-suspensions fromthe higher-priority jobs by setting up the blocking time induced by self-suspensions. Thecorrectness of the analysis by Liu in [7, Page 164-165] has been proved by Chen et al. [2]in 2016 for fixed-priority scheduling. The authors in [2] noted that “ Even though the au-thors in this paper are able to provide a proof to support the correctness, the authorsare not able to provide any rationale behind this method which treats suspension timeas blocking time. ”Devi’s analysis for implicit-deadline task systems is rephrased as follows:
Theorem 1 (Devi [4]).
Let T = { τ , τ , . . . , τ n } be a system of n implicit-deadline pe-riodic tasks, arranged in order of non-decreasing periods. The task set T is schedulableusing preemptive EDF if ∀ k : 1 ≤ k ≤ n :: B k + B (cid:48) k T k + k (cid:88) i =1 C i T i ≤ where B k = k (cid:88) i =1 min { S i , C i } B (cid:48) k = max ≤ i ≤ k (max { S i − C i } ) . Note that the notation follows the survey paper by Chen et al. [3] instead of the origi-nal paper by Devi [4]. Moreover, Devi considered arbitrary-deadline task systems withasynchronous arrival times. Our counterexample is valid by considering two implicit-deadline periodic tasks released at the same time.
The following task set T with only two tasks provides a counterexample for Devi’sanalysis: – τ : ( T = D = 6, C = 5, S = 1) and – τ : ( T = D = 8, C = (cid:15) , S = 0) , for any < (cid:15) ≤ / .The test of Theorem 1 is as follows: – When k = 1 , we have B = 1 and B (cid:48) = 0 . Therefore, when k = 1 , B k + B (cid:48) k T k + (cid:80) ki =1 C i T i = 1 . – When k = 2 , we have B = 1 and B (cid:48) = 0 . Therefore, when k = 2 , B k + B (cid:48) k T k + (cid:80) ki =1 C i T i = + (cid:15) + = (cid:15) ≤ , since (cid:15) ≤ / .Therefore, Devi’s schedulability test concludes that the task set is feasibly scheduled bypreemptive EDF. But, a concrete schedule as demonstrated in Figure 1 shows that oneof the jobs of task τ misses its deadline even when both tasks release their first jobs atthe same time.The example in Figure 1 shows that a job of task τ may be blocked by a job oftask τ , which results in a deadline miss of the job of task τ . However, in Devi’sschedulability analysis, such blocking is never considered since B and B (cid:48) do not haveany term related to τ . 2 τ deadline miss τ Fig. 1: A concrete EDF schedule with a deadline miss.
The counterexample in Section 2 only requires task τ to suspend once. It shows thatapplying Devi’s analysis in [4] is unsafe even for the segmented self-suspension modelunder EDF scheduling. We note that the above counterexample is only for Theorem 8in [4]. We do not examine any other schedulability tests in [4].Although there have been many different analyses for preemptive fixed-priorityscheduling, the only results for preemptive EDF are the analyses by Liu and Ander-son [6], and Dong and Liu [5], which are originally formulated for multiprocessorsystems, the suspension-aware analysis by Devi, and the trivial suspension-obliviousanalysis, which considers suspension time of the self-suspending tasks as if they areusual execution time. (Detailed discussions can be found in [3, Section 4].) The in-validation of Devi’s analysis implies, that for preemptive EDF scheduling, there is nosuspension-aware schedulability test specialized for uniprocessor systems. References
1. J.-J. Chen. Computational complexity and speedup factors analyses for self-suspending tasks.In
Real-Time Systems Symposium (RTSS) , pages 327–338, 2016.2. J.-J. Chen, G. Nelissen, and W.-H. Huang. A unifying response time analysis framework fordynamic self-suspending tasks. In
Euromicro Conference on Real-Time Systems (ECRTS) ,pages 61–71, 2016.3. J.-J. Chen, G. Nelissen, W.-H. Huang, M. Yang, B. Brandenburg, K. Bletsas, C. Liu,P. Richard, F. Ridouard, N. Audsley, R. Rajkumar, D. de Niz, and G. von der Br¨uggen. Manysuspensions, many problems: a review of self-suspending tasks in real-time systems.
Real-Time Systems , 55(1):144–207, 2019.4. U. C. Devi. An improved schedulability test for uniprocessor periodic task systems. In , pages 23–32, 2003.5. Z. Dong and C. Liu. Closing the loop for the selective conversion approach: A utilization-based test for hard real-time suspending task systems. In
Real-Time Systems Symposium(RTSS) , pages 339–350, 2016.6. C. Liu and J. H. Anderson. Suspension-aware analysis for hard real-time multiprocessorscheduling. In , pages 271–281,2013.7. J. W. S. Liu.
Real-Time Systems . Prentice Hall PTR, 1st edition, 2000.8. F. Ridouard, P. Richard, and F. Cottet. Negative results for scheduling independent hard real-time tasks with self-suspensions. In
Real-Time Systems Symposium (RTSS) , pages 47–56,2004., pages 47–56,2004.