Abstract
This paper argues that the addition of interrupt timers follows naturally by execution time measurement for interrupt handling introduced with Ada 2012, and that full execution time control for interrupts allows safety against unexpected interrupt rates that could not be achieved in an efficent and easy manner otherwise. Hence, it is argued that this feature should be considered for the next revision of Ada.
- A. Burns and A. Wellings. Programming execution-time servers in Ada 2005. In Proc. 27th IEEE International Real-Time Systems Symposium RTSS '06, pages 47--56, Dec. 2006. Google Scholar
Digital Library
- A. Burns and A. Wellings. Concurrent and Real-Time Programming in Ada. Cambridge, 2007. Google Scholar
Digital Library
- K. N. Gregertsen and A. Skavhaug. An efficient and deterministic multi-tasking run-time environment for Ada and the Ravenscar profile on the Atmel AVR32 UC3 microcontroller. In Design, Automation & Test in Europe Conference & Exhibition, 2009. DATE '09., pages 1572--1575, April 2009. Google Scholar
Digital Library
- K. N. Gregertsen and A. Skavhaug. Execution-time control for interrupt handling. Ada Lett., 30, 2010. Google Scholar
Digital Library
- K. N. Gregertsen and A. Skavhaug. Implementing the new Ada 2005 timing event and execution time control features on the AVR32 architecture. Journal of Systems Architecture, 56:509--522, 2010. Google Scholar
Digital Library
- K. N. Gregertsen and A. Skavhaug. Implementation and usage of the new Ada 2012 execution time control features. Ada User Journal, 32(4):265--275, December 2011.Google Scholar
- K. N. Gregertsen and A. Skavhaug. Improving the performance of execution time control by using a hardware time management unit. In M. Brorsson and L. M. Pinho, editors, Reliable Software Technologies - Ada-Europe 2012, volume 7308 of Lecture Notes in Computer Science, pages 177--192. Springer Berlin Heidelberg, 2012. Google Scholar
Digital Library
- ISO/IEC. Ada Reference Manual - ISO/IEC 8652:1995(E) with Technical Corrigendum 1 and Amendment 1.Google Scholar
- ISO/IEC. Ada Reference Manual - ISO/IEC 8652:2012(E).Google Scholar
- S. Michell and J. Real. Conclusions of the 14th International Real-Time Ada Workshop. Ada Lett., 30, 2010. Google Scholar
Digital Library
- M. A. Rivas and M. González Harbour. Execution time monitoring and interrupt handlers: position statement. Ada Lett., 30, 2010. Google Scholar
Digital Library
- S. J. Søvik. Hardware implementation of a Time Management Unit. Master's thesis, NTNU, 2010.Google Scholar
- T. Vardanega, M. G. Harbour, and L. M. Pinho. Session summary: language and distribution issues. Ada Lett., 30, 2010. Google Scholar
Digital Library
- A. Wellings. Implementation experience with Ada 2005. Ada Lett., XXVII, no 2:59--60, 2007. session report.Google Scholar
- A. Wellings and A. Burns. Ada-Europe 2007, chapter Real-Time Utilities for Ada 2005, pages 1--14. Springer Berlin / Heidelberg, 2007. Google Scholar
Digital Library
- R. Wilhelm et al. The worst-case execution-time problem--overview of methods and survey of tools. Trans. on Embedded Computing Sys., 7(3):1--53, 2008. Google Scholar
Digital Library
Recommendations
Interrupt Handling for Out-of-Order Execution Processors
Processors with multiple functional units, including the superscalars, achieve significant performance enhancement through low-level execution concurrency. In such processors, multiple instructions are often issued and definitely executed concurrently ...
Execution-time control for interrupt handling
This paper proposes that execution-time control features for interrupt handling should be added to the Ada standard library. By measuring the execution-time for interrupts separately the accuracy of task execution-time measurement will be also improved. ...
Revising the Ada Timers and Group Budgets to Support Execution Time Control for Interrupt Handling
This position paper revises the execution time timers and group budgets of the Ada programming language, to provide full support for execution time control for interrupt handling similar to that for tasks. This is done by adding abstract execution time ...






Comments