Formalizing hierarchical scheduling for refinement of real-time systems

Abstract The Event-B formalism offers a stepwise development approach for managing complexity in system design. However, the existing work that extends Event-B models with discrete timing properties inadequately represents the communication and competition between concurrent tasks in concurrent systems. In this paper, we present the semantics of the parameterized real-time trigger-response properties of Event-B models based on timing invariants. We show a method of syntactically encoding parameterized real-time trigger-response properties in Event-B machines. To capture the concurrency between tasks, we distinguish end-to-end timing properties and scheduler-based timing properties from the perspective of different system design phases. We model end-to-end timing properties as parameterized timing properties and scheduler-based timing properties as unparameterized timing properties. A nondeterministic queue-based scheduling framework is proposed to replace end-to-end timing properties with scheduler-based timing properties. Additional gluing invariants are provided for this refinement. To demonstrate the usability of the framework, we formalize a two-level hierarchical scheduling system with local resource sharing managed by a time-division multiplexing global scheduler and two alternative local schedulers refined by the nondeterministic queue-based scheduling policy. Models are proved using the Rodin tool.

[1]  Michael Poppleton,et al.  Modelling Complex Timing Requirements with Refinement , 2016, 2016 IEEE 17th International Conference on Information Reuse and Integration (IRI).

[2]  Kim G. Larsen,et al.  Automatic Abstraction Refinement for Timed Automata , 2007, FORMATS.

[3]  Leslie Lamport,et al.  Specifying Systems: The TLA+ Language and Tools for Hardware and Software Engineers [Book Review] , 2002, Computer.

[4]  Ralph-Johan Back,et al.  Refinement Calculus, Part II: Parallel and Reactive Programs , 1989, REX Workshop.

[5]  Hehua Zhang,et al.  Specifying Time-Sensitive Systems with TLA+ , 2010, 2010 IEEE 34th Annual Computer Software and Applications Conference.

[6]  Michael J. Butler,et al.  Modelling and Refining Hybrid Systems in Event-B and Rodin , 2016, From Action Systems to Distributed Systems.

[7]  Nancy A. Lynch,et al.  Forward and Backward Simulations, II: Timing-Based Systems , 1996, Inf. Comput..

[8]  John Regehr,et al.  Using hierarchical scheduling to support soft real-time applications in general-purpose operating systems , 2001 .

[9]  Hermann Kopetz,et al.  Real-time systems , 2018, CSC '73.

[10]  Edsger W. Dijkstra,et al.  Guarded commands, nondeterminacy and formal derivation of programs , 1975, Commun. ACM.

[11]  Martín Abadi,et al.  An old-fashioned recipe for real time , 1994, TOPL.

[12]  Ralph-Johan Back,et al.  Distributed cooperation with action systems , 1988, TOPL.

[13]  Corina Cîrstea,et al.  Semantics of Real-Time Trigger-Response Properties in Event-B , 2018, 2018 International Symposium on Theoretical Aspects of Software Engineering (TASE).

[14]  Shengchao Qin,et al.  Core Hybrid Event-B I: Single Hybrid Event-B machines , 2015, Sci. Comput. Program..

[15]  Rajeev Alur,et al.  A Theory of Timed Automata , 1994, Theor. Comput. Sci..

[16]  Joris Rehm Proved development of the real-time properties of the IEEE 1394 Root Contention Protocol with the event-B method , 2009, International Journal on Software Tools for Technology Transfer.

[17]  Andreas Fürst,et al.  Event-B patterns and their tool support , 2009, 2009 Seventh IEEE International Conference on Software Engineering and Formal Methods.

[18]  Jean-Raymond Abrial,et al.  The B-book - assigning programs to meanings , 1996 .

[19]  Wang Yi,et al.  Uppaal in a nutshell , 1997, International Journal on Software Tools for Technology Transfer.

[20]  Edmund M. Clarke,et al.  Formal Methods: State of the Art and Future Directions Working Group Members , 1996 .

[21]  Michael Butler,et al.  Incremental Design of Distributed Systems with Event-B , 2009 .

[22]  Michael Butler,et al.  Towards Refinement Semantics of Real-Time Trigger-Response Properties in Event-B , 2019, 2019 International Symposium on Theoretical Aspects of Software Engineering (TASE).

[23]  Corina Cîrstea,et al.  Refinement of Timing Constraints for Concurrent Tasks with Scheduling , 2018, ABZ.

[24]  Michael J. Butler Mastering System Analysis and Design through Abstraction and Refinement , 2013, Engineering Dependable Software Systems.

[25]  Michael Poppleton,et al.  An Interval-Based Approach to Modelling Time in Event-B , 2015, FSEN.

[26]  Emil Sekerinski,et al.  Finitary Fairness in Action Systems , 2013, ICTAC.

[27]  Jean-Raymond Abrial,et al.  Modeling in event-b - system and software engineering by Jean-Raymond Abrial , 2010, SOEN.

[28]  Leslie Lamport,et al.  Model Checking TLA+ Specifications , 1999, CHARME.

[29]  Rajeev Alur,et al.  Principles of Cyber-Physical Systems , 2015 .