Abstract
New software architectures demand increasing processing power, and multiprocessor hardware platforms are spreading as the answer to achieve the required performance. Embedded real-time systems are also subject to this trend, but in the case of real-time high-integrity systems, the properties of reliability, predictability and analyzability are also paramount.
The Ada 2005 language defined a subset of its tasking model, the Ravenscar profile, that provides the basis for the implementation of deterministic and time analyzable applications on top of a streamlined run-time system. This Ravenscar tasking profile, originally designed for single processors, has proven remarkably useful for modelling verifiable real-time monoprocessor systems.
The forthcoming Ada 2012 language proposes a simple extension to the Ravenscar profile to support multiprocessor systems using a fully partitioned approach. The implementation of this scheme is simple, and it can be used to develop applications amenable to schedulability analysis.
This paper describes the design and implementation of a restricted run time supporting the Ravenscar tasking model on a bare board multiprocessor machine for safety-critical development.
Access provided by Autonomous University of Puebla. Download to read the full chapter text
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
Tucker Taft, S., Duff, R.A., Brukardt, R.L., Plödereder, E., Leroy, P.: Ada 2005 Reference Manual. LNCS, vol. 4348. Springer, Heidelberg (2006)
Aeroflex Gaisler: LEON3 Multiprocessing CPU Core (2010), http://www.gaisler.com/doc/leon3_product_sheet.pdf
Andersson, B., Baruah, S., Jonsson, J.: Static-priority scheduling on multiprocessors. In: RTSS 2001: Proceedings of the 22nd IEEE Real-Time Systems Symposium. IEEE Computer Society, Los Alamitos (2001)
ARG: Pragma CPU and Ravenscar Profile. Tech. rep., ISO/IEC/JTC1/SC22/WG9 (2010), http://www.ada-auth.org/cgi-bin/cvsweb.cgi/ai05s/ai05-0171-1.txt
ARINC: ARINC Specification 653, Avionics Application Software Standard Interface. Aeronautical Radio, Inc. (2005)
Baker, T.P.: An analysis of fixed-priority schedulability on a multiprocessor. Real-Time Systems 32(1-2), 49–71 (2006)
Baruah, S.K., Cohen, N.K., Plaxton, C.G., Varvel, D.: Proportionate progress: A notion of fairness in resource allocation. Algorithmica 15, 600–625 (1994)
Carpenter, J., Funk, S., Holman, P., Srinivasan, A., Anderson, J., Baruah, S.: A categorization of real-time multiprocessor scheduling problems and algorithms. In: Handbook on Scheduling Algorithms, Methods, and Models. Chapman Hall/CRC, Boca Raton (2004)
Dhall, S.K., Liu, C.L.: On a real-time scheduling problem. Operations Research 26(1), 127–140 (1978)
Mezzetti, E., Panunzio, M., Vardanega, T.: Preservation of timing properties with the ada ravenscar profile. In: Real, J., Vardanega, T. (eds.) Ada-Europe 2010. LNCS, vol. 6106, pp. 153–166. Springer, Heidelberg (2010)
Giering, E.W., Mueller, F., Baker, T.P.: Implementing ada 9X features using POSIX threads: Design issues. In: Proceedings of TRI-Ada 1993, pp. 214–228 (1993)
Joseph, M., Pandya, P.: Finding response times in real-time systems. BCS Computer Journal 29(5), 390–395 (1986)
Liu, C.L., Layland, J.W.: Scheduling algorithms for multiprogramming in a hard-real-time environment. J. ACM 20(1) (1973)
Oh, Y., Son, H.: Tight performance bounds of heuristics for a real-time scheduling problem. Tech. rep., Department of Computer Science, University of Virginia (1993)
RTCA: RTCA/DO-297: Integrated Modular Avionics (IMA) Development Guidance and Certification Considerations. RTCA (August 2005)
Ruiz, J.F.: GNAT pro for on-board mission-critical space applications. In: Vardanega, T., Wellings, A.J. (eds.) Ada-Europe 2005. LNCS, vol. 3555, pp. 248–259. Springer, Heidelberg (2005)
Ruiz, J.F.: Towards a Ravenscar extension for multi-processor systems. Ada Letters 30, 86–90 (2010)
Shen, H., Baker, T.: A Linux kernel module implementation of restricted Ada tasking. Ada Letters XIX(2), 96–103 (1999); Proceedings of the 9th International Real-Time Ada Workshop
SPARC International, Inc.: The SPARC Architecture Manual (1992), version 8
Swaminathan, S., Stultz, J., Vogel, J.F., McKenney, P.E.: Fairlocks — a high performance fair locking scheme. In: International Conference on Parallel and Distributed Computing Systems, pp. 241–246 (2002)
Zamorano, J., Ruiz, J.F., la de Puente, J.A.: Implementing Ada.Real_Time.Clock and absolute delays in real-time kernels. In: Craeynest, D., Strohmeier, A. (eds.) Ada-Europe 2001. LNCS, vol. 2043, p. 317. Springer, Heidelberg (2001)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Chouteau, F., Ruiz, J.F. (2011). Design and Implementation of a Ravenscar Extension for Multiprocessors. In: Romanovsky, A., Vardanega, T. (eds) Reliable Software Technologies - Ada-Europe 2011. Ada-Europe 2011. Lecture Notes in Computer Science, vol 6652. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-21338-0_3
Download citation
DOI: https://doi.org/10.1007/978-3-642-21338-0_3
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-21337-3
Online ISBN: 978-3-642-21338-0
eBook Packages: Computer ScienceComputer Science (R0)