Dynamic Ceiling Priorities: A Proposal for Ada OY
J. Real, A. Burns, J. Miranda, E. Schonberg and A. Crespo
In Ada 95, the ceiling priority of a protected object is a static value that can only be assigned once, when the protected object is declared. This restriction coexists with the ability to dynamically change the priorities of tasks, which indeed is a flexible mechanism for programming adaptable real-time systems. Ceiling priorities being static, it is not possible to adequately implement the dynamic nature of multi-moded systems or systems scheduled with dynamic priorities. It is possible to work around this problem (e.g. by using the so-called ceiling of ceilings) but there is an added cost in terms of blocking times. The next revision of the Ada 95 Standard, known as Ada OY, is considering the inclusion of dynamic ceiling priorities in the language. This paper presents the arguments for dynamic ceilings and discusses the approach proposed by the International Real-Time Ada Workshop consensus group. An experimental implementation is also discussed in order to evaluate the impact of this feature on the GNAT Ada compiler and run-time system which, in a nutshell, has turned out to be very low.
Download Not Available
BibTex Entry
@inproceedings{Real2004, author = {J. Real and A. Burns and J. Miranda and E. Schonberg and A. Crespo}, booktitle = {Proccedings Software Technologies - Ada Europe}, editor = {A. Llamosi and A. Strohmeier}, pages = {261--272}, publisher = {Springer}, title = {Dynamic Ceiling Priorities: A Proposal for Ada OY}, volume = {LNCS 3063}, year = {2004} }