2007 · 179 citations · 30 references
EngineeringComputer EngineeringComputer ScienceEmbedded SystemsReal-time SystemsSchedulingEmbedded Software DesignEmbedded Systems ArchitectureEmbedded Systems DesignEmbedded Systems ProgrammingReal-time SchedulingReal-time Systems DesignConcurrency In Embedded SystemsEmbedded System ModelingReal-time Embedded SystemsScheduler DesignTemporal Behavior AnalysisTemporal Behavior ModelingTemporal Pattern ModelingTemporal Predictability
Creating robust real-time embedded software is critical in combining the physical world with computing, such as in consumer electronics or robotics. One challenge is the complexity of dealing with time together with implementation details that often end up implicitly determining the temporal behavior of the program. In this paper we suggest deconstructing a program into two separate aspects, the functional implementation and a temporal pattern, each expressed separately in a different language. This separation enables independent specification, analysis and prediction of the temporal behavior without regard to the implementation. Meanwhile the implementation is optimized for platforms with different capabilities through a scalable programming model that automatically adapts the execution to the level of concurrency a platform can support. Finally the aspects are put together to create a working system. This paper presents the use of futures and partitures to achieve predictability and performance in embedded systems. A new real-time scheduler for partiture based futures execution is introduced, along with multiple implementations, including one for an 8-bit microcontroller. The paper explains how to create, model, and execute futures and partitures.
30
Applying new scheduling theory to static priority pre-emptive scheduling
Neil Audsley, A. Burns, Mike Richardson et al. · Software Engineering Journal · 1993 · 1.1K citations
Formal verification of parallel programs
Robert Keller · Communications of the ACM · 1976 · 791 citations · Full text
Hierarchical correctness proofs for distributed algorithms
Nancy Lynch, Mark R. Tuttle · 1987 · 767 citations · Full text