Abstract
The hypervisor, with its resource isolation, security guarantees, and ability to meet high real-time requirements, offers significant advantages in real-time scenarios. Furthermore, its communication capabilities play a crucial role in enabling collaborative computation tasks across different virtual machines. The Jailhouse hypervisor, known for its real-time capabilities and secure embedded platform, demonstrates outstanding performance in real-time scenarios. However, the inter-virtual machine (inter-VM) communication protocol based on Jailhouse is not yet mature, necessitating optimization to enhance its suitability for real-time communication scenarios. Firstly, the existing communication mechanism underwent reconstruction, involving the disabling of the one-shot interrupt mode and expanding the shared memory area. Secondly, an experimental platform was established on the Raspberry Pi-4B, configuring the real-time system and adopting the io_uring methods. Finally, experimental evaluations were conducted to assess the differences in communication delay, throughput, and data transmission delay before and after the communication protocol reconstruction. Additionally, the mitigating effect of the new communication mechanism on VMexit behavior was also evaluated. The experimental results demonstrate that the enhanced communication mechanism significantly reduces both the system call overhead and the number of VMexit compared to the native communication protocol (Inter-VM Shared Memory, IVSHMEM). Moreover, the throughput exhibits a notable improvement of approximately 200 MB/s.
J. Zhang and F. Li—These authors contributed equally to this work.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
It is worth noting that in Jailhouse, a virtual machine is commonly referred to as a “cell”. Therefore, the terms “inter-VM” and “inter-cell” are equivalent in meaning.
References
Biondi, A., Marinoni, M., Buttazzo, G., Scordino, C., Gai, P.: Challenges in virtualizing safety-critical cyber-physical systems. In: Proceedings of Embedded World Conference 2018, pp. 1–5 (2018)
Cao, H.: Research on Communication Between Virtual Machines Based on Soft-RoCE in Jailhouse. Master’s thesis, Lanzhou University (2022)
Corbet, J.: Linux in mixed-criticality systems. https://lwn.net/Articles/774217/. Accessed 7 June 2023
Corbet, J.: Safety-critical realtime with linux. https://lwn.net/Articles/734694/. Accessed 7 June 2023
Druschel, P.: A high-bandwidth cross-domain transfer facility. In: Proceedings of the 14th ACM Symposium on Operating Systems Principles 1993 (1993)
Gamsa, B., Krieger, O., Stumm, M.: Optimizing IPC performance for shared-memory multiprocessors. In: 1994 International Conference on Parallel Processing, vol. 1, pp. 208–211. IEEE (1994)
Hernandez, C., et al.: Selene: self-monitored dependable platform for high-performance safety-critical systems. In: 2020 23rd Euromicro Conference on Digital System Design (DSD), pp. 370–377. IEEE (2020)
Kiszka, J.: ivshmem-v2-specification. https://github.com/siemens/jailhouse/blob/master/Documentation/ivshmem-v2-specification.md. Accessed 3 June 2023
Kiszka, J.: Jailhouse 0.12 released. https://lwn.net/Articles/811509/. Accessed 3 June 2023
Kiszka, J.: Jailhouse: a linux-based partitioning hypervisor. https://lwn.net/Articles/574273/. Accessed 7 June 2023
Kiszka, J.: Reworking the inter-vm-shared-memory devices. https://static.sched.com/hosted_files/kvmforum2019/4b/KVM-Forum19_ivshmem2.pdf. Accessed 7 June 2023
Li, H., Xu, X., Ren, J., Dong, Y.: ACRN: a big little hypervisor for IoT development. In: Proceedings of the 15th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments, pp. 31–44 (2019)
Lu, D.: Research on the Impact of Jailhouse on Dynamic Execution Paths in Linux. Master’s thesis, Lanzhou University (2021)
Macdonell, A.C.: Shared-memory optimizations for virtual machines. Ph.D. thesis, University of Alberta (2011)
Martins, J., Tavares, A., Solieri, M., Bertogna, M., Pinto, S.: 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)
Miyagawa, M.: Applying jailhouse to the civil infrastructure system. https://elinux.org/images/f/ff/JapanTechnicalJamboree61_JailhouseR1_eng.pdf. Accessed 7 June 2023
Ramos, D.: Exploring IVSHMEM in the Jailhouse Hypervisor. Ph.D. thesis, Instituto Superior de Engenharia do Porto (2019)
Ramsauer, R., Kiszka, J., Mauerer, W.: Building mixed criticality linux systems with the jailhouse hypervisor. In: Embedded Lunux Conference + OpenIoTSummit, Portland, OR, 21–23 February 2017 (2017). https://www.youtube.com/watch?v=pvs0fv-gnvw
Reichenbach, K.A.: System-call offloading via linux’ io_uring on the jailhouse partitioning hypervisor (2021). https://osg.tuhh.de/Theses/2021/2021_ba_kelvin_reichenbach.pdf
Sangorrin, D., Honda, S., Takada, H.: Integrated scheduling in a real-time embedded hypervisor. IPSJ SIG Technical Reports 2010–18(2) (2010)
Shen, Y., Wang, L., Liang, Y., Li, S., Jiang, B.: Shyper: an embedded hypervisor applying hierarchical resource isolation strategies for mixed-criticality systems. In: 2022 Design, Automation & Test in Europe Conference & Exhibition (DATE), pp. 1287–1292. IEEE (2022)
Sinha, S.: Scheduling policies and system software architectures for mixed-criticality computing. Department of Computer Science, Boston University, Technical report (2018)
Sinitsyn, V.: Understanding the jailhouse hypervisor, part 1. https://lwn.net/Articles/578295/. Accessed 5 June 2023
Sinitsyn, V.: Understanding the jailhouse hypervisor, part 2. https://lwn.net/Articles/578852/. Accessed 5 June 2023
torvalds: linux-jailhouse-enabling. https://github.com/siemens/linux/. Accessed 7 June 2023
Wang, C., Yang, F., Wang, H., Guo, P., Hou, J.: Improving real time performance of linux system using rt-linux. In: Journal of Physics: Conference Series, vol. 1237, p. 052017. IOP Publishing (2019)
West, R., Li, Y., Missimer, E.: Quest-v: a virtualized multikernel for safety-critical real-time systems. arXiv preprint arXiv:1310.6349 (2013)
West, R., Li, Y., Missimer, E.: Quest-v: a virtualized multikernel for safety-critical real-time systems. arXiv e-prints arXiv:1310.6349 (2013)
Yugang, M., Shiyou, J.: Research on predictability of distributed real-time systems. Comput. Res. Dev. 37(6), 661–667 (2000)
Zhang, J.: Optimal Design of Communication Mechanism between Linux and RTOS based on Jailhouse. Master’s thesis, Lanzhou University (2023)
Acknowledgements
This work was partially supported by Gansu Province Key Research and Development Plan - Industrial Project under Grant No. 22YF7GA004, Gansu Province Science and Technology Major Project - Industrial Project under Grant No. 22ZD6GA048, the Fundamental Research Funds for the Central Universities under Grant No. lzujbky-2022-kb12, lzujbky-2021-sp43, lzujbky-2020-sp02, lzujbky-2019-kb51 and lzujbky-2018-k12, National Natural Science Foundation of China under Grant Nos. U22A20261 and 61402210. Science and Technology Plan of Qinghai Province under Grant No.2020-GX-164, and Supercomputing Center of Lanzhou University. We appreciate co-author Mr. Jiaming Zhang’s hard work during his postgraduate for the contribution of this paper is inspired by his master thesis [30].
Author information
Authors and Affiliations
Corresponding authors
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2024 The Author(s), under exclusive license to Springer Nature Singapore Pte Ltd.
About this paper
Cite this paper
Zhang, J. et al. (2024). The Optimization of IVSHMEM Based on Jailhouse. In: Li, C., Li, Z., Shen, L., Wu, F., Gong, X. (eds) Advanced Parallel Processing Technologies. APPT 2023. Lecture Notes in Computer Science, vol 14103. Springer, Singapore. https://doi.org/10.1007/978-981-99-7872-4_4
Download citation
DOI: https://doi.org/10.1007/978-981-99-7872-4_4
Published:
Publisher Name: Springer, Singapore
Print ISBN: 978-981-99-7871-7
Online ISBN: 978-981-99-7872-4
eBook Packages: Computer ScienceComputer Science (R0)