Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment
Journal of the ACM (JACM)
The embedded machine: predictable, portable real-time code
PLDI '02 Proceedings of the ACM SIGPLAN 2002 Conference on Programming language design and implementation
Synchronous Programming of Reactive Systems
Synchronous Programming of Reactive Systems
Giotto: A Time-Triggered Language for Embedded Programming
EMSOFT '01 Proceedings of the First International Workshop on Embedded Software
A Framework for Scheduler Synthesis
RTSS '99 Proceedings of the 20th IEEE Real-Time Systems Symposium
A Giotto-Based Helicopter Control System
EMSOFT '02 Proceedings of the Second International Conference on Embedded Software
Principles of Real-Time Programming
EMSOFT '02 Proceedings of the Second International Conference on Embedded Software
A typed assembly language for real-time programs
Proceedings of the 4th ACM international conference on Embedded software
A programmable microkernel for real-time systems
Proceedings of the 1st ACM/USENIX international conference on Virtual execution environments
Composable code generation for distributed giotto
LCTES '05 Proceedings of the 2005 ACM SIGPLAN/SIGBED conference on Languages, compilers, and tools for embedded systems
A hierarchical coordination language for interacting real-time tasks
EMSOFT '06 Proceedings of the 6th ACM & IEEE International conference on Embedded software
The embedded machine: Predictable, portable real-time code
ACM Transactions on Programming Languages and Systems (TOPLAS)
Analyzing Real-Time Event-Driven Programs
FORMATS '09 Proceedings of the 7th International Conference on Formal Modeling and Analysis of Timed Systems
Embedded Systems Design
Towards modularized verification of distributed time-triggered systems
FM'06 Proceedings of the 14th international conference on Formal Methods
Multiple real-time semantics on top of synchronous block diagrams
Proceedings of the Symposium on Theory of Modeling & Simulation - DEVS Integrative M&S Symposium
Hi-index | 0.00 |
Giotto is a platform-independent language for specifying software for high-performance control applications. In this paper we present a new approach to the compilation of Giotto. Following this approach, the Giotto compiler generates code for a virtual machine, called the E machine, which can be ported to different platforms. The Giotto compiler also checks if the generated E code is time safe for a given platform, that is, if the platform offers sufficient performance to ensure that the E code is executed in a timely fashion that conforms with the Giotto semantics. Time-safety checking requires a schedulability analysis. We show that while for arbitrary E code, the analysis is exponential, for E code generated from typical Giotto programs, the analysis is polynomial. This supports our claim that Giotto identifies a useful fragment of embedded programs.