KVM虚拟机设备虚拟化及串口转发器的研究与应用
本文选题:KVM + 串口转发器 ; 参考:《成都理工大学》2012年硕士论文
【摘要】:虚拟化技术在最近几年得到了飞速发展,能够有效地提高处理器的利用率,并且处理器厂商相继推出了支持虚拟化的处理器、芯片组等,如今,虚拟化技术被广泛地应用于各个领域。I/O设备虚拟化技术是将一台高性能的物理设备虚拟成逻辑上独立的多台设备,而这些逻辑上独立的虚拟机用来完成不同的应用,这样不仅可以增加应用的安全性,也可以提高硬件资源的利用率。 在研究计算机虚拟化技术的基本理论和机制的基础上,,研究了虚拟化的分类,然后着重研究KVM虚拟机的解决方案以及KVM虚拟机的执行流程,并对VT-d技术在KVM中的应用进行了深入的分析。 从KVM的应用出发,本文研究了KVM的实现步骤和使用方法。在用户空间设计和实现了串口转发器。在此基础上深入地研究了KVM虚拟串口设备的机制、KVM虚拟设备与用户空间的通信机制,并分别对KVM模拟串口设备、KVM虚拟设备和用户空间通信以及对Linux串口驱动转发方法进行了充分的实验和测试,最终结合Linux串口驱动及Linux的TTY设备模型,提出了一套在内核空间Linux驱动层实现串口转发器的解决方案。该方案将整个转发过程移到Linux内核空间,转发过程中的数据在内核空间流动,不需要在内核空间和用户空间进行切换,减少计算机的性能开销。 本文还针对计算机中使用最多的设备即PCI设备进行了深入的研究。结合KVM中串口设备的模拟方法,深入地分析和研究了PCI设备在KVM中的模拟方法、通信机制,以及PCI设备的驱动模型。设计和实现了在内核空间多个KVM共享一个PCI设备的方案。 本文分别对用户空间串口转发器的实现方法、Linux内核空间串口转发器的实现方法、内核空间多个KVM共享一个PCI设备的方法以及82576网卡使用VT-d技术进行了实例化,并做了大量的实验和测试。实验测试结果表明,本文设计和实现的用户空间串口转发器与内核空间串口转发器都具有良好的稳定性和通用性。实验结果表明,内核空间多个KVM共享一个PCI设备的方法是有效的,可以解决多个KVM虚拟设备共享一个PCI设备的问题。实验结果还说明VT-d技术在KVM中的应用大大地提高了虚拟机的I/O性能。在上述实验的过程中,系统能保持稳定性和安全性,也证实了本文研究的设备虚拟化方法具有实际的应用价值。
[Abstract]:Virtualization technology has been rapidly developed in recent years, which can effectively improve the utilization of processors, and processor manufacturers have introduced virtualization support processors, chipsets, and so on. Virtualization technology is widely used in various fields. I / O device virtualization technology is to virtual a high-performance physical device into logically independent multiple devices, and these logically independent virtual machines are used to accomplish different applications. This can not only increase the security of the application, but also improve the utilization of hardware resources. On the basis of studying the basic theory and mechanism of computer virtualization, this paper studies the classification of virtualization, and then focuses on the solution of KVM virtual machine and the execution flow of KVM virtual machine. The application of VT-d technology in KVM is analyzed. Starting from the application of KVM, this paper studies the implementation steps and usage methods of KVM. The serial port transponder is designed and implemented in user space. On this basis, the communication mechanism between KVM virtual device and user space is studied deeply. The KVM simulation serial port device KVM virtual device and user space communication, and the Linux serial port driver forwarding method are fully tested and tested. Finally, the Linux serial port driver and Linux TTY device model are combined. This paper presents a solution to implement serial port transponder in kernel space Linux driver layer. In this scheme, the whole forwarding process is moved to the Linux kernel space, the data in the forwarding process flows in the kernel space, and there is no need to switch between the kernel space and the user space, so the performance overhead of the computer is reduced. In this paper, the most widely used equipment in the computer, that is, PCI equipment, is studied in depth. Combined with the simulation method of serial port device in KVM, the simulation method, communication mechanism and driver model of PCI device in KVM are analyzed and studied in detail. A scheme of sharing a single PCI device among multiple KVM in kernel space is designed and implemented. In this paper, the realization method of user space serial port transponder and the method of sharing a single PCI device with multiple KVM in kernel space and the instantiation of 82576 network card using VT-d technology are discussed respectively. And did a lot of experiments and tests. The experimental results show that both the user space serial port transponder and the kernel space serial port transponder designed and implemented in this paper have good stability and versatility. The experimental results show that the method of sharing one PCI device with multiple KVM in kernel space is effective and can solve the problem of multiple KVM virtual devices sharing one PCI device. The experimental results also show that the application of VT-d technology in KVM greatly improves the I / O performance of virtual machine. In the process of the above experiments, the system can maintain stability and security, and it also proves that the device virtualization method studied in this paper has practical application value.
【学位授予单位】:成都理工大学
【学位级别】:硕士
【学位授予年份】:2012
【分类号】:TP302;TP334.7
【参考文献】
相关期刊论文 前10条
1 车翔;王华军;;QEMU-KVM虚拟PCI设备优化方法[J];电脑与电信;2011年11期
2 周全,卢显良,任立勇,刘晓燕;基于Linux的进程迁移机制设计[J];计算机应用;2003年08期
3 李庆华,罗犀劲;基于检查点进程迁移机制的改进[J];计算机仿真;2003年05期
4 谭汉松,刘建勋,陈海燕;Linux中的消息通信机制及其应用[J];计算机应用研究;2000年10期
5 黄可杰;马莉;;Linux环境下I/O重定向与异步通信的实现[J];计算机应用与软件;2011年03期
6 刘静波;郭玉东;王晓睿;刘勇;;设备虚拟化方法研究与实现[J];计算机工程与设计;2011年08期
7 刘凤声;;基于VB6.0的单片机与PC通讯的实现与应用[J];计算机技术与发展;2007年10期
8 郑尚志;陈祖爵;韩云;陆军;;Linux中信号量机制研究[J];计算机技术与发展;2007年12期
9 林龙增;罗省贤;;实现多个KVM虚拟机通信的串口转发器方法[J];计算机技术与发展;2012年02期
10 张萧;祝明发;肖利民;;分布式I/O资源虚拟化技术的研究[J];微电子学与计算机;2008年10期
相关硕士学位论文 前6条
1 李绍;基于Linux的虚拟化技术研究和应用[D];成都理工大学;2011年
2 林昆;基于Intel VT-d技术的虚拟机安全隔离研究[D];上海交通大学;2011年
3 姚远;虚拟机高效设备访问模型设计与实现[D];国防科学技术大学;2010年
4 孙世昶;虚拟化技术研究及PCI设备直接访问的实现[D];大连理工大学;2006年
5 郝旭东;Intel VT-d技术的研究及其在KVM虚拟机上的实现[D];电子科技大学;2009年
6 刘锋;Kernel-based Virtual Machine研究与其事件跟踪机制实现[D];电子科技大学;2009年
本文编号:1956540
本文链接:https://www.wllwen.com/kejilunwen/jisuanjikexuelunwen/1956540.html