Abstract
In scheduling hard-real-time systems, the primary objective is to meet all deadlines. We study the scheduling of such systems with the secondary objective of minimizing the duration of time for which the system locks each shared resource. We abstract out this objective into the resource hold time (rht)—the largest length of time that may elapse between the instant that a system locks a resource and the instant that it subsequently releases the resource, and study properties of the rht. We present an algorithm for computing resource hold times for every resource in a task system that is scheduled using Earliest Deadline First scheduling, with resource access arbitrated using the Stack Resource Policy. We also present and prove the correctness of algorithms for decreasing these rht’s without changing the semantics of the application or compromising application feasibility.
Similar content being viewed by others
References
Baker TP (1991) Stack-based scheduling of real-time processes. Real-Time Syst Int J Time-Crit Comput 3(1):67–100
Baruah S (2006) Resource sharing in EDF-scheduled systems: A closer look. In: Proceedings of the IEEE real-time systems symposium, Rio de Janeiro, Brazil, December 2006. IEEE Comput Soc, Los Alamitos, pp 379–387
Baruah S, Mok A, Rosier L (1990) Preemptively scheduling hard-real-time sporadic tasks on one processor. In: Proceedings of the 11th real-time systems symposium, Orlando, Florida, 1990. IEEE Comput Soc, Los Alamitos, pp 182–190
Behnam M, Shin I, Nolte T, Nolin M (2006) Real-time subsystem integration in the presence of shared resource. In: Proceedings of the real-time systems symposium—work-in-progress session, Rio de Janerio, Brazil, December 2006, pp 9–12
Behnam M, Shin I, Nolte T, Nolin M (2007) SIRAP: a synchronization protocol for hierarchical resource sharing in real-time open systems. In: EMSOFT ’07: Proceedings of the 7th ACM & IEEE international conference on Embedded software, New York, NY, USA, October 2007. Assoc Comput Mach, New York, pp 279–288
Bertogna M, Fisher N, Baruah S (2007) Resource-locking durations in static-priority systems. In: Proceedings of the workshop on parallel and distributed real-time systems, Long Beach, California, April 2007. IEEE Comput Soc, Los Alamitos, pp 1–8,
Davis RI, Burns A (2005) Hierarchical fixed priority pre-emptive scheduling. In: Proceedings of the IEEE real-time systems symposium, Miami, Florida, IEEE Comput Soc, Los Alamitos, pp 389–398
Davis RI, Burns A (2006) Resource sharing in hierarchical fixed priority pre-emptive systems. In: Proceedings of the IEEE real-time systems symposium, Rio de Janeiro, Brazil, December 2006. IEEE Comput Soc, Los Alamitos, pp 257–267
Deng Z, Liu J (1997) Scheduling real-time applications in an open environment. In: Proceedings of the eighteenth real-time systems symposium, San Francisco, California, December 1997. IEEE Comput Soc, Los Alamitos, pp 308–319
Dertouzos M (1974) Control robotics: the procedural control of physical processors. In: Proceedings of the IFIP congress, pp 807–813
Feng XA, Mok A (2002) A model of hierarchical real-time virtual resources. In: Proceedings of the IEEE real-time systems symposium, Austin, Texas, December 2002. IEEE Comput Soc, Los Alamitos, pp 26–35
Fisher N, Bertogna M, Baruah S (2007a) The design of an EDF-scheduled resource-sharing open environment. In: Proceedings of the IEEE real-time systems symposium, Tucson, Arizona, December 2007. IEEE Comput Soc, Los Alamitos, pp 83–92
Fisher N, Bertogna M, Baruah S (2007b) The design of an EDF-scheduled resource-sharing open environment. Technical report, Department of Computer Science, The University of North Carolina at Chapel Hill. Available at http://www.cs.unc.edu/~fishern/pubs.html
Fisher N, Bertogna M, Baruah S (2007c) Resource-locking durations in EDF-scheduled systems. In: Proceedings of the 13th IEEE real-time and embedded technology and applications symposium, Bellevue, Washington, April 2007. IEEE Comput Soc, Los Alamitos
Gai P, Lipari G, di Natale M (2001) Minimizing memory utilization of real-time task sets in single and multi-processor systems-on-a-chip. In: Proceedings of the IEEE real-time systems symposium, London, England, December 2001. IEEE Comput Soc, Los Alamitos, pp 73–83
Ghattas R, Dean AG (2007) Preemption threshold scheduling: Stack optimality, enhancements and analysis. In: Proceedings of the IEEE real-time technology and applications symposium (RTAS), Bellevue, Washington, April 2007. IEEE Comput Soc, Los Alamitos, pp 147–157
Henzinger TA, Kirsch CM, Matic S (2003) Schedule carrying code. In: Alur R, Lee I (eds), Embedded software, third international conference, EMSOFT 2003, Philadelphia, PA, USA, October 13–15, 2003. Lecture Notes in Computer Science, vol 2855, Springer, Berlin, pp 241–256
Joseph M, Pandya P (1986) Finding response times in a real-time system. Comput J 29(5):390–395
Kuo T-W, Li C-H (1999) A fixed priority driven open environment for real-time applications. In: Proceedings of the IEEE real-time systems symposium, Phoenix, Arizona, December 1999. IEEE Comput Soc, Los Alamitos, pp 256–267
Lehoczky J, Sha L, Ding Y (1989) The rate monotonic scheduling algorithm: Exact characterization and average case behavior. In: Proceedings of the real-time systems symposium, Santa Monica, California, USA, Dec. 1989. IEEE Comput Soc, Los Alamitos, pp 166–171
Lipari G, Bini E (2003) Resource partitioning among real-time applications. In: Proceedings of the EuroMicro Conference on real-time systems, Porto, Portugal, July 2003. IEEE Comput Soc, Los Alamitos, pp 151–160
Lipari G, Buttazzo G (2000) Schedulability analysis of periodic and aperiodic tasks with resource constraints. J Systems Archit 46(4):327–338
Liu C, Layland J (1973) Scheduling algorithms for multiprogramming in a hard real-time environment. J ACM 20(1):46–61
Mok AK (1983) Fundamental Design Problems of Distributed Systems for The Hard-Real-Time Environment. PhD thesis, Laboratory for Computer Science, Massachusetts Institute of Technology. Available as Technical Report No MIT/LCS/TR-297
Pellizzoni R, Lipari G (2005) Feasibility analysis of real-time periodic tasks with offsets. Real-Time Syst Int J Time-Crit Comput, 30(1–2):105–128
Saewong S, Rajkumar R, Lehoczky JP, Klein MH (2002) Analysis of hierarchical fixed-priority scheduling. In: Proceedings of the EuroMicro conference on real-time systems, Vienna, Austria, June 2002. IEEE Comput Soc, Los Alamitos, pp 173–181
Saksena M, Wang Y (2000) Scalable real-time system design using preemption thresholds. In Proceedings of the IEEE real-time systems symposium, Los Alamitos, California, November 2000. IEEE Comput Soc, Los Alamitos, pp 256–267
Sha L, Rajkumar R, Lehoczky JP (1990) Priority inheritance protocols: An approach to real-time synchronization. IEEE Trans Comput 39(9):1175–1185
Shin I, Lee I (2003) Periodic resource model for compositional real-time guarantees. In: Proceedings of the IEEE real-time systems symposium, Cancun, Mexico, December 2003. IEEE Comput Soc, Los Alamitos, pp 2–13
Sprunt B, Sha L, Lehoczky JP (1989) Aperiodic task scheduling for hard real-time systems. Real-Time Syst 1:27–69
Spuri M, Buttazzo G (1996) Scheduling aperiodic tasks in dynamic priority systems. Real-Time Syst Int J Time-Crit Comput 10(2):179–210
Author information
Authors and Affiliations
Corresponding author
Additional information
This research has been supported in part by the National Science Foundation (Grant Nos. CCR-0309825, CNS-0408996 and CCF-0541056).
Rights and permissions
About this article
Cite this article
Bertogna, M., Fisher, N. & Baruah, S. Resource holding times: computation and optimization. Real-Time Syst 41, 87–117 (2009). https://doi.org/10.1007/s11241-008-9057-2
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11241-008-9057-2