A Utilization Based Sufficient Condition for P-FRP

Priority-based1Functional Reactive Programming (P-FRP) is a new functional programming formalism for developing safety-critical embedded systems. P-FRP allows static priority assignment and guarantees real-time response by preempting lower priority tasks. Due to the state-less nature of functional programs, preempted tasks in P-FRP are aborted and have to restart after the higher priority tasks have completed execution. Since the execution semantics of P-FRP are different from the classical preemptive model of execution, existing utilization based sufficient conditions cannot be applied. In this paper, we derive a new utilization based sufficient schedulability condition for P-FRP, and validate it using experimental task sets.

[1]  Walid Taha,et al.  E-FRP with priorities , 2007, EMSOFT '07.

[2]  James H. Anderson,et al.  Real-time computing with lock-free shared objects , 1995, Proceedings 16th IEEE Real-Time Systems Symposium.

[3]  Paul Hudak,et al.  Functional reactive programming from first principles , 2000, PLDI '00.

[4]  Albert Mo Kim Cheng,et al.  Response Time Analysis for the Abort-and-Restart Event Handlers of the Priority-Based Functional Reactive Programming (P-FRP) Paradigm , 2009, 2009 15th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications.

[5]  James H. Anderson,et al.  Real-time computing with lock-free shared objects , 1997, TOCS.

[6]  Albert Mo Kim Cheng,et al.  Determining Actual Response Time in P-FRP Using Idle-Period Game Board , 2011, 2011 14th IEEE International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing.

[7]  Paul Hudak,et al.  Functional reactive animation , 1997, ICFP '97.

[8]  Paul Hudak,et al.  FVision: A Declarative Language for Visual Tracking , 2001, PADL.

[9]  Paul Hudak,et al.  Real-time FRP , 2001, ICFP '01.

[10]  James W. Layland,et al.  Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment , 1989, JACM.

[11]  Paul Hudak,et al.  A language for declarative robotic programming , 1999, Proceedings 1999 IEEE International Conference on Robotics and Automation (Cat. No.99CH36288C).

[12]  Binoy Ravindran,et al.  Response time analysis of software transactional memory-based distributed real-time systems , 2009, SAC '09.

[13]  Maurice Herlihy,et al.  Transactional Memory: Architectural Support For Lock-free Data Structures , 1993, Proceedings of the 20th Annual International Symposium on Computer Architecture.