Information Processing Letters 97 (2006) 83–87 www.elsevier.com/locate/ipl Runtime feasibility check for non-preemptive real-time periodic tasks ✩ Sangwon Kim ∗ , Joonwon Lee, Jinsoo Kim Division of Computer Science, Department of Electrical Engineering and Computer Science, Korea Advanced Institute of Science and Technology, 373-1 Guseong-dong, Yuseong-gu, Daejeon 305-701, Republic of Korea Received 18 July 2005; received in revised form 5 October 2005; accepted 13 October 2005 Available online 28 November 2005 Communicated by A.A. Bertossi Keywords: Real-time systems; Non-preemptive scheduling 1. Introduction The most important requirement for real-time sys- tems is the capability to support the timely execution of applications. Real-time scheduling over a single proces- sor has been widely studied in the last thirty years, and it has been proven that the non-preemptive version of Earliest Deadline First (EDF) algorithm is optimal [1], in the sense that if a set of tasks is schedulable, it is also schedulable using EDF. EDF scheduler always selects and executes a task having the earliest deadline. Most non-preemptive real-time systems favor the EDF sched- uler for its easy feasibility check and optimal schedula- bility. In EDF scheduling, however, scheduler leaves no chance for other feasible alternative task sequences to be selected. Fig. 1 shows an example in which an alter- native task execution sequence is more preferable than ✩ This research was supported by the MIC (Ministry of Information and Communication), Korea, under the ITRC (Information Technol- ogy Research Center) support program supervised by the IITA (In- stitute of Information Technology Assessment) (IITA-2005-C1090- 0502-0031). * Corresponding author. E-mail address: kimsw@calab.kaist.ac.kr (S. Kim). that of EDF scheduling. In the example, device power mode can transit from ‘active’ to ‘sleep’ and vice versa in order to save power during idle time. A better task sequence can be generated by eliminating unnecessary power-mode transitions and increasing the idle time of devices. Such a task sequence can be easily obtained in a non real-time system by scheduling first those tasks that use devices in active mode [6]. However, in a real-time system, the timely execution of tasks must be guaran- teed before scheduling a task in a non-EDF manner (i.e., scheduling a task not having earliest deadline first). Therefore, in [7], an off-line scheduling algorithm is presented to generate the optimal task sequence that minimizes energy consumption of I/O devices without deadline misses. Nevertheless, finding the optimal task sequence is impractical since the hyper-period of a gen- eral task set is too long to be optimized. Another example in which task sequence makes a difference is presented in [3]. Here, the execution time of tasks can be reduced by scheduling continuously the tasks that share common data set and increasing the cache hit ratio. In [2], it is shown that the saved time (dynamic slack) can be used to minimize the energy consumption of a processor in a non-preemptive real- time system. 0020-0190/$ – see front matter 2005 Elsevier B.V. All rights reserved. doi:10.1016/j.ipl.2005.10.010