[发明专利]虚拟机监视器、虚拟机系统及真实物理设备访问方法有效
申请号: | 200710120006.2 | 申请日: | 2007-08-06 |
公开(公告)号: | CN101364183A | 公开(公告)日: | 2009-02-11 |
发明(设计)人: | 王碧波;陈军 | 申请(专利权)人: | 联想(北京)有限公司 |
主分类号: | G06F9/455 | 分类号: | G06F9/455 |
代理公司: | 北京银龙知识产权代理有限公司 | 代理人: | 许静 |
地址: | 100085北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 虚拟机 监视器 系统 真实 物理 设备 访问 方法 | ||
技术领域
本发明涉及虚拟技术,特别是一种虚拟机监视器、虚拟机系统及虚拟机监视器、虚拟机系统及真实物理设备访问方法。
背景技术
现有的虚拟化系统中,真实物理设备的使用方式主要是VM直接访问、半虚拟化方式和模拟方式三种。
同时,以模拟方式来使用真实物理设备又分为VMM(Virtual MachineMonitor,虚拟机监视器)模拟方式、基于Host OS(宿主操作系统)的VMM模拟方式和IO(输入输出)虚拟机的模拟方式。
其中,VMM模拟方式需要在虚拟机监视器中包含物理设备驱动,然而由于真实物理设备千差万别的,因此VMM需要支持多种硬件平台,维护工作量太大。
而基于Host OS的VMM模拟方式由于VMM运行于宿主操作系统之上,无需包含物理设备驱动,所以维护工作量减小了,但性能较差。
为了解决上述出现的问题,出现了IO虚拟机的模拟方式。
图1为现有技术中利用IO虚拟机的模拟方式的虚拟机系统的结构示意图。该虚拟机系统包括:
虚拟机监视器(VMM);
服务操作系统(SOS);
至少一个GOS(图1中仅示出1个GOS)。
其中SOS启动时,扫描PCI总线,发现真实物理设备,通过真实物理设备驱动模块对真实物理设备进行访问。
同时,SOS包含与GOS对应的设备模型(DM),为GOS提供一个模拟物理设备。
GOS启动时,执行扫描操作,其扫描操作被VMM拦截,通过通信模块转发给对应的DM,DM给该GOS注册模拟物理设备。
此后,GOS与真实物理设备的数据交互都通过模拟物理设备驱动、VMM、DM和真实物理设备驱动模块进行。
其中,该设备模型具体包括:
虚拟机监视器读写接口,用于与虚拟机监视器中的通信模块进行数据交互;
物理设备读写接口,用于与真实物理设备驱动模块进行数据交互;
设备内部处理模拟模块,与虚拟机监视器读写接口和物理设备读写接口连接,用于交互数据的内部处理。
上述的设置于VMM中的通信模块具体包括:
设备模型读写接口,用于与虚拟机监视器读写接口连接进行数据交互;
客户操作系统读写接口,用于处理物理设备内部逻辑,并与客户操作系统的模拟物理设备驱动模块连接进行数据交互。
上述的虚拟机操作系统中,设备模型在获知真实物理设备驱动模块有数据需要传送到客户操作系统时,需要等待被SOS调度才能从真实物理设备驱动模块获取数据;
同时在设备内部处理模拟模块处理完内部逻辑后,需要给虚拟机监视器注射中断,而虚拟机监视器处理中断,从设备模型获取数据,需要再一次等待该设备模型被SOS调度才能获取数据。
从上述的描述可以发现,虽然IO虚拟机的模拟方式相对于基于Host OS的VMM模拟方式性能有所提高,但仍然需要在设备模型和VMM之间进行多次交互,同时等待DM被调度,处理时间仍然非常长,无法满足用户需求。
发明内容
本发明的目的是提供一种虚拟机监视器、虚拟机系统及真实物理设备访问方法,有效地减少客户操作系统访问真实物理设备的时间,提高系统性能。
为了实现上述目的,本发明提供了一种虚拟机监视器,包括第二接口模块、设备内部处理模拟模块和通信模块,其中:
所述第二接口模块,与真实物理设备驱动模块连接,用于实现设备内部处理模拟模块与真实物理设备驱动模块之间的数据交互;
设备内部处理模拟模块,用于通过第二接口模块从真实物理设备驱动模块接收输入数据,并通过通信模块从模拟物理设备驱动模块接收输出数据后,对输入数据和输出数据进行设备的内部逻辑处理;
通信模块,与模拟物理设备驱动模块连接,用于实现设备内部处理模拟模块与模拟物理设备驱动模块之间的数据交互。
上述的虚拟机监视器,其中,所述第二接口模块与设置于真实物理设备驱动模块的第一接口模块连接,实现设备内部处理模拟模块与真实物理设备驱动模块之间的数据交互。
上述的虚拟机监视器,其中,所述设备内部处理模拟模块设置有数据缓存区,用于缓存所述输入数据和输出数据。
为了更好的实现上述目的,本发明还提供了一种虚拟机系统,包括真实物理设备、服务操作系统、虚拟机监视器和客户操作系统,所述虚拟机监视器包括第二接口模块、设备内部处理模拟模块和通信模块,其中:
所述第二接口模块,与真实物理设备驱动模块连接,用于实现设备内部处理模拟模块与真实物理设备驱动模块之间的数据交互;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于联想(北京)有限公司,未经联想(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200710120006.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:用于干燥气体的方法和设备
- 下一篇:涂料检漏设备和涂料充注系统