Abstract
Task scheduling is one of the key mechanisms to ensure timeliness in embedded real-time systems. Such systems have often the need to execute not only application tasks but also some urgent routines (e.g. error-detection actions, consistency checkers, interrupt handlers) with minimum latency. Although fixed-priority schedulers such as Rate-Monotonic (RM) are in line with this need, they usually make a low processor utilization available to the system. Moreover, this availability usually decreases with the number of considered tasks. If dynamic-priority schedulers such as Earliest Deadline First (EDF) are applied instead, high system utilization can be guaranteed but the minimum latency for executing urgent routines may not be ensured.
In this paper we describe a scheduling model according to which urgent routines are executed at the highest priority level and all other system tasks are scheduled by EDF. We show that the guaranteed processor utilization for the assumed scheduling model is at least as high as the one provided by RM for two tasks, namely \(2(\sqrt{2}-1)\). Seven polynomial time tests for checking the system timeliness are derived and proved correct. The proposed tests are compared against each other and to an exact but exponential running time test.
Similar content being viewed by others
References
Almeida L, Pedreiras P (2004) Scheduling within temporal partitions: response-time analysis and server design. In: Proc of the 4th ACM international conference on embedded software. ACM, New York, pp 95–103
Audsley NC, Burns A, Richardson M, Tindell K, Wellings AJ (1993) Applying new scheduling theory to static priority pre-emptive scheduling. Softw Eng J 8(5):284–292
Baruah S, Mok A, Rosier L (1990) Preemptively scheduling hard-real-time sporadic tasks on one processor. In: Proc of the 11th IEEE real-time systems symposium, pp 182–190
Bini E, Buttazzo GC (2005) Measuring the performance of schedulability tests. Real-Time Syst 30:129–154
Bini E, Buttazzo GC, Buttazzo GM (2003) Rate monotonic analysis: the hyperbolic bound. IEEE Trans Comput 52(7):933–942
Bletsas K, Andersson B (2011) Preemption-light multiprocessor scheduling of sporadic tasks with high utilisation bound. Real-Time Syst 47:319–355
Burns A, Davis RI, Zhang FPW (2011) Partitioned edf scheduling for multiprocessors using a C=D scheme. Real-Time Syst 48:3–33
Davis RI, Burns A (2008) An investigation into server parameter selection for hierarchical fixed priority pre-emptive systems. In: International conference on real-time and network systems, pp 19–28
Facchinetti T, Buttazzo GC, Marinoni M, Guidi G (2005) Non-preemptive interrupt scheduling for safe reuse of legacy drivers in real-time systems. In: Proc of the 17th euromicro conference on real-time systems, pp 98–105
Feng XA, Mok AK (2002) A model of hierarchical real-time virtual resources. In: Proc of the 23rd IEEE real-time systems symposium, pp 26–35
Gonzalez-Harbour M, Palencia JC (2003) Response time analysis for tasks scheduled under edf within fixed priorities. In: Proc of the 24th IEEE real-time systems symposium, pp 200–209
Jeffay K, Stone D (1993) Accounting for interrupt handling costs in dynamic priority task systems. In: Proc of the 14th IEEE real-time systems symposium, pp 212–221
Lima G, Burns A (2003) An optimal fixed-priority assignment algorithm for supporting fault tolerant hard real-time systems. IEEE Trans Comput 52(10):1332–1346
Lima G, Burns A (2005) Scheduling fixed-priority hard real-time tasks in the presence of faults. In: Proc of 2nd Latin-American symposium on dependable computing. LNCS, vol 3747. Springer, Berlin, pp 154–173
Liu CL, Layland JW (1973) Scheduling algorithms for multiprogram in a hard real-time environment. J ACM 20(1):46–61
Mercer CW, Savage S, Tokuda H (1994) Processor capacity reserves: operating system support for multimedia applications. In: Proc of the international conference on multimedia computing and systems, pp 90–99
Santos JA Jr, Lima G (2012) Sufficient schedulability tests for edf-scheduled real-time systems under interference of a high priority task. In: Proc of the 2nd Brazilian symposium on systems engineering, SBC, Natal, Brazil, pp 131–136
Santos JA Jr, Lima G, Bletsas K (2013) On the processor utilisation bound of the C=D scheduling algorithm. In: Audsley N, Baruah S (eds) Real-time systems: the past, the present and the future. CreateSpace independent publishing platform, pp 119–132
Shin I, Lee I (2003) Periodic resource model for compositional real-time guarantees. In: Proc of the 24th IEEE international real-time systems symposium, pp 2–13
Spuri M, Buttazzo GC (1996) Scheduling aperiodic tasks in dynamic priority systems. Real-Time Syst 10(2):1–32
Zhang F, Burns A (2009) Improvement to quick processor-demand analysis for edf-scheduled real-time systems. In: Proc of the of the 21st euromicro conference on real-time systems, pp 76–86
Zhang F, Burns A (2009) Schedulability analysis for real-time systems with edf scheduling. IEEE Trans Comput 58(9):1250–1258
Acknowledgements
This work was partially supported by the Brazilian funding agencies CAPES and CNPq.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Santos, J.A., Lima, G. & Bletsas, K. Efficient schedulability tests for real-time embedded systems with urgent routines. Des Autom Embed Syst 18, 19–38 (2014). https://doi.org/10.1007/s10617-013-9113-6
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10617-013-9113-6