| With the vigorous development and wide application of embedded systems in various industries,their usage scenarios have become increasingly complex.Under the pressure of minimizing size,weight,power and cost,more and more operating systems need to be integrated and consolidated on the same hardware platform.In this scenario,the traditional single system can only drive the whole hardware platform by continuously adding functions,which leads to the system becoming very bloated,with major problems in security and compatibility,and the common scheduling algorithm can hardly meet the scheduling requirements of a large number of mixed critical systems.In the above context,in order to solve the complex problems in the embedded field,embedded virtualization technology and mixed critical systems have rapidly become a research hotspot in the industry.In this thesis,based on the microkernel-based embedded virtualization technology,we implement a prototype virtual machine manager in ARMv8 platform by reconstructing the mginkgo microkernel operating system developed by UESTC,and focus on the CPU virtualization technology,with the following main innovations.(1)Focus on the virtualization-related technologies in ARM architecture,multi-OS runtime loading,cache isolation mechanism,and mixed critical systems and their scheduling algorithms,and finally propose the design of an embedded virtualization scheme applied to the field of mixed critical systems,and build and experiment the prototype based on the microkernel architecture.The experimental results show that the virtual machine manager designed in this thesis has high performance,low overhead and high security features.(2)In order to cope with mixed critical systems,this thesis proposes a new mixed critical system model and investigates and implements a virtual machine scheduler for mixed critical systems.This thesis evaluates the VM scheduler overhead as a benchmark and shows that the implemented mixed critical system has low overhead and can meet the requirements of various application scenarios.(3)To reduce the performance loss and uncertainty caused by memory contention among VMs,this thesis introduces a cache isolation mechanism to color the memory and eliminate the interference between VMs at the cache level.The experiments show that the cache isolation mechanism helps to eliminate the performance loss caused by the contention of shared cache and also helps to improve the security of virtual machines.In summary,this thesis designs and implements a virtual machine manager based on the microkernel architecture,taking advantage of ARM’s support for virtualization technology at the hardware level.The memory staining mechanism,hybrid critical system model and its scheduling algorithm are introduced in the virtual machine manager,which features real-time,low overhead and high security as well as high scalability. |