Skip to main content

Real-Time Scheduling

  • Chapter
  • First Online:
Real-Time Systems

Part of the book series: Real-Time Systems Series ((RTSS))

Abstract

Many thousands of research papers have been written about how to schedule a set of tasks in a system with a limited amount of resources such that all tasks will meet their deadlines. This chapter tries to summarize some important results of scheduling research that are relevant to the designer of real-time systems. The chapter starts by introducing the notion of a schedulability test to determine whether a given task set is schedulable or not. It distinguishes between a sufficient, an exact, and a necessary schedulability test. A scheduling algorithm is optimal if it will find a schedule whenever there is a solution. The adversary argument shows that generally it is not possible to design an optimal on-line scheduling algorithm. A prerequisite for the application of any scheduling technique is knowledge about the worst-case execution time (WCET) of all time-critical tasks. Section 10.2 presents techniques to estimate the WCET of simple tasks and complex tasks. Modern processors with pipelines and caches make it difficult to arrive at tight bounds for the WCET. Anytime algorithms that contain a root segment that provides a result of sufficient (but low) quality and an optional periodic segment that improves on the quality of the previous result point to a way out of this dilemma.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 79.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Hardcover Book
USD 99.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Buttazzo, G. (2004). Hard Real-Time Computing Systems: Predictable Scheduling Algorithms and Applications. Springer Verlag.

    Google Scholar 

  2. Cheng, S.C. (1987). Scheduling Algorithms for Hard Real-Time Systems–A Brief Survey. In: Hard Real-Time Systems. IEEE Press.

    Google Scholar 

  3. Fohler, G. (1994). Flexibility in Statically Scheduled Hard Real-Time Systems. PhD Thesis. Institut fĂĽr Technische Informatik. Technical University of Vienna.

    Google Scholar 

  4. Garey, M.R. & D.S. Johnson. (1975). Complexity Results for Multiprocessor Scheduling under Resource Constraints. SIAM Journal of Computing. Vol. 4(4). (pp. 397-411).

    Article  MathSciNet  MATH  Google Scholar 

  5. Jones, M. (1997). What really happened on Mars Rover Pathfinder. URL: http://catless.ncl.ac.uk/Risks/19.49.html#subj1.

    Google Scholar 

  6. Liu, C.L. & J.W. Layland. (1973). Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment. Journal of the ACM. Vol. 20(1). (pp. 46-61).

    Article  MathSciNet  MATH  Google Scholar 

  7. Lv, M. et al. (2009). A Survey of WCET Analysis of Real-Time Operating Systems. URL: http://www.neu-rtes.org/publications/lv_ICESS09.pdf

    Google Scholar 

  8. Mok, A. (1993). Fundamental Design Problems of Distributed Systems for the Hard Real-Time Environment. PhD Thesis. Massachusetts Institute of Technology.

    Google Scholar 

  9. Puschner, P. & C. Koza. (1989). Calculating the Maximum Execution Time of Real-Time Programs. Real-Time Systems. Springer Verlag. Vol: 1(2). (pp. 159-176).

    Article  Google Scholar 

  10. Sha, L. et al. (2004). Real-Time Scheduling Theory: A Historical Perspective. Real-Time Systems Journal. Vol. 28(3/4). Springer Verlag. (pp. 101-155).

    Google Scholar 

  11. Shaw, A.C. (1989). Reasoning About Time in Higher-Level Language Software. IEEE Trans. on Software Engineering. Vol. SE-15. (pp. 875-889).

    Article  Google Scholar 

  12. Sha, L., R. Rajkumar, & J.P. Lehoczky. (1990). Priority Inheritence Protocols: An Approach to Real-Time Synchronization. IEEE Trans. on Computers. Vol. 39(9). (pp. 1175-1185).

    Article  MathSciNet  Google Scholar 

  13. Sha, L., R. Rajkumar, and S.S. Sathaye. (1994). Generalized Rate-Monotonic Scheduling Theory: A Framework for Developing Real-Time Systems. Proc. of the IEEE. Vol. 82(1). (pp. 68-82).

    Article  Google Scholar 

  14. Sprunt, B., L. Sha, & J. Lehoczky. (1989). Aperiodic Task Scheduling for Hard Real-Time Systems. Real-Time Systems. Vo. 1(1). (pp. 27-60).

    Article  Google Scholar 

  15. Tindell, K. (1995). Analysis of Hard Real-Time Communications. Real-Time Systems. Vol. 9(2). (pp. 147-171).

    Article  Google Scholar 

  16. Wilhelm, R. et al. (2008). The Worst-Case Execution Time Problem—Overview of Methods and Survey of Tools. ACM Trans. on Embedded Computer Systems, Vol. 7(3). (pp. 1-53).

    Article  MathSciNet  Google Scholar 

  17. Xu, J., & Parnas, D. (1990). Scheduling Processes with Release Times, Deadlines, Precedence, and Exclusion Relations. IEEE Trans. on Software Engineering. Vol. 16(3). (pp. 360-369).

    Article  Google Scholar 

  18. Zilberstein, S. (1996). Using Anytime Algorithms in Intelligent Systems. AI Magazine. Vol. 16(3). (pp. 73-83).

    Google Scholar 

  19. Chu, Y., Burns, A. (2008). Flexible Hard Real-Time Scheduling for Deliberative AI Systems. Real-Time Systems Journal. Vol. 40(3). (pp. 241-263).

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Hermann Kopetz .

Rights and permissions

Reprints and permissions

Copyright information

© 2011 Springer Science+Business Media, LLC

About this chapter

Cite this chapter

Kopetz, H. (2011). Real-Time Scheduling. In: Real-Time Systems. Real-Time Systems Series. Springer, Boston, MA. https://doi.org/10.1007/978-1-4419-8237-7_10

Download citation

  • DOI: https://doi.org/10.1007/978-1-4419-8237-7_10

  • Published:

  • Publisher Name: Springer, Boston, MA

  • Print ISBN: 978-1-4419-8236-0

  • Online ISBN: 978-1-4419-8237-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics