Abstract-This paper introduces schedulability analysis for global fixed priority scheduling with deferred pre-emption (gFPDS) for homogeneous multiprocessor systems. gFPDS is a superset of global fixed priority pre-emptive scheduling (gFPPS) and global fixed priority non-pre-emptive scheduling (gFPNS). We show how schedulability can be improved via appropriate choice of priority assignment and final non-pre-emptive region lengths, and we provide algorithms which optimize schedulability in this way. An experimental evaluation shows that gFPDS significantly outperforms both gFPPS and gFPNS.
I.INTRODUCTION A common misconception with regard to fixed priority scheduling of sporadic tasks is that fully pre-emptive scheduling is more effective in terms of schedulability than non-pre-emptive scheduling. The two are however incomparable; there are tasksets that are schedulable under fixed priority non-pre-emptive scheduling that are not schedulable under fixed priority pre-emptive scheduling and vice-versa. This is the case for uniprocessor scheduling [27] and also the case for global multiprocessor scheduling [30], which is the focus of this paper.While the blocking effect, due to long non-pre-emptive regions of low priority tasks degrades schedulability for single processor systems that have a wide range of task execution times and periods (as illustrated by Figure 7 in [27]), Guan et al. [30] showed that the same is not necessarily true for multiprocessor systems. With m processors rather than one, long non-pre-emptive regions can be accommodated without necessarily compromising the schedulability of higher priority tasks. However, this advantage only extends so far; with m processors then m long non-pre-emptive regions are enough to significantly compromise schedulability. In this context, limited non-preemptive execution has the advantage of reducing the number of pre-emptions, and potentially improving the worst-case response time of tasks, while also keeping blocking effects on higher priority tasks within tolerable limits.In the literature, the term fixed priority scheduling with deferred pre-emption has been used to refer to a variety of different techniques by which pre-emptions may be deferred for some interval of time after a higher priority task becomes ready. These are described in a survey by Buttazzo et al. [21] and briefly discussed in Section II. In this paper, we assume a simple form of fixed priority scheduling with deferred preemption where each task has a single non-pre-emptive region at the end of its execution. If this region is of the minimum possible length for all tasks, then we have fully pre-emptive scheduling, whereas if it constitutes all of the task's execution time then we have non-pre-emptive scheduling.In this paper, we introduce sufficient schedulability tests for global fixed priority scheduling with deferred pre-