A Typed Assembly Language for Real-Time Programs

Thomas A. Henzinger and Christoph M. Kirsch

We present a type system for E code, which is an assembly language that manages the release, interaction, and termination of real-time tasks. E code specifies a deadline for each task, and the type system ensures that the deadlines are path-insensitive. We show that typed E programs allow, for given worst-case execution times of tasks, a simple schedulability analysis. Moreover, the real-time programming language Giotto can be compiled into typed E code. This shows that typed E code identifies an easily schedulable yet expressive class of real-time programs. We have extended the Giotto compiler to generate typed E code, and enabled the run-time system for E code to perform a type and schedulability check before executing the code.

Proceedings of the Fourth Annual Conference on Embedded Software (EMSOFT), ACM Press, 2004, pp. 104-113.

Download inofficial, sometimes updated PostScript / PDF document. © 2004 ACM.