Limited-preemptive fixed priority scheduling of real-time tasks on multiprocessors

Acknowledgement I would like to express my sincere acknowledgements to the Mälardalen University and East China University of Science and Technology for the precious chance they have provided to realize and complete my one year study here with my total satisfaction. Special appreciation goes to Dr. Radu Dobrin, Dr. Moris Behnam, Abhilash Thekkilakattil for giving me all the support that I needed during the realization of this work and their wise advises. To my friends, Kaiqian Zhu, Lingjian Gan and Xiaosha Zha who give me their honest friendship and all the help in my living here. To my family which unconditional love has been my company through this time and especially to my mother who sacrificed a lot in order to see me succeed. Abstract Real-time systems have been employed in many devices, such as automobiles, airplanes, and telephone networks. In these systems, there is a need for higher performance to handle more and more complex tasks, which single core processors cannot satisfy because of the infeasibility of further increasing processor speeds. Consequently, the interest turned to multicore systems in which the performance is improved using more number of cores/processors. Traditionally, research in real-time scheduling has focused on the two principal approaches of preemptive and non-preemptive scheduling. Preemptive scheduling typically imply prohibitively high preemption related overheads and non-preemptive scheduling can increase blocking on higher priority tasks, leading to unschedulability. Therefore, limited preemptive scheduling, in which preemptions are restricted using various mechanisms was proposed. However, scheduling real-time tasks limited preemptively complicates the scheduling problem on multiprocessors, unlike in the case of uniprocessors, because of the possibility of preempting any of the running lower priority tasks. Here, the scheduler can wait to preempt the lowest priority running task, referred to as Adaptive Deferred Scheduling (ADS), or preempt the first among the lower priority tasks that finishes executing a non-preemptive region, referred to as Regular Deferred Scheduling (RDS). In this thesis, we perform an empirical comparison of RDS and ADS using synthetically generated tasksets. For this we use well established methods for task generation along with a simulation tool that we developed. We 1) investigated the number of preemptions under RDS and ADS, as well as compared it against the number of preemptions under a fully preemptive scheduler 2) compared RDS, ADS and fully preemptive and non-preemptive scheduling using schedulability ratio by varying different task parameters. We found that the number of preemptions …

[1]  Aleardo Manacero,et al.  Teaching real-time with a scheduler simulator , 2001, 31st Annual Frontiers in Education Conference. Impact on Engineering and Science Education. Conference Proceedings (Cat. No.01CH37193).

[2]  Mary Shaw,et al.  The coming-of-age of software architecture research , 2001, Proceedings of the 23rd International Conference on Software Engineering. ICSE 2001.

[3]  Neil C. Audsley,et al.  On priority assignment in fixed priority scheduling , 2001, Inf. Process. Lett..

[4]  Mathieu Grenier,et al.  Fine-Tuning MAC-Level Protocols for Optimized Real-Time QoS , 2008, IEEE Transactions on Industrial Informatics.

[5]  A. Diaz,et al.  Realtss: a real-time scheduling simulator , 2007, 2007 4th International Conference on Electrical and Electronics Engineering.

[6]  Sanjoy K. Baruah,et al.  Static-priority scheduling on multiprocessors , 2001, Proceedings 22nd IEEE Real-Time Systems Symposium (RTSS 2001) (Cat. No.01PR1420).

[7]  P. Chitra,et al.  Power-aware Scheduling of fixed priority tasks in soft real-time multicore systems , 2013, 2013 IEEE International Conference ON Emerging Trends in Computing, Communication and Nanotechnology (ICECCN).

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

[9]  Joël Goossens,et al.  A generic simulator of real-time scheduling algorithms , 1996, Proceedings of the 29th Annual Simulation Symposium.

[10]  Wang Yi,et al.  Fixed-Priority Multiprocessor Scheduling: Critical Instant, Response Time and Utilization Bound , 2012, 2012 IEEE 26th International Parallel and Distributed Processing Symposium Workshops & PhD Forum.

[11]  Alan Burns,et al.  Global and Partitioned Multiprocessor Fixed Priority Scheduling with Deferred Preemption , 2015, ACM Trans. Embed. Comput. Syst..

[12]  Sudarshan K. Dhall,et al.  On a Real-Time Scheduling Problem , 1978, Oper. Res..

[13]  Robert I. Davis,et al.  Limited Pre-emptive Global Fixed Task Priority , 2013, 2013 IEEE 34th Real-Time Systems Symposium.

[14]  Rami G. Melhem,et al.  Comparison of global and partitioning schemes for scheduling rate monotonic tasks on a multiprocessor , 1998, Proceeding. 10th EUROMICRO Workshop on Real-Time Systems (Cat. No.98EX168).

[15]  Li Jie,et al.  The research of scheduling algorithms in real-time system , 2010, 2010 International Conference on Computer and Communication Technologies in Agriculture Engineering.

[16]  Abhilash Thekkilakattil,et al.  Limited Preemptive Scheduling in Real-time Systems , 2016 .

[17]  James W. Layland,et al.  Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment , 1989, JACM.

[18]  G. Jakovljevic,et al.  Java simulator of real-time scheduling algorithms , 2002, ITI 2002. Proceedings of the 24th International Conference on Information Technology Interfaces (IEEE Cat. No.02EX534).

[19]  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.

[20]  Arnoldo Díaz-Ramírez,et al.  A multiprocessor real-time scheduling simulation tool , 2012, CONIELECOMP 2012, 22nd International Conference on Electrical Communications and Computers.

[21]  Seung-Min Yang,et al.  A Modified Least-Laxity-First scheduling algorithm for real-time tasks , 1998, Proceedings Fifth International Conference on Real-Time Computing Systems and Applications (Cat. No.98EX236).

[22]  Yong Meng Teo,et al.  Towards Modelling Parallelism and Energy Performance of Multicore Systems , 2012, 2012 IEEE 26th International Parallel and Distributed Processing Symposium Workshops & PhD Forum.