The SRP Resource Sharing Protocol for Self-Suspending Tasks
Ref: CISTER-TR-180807 Publication Date: 11 to 14, Dec, 2018
The SRP Resource Sharing Protocol for Self-Suspending TasksRef: CISTER-TR-180807 Publication Date: 11 to 14, Dec, 2018
Motivated by the increasingly wide adoption of realtime workload with self-suspending behaviors, and the relevance of mechanisms to handle mutually-exclusive shared resources, this paper takes a new look at locking protocols for self-suspending tasks under uniprocessor fixed-priority scheduling. Pitfalls when integrating the widely-adopted Stack Resource Policy (SRP) with self-suspending tasks are firstly illustrated, and then a new fine grained SRP analysis is presented. Next, a new locking protocol, named SRP-SS, is proposed to overcome the limitations of the original SRP. The SRP-SS is a generalization of the SRP to cope with the specificities of self-suspending tasks. It therefore reduces to the SRP under some configurations and hence theoretically dominates the SRP. It also ensures backward compatibility for applications developed specifically for the SRP. The SRP-SS comes with its own schedulability analysis and configuration algorithm. The performances of the SRP and SRP-SS are finally studied by means of schedulability experiments.
39th IEEE Real-Time Systems Symposium (RTSS 2018), Session 10: Uni-Processor Scheduling, pp 361-372.