Transparent Synchronization Protocols for Compositional Real-Time Systems

Hierarchical scheduling frameworks (HSFs) provide means for composing complex real-time systems from well-defined, independently analyzed components. To support resource sharing in two-level HSFs, three synchronization protocols based on the stack resource policy (SRP) have recently been presented for single-processor execution platforms, i.e., HSRP, SIRAP, and BROE. This paper presents a transparent implementation of these three protocols side-by-side in an HSF-enabled real-time operating system. Transparent synchronization interfaces make it possible to select a protocol during integration time based on its relative strengths. A timing interface describes the required budget to execute a component on a shared platform and an accessor's maximum critical-section execution time to global shared resources. These resources are arbitrated based on the available budget of the accessing task. We enable this explicit synchronization of virtual time with global time by means of a novel virtual-timer mechanism. Moreover, we investigate system overheads caused by each synchronization protocol, so that these can be included in the system analysis. Based on the analytical and implementation overheads of each protocol, we present guidelines for the selection of a synchronization protocol during system integration. Finally, we show that unknown task-arrival times considerably complicate an efficient implementation of SIRAP's self-suspension mechanism. We briefly discuss the implementation complexity caused by these arrivals for bandwidth-preserving servers, e.g., deferrable servers and BROE.

[1]  Sanjoy K. Baruah,et al.  Resource Sharing in EDF-Scheduled Systems: A Closer Look , 2006, 2006 27th IEEE International Real-Time Systems Symposium (RTSS'06).

[2]  Insik Shin,et al.  A Synchronization Protocol for Temporal Isolation of Software Components in Vehicular Systems , 2009, IEEE Transactions on Industrial Informatics.

[3]  Theodore P. Baker,et al.  Aperiodic servers in a deadline scheduling environment , 2005, Real-Time Systems.

[4]  Alan Burns,et al.  Resource Sharing in Hierarchical Fixed Priority Pre-Emptive Systems , 2006, 2006 27th IEEE International Real-Time Systems Symposium (RTSS'06).

[5]  Anthony Rowe,et al.  Rate-Harmonized Scheduling and Its Applicability to Energy Management , 2010, IEEE Transactions on Industrial Informatics.

[6]  Lui Sha,et al.  Aperiodic task scheduling for Hard-Real-Time systems , 2006, Real-Time Systems.

[7]  Insik Shin,et al.  Overrun Methods and Resource Holding Times for Hierarchical Scheduling of Semi-Independent Real-Time Systems , 2010, IEEE Transactions on Industrial Informatics.

[8]  Theodore P. Baker,et al.  Stack-based scheduling of realtime processes , 1991, Real-Time Systems.

[9]  Insik Shin,et al.  Synthesis of Optimal Interfaces for Hierarchical Scheduling with Resources , 2008, 2008 Real-Time Systems Symposium.

[10]  Paolo Gai,et al.  Efficient EDF Implementation for Small Embedded Systems , 2006 .

[11]  Lui Sha,et al.  Priority Inheritance Protocols: An Approach to Real-Time Synchronization , 1990, IEEE Trans. Computers.

[12]  Patricia López Martínez,et al.  Scheduling Configuration of Real-Time Component-Based Applications , 2010, Ada-Europe.

[13]  Reinder J. Bril,et al.  Towards Budgeting in Real-Time Calculus: Deferrable Servers , 2007, FORMATS.

[14]  John Regehr,et al.  Evolving real-time systems using hierarchical scheduling and concurrency analysis , 2003, RTSS 2003. 24th IEEE Real-Time Systems Symposium, 2003.

[15]  Nathan Fisher,et al.  On optimal real-time subsystem-interface generation in the presence of shared resources , 2010, 2010 IEEE 15th Conference on Emerging Technologies & Factory Automation (ETFA 2010).

[16]  Insup Lee,et al.  Compositional real-time scheduling framework with periodic model , 2008, TECS.

[17]  Reinder J. Bril,et al.  Grasp: Tracing, visualizing and measuring the behavior of real-time systems , 2010 .

[18]  Insup Lee,et al.  Compositional real-time scheduling framework , 2004, 25th IEEE International Real-Time Systems Symposium.

[19]  Sanjoy K. Baruah,et al.  Resource-Locking Durations in EDF-Scheduled Systems , 2007, 13th IEEE Real Time and Embedded Technology and Applications Symposium (RTAS'07).

[20]  Giorgio C. Buttazzo,et al.  Integrating multimedia applications in hard real-time systems , 1998, Proceedings 19th IEEE Real-Time Systems Symposium (Cat. No.98CB36279).

[21]  Giuseppe Lipari,et al.  Minimizing memory utilization of real-time task sets in single and multi-processor systems-on-a-chip , 2001, Proceedings 22nd IEEE Real-Time Systems Symposium (RTSS 2001) (Cat. No.01PR1420).

[22]  Johan J. Lukkien,et al.  Constant-bandwidth supply for priority processing , 2011, 2011 IEEE International Conference on Consumer Electronics (ICCE).

[23]  Sanjoy K. Baruah,et al.  Limited Preemption EDF Scheduling of Sporadic Task Systems , 2010, IEEE Transactions on Industrial Informatics.

[24]  Luigi Palopoli,et al.  Resource Reservations for General Purpose Applications , 2009, IEEE Transactions on Industrial Informatics.

[25]  Thomas Nolte,et al.  Implementation of overrun and skipping in VxWorks , 2010 .

[26]  Hermann Härtig,et al.  Fast component interaction for real-time systems , 2005, 17th Euromicro Conference on Real-Time Systems (ECRTS'05).

[27]  Sanjoy K. Baruah,et al.  Resource-Sharing Servers for Open Environments , 2009, IEEE Transactions on Industrial Informatics.

[28]  Insik Shin,et al.  Synchronization protocols for hierarchical real-time scheduling frameworks , 2008 .

[29]  D·范威尼,et al.  Real-time kernel , 2009 .

[30]  Thomas Nolte,et al.  Bounding the Number of Self-Blocking Occurrences of SIRAP , 2010, 2010 31st IEEE Real-Time Systems Symposium.

[31]  Thomas Nolte,et al.  Overrun and Skipping in Hierarchically Scheduled Real-Time Systems , 2009, 2009 15th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications.

[32]  Sanjoy K. Baruah,et al.  Static-Priority Scheduling and Resource Hold Times , 2007, 2007 IEEE International Parallel and Distributed Processing Symposium.

[33]  Jay K. Strosnider,et al.  The Deferrable Server Algorithm for Enhanced Aperiodic Responsiveness in Hard Real-Time Environments , 1987, IEEE Trans. Computers.

[34]  Insik Shin,et al.  SIRAP: a synchronization protocol for hierarchical resource sharingin real-time open systems , 2007, EMSOFT '07.

[35]  Alan Burns,et al.  Sustainability in Real-time Scheduling , 2008, J. Comput. Sci. Eng..

[36]  Luca Abeni,et al.  Resource sharing in reservation-based systems , 2001, Proceedings Seventh IEEE Real-Time Technology and Applications Symposium.

[37]  Reinder J. Bril,et al.  Extending a HSF-enabled open-source real-time operating system with resource sharing , 2010 .

[38]  Johan J. Lukkien,et al.  Protocol-transparent resource sharing in hierarchically scheduled real-time systems , 2010, 2010 IEEE 15th Conference on Emerging Technologies & Factory Automation (ETFA 2010).

[39]  Giuseppe Lipari,et al.  A methodology for designing hierarchical scheduling systems , 2005, J. Embed. Comput..

[40]  Wang Yi,et al.  Static worst-case execution time analysis of the μC/OS-II real-time kernel , 2009, Frontiers of Computer Science in China.

[41]  Giuseppe Lipari,et al.  Task synchronization in reservation-based real-time systems , 2004, IEEE Transactions on Computers.

[42]  Alan Burns,et al.  Hierarchical fixed priority pre-emptive scheduling , 2005, 26th IEEE International Real-Time Systems Symposium (RTSS'05).

[43]  Alan Burns,et al.  New results on fixed priority aperiodic servers , 1999, Proceedings 20th IEEE Real-Time Systems Symposium (Cat. No.99CB37054).

[44]  Thomas Nolte,et al.  Schedulability analysis of synchronization protocols based on overrun without payback for hierarchical scheduling frameworks revisited , 2009, RTSS 2009.

[45]  Alan Burns,et al.  Analysis of Hierarchical EDF Pre-emptive Scheduling , 2007, RTSS 2007.