The Omnivisor: A Real-Time Static Partitioning Hypervisor Extension for Heterogeneous Core Virtualization over MPSoCs

Authors Daniele Ottaviano , Francesco Ciraolo , Renato Mancuso , Marcello Cinque

Thumbnail PDF


  • Filesize: 2.4 MB
  • 27 pages

Document Identifiers

Author Details

Daniele Ottaviano
  • Università degli Studi di Napoli Federico II, Italy
Francesco Ciraolo
  • Boston University, MA, USA
Renato Mancuso
  • Boston University, MA, USA
Marcello Cinque
  • Università degli Studi di Napoli Federico II, Italy

Cite AsGet BibTex

Daniele Ottaviano, Francesco Ciraolo, Renato Mancuso, and Marcello Cinque. The Omnivisor: A Real-Time Static Partitioning Hypervisor Extension for Heterogeneous Core Virtualization over MPSoCs. In 36th Euromicro Conference on Real-Time Systems (ECRTS 2024). Leibniz International Proceedings in Informatics (LIPIcs), Volume 298, pp. 7:1-7:27, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2024)


Following the needs of industrial applications, virtualization has emerged as one of the most effective approaches for the consolidation of mixed-criticality systems while meeting tight constraints in terms of space, weight, power, and cost (SWaP-C). In embedded platforms with homogeneous processors, a wealth of works have proposed designs and techniques to enforce spatio-temporal isolation by leveraging well-understood virtualization support. Unfortunately, achieving the same goal on heterogeneous MultiProcessor Systems-on-Chip (MPSoCs) has been largely overlooked. Modern hypervisors are designed to operate exclusively on main cores, with little or no consideration given to other co-processors within the system, such as small microcontroller-level CPUs or soft-cores deployed on programmable logic (FPGA). Typically, hypervisors consider co-processors as I/O devices allocated to virtual machines that run on primary cores, yielding full control and responsibility over them. Nevertheless, inadequate management of these resources can lead to spatio-temporal isolation issues within the system. In this paper, we propose the Omnivisor model as a paradigm for the holistic management of heterogeneous platforms. The model generalizes the features of real-time static partitioning hypervisors to enable the execution of virtual machines on processors with different Instruction Set Architectures (ISAs) within the same MPSoC. Moreover, the Omnivisor ensures temporal and spatial isolation between virtual machines by integrating and leveraging a variety of hardware and software protection mechanisms. The presented approach not only expands the scope of virtualization in MPSoCs but also enhances the overall system reliability and real-time performance for mixed-criticality applications. A full open-source reference implementation of the Omnivisor based on the Jailhouse hypervisor is provided, targeting ARM real-time processing units and RISC-V soft-cores on FPGA. Experimental results on real hardware show the benefits of the solution, including enabling the seamless launch of virtual machines on different ISAs and extending spatial/temporal isolation to heterogenous cores with enhanced regulation policies.

Subject Classification

ACM Subject Classification
  • Computer systems organization → Real-time system architecture
  • Mixed-Criticality
  • Embedded Virtualization
  • Real-Time Systems
  • MPSoCs


  • Access Statistics
  • Total Accesses (updated on a weekly basis)
    PDF Downloads


  1. Fardin Abdi Taghi Abad, Renato Mancuso, Stanley Bak, Or Dantsker, and Marco Caccamo. Reset-based recovery for real-time cyber-physical systems with temporal safety constraints. In 2016 IEEE 21st International Conference on Emerging Technologies and Factory Automation (ETFA), pages 1-8. IEEE, 2016. Google Scholar
  2. Luca Abeni and Dario Faggioli. Using xen and kvm as real-time hypervisors. Journal of Systems Architecture, 106:101709, 2020. Google Scholar
  3. Benny Akesson, Mitra Nasri, Geoffrey Nelissen, Sebastian Altmeyer, and Robert I Davis. A comprehensive survey of industry practice in real-time systems. Real-Time Systems, 58(3):358-398, 2022. Google Scholar
  4. Sara Alonso, Jesus Lazaro, Jaime Jimenez, Leire Muguira, and Unai Bidarte. Evaluating the OpenAMP framework in real-time embedded SoC platforms. In 2021 XXXVI Conference on Design of Circuits and Integrated Systems (DCIS), pages 1-6. IEEE, 2021. Google Scholar
  5. AMD. Microblaze reference guide. [Accessed 21-02-2024].
  6. ARM. PSCI specification - [Accessed 20-02-2024].
  7. Giuseppe Avon, Arturo Buscarino, André C Neto, and Filippo Sartori. MARTe2 embedded signal processing unit for the ITER magnetics diagnostics. In IECON 2021-47th Annual Conference of the IEEE Industrial Electronics Society, pages 1-6. IEEE, 2021. Google Scholar
  8. Victor Bandur, Gehan Selim, Vera Pantelic, and Mark Lawford. Making the case for centralized automotive e/e architectures. IEEE Transactions on Vehicular Technology, 70(2):1230-1245, 2021. Google Scholar
  9. Antonio Barbalace, Robert Lyerly, Christopher Jelesnianski, Anthony Carno, Ho-Ren Chuang, Vincent Legout, and Binoy Ravindran. Breaking the boundaries in heterogeneous-ISA datacenters. ACM SIGARCH Computer Architecture News, 45(1):645-659, 2017. Google Scholar
  10. Antonio Barbalace, Marina Sadini, Saif Ansary, Christopher Jelesnianski, Akshay Ravichandran, Cagil Kendir, Alastair Murray, and Binoy Ravindran. Popcorn: Bridging the programmability gap in heterogeneous-ISA platforms. In Proceedings of the Tenth European Conference on Computer Systems, pages 1-16, 2015. Google Scholar
  11. Paul Barham, Boris Dragovic, Keir Fraser, Steven Hand, Tim Harris, Alex Ho, Rolf Neugebauer, Ian Pratt, and Andrew Warfield. Xen and the art of virtualization. ACM SIGOPS operating systems review, 37(5):164-177, 2003. Google Scholar
  12. Felix Baum and Arvind Raghuraman. Making full use of emerging ARM-based heterogeneous multicore SoCs. In 8th European Congress on Embedded Real Time Software and Systems (ERTS 2016), 2016. Google Scholar
  13. Andrew Baumann, Paul Barham, Pierre-Evariste Dagand, Tim Harris, Rebecca Isaacs, Simon Peter, Timothy Roscoe, Adrian Schüpbach, and Akhilesh Singhania. The multikernel: a new os architecture for scalable multicore systems. In Proceedings of the ACM SIGOPS 22nd symposium on Operating systems principles, pages 29-44, 2009. Google Scholar
  14. Alessandro Biondi, Daniel Casini, Giorgiomaria Cicero, Niccolò Borgioli, Giorgio Buttazzo, Gaetano Patti, Luca Leonardi, Lucia Lo Bello, Marco Solieri, Paolo Burgio, et al. SPHERE: A Multi-SoC architecture for next-generation cyber-physical systems based on heterogeneous platforms. IEEE Access, 9:75446-75459, 2021. Google Scholar
  15. Gedare Bloom and Joel Sherrill. Harmonizing arinc 653 and realtime posix for conformance to the face technical standard. In 2020 IEEE 23rd international symposium on real-time distributed computing (ISORC), pages 98-105. IEEE, 2020. Google Scholar
  16. Paolo Burgio, Marko Bertogna, Nicola Capodieci, Roberto Cavicchioli, Michal Sojka, Přemysl Houdek, Andrea Marongiu, Paolo Gai, Claudio Scordino, and Bruno Morelli. A software stack for next-generation automotive systems on many-core heterogeneous platforms. Microprocessors and Microsystems, 52:299-311, 2017. Google Scholar
  17. Alan Burns and Robert I Davis. A survey of research into mixed criticality systems. ACM Computing Surveys (CSUR), 50(6):1-37, 2017. Google Scholar
  18. Alan Burns and Robert Ian Davis. Mixed criticality systems-a review:(february 2022). York, 2022. Google Scholar
  19. Jon Perez Cerrolaza, Roman Obermaisser, Jaume Abella, Francisco J Cazorla, Kim Grüttner, Irune Agirre, Hamidreza Ahmadian, and Imanol Allende. Multi-core devices for safety-critical systems: A survey. ACM Computing Surveys (CSUR), 53(4):1-38, 2020. Google Scholar
  20. Ravikumar V Chakaravarthy, Hyun Kwon, and Hua Jiang. Vision control unit in fully self driving vehicles using Xilinx MPSoC and opensource stack. In Proceedings of the 26th Asia and South Pacific Design Automation Conference, pages 311-317, 2021. Google Scholar
  21. Weifan Chen, Ivan Izhibirdeev, Denis Hoornaert, Shahin Roozkhosh, Patrick Carpanedo, Sanskriti Sharma, and Renato Mancuso. Low-overhead online assessment of timely progress as a system commodity. In 35th Euromicro Conference on Real-Time Systems (ECRTS 2023). Schloss Dagstuhl - Leibniz-Zentrum für Informatik, 2023. Google Scholar
  22. Alessandro Cilardo, Marcello Cinque, Luigi De Simone, and Nicola Mazzocca. Virtualization over multiprocessor system-on-chip: an enabling paradigm for industrial iot. arXiv preprint, 2021. URL:
  23. Marcello Cinque, Domenico Cotroneo, Luigi De Simone, and Stefano Rosiello. Virtualizing mixed-criticality systems: A survey on industrial trends and issues. Future Generation Computer Systems, 2021. Google Scholar
  24. Marcello Cinque, Luigi De Simone, Nicola Mazzocca, Daniele Ottaviano, and Francesco Vitale. Evaluating virtualization for fog monitoring of real-time applications in mixed-criticality systems. Real-Time Systems, 59(4):534-567, 2023. Google Scholar
  25. Marcello Cinque, Gianmaria De Tommasi, Sara Dubbioso, and Daniele Ottaviano. Virtualizing real-time processing units in multi-processor systems-on-chip. In 2021 IEEE 6th International Forum on Research and Technology for Society and Industry (RTSI), pages 329-333. IEEE, 2021. Google Scholar
  26. Marcello Cinque, Gianmaria De Tommasi, Sara Dubbioso, and Daniele Ottaviano. RPUGuard: Real-time processing unit virtualization for mixed-criticality applications. In 2022 18th European Dependable Computing Conference (EDCC), pages 97-104. IEEE, 2022. Google Scholar
  27. Edoardo Cittadini, Mauro Marinoni, Alessandro Biondi, Giorgiomaria Cicero, and Giorgio Buttazzo. Supporting ai-powered real-time cyber-physical systems on heterogeneous platforms via hypervisor technology. Real-Time Systems, pages 1-27, 2023. Google Scholar
  28. David J Coe, Jeffrey H Kulick, Aleksandar Milenkovic, and Letha Etzkorn. Virtualized in situ software update verification: verification of over-the-air automotive software updates. IEEE Vehicular Technology Magazine, 15(1):84-90, 2019. Google Scholar
  29. Diogo Costa, Luca Cuomo, Daniel Oliveira, Ida Maria Savino, Bruno Morelli, Jose Martins, Fabrizio Tronci, Alessandro Biasci, and Sandro Pinto. IRQ coloring: Mitigating interrupt-generated interference on ARM multicore platforms. In Fourth Workshop on Next Generation Real-Time Embedded Systems (NG-RES 2023). Schloss Dagstuhl - Leibniz-Zentrum für Informatik, 2023. Google Scholar
  30. Domenico Cotroneo, Luigi De Simone, and Roberto Natella. On temporal isolation assessment in virtualized railway signaling as a service systems. In 2022 IEEE Intl Conf on Dependable, Autonomic and Secure Computing, Intl Conf on Pervasive Intelligence and Computing, Intl Conf on Cloud and Big Data Computing, Intl Conf on Cyber Science and Technology Congress (DASC/PiCom/CBDCom/CyberSciTech), pages 1-5. IEEE, 2022. Google Scholar
  31. Heiko Falk, Sebastian Altmeyer, Peter Hellinckx, Björn Lisper, Wolfgang Puffitsch, Christine Rochange, Martin Schoeberl, Rasmus Bo Sørensen, Peter Wägemann, and Simon Wegener. Taclebench: A benchmark collection to support worst-case execution time research. In 16th International Workshop on Worst-Case Execution Time Analysis, 2016. Google Scholar
  32. Sergio Garcia-Esteban, Alejandro Serrano-Cases, Jaume Abella, Enrico Mezzetti, and Francisco J Cazorla. Quasi isolation QoS setups to control MPSoC contention in integrated software architectures. In 35th Euromicro Conference on Real-Time Systems (ECRTS 2023). Schloss Dagstuhl - Leibniz-Zentrum für Informatik, 2023. Google Scholar
  33. Google. Dev-Board Coral datasheet. [Accessed 21-02-2024].
  34. Giovani Gracioli, Rohan Tabish, Renato Mancuso, Reza Mirosanlou, Rodolfo Pellizzoni, and Marco Caccamo. Designing mixed criticality applications on modern heterogeneous MPSoC platforms. In 31st Euromicro Conference on Real-Time Systems (ECRTS 2019). Schloss Dagstuhl - Leibniz-Zentrum für Informatik, 2019. Google Scholar
  35. Yuri Gribov, Andrey Kavin, Victor Lukash, Rustam Khayrutdinov, Guido Huijsmans, Alberto Loarte, Joseph A. Snipes, and Luca Zabeo. Plasma vertical stabilisation in ITER. Nuclear Fusion, 55(7):073021, 2015. Google Scholar
  36. Domenik Helms, Patrick Uven, and Kim Grüttner. Modular over-the-air software updates for safety-critical real-time systems. INSIGHT, 25(4):85-88, 2022. Google Scholar
  37. Yu-Ju Huang, Hsuan-Heng Wu, Yeh-Ching Chung, and Wei-Chung Hsu. Building a kvm-based hypervisor for a heterogeneous system architecture compliant system. In Proceedings of the12th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments, pages 3-15, 2016. Google Scholar
  38. Intel. ACPI specification - URL: [Accessed 20-02-2024].
  39. Shravan Karthik, Karthik Ramanan, Nikhil Devshatwar, Subhajit Paul, Vishal Mahaveer, Sheng Zhao, Manoj Vishwanathan, and Chetan Matad. Hypervisor based approach for integrated cockpit solutions. In 2018 IEEE 8th International Conference on Consumer Electronics-Berlin (ICCE-Berlin), pages 1-6. IEEE, 2018. Google Scholar
  40. Avi Kivity, Yaniv Kamay, Dor Laor, Uri Lublin, and Anthony Liguori. kvm: the linux virtual machine monitor. In Proceedings of the Linux symposium, volume 1, pages 225-230. Dttawa, Dntorio, Canada, 2007. Google Scholar
  41. Heiko Koziolek, Andreas Burger, and Abdulla Puthan Peedikayil. Fast state transfer for updates and live migration of industrial controller runtimes in container orchestration systems. Journal of Systems and Software, page 112004, 2024. Google Scholar
  42. Yoojin Lim and Hyoseung Kim. Cache-aware real-time virtualization for clustered multi-core platforms. IEEE Access, 7:128628-128640, 2019. Google Scholar
  43. Felix Xiaozhu Lin, Zhen Wang, and Lin Zhong. K2: A mobile operating system for heterogeneous coherence domains. ACM SIGPLAN Notices, 49(4):285-300, 2014. Google Scholar
  44. Remote Processor Framework; The Linux Kernel documentation - [Accessed 07-02-2024].
  45. Tamara Lugo, Santiago Lozano, Javier Fernández, and Jesus Carretero. A survey of techniques for reducing interference in real-time applications on multicore platforms. IEEE Access, 10:21853-21882, 2022. Google Scholar
  46. Jiacheng Ma, Gefei Zuo, Kevin Loughlin, Xiaohe Cheng, Yanqiang Liu, Abel Mulugeta Eneyew, Zhengwei Qi, and Baris Kasikci. A hypervisor for shared-memory fpga platforms. In Proceedings of the Twenty-Fifth International Conference on Architectural Support for Programming Languages and Operating Systems, pages 827-844, 2020. Google Scholar
  47. José Martins and Sandro Pinto. Shedding light on static partitioning hypervisors for ARM-based mixed-criticality systems. In 2023 IEEE 29th Real-Time and Embedded Technology and Applications Symposium (RTAS), pages 40-53. IEEE, 2023. Google Scholar
  48. José Martins, Adriano Tavares, Marco Solieri, Marko Bertogna, and Sandro Pinto. Bao: A lightweight static partitioning hypervisor for modern multi-core embedded systems. In Workshop on next generation real-time embedded systems (NG-RES 2020). Schloss Dagstuhl - Leibniz-Zentrum für Informatik, 2020. Google Scholar
  49. Miguel Masmano, Ismael Ripoll, Alfons Crespo, and J Metge. Xtratum: a hypervisor for safety critical embedded systems. In 11th Real-Time Linux Workshop, volume 9. Citeseer, 2009. Google Scholar
  50. Minerva. Jailhouse-RT GitLab repository. [Accessed 08-02-2024].
  51. Eric Missimer, Richard West, and Ye Li. Distributed real-time fault tolerance on a virtualized multi-core system. OSPERT 2014, page 17, 2014. Google Scholar
  52. Carlos Moratelli, Samir Zampiva, and Fabiano Hessel. Full-virtualization on mips-based mpsocs embedded platforms with real-time support. In Proceedings of the 27th Symposium on Integrated Circuits and Systems Design, pages 1-7, 2014. Google Scholar
  53. Tiago Mück, Antonio A Fröhlich, Giovani Gracioli, Amir M Rahmani, João Gabriel Reis, and Nikil Dutt. CHIPS-AHOy: A predictable holistic cyber-physical hypervisor for MPSoCs. In Proceedings of the 18th International Conference on Embedded Computer Systems: Architectures, Modeling, and Simulation, pages 73-80, 2018. Google Scholar
  54. Djob Mvondo, Boris Teabe, Alain Tchana, Daniel Hagimont, and Noel De Palma. Closer: A new design principle for the privileged virtual machine os. In 2019 IEEE 27th International Symposium on Modeling, Analysis, and Simulation of Computer and Telecommunication Systems (MASCOTS), pages 49-60. IEEE, 2019. Google Scholar
  55. Mattia Nicolella, Shahin Roozkhosh, Denis Hoornaert, Andrea Bastoni, and Renato Mancuso. Rt-bench: An extensible benchmark framework for the analysis and management of real-time applications. In Proceedings of the 30th International Conference on Real-Time Networks and Systems, pages 184-195, 2022. Google Scholar
  56. NVIDIA. Jetson AGX Orin technical brief. [Accessed 21-02-2024].
  57. NVIDIA. Jetson Xavier Series. [Accessed 21-02-2024].
  58. NXP. i.MX8-series processors. [Accessed 07-02-2024].
  59. Pierre Olivier, Binoy Ravindran, and Antonio Barbalace. The multihype: Virtualizing heterogeneous-ISA architectures. In 9th Workshop on Systems for Multi-core and Heterogeneous Architectures (SFMA), 2019. Google Scholar
  60. D Ottaviano, M Cinque, G Manduchi, and S Dubbioso. Virtualization of accelerators in embedded systems for mixed-criticality: RPU exploitation for fusion diagnostics and control. Elsevier Fusion Engineering and Design, 2023. Google Scholar
  61. Daniele Ottaviano. The Omnivisor Source Code., 2024. Accessed: May 7, 2024.
  62. Shrinivas Anand Panchamukhi and Frank Mueller. Providing task isolation via tlb coloring. In 21st IEEE Real-Time and Embedded Technology and Applications Symposium, pages 3-13. IEEE, 2015. Google Scholar
  63. Ralf Ramsauer, Jan Kiszka, Daniel Lohmann, and Wolfgang Mauerer. Look mum, no vm exits!(almost). arXiv preprint, 2017. URL:
  64. Ralf Ramsauer, Jan Kiszka, and Wolfgang Mauerer. A novel software architecture for mixed criticality systems. In Digital Transformation in Semiconductor Manufacturing: Proceedings of the 1st and 2nd European Advances in Digital Transformation Conference, EADTC 2018, Zittau, Germany and EADTC 2019, Milan, Italy, pages 121-128. Springer International Publishing, 2020. Google Scholar
  65. Falk Rehm, Jörg Seitter, Jan-Peter Larsson, Selma Saidi, Giovanni Stea, Raffaele Zippo, Dirk Ziegenbein, Matteo Andreozzi, and Arne Hamann. The road towards predictable automotive high-performance platforms. In 2021 Design, Automation & Test in Europe Conference & Exhibition (DATE), pages 1915-1924. IEEE, 2021. Google Scholar
  66. Gero Schwäricke, Rohan Tabish, Rodolfo Pellizzoni, Renato Mancuso, Andrea Bastoni, Alexander Zuepke, and Marco Caccamo. A real-time VirtIO-based framework for predictable inter-VM communication. In 2021 IEEE Real-Time Systems Symposium (RTSS), pages 27-40. IEEE, 2021. Google Scholar
  67. Alejandro Serrano-Cases, Juan M Reina, Jaume Abella, Enrico Mezzetti, and Francisco J Cazorla. Leveraging hardware QoS to control contention in the Xilinx Zynq UltraScale+ MPSoC. In 33rd Euromicro Conference on Real-Time Systems (ECRTS 2021). Schloss Dagstuhl - Leibniz-Zentrum für Informatik, 2021. Google Scholar
  68. J. A. Snipes et al. ITER plasma control system final design and preparation for first plasma. Nuclear Fusion, 2021. Google Scholar
  69. Parul Sohal, Rohan Tabish, Ulrich Drepper, and Renato Mancuso. Profile-driven memory bandwidth management for accelerators and CPUs in QoS-enabled platforms. Real-Time Systems, 58(3):235-274, 2022. Google Scholar
  70. Stefano Stabellini. Xen project blog., 2019. [Accessed 27-02-2024].
  71. Prathap Kumar Valsan, Heechul Yun, and Farzad Farshchi. Taming non-blocking caches to improve isolation in multicore real-time systems. In 2016 IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS), pages 1-12. IEEE, 2016. Google Scholar
  72. Steven H VanderLeest. Designing a future airborne capability environment (face) hypervisor for safety and security. In 2017 IEEE/AIAA 36th Digital Avionics Systems Conference (DASC), pages 1-9. IEEE, 2017. Google Scholar
  73. Steven H VanderLeest and Dagan White. Mpsoc hypervisor: The safe & secure future of avionics. In 2015 IEEE/AIAA 34th Digital Avionics Systems Conference (DASC), pages 6B5-1. IEEE, 2015. Google Scholar
  74. Richard West, Ye Li, Eric Missimer, and Matthew Danish. A virtualized separation kernel for mixed-criticality systems. ACM Transactions on Computer Systems (TOCS), 34(3):1-41, 2016. Google Scholar
  75. Tian Xia, Ye Tian, Jean-Christophe Prévotet, and Fabienne Nouvel. Ker-one: A new hypervisor managing fpga reconfigurable accelerators. Journal of Systems Architecture, 98:453-467, 2019. Google Scholar
  76. Xilinx. AXI Traffic Generator LogiCORE IP Product Guide (PG125). [Accessed 12-02-2024].
  77. Xilinx. Versal Device Technical Reference Manual. [Accessed 07-02-2024].
  78. Xilinx. Zynq Ultrascale+ Device Technical Reference Manual. [Accessed 07-02-2024].
  79. YosysHQ. picorv32. [Accessed 27-02-2024].
  80. Heechul Yun, Renato Mancuso, Zheng-Pei Wu, and Rodolfo Pellizzoni. PALLOC: DRAM bank-aware memory allocator for performance isolation on multicore platforms. In 2014 IEEE 19th Real-Time and Embedded Technology and Applications Symposium (RTAS), pages 155-166. IEEE, 2014. Google Scholar
  81. Heechul Yun, Gang Yao, Rodolfo Pellizzoni, Marco Caccamo, and Lui Sha. Memguard: Memory bandwidth reservation system for efficient performance isolation in multi-core platforms. In 2013 IEEE 19th Real-Time and Embedded Technology and Applications Symposium (RTAS), pages 55-64. IEEE, 2013. Google Scholar
  82. Alexander Zuepke, Andrea Bastoni, Weifan Chen, Marco Caccamo, and Renato Mancuso. MemPol: Policing core memory bandwidth from outside of the cores. In 2023 IEEE 29th Real-Time and Embedded Technology and Applications Symposium (RTAS), pages 235-248. IEEE, 2023. Google Scholar
  83. Alexander Zuepke, Marc Bommert, and Daniel Lohmann. Autobest: a united autosar-os and arinc 653 kernel. In 21st IEEE real-time and embedded technology and applications symposium, pages 133-144. IEEE, 2015. Google Scholar