Implementing an Application-Defined Scheduling Framework for Ada Tasking
A framework for application-defined scheduling and its correspond-ing application program interface (API) were defined during the last Interna-tional Real-Time Ada Workshop, and are being proposed for standardization in the future revision of the Ada language. The framework allows applications to install one or more task schedulers capable of implementing a large variety of scheduling algorithms. This paper describes the implementation of this frame-work, both at the compiler and the run-time system levels. The objective of this work is to serve as a reference implementation in which the API can be evalu-ated and tested, and its performance can be assessed. We show that the amount of changes to the compiler is relatively small, and that the application scheduling capability can be supported with a small level of complexity.
KeywordsReal-Time Kernel Scheduling Compilers Ada 95 POSIX
Unable to display preview. Download preview PDF.
- 1.Aldea, M., González, M.: MaRTE OS: An Ada Kernel for Real-Time Embedded Applications. In: Strohmeier, A., Craeynest, D. (eds.) Ada-Europe 2001. LNCS, vol. 2043, p. 305. Springer, Heidelberg (2001)Google Scholar
- 2.ARTIST. Roadmap on Advanced Real-Time Systems for Quality of Service Management, http://artist-embedded.org/Roadmaps/A3-roadmap.pdf
- 3.IEEE Std 1003.1-2003. Information Technology -Portable Operating System Interface (POSIX). Institute of Electrical and electronic EngineersGoogle Scholar
- 4.IEEE Std. 1003.13-2003. Information Technology -Standardized Application Environment Profile- POSIX Realtime and Embedded Application Support (AEP). The Institute of Electrical and Electronics Engineers Google Scholar
- 8.Rivas, M.A., Harbour, M.G.: Application-Defined Scheduling in Ada. In: Proceedings of the International Real-Time Ada Workshop (IRTAW 2003), Viana do Castelo, Portugal (September 2003)Google Scholar
- 9.MaRTE OS home page, http://marte.unican.es/
- 11.Ada Issue AI95-00307-01/05 Execution-Time Clocks, http://www.ada-auth.org/~acats/AI-SUMMARY.HTML
- 12.Ada Issue AI95-00354-01/01 Group Execution-Time Timers, http://www.ada-auth.org/~acats/AI-SUMMARY.HTML
- 13.Ada Issue AI95-00356-01/01 Support for Preemption Level Locking Policy, http://www.ada-auth.org/~acats/AI-SUMMARY.HTML
- 14.Ada Issue AI95-00355-01/01 Priority Specific Dispatching including Round Robin, http://www.ada-auth.org/~acats/AI-SUMMARY.HTML
- 15.The Real-Time specification for Java, http://www.rtj.org/rtsj-V1.0.pdf