Hierarchical Multicore-Scheduling for Virtualization of Dependent Real-Time Systems

Conference paper
Part of the IFIP Advances in Information and Communication Technology book series (IFIPAICT, volume 523)

Abstract

Hypervisor-based virtualization is a promising technology to concurrently run various embedded real-time applications on a single multicore hardware. It provides spatial as well as temporal separation of different applications allocated to one hardware platform. In this paper, we propose a concept for hierarchical scheduling of dependent real-time software on multicore systems using hypervisor-based virualization. For this purpose, we decompose offline schedules of singlecore systems based on their release times, deadlines, and precedence constraints. Resulting schedule fragments are allocated to time partitions such that task deadlines as well as precedence constraints are met while local scheduling order of tasks is preserved. This concept, e.g., enables consolidation of various dependent singlecore applications on a multicore platform using full virtualization. Finally, we demonstrate functionality of our concept by an automotive use case from literature.

Keywords

Embedded systems Dependent real-time systems Real-time virtualization Multicore scheduling Hierarchical scheduling 

Notes

Acknowledgment

This work was partly funded by German Ministry of Education and Research (BMBF) through project “it’s OWL - Intelligente Technische Systeme OstWestfalenLippe” (02PQ1021) and ITEA2 project AMALTHEA4public (01IS14029J).

References

  1. 1.
    Baruah, S., Bertogna, M., Buttazzo, G.: Multiprocessor Scheduling for Real-Time Systems. ES. Springer, Cham (2015).  https://doi.org/10.1007/978-3-319-08696-5CrossRefMATHGoogle Scholar
  2. 2.
    Chetto, H., Silly, M., Bouchentouf, T.: Dynamic scheduling of real-time tasks under precedence constraints. Real-Time Syst. 2(3), 181–194 (1990)CrossRefGoogle Scholar
  3. 3.
    Cho, H., Ravindran, B., Jensen, E.: An optimal real-time scheduling algorithm for multiprocessors. In: 27th IEEE International Real-Time Systems Symposium, pp. 101–110 (2006)Google Scholar
  4. 4.
    Crespo, A., Ripoll, I., Masmano, M.: Partitioned embedded architecture based on hypervisor: the xtratum approach. In: European Dependable Computing Conference (EDCC), pp. 67–72 (2010)Google Scholar
  5. 5.
    Davis, R.I., Burns, A.: A survey of hard real-time scheduling for multiprocessor systems. ACM Comput. Surv. 43(4), 35:1–35:44 (2011)CrossRefGoogle Scholar
  6. 6.
    Forget, J., Boniol, F., Grolleau, E., Lesens, D., Pagetti, C.: Scheduling dependent periodic tasks without synchronization mechanisms. In: 16th IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS), pp. 301–310 (2010)Google Scholar
  7. 7.
    Groesbrink, S., Almeida, L.: A criticality-aware mapping of real-time virtual machines to multi-core processors. In: IEEE Emerging Technology and Factory Automation (ETFA), pp. 1–9 (2014)Google Scholar
  8. 8.
    Kandasamy, N., Hayes, J.P., Murray, B.T.: Dependable communication synthesis for distributed embedded systems. In: Anderson, S., Felici, M., Littlewood, B. (eds.) SAFECOMP 2003. LNCS, vol. 2788, pp. 275–288. Springer, Heidelberg (2003).  https://doi.org/10.1007/978-3-540-39878-3_22CrossRefGoogle Scholar
  9. 9.
    Kleidermacher, D.: System virtualization in multicore systems. In: Moyer, B. (ed.) Real World Multicore Embedded Systems - A Practical Approach, pp. 227–267. Elsevier, Amsterdam (2013)CrossRefGoogle Scholar
  10. 10.
    Klobedanz, K., Jatzkowski, J., Rettberg, A., Mueller, W.: Fault-tolerant deployment of real-time software in AUTOSAR ECU networks. In: Schirner, G., Götz, M., Rettberg, A., Zanella, M.C., Rammig, F.J. (eds.) IESS 2013. IAICT, vol. 403, pp. 238–249. Springer, Heidelberg (2013).  https://doi.org/10.1007/978-3-642-38853-8_22CrossRefGoogle Scholar
  11. 11.
    Lee, S.K.: On-line multiprocessor scheduling algorithms for real-time tasks. In: Proceedings of TENCON 1994. IEEE Region 10’s Ninth Annual International Conference. Theme: Frontiers of Computer Technology, pp. 607–611 (1994)Google Scholar
  12. 12.
    Main, C.: Virtualization on multicore for industrial real-time operating systems [from mind to market]. IEEE Ind. Electron. Mag. 4(3), 4–6 (2010)CrossRefGoogle Scholar
  13. 13.
    Masmano, M., Ripoll, I., Crespo, A.: Xtratum: a hypervisor for safety critical embedded systems. In: Proceedings of 11th Real-Time Linux Workshop, pp. 263–272 (2009)Google Scholar
  14. 14.
    Masrur, A., Drossler, S., Pfeuffer, T., Chakraborty, S.: VM-based real-time services for automotive control applications. In: IEEE 16th International Conference on Embedded and Real-Time Computing Systems and Applications (RTCSA), pp. 218–223 (2010)Google Scholar
  15. 15.
    Rönngren, S., Shirazi, B.: Static multiprocessor scheduling of periodic real-time tasks with precedence constraints and communication costs. In: Proceedings of 28th Hawaii International Conference on System Sciences, vol. 2, pp. 143–152 (1995)Google Scholar
  16. 16.
    Xi, S., Xu, M., Lu, C., Phan, L., Gill, C., Sokolsky, O., Lee, I.: Real-time multi-core virtual machine scheduling in Xen. In: International Conference on Embedded Software (EMSOFT), pp. 1–10 (2014)Google Scholar

Copyright information

© IFIP International Federation for Information Processing 2017

Authors and Affiliations

  1. 1.C-LABUniversity of PaderbornPaderbornGermany
  2. 2.Department of Informatics and Applied MathematicsUFRNNatalBrazil
  3. 3.Carl von Ossietzky University OldenburgOldenburgGermany

Personalised recommendations