Dual ceiling protocol for real-time synchronization under preemption threshold scheduling

The application of object-oriented design methods to real-time embedded systems is seriously hindered by the lack of existing real-time scheduling techniques that can be seamlessly integrated into these methods. Preemption threshold scheduling (PTS) enables a scalable real-time system design and thus has been suggested as a solution to this problem. However, direct adoption of PTS may lead to long priority inversion since object-oriented real-time systems require synchronization considerations in order to maintain consistent object states. In this paper, we propose the dual ceiling protocol (DCP) in order to solve this problem. While DCP exploits both priority ceilings and preemption threshold ceilings, this is not a straightforward integration of existing real-time synchronization protocols for PTS. We present the rationale for the locking conditions of DCP and show that it leads to the least blocking and response times by comparison with other real-time synchronization protocols. We also present its blocking properties and schedulability analyses. We implemented PTS and DCP in a real-time object-oriented CASE tool and present the associated experimental results, which show that the proposed protocol is a viable solution that is superior to other real-time synchronization protocols for PTS.

[1]  Robert I. Davis,et al.  How Embedded Applications using an RTOS can stay within On-chip Memory Limits , 2002 .

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

[3]  Manas Saksena,et al.  Schedulability analysis for automated implementations of real-time object-oriented models , 1998, Proceedings 19th IEEE Real-Time Systems Symposium (Cat. No.98CB36279).

[4]  Alan Burns,et al.  An extendible approach for analyzing fixed priority hard real-time tasks , 1994, Real-Time Systems.

[5]  John Regehr,et al.  Scheduling tasks with mixed preemption relations for robustness to timing faults , 2002, 23rd IEEE Real-Time Systems Symposium, 2002. RTSS 2002..

[6]  Seongsoo Hong,et al.  Scenario-based multitasking for real-time object-oriented models , 2006, Inf. Softw. Technol..

[7]  Bran Selic,et al.  Real-time object-oriented modeling , 1994, Wiley professional computing.

[8]  Giorgio Buttazzo,et al.  Hard Real-Time Computing Systems: Predictable Scheduling Algorithms and Applications , 1997 .

[9]  Manas Saksena,et al.  Designing for schedulability: integrating schedulability analysis with object-oriented design , 2000, Proceedings 12th Euromicro Conference on Real-Time Systems. Euromicro RTS 2000.

[10]  Manas Saksena,et al.  Guidelines for automated implementation of executable object oriented models for real-time embedded control systems , 1997, Proceedings Real-Time Systems Symposium.

[11]  Manas Saksena,et al.  Scheduling fixed-priority tasks with preemption threshold , 1999, Proceedings Sixth International Conference on Real-Time Computing Systems and Applications. RTCSA'99 (Cat. No.PR00306).

[12]  Kwei-Jay Lin,et al.  Dynamic priority ceilings: A concurrency control protocol for real-time systems , 1990, Real-Time Systems.

[13]  Tae-Hyung Kim,et al.  Perfecting preemption threshold scheduling for object-oriented real-time system design: from the perspective of real-time synchronization , 2002, LCTES/SCOPES '02.

[14]  Seongsoo Hong,et al.  Experimental Assessment of Scenario-Based Multithreading for Real-Time Object-Oriented Models: A Case Study with PBX Systems , 2004, EUC.

[15]  Rajesh K. Gupta,et al.  Optimized slowdown in real-time task systems , 2004, Proceedings. 16th Euromicro Conference on Real-Time Systems, 2004. ECRTS 2004..

[16]  Manas Saksena,et al.  Scalable real-time system design using preemption thresholds , 2000, Proceedings 21st IEEE Real-Time Systems Symposium.

[17]  Chung Laung Liu,et al.  Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment , 1989, JACM.

[18]  Giorgio C. Buttazzo,et al.  Hard Real-Time Computing Systems: Predictable Scheduling Algorithms and Applications (Real-Time Systems Series) , 2010 .

[19]  Peter A. Buhr,et al.  Solution space for fixed-priority with preemption threshold , 2005, 11th IEEE Real Time and Embedded Technology and Applications Symposium.

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

[21]  Aloysius Ka-Lau Mok,et al.  Fundamental design problems of distributed systems for the hard-real-time environment , 1983 .

[22]  Manas Saksena Towards automatic synthesis of QoS preserving implementations from object-oriented design models , 1999, Proceedings. Fifth International Workshop on Object-Oriented Real-Time Dependable Systems.

[23]  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).