Skip to main content

Implementing and using execution time clocks in Ada hard real-time applications

  • Conference paper
  • First Online:
Reliable Software Technologies — Ada-Europe (Ada-Europe 1998)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1411))

Included in the following conference series:

Abstract

Off-line analysis techniques for hard real-time systems are all based on the assumption that we can estimate the worst-case execution time of the different tasks executing in the system. In the traditional cyclic-executive schedulers, execution time limits were enforced for each task by the scheduler. Unfortunately, in concurrent hard real-time systems such as those using the tasking model defined in Ada, no bound on the execution time of tasks is enforced, which may result in a system timing malfunction not detected by the analysis techniques. In this paper we explore the implementation of execution time clocks within the task scheduler, and we describe methods to detect execution time overruns in the application, and to limit their effects. We also discuss the use of execution time clocks to enhance the performance of sporadic server schedulers implemented at the application level.

This work has been funded in part by the Comisión Interministerial de Ciencia y Tecnología of the Spanish Government under grant number TAP97-892

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

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. A. Burns and A. Wellings. “Real-Time systems and Programming Languages”. 2nd. edition. Addison-Wesley, 1997.

    Google Scholar 

  2. IEEE Standards Project P1003.1d, “Draft Standard for Information Technology-Portable Operating System Interface (POSIX)-Part 1: Additional Realtime Extensions”. Draft 10. The Institute of Electrical and Electronics Engineers, January 1997.

    Google Scholar 

  3. ISO/IEC Standard 9945-1:1996. “Information Technology-Portable Operating System Interface (POSIX)-Part 1: System Application Program Interface (API) [C Language]”. The Institute of Electrical and Electronics Engineers, 1996.

    Google Scholar 

  4. M. González Harbour, J.J. Gutiérrez García, and J.C Palencia Gutiérrez. “Implementing Application-Level Sporadic Server Schedulers in Ada 95”. Proceedings of the 1997 Ada-Europe International Conference on Reliable Software Technologies, in Lecture Notes in Computer Science, Vol. 1251, Springer, June 1997.

    Google Scholar 

  5. M.H. Klein, T. Ralya, B. Pollak, R. Obenza, and M. González Harbour. “A Practitioner's Handbook for Real-Time Analysis”. Kluwer Academic Pub., 1993.

    Google Scholar 

  6. J. Liu, K.J. Lin, W.K. Shih, A. Chuang-Shi Yu, J.Y. Chung, and W. Zhao. “Algorithms for Scheduling Imprecise Computations”. IEEE Computer, pp. 58–68, May 1991.

    Google Scholar 

  7. F. Mueller. “A Library Implementation of POSIX Threads under UNIX”. 1993 Winter USENIX, January, 1993, San Diego, CA, USA.

    Google Scholar 

  8. F. Mueller. “Generalizing Timing Predictions to Set-Associative Caches”. Proceedings of the 9th Euromicro Workshop on Real-Time Systems, pp. 64–71, Toledo, Spain, June 1997.

    Google Scholar 

  9. C.Y. Park. “Predicting program execution times by analyzing static and dynamic program paths”. Real-Time Systems Journal, Vol. 5, No. 1, pp. 31–62, 1993.

    Article  Google Scholar 

  10. P. Puschner and A.V. Schedl. “Computing Maximum Task Execution Times: A graphbased approach”. Real-Time Systems Journal, Vol. 13, No. 1, pp. 7–91, July 1997.

    Google Scholar 

  11. N. Zhang, A. Burns, and M. Nicholson. “Pipelined Processors and Worst-Case Execution Times”. Real-Time Systems Journal, Vol. 5, No. 1, pp. 1–62, 1993.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Lars Asplund

Rights and permissions

Reprints and permissions

Copyright information

© 1998 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Harbour, M.G., Rivas, M.A., García, J.J.G., Gutiérrez, J.C.P. (1998). Implementing and using execution time clocks in Ada hard real-time applications. In: Asplund, L. (eds) Reliable Software Technologies — Ada-Europe. Ada-Europe 1998. Lecture Notes in Computer Science, vol 1411. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0054997

Download citation

  • DOI: https://doi.org/10.1007/BFb0054997

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-64536-8

  • Online ISBN: 978-3-540-69802-9

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics