[发明专利]配置空间虚拟化有效
申请号: | 200980139828.2 | 申请日: | 2009-09-30 |
公开(公告)号: | CN102171666A | 公开(公告)日: | 2011-08-31 |
发明(设计)人: | J·奥辛斯;B·奥索普;A·J·桑顿 | 申请(专利权)人: | 微软公司 |
主分类号: | G06F13/14 | 分类号: | G06F13/14;G06F9/22;G06F21/00;G06F9/44 |
代理公司: | 上海专利商标事务所有限公司 31100 | 代理人: | 高见 |
地址: | 美国华*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 配置 空间 虚拟 | ||
技术领域
目前所公开的主题涉及计算领域,尤其涉及计算机虚拟化,虽然虚拟化只是示例性并且是非限制性领域。
背景
大多数输入/输出(I/O)设备都是在存在配置系统中的所有I/O设备的一块可信软件的假设下被设计的。通常还假设,那些I/O设备最终由设备驱动程序控制,设备驱动程序是抽象化单个设备差异的插件模块。此外,还假设这些驱动程序都被包含在单个内核内。
然而,在虚拟机的上下文中,上面的假设可能不再有效。每一虚拟机通常都包含其自己的操作系统内核,操作系统内核可以被或可以不被在所有其他虚拟机中运行的所有其他内核信任。配置和控制物理主机内的设备通常涉及具有实施关于来自一个虚拟机的动作可如何影响其他虚拟机的策略的能力的某一中央机构。在某些系统中,此中央机构位于主机操作系统中。在其他系统中,管理机构可以位于系统管理程序中,在其他系统中,机构可以与在系统管理程序的上方运行的虚拟机中的一个在一起。
当构建虚拟化系统时,一种方法可以是维护对上文所描述的中央机构内所有I/O设备的完全控制。因此,当虚拟机需要I/O服务时,虚拟机可以向控制I/O的中央机构传递请求(直接或间接地)。此方法起作用,但是遭受两个问题。首先,与在物理硬件上运行的操作系统而并非虚拟机相比,I/O操作得比它应该的更慢。其次,向虚拟机表达的I/O设备的范围可能受到虚拟化软件的限制。需要将在物理计算机内的每一个设备指派到在其内运行的虚拟机中的一个或多个。以此方式,I/O将不会遭受与间接相关联的性能损失,且可以被插入到计算机中的任何设备都可以被虚拟机使用,而不要求虚拟化层完全理解其内部功能。
因此,需要其他技术来解决上文所描述的问题。
概述
此处公开了用于通过创建或接收对设备的描述来限制与设备进行交互的非特权虚拟机(不拥有设备的系统范围的策略)的行为的各种方法和系统,该对设备的描述向特权机构(例如,虚拟化系统的系统管理程序或其他特权方面)指示(1)对设备的哪些操作可以具有系统范围的影响,以及(2)哪些操作具有设备本地的影响。特权机构可在随后允许或拒绝这些动作。特权机构也可以将这些动作转换为具有良性结果的其他动作。
在一个实施例中,对于每一个设备,可以构建配置空间的图,其中该配置内的每一比特都具有以下属性中的一个或多个:
i.只读。
ii.读取时始终为0。
iii.读取时始终为1。
iv.读写。
v.写入1清除,写入0保留。
vi.写入1设置,写入0保留。
vii.写入0清除,写入1保留。
viii.写入0设置,写入1保留。
ix.首次读取之后清零。
x.首次读取之后设为1。
上面的行为是示例性的,可以包括附加行为来限制对存储器位置允许的动作。也可以构建MMIO空间的图,其中可以将每一页映射到虚拟机。对于从虚拟机的图中排除的页,特权机构可以选择利用看起来像设备的静态图像填充该页。替换地,特权机构可以选择接收截取,并使用带有应用于这些特定页的图的配置空间来处理截取。
在进一步的实施例中,公开了用于交换安全地包含设备的信息的方法。在某些实施例中,可以将图的表示嵌入在驱动程序安装文件中。可以由产生安装文件的当事人对安装文件进行数字签名。因此,机器管理员可以允许特权机构来处理安装文件,无需实际在特权机构安装设备的驱动程序。可以在虚拟机中安装驱动程序,且设备可以在虚拟机中运转并受约束,以使得设备不影响其他虚拟机或特权机构。
除前述的之外,在构成本发明的一部分的权利要求书、附图,以及文本中描述了其他方面。那些本技术技术人员可以理解,本发明的一个或多个各个方面可包括,但不仅限于,用于实行本公开的此处引用的各方面的电路和/或编程;电路和/或编程可以几乎是被配置成取决于系统设计人员的设计选择而达成此处引用的各方面的硬件、软件和/或固件的任何组合。
应该注意,提供本概述是为了以简化的形式介绍将在以下详细描述中进一步描述的一些代表性的概念。本发明内容并不旨在标识出所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。
附图简述
当结合附图阅读时,可以更好地了解前面的摘要,以及下面的详细描述。为了说明本发明,示出了本发明的各个方面。然而,本发明不限于所示出的特定方面。包括了下面的图形:
图1a示出了带有多个虚拟机的虚拟机环境,包括多个虚拟处理器以及对应的来宾操作系统;虚拟机是由虚拟化层维护的,该虚拟化层可以包括调度器及其他组件,其中虚拟化层为多个虚拟机虚拟化硬件;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软公司,未经微软公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200980139828.2/2.html,转载请声明来源钻瓜专利网。