Publications:E-FRP with Priorities

From CERES
Revision as of 04:44, 26 June 2014 by Slawek (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Do not edit this section

Keep all hand-made modifications below

Title E-FRP with Priorities
Author Roumen Kaiabachev and Walid Taha and Angela Zhu
Year 2007
PublicationType Conference Paper
Journal
HostPublication EMSOFT '07 : Proceedings of the Seventh ACM and IEEE International Conference on Embedded Software
DOI http://dx.doi.org/10.1145/1289927.1289963
Conference ESWEEK - Embedded Systems Week; EMSOFT’07, September 30–October 3, 2007, Salzburg, Austria
Diva url http://hh.diva-portal.org/smash/record.jsf?searchId=1&pid=diva2:397832
Abstract E-FRP is declarative language for programming resourcebounded,event-driven systems. The original high-level semanticsof E-FRP requires that each event handler executeatomically. This requirement facilitates reasoning about EFRPprograms, and therefore it is a desirable feature of thelanguage. But the original compilation strategy requiresthat each handler complete execution before another eventcan occur. This implementation choice treats all eventsequally, in that it forces the upper bound on the time neededto respond to any event to be the same. While this is acceptablefor many applications, it is often the case that someevents are more urgent than others.In this paper, we show that we can improve the compilationstrategy without altering the high-level semantics.With this new compilation strategy, we give the programmermore control over responsiveness without taking awaythe ability to reason about programs at a high level. Theprogrammer controls responsiveness by declaring prioritiesfor events, and the compilation strategy produces code thatuses preemption to enforce these priorities. We show thatthe compilation strategy enjoys the same properties as theoriginal strategy, with the only change being that the programmerreasons modulo permutations on the order of eventarrivals.