Effective and Efficient Scheduling of Certifiable Mixed-Criticality Sporadic Task Systems

An increasing trend in embedded system design is to integrate components with different levels of criticality into a shared hardware platform for better cost and power efficiency. Such mixed-criticality systems are subject to certifications at different levels of rigorousness, for validating the correctness of different subsystems on various confidence levels. The real-time scheduling of certifiable mixed-criticality systems has been recognized to be a challenging problem, where using traditional scheduling techniques may result in unacceptable resource waste. In this paper we present an algorithm called PLRS to schedule certifiable mixed-criticality sporadic tasks systems. PLRS uses fixed-job-priority scheduling, and assigns job priorities by exploring and balancing the asymmetric effects between the workload on different criticality levels. Comparing with the state-of-the-art algorithm by Li and Baruah for such systems, which we refer to as LB, PLRS is both more effective and more efficient: (i) The schedulability test of PLRS not only theoretically dominates, but also on average significantly outperforms LB's. (ii) The run-time complexity of PLRS is polynomial (quadratic in the number of tasks), which is much more efficient than the pseudo-polynomial run-time complexity of LB.

[1]  Sanjoy K. Baruah,et al.  Towards the Design of Certifiable Mixed-criticality Systems , 2010, 2010 16th IEEE Real-Time and Embedded Technology and Applications Symposium.

[2]  Sanjoy K. Baruah,et al.  Load-based schedulability analysis of certifiable mixed-criticality systems , 2010, EMSOFT '10.

[3]  Jane W.-S. Liu Real-Time Systems , 2000, Encyclopedia of Algorithms.

[4]  Sanjoy K. Baruah,et al.  Mixed-Criticality Real-Time Scheduling for Multicore Systems , 2010, 2010 10th IEEE International Conference on Computer and Information Technology.

[5]  Giorgio C. Buttazzo Hard Real-Time Computing Systems: Predictable Scheduling Algorithms and Applications, Second Edition , 2004, Real-Time Systems Series.

[6]  Sanjoy K. Baruah,et al.  Schedulability Analysis of Sporadic Tasks with Multiple Criticality Specifications , 2008, 2008 Euromicro Conference on Real-Time Systems.

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

[8]  Sanjoy K. Baruah,et al.  Mixed-criticality Scheduling: Improved Resource-augmentation Results , 2010, CATA.

[9]  Ragunathan Rajkumar,et al.  Resource Allocation in Distributed Mixed-Criticality Cyber-Physical Systems , 2010, 2010 IEEE 30th International Conference on Distributed Computing Systems.

[10]  Stefan M. Petters,et al.  Towards Real Multi-criticality Scheduling , 2009, 2009 15th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications.

[11]  Ragunathan Rajkumar,et al.  On the Scheduling of Mixed-Criticality Real-Time Task Sets , 2009, 2009 30th IEEE Real-Time Systems Symposium.

[12]  Joël Goossens,et al.  Schedulability and sensitivity analysis of multiple criticality tasks with fixed-priorities , 2009, Real-Time Systems.

[13]  Sanjoy K. Baruah,et al.  An Algorithm for Scheduling Certifiable Mixed-Criticality Sporadic Task Systems , 2010, 2010 31st IEEE Real-Time Systems Symposium.

[14]  Bala Kalyanasundaram,et al.  Speed is as powerful as clairvoyance , 2000, JACM.

[15]  Ragunathan Rajkumar,et al.  Mixed-Criticality Task Synchronization in Zero-Slack Scheduling , 2011, 2011 17th IEEE Real-Time and Embedded Technology and Applications Symposium.

[16]  Lui Sha,et al.  Handling mixed-criticality in SoC-based real-time embedded systems , 2009, EMSOFT '09.

[17]  Nuno Pereira,et al.  Static-Priority Scheduling over Wireless Networks with Multiple Broadcast Domains , 2007, RTSS 2007.

[18]  S. Vestal Preemptive Scheduling of Multi-criticality Systems with Varying Degrees of Execution Time Assurance , 2007, RTSS 2007.