A Heterogeneous Preemptive and Non-preemptive Scheduling Approach for Real-Time Systems on Multiprocessors

The correct functioning of real-time systems depends not only on the logically correct response, but also on its timing. This type of system is increasingly present today and the processing demand is such that complex multicore processors are needed. The development of multiprocessors is ahead of the analysis techniques of such systems and it is therefore necessary to promote reliability and to reduce over-specified systems. Depending on the processor architecture, the values obtained by computing WCET (Worst Case Execution Time) are incompatible with the scheduling model that creates a fundamental contradiction between the assumptions of WCET calculation and scheduling algorithms. This work proposes the use of a heterogeneous approach where part of the multiprocessor cores operate under preemptive and part under a non-preemptive scheduling. The analysis shows that there are advantages in using the heterogeneous approach.

[1]  Marco Spuri,et al.  Preemptive and Non-Preemptive Real-Time UniProcessor Scheduling , 1996 .

[2]  James H. Anderson,et al.  On the Scalability of Real-Time Scheduling Algorithms on Multicore Platforms: A Case Study , 2008, 2008 Real-Time Systems Symposium.

[3]  R. Wilhelm,et al.  Predictability Considerations in the Design of Multi-Core Embedded Systems ∗ , 2010 .

[4]  Lui Sha,et al.  Impact of Cache Partitioning on Multi-tasking Real Time Embedded Systems , 2008, 2008 14th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications.

[5]  Martin Schoeberl,et al.  Time-Predictable Computer Architecture , 2009, EURASIP J. Embed. Syst..

[6]  Alan Burns,et al.  Priority Assignment for Global Fixed Priority Pre-Emptive Scheduling in Multiprocessor Real-Time Systems , 2009, 2009 30th IEEE Real-Time Systems Symposium.

[7]  Jakob Engblom,et al.  The worst-case execution-time problem—overview of methods and survey of tools , 2008, TECS.

[8]  Jörn Schneider Cache and pipeline sensitive fixed priority scheduling for preemptive real-time systems , 2000, Proceedings 21st IEEE Real-Time Systems Symposium.

[9]  Giorgio C. Buttazzo,et al.  Measuring the Performance of Schedulability Tests , 2005, Real-Time Systems.

[10]  Damien Hardy,et al.  Estimation of Cache Related Migration Delays for Multi-Core Processors with Shared Instruction Caches , 2009 .

[11]  Sanjoy K. Baruah,et al.  A Categorization of Real-Time Multiprocessor Scheduling Problems and Algorithms , 2004, Handbook of Scheduling.

[12]  Shinpei Kato,et al.  Semi-partitioned Fixed-Priority Scheduling on Multiprocessors , 2009, 2009 15th IEEE Real-Time and Embedded Technology and Applications Symposium.

[13]  Tarek F. Abdelzaher,et al.  10th IEEE real-time and embedded technology and applications symposium , 2004, SIGBED.

[14]  Chen Ding,et al.  Quantifying the cost of context switch , 2007, ExpCS '07.

[15]  Rômulo Silva de Oliveira,et al.  On using adversary simulators to obtain tight lower bounds for response times , 2012, SAC '12.

[16]  Alan Burns,et al.  FPZL Schedulability Analysis , 2011, 2011 17th IEEE Real-Time and Embedded Technology and Applications Symposium.

[17]  Björn B. Brandenburg,et al.  Cache-Related Preemption and Migration Delays : Empirical Approximation and Impact on Schedulability ∗ , 2010 .

[18]  Robert I. Davis,et al.  A Survey of Hard Real-Time Scheduling Algorithms and Schedulability Analysis Techniques for Multiprocessor Systems , 2009 .

[19]  Andy J. Wellings,et al.  Adding instruction cache effect to schedulability analysis of preemptive real-time systems , 1996, Proceedings Real-Time Technology and Applications.