Font Size: a A A

Key Technologies Of Operating System For Virtualized MPSoC Architecture

Posted on:2020-12-11Degree:DoctorType:Dissertation
Country:ChinaCandidate:B Z ChenFull Text:PDF
GTID:1368330611993105Subject:Software engineering
Abstract/Summary:PDF Full Text Request
The developing of integrated circuit technology and people's continuous pursuit of computating performance make MPSoC a main development direction from mobile computing to high-performance computing.As more and more computing units are integrated into a single chip,how to use the resources on a single chip more effectively and to achieve high scalability have become very important in front of system developer.Deploying virtualization Technology on MPSoC Systems is an effective way to solve this problem.At the same time,virtualization also brings challenges to security and performance.The research on the key technologies of operating system for virtualized MPSoC architecture can provide a good theoretical and technical basis for the design and implementation of the system software based on MPSoC in the future,which has important theoretical significance and application value.In this paper,a series of research is carried out on the architecture of virtualization system,the security isolation mechanism of side-channel,and the optimization of scalability performance of network I/O virtualization on key technologies of operating system for virtualized MPSoC architecture.This paper first surveys the open source virtualization platform and architecture,virtual machine security and I/O virtualization technology.Then it analyzes the hardware virtualization technology of the Phytium platform.For side-channel security on modern processor,this paper proposes the on-demand isolation mechanism for Meltdown and optimizes the system performance under Retpoline for Spectre mitigation.Based on the hardware virtualization technology,we implement a para-virtualized multi-queue network I/O under Phytium platform.Finally,we implement a partition-based virtual machine monitor on Phytium platform,and fix the issue of cache coherency for device simulation on Phytium platform.The main contributions include:1)The hardware virtual machine technology of Phytium platform has been systematically analysed in four aspects,which are CPU virtualization,memory virtualization,interrupt virtualization and timer virtualization.Based on the analysis,we design a virtualized operating system on Phytium.In the end,we compare the hardware virtualization technology between Phytium and Intel.2)We have studied the side-channel attacks of the modern virtualized architecture.A Mitigation for Meltdown attack is proposed,which injects the noise to the side-channel when the attack is detected or resets the micro-architectural states.Since the noise injection or state reset occurs only on the exception handling path,the performance would be hardly affected.More importantly,compared to the existing KAISER,this method can also be used to mitigate the Rogue System Register Read variant of Meltdown.Through the research,We found that Retpoline does impact on performance to the existing software but varies depending on how applications interact with the kernel.According to our experiment,it shows more regression on the network I/O than the storage.The more a program relies on the kernel,the greater regression it shows.To alleviate the impact,we propose a method that uses userspace network stack.We verify the proposal using Netmap userspace packet I/O framework.3)During the research for virtualization system on Phytium platform,we observe that virtual network I/O shows good performance for a single transmission session.However,when virtual machines handle concurrent transaction requests,there would be significant regressions.Increasing the number of cores for the virtual machine would even hasten the degradation of performance.We propose an optimization method that deliveries network packets through multiple virtual I/O channels by using virtual MSI.The experiment shows that it can improve the interrupt handling in virtual machines as well as the scalability of packets processing on Phytium.The throughput of concurrent requests handling can be improved by about 50% when the number of cores for the virtual machine is set to 12.4)The implementation of partion-based virtual machine monitor is illustrated and solves the issue of cache coherency of the emulated devices on Phytium platform.Compared to the x86 architecture,the Phytium platform exposes some operations for cache to the software system.For the implementation of emulated devices on Phytium platform,system software needs to explicitly flush the cache to maintain the cache coherency required.In this paper,we look into the characteristics of the cache hierachy on Phytium platform,redesign the loading process of guset kernels under the virtualization,and fix the isssue of cache incoherency for the device emulation.
Keywords/Search Tags:Operating System, Hardware Virtualization, Side-channel, System Security, Multi-Processor System-on-Chip, I/O Virtualization, Cache Coherency
PDF Full Text Request
Related items