Skip to main content
Log in

On the Dynamic Semantics and the Timing Behavior of Ravenscar Kernels

Real-Time Systems Aims and scope Submit manuscript

Abstract

Mature research advances in scheduling theory show that carefully-crafted concurrent computational models permit static analysis of real-time behavior. This evidence enables designers to consider using suitable forms of explicit concurrency to model the inherent concurrency of real-time systems. The Ravenscar Profile, a specifically tailored subset of the Ada 95 tasking model, defines a compact and efficient concurrent computational model, especially suited for the development of high integrity, high efficiency real-time systems.

Ravenscar runtimes can be implemented by small, efficient, reliable and certifiable kernels. At least two such implementations already exist and are being industrially deployed. The simplicity and intrinsic determinism of Ravenscar kernels facilitate the definition of metrics that cater for very accurate characterization of the dynamic behavior of the runtime and of the execution time of its primitives. Accurate runtime metrics enable forms of response time analysis that minimize the pessimism in the prediction of the runtime influence on the application. This is especially useful for concurrent systems that exhibit significant dependency on runtime support services. This paper recalls the motivations of the Ravenscar Profile, outlines the definition of it and formulates a precise characterisation of the associated runtime metrics.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

References

  • Ada 95. 2000. Consolidated Ada Reference Manual, International Standard ISO/IEC-8652:1995(E) with Technical Corrigendum 1. Springer-Verlag, LNCS 2219.

  • Ada Core Technologies. 2000. GNAT Reference Manual. Version 3.13. Ada Core Technologies.

  • ATMEL. 2003. TSC695F SPARC single chip processor--User Manual. http://www.atmel.com (search = “ERC32”).

  • Audsley, N., Burns, A., Davis R., Tindell, K. and Wellings, A. J. 1995. Fixed priority preemptive scheduling: an historical perspective. In Real-Time Systems 8(3):173-198.

    Google Scholar 

  • Bailey, C., Fyfe, E., Vardanega, T., and Wellings, A. 1993. The use of preemptive priority-based scheduling for space applications. In Proceedings of the Real-Time Systems Symposium, Vol. 14. Raleigh-Durham, NC (USA), pp. 253-257, IEEE.

    Google Scholar 

  • Baker, T., and Vardanega, T. 1997. Session summary: tasking profiles. In Proceedings of the 8th International Ada Real-Time Workshop. Ada LettersVol XVII(5):5-7.

    Google Scholar 

  • Barnes, J. 1998. Programming in Ada 95. 2nd edn. Addison-Wesley Publishing Co. ISBN: 0201342936.

  • Burns, A. 1991. Scheduling hard real-time systems: a review. In Software Engineering Journal 6(3):116-128.

    Google Scholar 

  • Burns, A. 1994. Preemptive priority based scheduling: an appropriate engineering approach. In S. Son (ed.), Advances in Real-Time Systems. Prentice-Hall.

  • Burns, A. 1999. The Ravenscar Profile. In Ada Letters X IX(4):49-52.

    Google Scholar 

  • Burns, A., Dobbing, B., and Romanski, G. 1998. The Ravenscar Profile for high integrity real-time programs. In L. Asplund (ed.), Reliable Software Technologies--Ada-Europe'98. Springer-Verlag.

  • Burns, A., Dobbing, B., and Vardanega, T. 2003. Guide to the use of the Ada Ravenscar Profile in high integrity systems. Technical Report YCS-2003-348, University of York (UK). http://www.cs.york.ac.uk/ftpdir/reports/YCS-2003-348.pdf.

  • Burns, A., and Wellings, A. J. 2001. Real-Time Systems and Programming Languages, 3rd edn. Addison-Wesley.

  • Cornhill, D., and Sha, L. 1987. Priority inversion in Ada or what should be the priority of an Ada server task?. Ada Letters 7(7).

  • de la Puente, J., Ruiz, J., and Zamorano, J. 2000a. An open Ravenscar real-time kernel for GNAT. In H. B. Keller and E. Ploedereder (eds.), Reliable Software Technologies--Ada-Europe 2000 Springer-Verlag, pp. 5-15.

  • de la Puente, J., Ruiz, J., Zamorano, J., García, R., and Fernández-Marina, R. 2000b. ORK: An open source real-time kernel for on-board software systems. In DASIA 2000--Data Systems in Aerospace. Montreal, Canada.

  • Dijkstra, E. 1975. Guarded commands, nondeterminacy and formal derivation of programs. In CACM 18(8):453-457.

    Google Scholar 

  • Dobbing, B., and Romanski, G. 1999. The Ravenscar Profile: experience report. In Proceedings of the 9th International Real-Time Ada Workshop. Ada Letters XIX(2):28-32.

    Google Scholar 

  • Gaisler Research. 2003. The TSIM home page. http://www.gailser.com → TSIM.

  • Goodenough, J., and Sha, L. 1988. The priority ceiling protocol: a method for minimizing the blocking of high priority Ada Tasks. Technical Report SEI-SSR-4, Software Engineering Institute, Pittsburgh, Pennsylvania.

    Google Scholar 

  • INTEL. 1989. 486 User's Manual. Intel.

  • Joseph, M., and Pandya, P. 1986. Finding response times in real-time systems. In BCS Computer Journal 29(5):390-395.

    Google Scholar 

  • Klein, M. H., Ralya, T., Pollack, B., Obenza, R., and González-Harbour, M. 1993. A Practitioner's Handbook for Real-Time Analysis. Guide to Rate Monotonic Analysis for Real-Time Systems. Boston: Kluwer Academic Publishers.

    Google Scholar 

  • Liu, C., and Layland, J. 1973. Scheduling algorithms for multiprogramming in a hard-real-time environment. Journal of the ACM 20(1).

  • Liu, J. W. S. 2000. Real-Time Systems. Prentice-Hall.

  • Locke, C. D. 1992. Software architectures for hard real-time applications: cyclic executives vs. fixed priority executives. In Real-Time Systems 4(1):37-53.

    Google Scholar 

  • Locke, C. D., Sha, L., Rajkumar, R., Lehoczky, J., and Burns, G. 1988. Priority inversion and its control: an experimental investigation. In Proceedings of the International Workshop on Real-Time Ada Issues, ACM SIGAda. In Ada Letters VIII(7).

  • On-Line Applications Research. 2003. The on-line applications research RTEMS home page. http://www.oarcorp.com/RTEMS/rtems.html.

  • Puschner, P., and Burns, A. 2000. A review of worst-case execution time analysis. In Real-Time Systems 18(2/3):115-128.

    Google Scholar 

  • RTCA: 1992, Software considerations in airborne systems and equipment ceritication. Requirements and Technical Concepts for Aviation. RTCA SC167/DO-178B. Issued in Europe as EUROCAE document ED-12B.

  • Sha, L., Rajkumar, R., and Lehoczky, J. P. 1990. Priority inheritance protocols: an approach to real-time synchronization. In IEEE Tr. on Computers 39(9):1175-1185.

    Google Scholar 

  • TEMIC. 1996. SPARC V7 Instruction Set Manual. TEMIC.

  • Vardanega, T. 1999. Development of on-board embedded real-time systems: an engineering approach. Technical Report ESA STR-260, European Space Agency. ISBN 90-9092-334-2.

  • Vardanega, T., and Caspersen G. 2001. Using the Ravenscar Profile for Space Applications: The OBOSS case. In M. González-Harbour (ed.), Proceedings of the International Workshop on Real-Time Ada Issues. Ada Letters, XXI:96-104.

  • Wellings, A. 2001. 10th International Real-Time Ada Workshop--Session Summary: Status and Future of the Ravenscar Profile. In Ada Letters XXI(1).

  • Zamorano, J., and de la Puente, J. 2002. Precise Response Time Analysis for Ravenscar Kernels. In J. Tokar (ed.), Proceedings of the International Workshop on Real-Time Ada Issues, Ada Letters XXII.

  • Zamorano, J., Ruiz, J., and de la Puente, J. 2001. Implementing Ada.Real_Time.Clock and absolute delays in real-time kernels. In A. Strohmeier and D. Craeynest (eds.): Reliable Software Technologies--Ada-Europe 2001. Springer-Verlag, pp. 317-327.

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Vardanega, T., Zamorano, J. & de la Puente, J.A. On the Dynamic Semantics and the Timing Behavior of Ravenscar Kernels. Real-Time Systems 29, 59–89 (2005). https://doi.org/10.1023/B:TIME.0000048937.17571.2b

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/B:TIME.0000048937.17571.2b

Navigation