FFOB: efficient online mode-switch procrastination in mixed-criticality systems

Abstract

In mixed-criticality scheduling, the widely adopted mode-switch scheme assumes that both high- and low-criticality tasks are schedulable when no tasks overrun (normal mode) and all high-criticality tasks are schedulable even when they overrun (critical mode, where low-criticality tasks are abandoned/degraded). However, this scheme greatly impedes the system performance because triggering a mode-switch immediately after any task overruns is abrupt and pessimistic. It is urgent to solve this problem as the mode-switch scheme is a fundamental part in the mixed-criticality scheduling. In this article, we present an on-the-fly fast overrun budgeting mechanism for both, earliest-deadline-first scheduled and fixed-priority scheduled systems that can effectively keep the system “away” from the critical mode. Our main idea is to perform overrun budgeting for all tasks as a whole, by monitoring task executions and updating a common overrun budget. This way, the overrun budget is shared among all tasks and adaptively replenished by leveraging run-time information; consequently, mode-switch can be postponed as much as possible. Both, extensive simulations and real-life deployments demonstrate that our proposed mode-switch scheme is lightweight and significantly outperforms existing solutions in improving the system’s quality of service for low-criticality tasks.

This is a preview of subscription content, access via your institution.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12

Notes

  1. 1.

    \(T^h\) is the hyper-period.

  2. 2.

    The complexity of twice binary searching is the same as one time binary searching, i.e., \(O(log\,(T^h)^2) = O(2log\,T^h)=O(log\,T^h)\)

  3. 3.

    \(t_{v1}^s\) may not be equal to \(t_{C_i}\) in reality, but it does not change the proof later on.

  4. 4.

    LO mode deadline is smaller than the original deadline

References

  1. Audsley NC (2001) On priority assignment in fixed priority scheduling. Inf Process Lett 79(1):39–44

    Article  MATH  Google Scholar 

  2. Audsley N, Burns A, Richardson M, Tindell K, Wellings AJ (1993) Applying new scheduling theory to static priority pre-emptive scheduling. Softw Eng J 8(5):284–292

    Article  Google Scholar 

  3. Awan MA, Petters SM (2011) Enhanced race-to-halt: a leakage-aware energy management approach for dynamic priority systems. In: Euromicro conference on real-time systems (ECRTS)

  4. Awan MA, Yomsi PM, Petters SM (2013) Optimal procrastination interval for constrained deadline sporadic tasks upon uniprocessors. In: Conference on real-time networks and systems (RTNS)

  5. Barhorst J, Belote T, Binns P, Hoffman J, Paunicka J, Sarathy P, Scoredos J, Stanfill P, Stuart D, Urzi R (2009) A research agenda for mixed-criticality systems. Cyber Phys Syst Week 12

  6. Baruah SK, Bonifaci V, D’Angelo G, Marchetti-Spaccamela A, Van Der Ster S, Stougie L (2011) Mixed-criticality scheduling of sporadic task systems. In: Algorithms–ESA

  7. Baruah SK, Burns A, Davis RI (2011) Response-time analysis for mixed criticality systems. In: Real-time systems symposium (RTSS)

  8. Baruah SK, Mok AK, Rosier LE (1990) Preemptively scheduling hard-real-time sporadic tasks on one processor. In: Real-time systems symposium (RTSS)

  9. Baruah S, Bonifaci V, Dangelo G, Li H, Marchettispaccamela A, Megow N, Stougie L (2012) Scheduling real-time mixed-criticality jobs. IEEE Trans Comput. 61(8):1140–1152

    MathSciNet  Article  MATH  Google Scholar 

  10. Baruah S, Bonifaci V, D’Angelo G, Li H, Marchetti-Spaccamela A, Van Der Ster S, Stougie L (2012) The preemptive uniprocessor scheduling of mixed-criticality implicit-deadline sporadic task systems. In: Euromicro conference on real-time systems (ECRTS)

  11. Bate I, Burns A (2003) An integrated approach to scheduling in safety-critical embedded control systems. Real Time Syst 25(1):5–37

    Article  MATH  Google Scholar 

  12. Bate I, Burns A, Davis R (2016) An enhanced bailout protocol for mixed criticality embedded software. IEEE Trans Softw Eng 43:298–320

    Article  Google Scholar 

  13. Bate I, Burns A, Davis RI (2015) A bailout protocol for mixed criticality systems. In: Euromicro conference on real-time systems (ECRTS)

  14. Biao H, Kai H, Gang C, Long C, Alois K (2015) Adaptive runtime shaping for mixed criticality systems. In: Conference on embedded software (EMSOFT)

  15. Bini E, Buttazzo GC (2005) Measuring the performance of schedulability tests. Real Time Syst 30(1–2):129–154

    Article  MATH  Google Scholar 

  16. Binns P (1996) Scheduling slack in metah. In: Real-time systems symposium (RTSS)

  17. Burns A, Baruah S (2011) Timing faults and mixed criticality systems. Springer, Berlin

    Google Scholar 

  18. Burns A, Davis R (2013) Mixed criticality systems: a review. University of York, Tech. Rep

  19. Chakraborty S, Künzli S, Thiele L (2003) A general framework for analysing system properties in platform-based embedded system designs. In: Conference on design, automation and test in Europe (DATE)

  20. Easwaran A (2013) Demand-based scheduling of mixed-criticality sporadic tasks on one processor. In: Real-time systems symposium (RTSS)

  21. Ekberg P, Yi W (2014) Bounding and shaping the demand of generalized mixed-criticality sporadic task systems. Real Time Syst 50(1):48–86

    Article  MATH  Google Scholar 

  22. Ekberg P, Yi W (2012) Outstanding paper award: bounding and shaping the demand of mixed-criticality sporadic tasks. In: Euromicro conference on real-time systems (ECRTS)

  23. Gomez A, Schor L, Kumar P, Thiele L (2014) Sf3p: a framework to explore and prototype hierarchical compositions of real-time schedulers. In: International symposium on rapid system prototyping (RSP)

  24. Gu X, Easwaran A (2016) Dynamic budget management with service guarantees for mixed-criticality systems. In: Real-time systems symposium (RTSS)

  25. Gu X, Easwaran A, Phan K-M, Shin I (2015) Resource ecient isolation mechanisms in mixed-criticality scheduling. In: Euromicro conference on real-time systems (ECRTS). IEEE

  26. Hu B, Huang K, Chen G, Cheng L, Knoll A (2016) Adaptive workload management in mixed-criticality systems. ACM Trans Embed Comput Syst 16(1):14

    Article  Google Scholar 

  27. Huang H-M, Gill C, Lu C (2012) Implementation and evaluation of mixed-criticality scheduling approaches for periodic tasks. In: Real-time and embedded technology and applications symposium (RTAS)

  28. Huang K, Santinelli L, Chen J-J, Thiele L, Buttazzo GC (2011) Applying real-time interface and calculus for dynamic power management in hard real-time systems. Real Time Syst 47(2):163–193

    Article  MATH  Google Scholar 

  29. Huang H-M, Gill C, Lu C (2014) Implementation and evaluation of mixed-criticality scheduling approaches for sporadic tasks. ACM Trans Embed Comput Syst 13(4s):126

    Article  Google Scholar 

  30. Huang P, Giannopoulou G, Stoimenov N, Thiele L (2014) Service adaptions for mixed-criticality systems. In: Asia and South Pacific design automation conference (ASP-DAC)

  31. Huang P, Kumar P, Giannopoulou G, Thiele L (2015) Run and be safe: Mixed criticality scheduling with temporary processor speedup. In: Design, automation & test in Europe conference & exhibition (DATE)

  32. Huang K, Santinelli L, Chen J-J, Thiele L, Buttazzo GC (2009) Adaptive dynamic power management for hard real-time systems. In: Real-time systems symposium (RTSS)

  33. Le Boudec J-Y, Thiran P (2001) Network calculus: a theory of deterministic queuing systems for the internet. Springer, Berlin

    Google Scholar 

  34. Lin C, Brandt SA (2005) Improving soft real-time performance through better slack reclaiming. In: Real-time systems symposium (RTSS)

  35. Lipari G, Buttazzo G (2013) Resource reservation for mixed criticality systems. In: Proceeding of workshop on real-time systems: the past, the present, and the future

  36. Neukirchner M, Axer P, Michaels T, Ernst R (2013a) Monitoring of workload arrival functions for mixed-criticality systems. In: Real-time systems symposium (RTSS), pp 88–96

  37. Neukirchner M, Lampka K, Quinton S, Ernst R (2013b) Multi-mode monitoring for mixed-criticality real-time systems. In: Conference on hardware/software codesign and system synthesis (CODES+ISSS)

  38. Raspberry Pi 3 board. https://www.raspberrypi.org/products/raspberry-pi-3-model-b/. Accessed 20 July 2016

  39. Santy F, George L, Thierry P, Goossens J (2012) Relaxing mixed-criticality scheduling strictness for task sets scheduled with fp. In: Euromicro conference on real-time systems (ECRTS)

  40. Sigrist L, Giannopoulou G, Huang P, Gomez A, Thiele L (2015) Mixed-criticality runtime mechanisms and evaluation on multicores. In: Real-time and embedded technology and applications symposium (RTAS)

  41. Sprunt B, Sha L, Lehoczky J (1989) Aperiodic task scheduling for hard-real-time systems. Real Time Syst 1(1):27–60

    Article  Google Scholar 

  42. Spuri M, Buttazzo GC (1994) Efficient aperiodic service under earliest deadline scheduling. In: Real-time systems symposium (RTSS)

  43. Strosnider JK, Lehoczky JP, Sha L (1995) The deferrable server algorithm for enhanced aperiodic responsiveness in hard real-time environments. IEEE Trans Comput 44(1):73–91

    Article  MATH  Google Scholar 

  44. Su H, Zhu D (2013) An elastic mixed-criticality task model and its scheduling algorithm. In: Conference on design, automation and test in Europe (DATE)

  45. Su H, Zhu D, Mossé D (2013) Scheduling algorithms for elastic mixed-criticality tasks in multicore systems. In: 2013 IEEE 19th international conference on embedded and real-time computing systems and applications (RTCSA). IEEE, pp 352–357

  46. Thiele L, Chakraborty S, Naedele M (2000) Real-time calculus for scheduling hard real-time systems. In: International symposium on circuits and systems (ISCAS)

  47. Thiele L, Wandeler E, Stoimenov N (2006) Real-time interfaces for composing real-time systems. In: Conference on embedded software (EMSOFT)

  48. Vestal S (2007) Preemptive scheduling of multi-criticality systems with varying degrees of execution time assurance. In: Real-time systems symposium (RTSS)

Download references

Acknowledgements

The authors would like to thank the anonymous reviewers for their valuable feedback. This work was supported in part by the National Natural Science Foundation of China under Grants 61802013 and 61872393, in part by the Talent Foundation of Beijing University of Chemical University under Grant buctrc201811, in part by the Open Research Project of the State Key Laboratory of Synthetical Automation for Process Industries under Grant H2018294, and in part by the Fundamental Research Funds for the Central Universities under Grant XK1802-4.

Author information

Affiliations

Authors

Corresponding author

Correspondence to Biao Hu.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Hu, B., Thiele, L., Huang, P. et al. FFOB: efficient online mode-switch procrastination in mixed-criticality systems. Real-Time Syst 55, 471–513 (2019). https://doi.org/10.1007/s11241-018-9323-x

Download citation

Keywords

  • Mixed-criticality systems
  • Overrun budgeting scheme
  • Task procrastination techniques
  • Slack reclaim