In “Execution Time Control: A hardware accelerated Ada implementation with novel support for interrupt handling,” Kristoffer Nyborg Gregertsen in the Department of Engineering Cybernetics at Norwegian University of Science and Technology, describes how the GNU Ada Compiler and a bare-board Ravenscar runtime environment were ported to the Atmel AVR 32 UC3 microcontroller series.
He used the Ada programming language available on this architecture in combination with Ada execution time control for this system that supports full execution time control for interrupt handling.
Usage patterns for this brand new feature are demonstrated in Ada by extending the object-oriented realtime framework with execution time servers for interrupt handling, allowing the system to be protected against unexpected bursts of interrupts that could otherwise result in deadline misses.
They describe how separate execution time measurement for interrupt handling improves the accuracy of measurement for tasks. As a direct result of this analysis, separate execution time measurement for interrupts will be included in the forthcoming ISO-standard for Ada 2012.