用于管理输入/输出虚拟化的方法和数据处理系统技术方案

技术编号:2913282 阅读:269 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供了一种系统和方法,其中由多于一个逻辑分区(LPAR)共享输入/输出(I/O)架构,每个LPAR能与其他LPAR共享I/O适配器(IOA)。向每个LPAR分配其所拥有的单独的地址空间来访问被分配给它的虚拟功能(VF),使得每个LPAR的感知在于其具有其自身的独立的IOA。可在多个LPAR之间共享每个VF。通过将PF分配给I/O虚拟化管理分区(IMP),经由IOA的物理功能(PF),提供了管理IOA的共享资源的便利。运行于IMP中的代码为了充分地管理VF错误处理、VF复位和配置操作,而向多个VF充当虚拟中介。IMP也充当用于访问公共VF功能的对PF的接口。而且,由此IMP实现相对于VF和使用那些VF的客户分区的资源分配和管理的功能,所述资源分配和管理的功能通常由像系统管理器的实体完成。

【技术实现步骤摘要】

本专利技术大体上涉及改进的数据处理系统和方法。更具体地,本专利技术旨在用于通过在输入/输出虚拟化(IOV)管理分区中的虚拟中介而管理输入/输出虚拟化(IOV)适配器的系统和方法,所述输入/输出虚拟化(IOV)适配器诸如外围组件互连(PCI)IOV适配器。
技术介绍
大多数现代计算设备使用利用了最初由Intel在20世纪90年代所创造的外围组件互连标准的一些版本或实现的输入/输出(I/O)适配器和总线。外围组件互连(PCI)标准规定了用于将外围设备附加到计算机主板上的计算机总线。PCI Express或PCIe是使用已有的PCI编程概念的PCI计算机总线的实现,但是使计算机总线基于完全不同而且更快速的串行物理层通信协议。该物理层不是由可在多个设备之间共享的双向总线构成,而是由恰好连接两个设备的单一单向链路构成。图1是示出了结合有根据PCIe规范的PCI Express(PCIe)架构拓扑的系统的示例性示图。如图1所示,系统100包括耦合到根联合体(root complex)130的主处理器(CPU)110和存储器120,根联合体130接着耦合到一个或多个PCIe端点140(在PCIe规范中,使用术语“端点”来指代支持PCIe的I/O适配器)、PCI express-PCI桥150以及一个或多个互连交换机160。根联合体130表示将CPU/存储器连接到I/O适配器的I/O层级的根。根联合体130包括主桥(host bridge)、零个或更多根联合体集成端点、零个或更多根联合体事件收集器以及一个或多个根端口。每个根端口支持单独的I/O层级。I/O层级可包括根联合体130、零个或更多互连交换机160和/-->或桥150(其包括交换机或PCIe架构)以及诸如端点140、170和182-188的一个或多个端点。关于PCI和PCIe的更多信息,参见在www.pcisig.com的外围组件互连特别兴趣组(PCI-SIG)的网站上可获得的PCI和PCIe规范。除了PCI和PCIe规范,PCI-SIG也已经定义了用于如何设计可由若干逻辑分区(LPAR)共享的I/O适配器(IOA)的输入/输出虚拟化(IOV)标准。LPAR是将计算机的处理器、存储器和存储设备划分为多个资源组,这样可将每个资源组用其自身的操作系统实例和应用独立地操作。可创建的逻辑分区的数量依赖于系统的处理器模型和可用的资源。典型地,将分区用于诸如数据库操作、客户/服务器操作的不同目的,以便隔离测试环境和生产环境等。每个分区能够与其他分区通信,如同其他分区位于单独的机器上。在支持LPAR的现代系统中,可在LPAR之间共享一些资源。如上文所提到的,在PCI和PCIe规范中,一种可共享的此类资源是使用I/O虚拟化机制的I/O适配器。虽然PCI-SIG提供了用于定义如何设计可由若干LPAR共享的IOA的标准,但是此规范没有定义如何将IOA连接到主系统。而且,该标准没有规定如何管理利用了I/O虚拟化的IOA的共享的功能。这是由于PCI-SIG规范所关注的是建立用于在根联合体之下的PCIe架构的操作的标准。换句话说,PCI-SIG没有提供对用于根联合体以及其上的标准的任何定义,这是因为,将跟联合体以及其上考虑作系统室(system houses)的领域。即,例如Intel平台、IBM 平台和Sparc平台的每个可具有在PCI-SIG标准中未列出的不同的系统实现需求。
技术实现思路
说明性的实施方式提供了用于通过在IOV管理分区中的虚拟中介而管理输入/输出虚拟化(IOV)适配器的系统和方法。说明性的实施方式的机制解决这样的情况,其中由多于一个的逻辑分区-->(LPAR)共享的输入/输出(I/O)架构,以及其中每个LPAR能够潜在地与其他多个LPAR共享I/O适配器(IOA)。特别地,利用说明性的实施方式的机制,向每个LPAR分配其自身的单独的地址空间来访问分配给它的虚拟功能(VF),以及直接接收来自被分配给它的VF的中断,使得每个LPAR的感知在于,为了常规的I/O操作的目的,其具有其自身的独立的IOA。可在多个LPAR间共享诸如PCI Express(PCIe)I/O虚拟(IOV)适配器的IOA的每个VF。通过将整个IOV适配器分配给I/O虚拟化管理分区(IMP),经由IOV适配器的物理功能(PF),说明性的实施方式的机制提供了管理IOV适配器的共享资源的便利。更特别地,运行于IMP中的代码为了充分地管理VF错误处理、VF复位和配置操作的目的而对VF充当虚拟中介(VI)。此外,为了访问公共VF功能(例如,对于网络适配器而言,用于VF的网络地址)的目的,IMP充当到PF的接口,此处将其称为适配器南侧管理。而且,由此IMP实现相对于VF和使用那些VF的客户分区的资源分配和管理的功能,这些功能通常可由诸如系统管理器的虚拟化平台完成。此处资源分配意味着对像存储器映射I/O(MMIO)地址空间、DMA地址空间、中断等的设施的向在系统中的客户分区的分配,这些设施原本被作为资源池而与适配器的VF一起向IMP分配。在说明性的实施方式中,提供了用于管理输入/输出(I/O)虚拟化的方法。该方法包括在数据处理系统中创建一个或多个客户分区,每个客户分区具有与数据处理系统的资源的相关联的部分,以及在数据处理系统中创建I/O虚拟化管理分区(IMP)。该方法可进一步包括由IMP标识与数据处理系统相关联的一个或多个支持I/O虚拟化(IOV)的I/O端点,由IMP将一个或多个支持IOV的I/O端点的虚拟功能分配给一个或多个客户分区,以及通过数据处理系统的系统管理器基于一个或多个客户分区的虚拟功能的分配来创建用于在IMP和一个或多个客户分区之间通信的至少一个通信结构。该方法可进一步包括,一个或多个客户分区的至少一个客户分区使用至-->少一个通信结构来利用一个或多个支持IOV的I/O端点的一个或者多个虚拟功能执行虚拟功能配置操作。该方法可进一步包括:通过数据处理系统的系统管理器向IMP分配数据处理系统的资源的一部分以用于由IMP管理,以及由IMP确定分配给一个或多个客户分区的虚拟资源所需要的资源的数量。而且,该方法可包括:确定将在数据处理系统中实现的虚拟功能的数量,以及将每个虚拟功能分配给一个或多个客户分区的哪些,以及执行从一个或多个被分配了虚拟功能的客户本文档来自技高网
...

【技术保护点】
一种用于在数据处理系统中管理输入/输出(I/O)虚拟化的方法,包括: 在所述数据处理系统中创建一个或多个客户分区,每个客户分区具有所述数据处理系统的资源的相关联的部分; 在所述数据处理系统中,创建I/O虚拟化管理分区(IMP);  由所述IMP标识与所述数据处理系统相关联的一个或多个支持I/O虚拟化(IOV)的I/O端点; 由所述IMP将所述一个或多个支持IOV的I/O端点的虚拟功能分配给所述一个或多个客户分区; 所述数据处理系统的系统管理器基于所 述一个或多个客户分区的虚拟功能的分配来创建至少一个通信结构,所述至少一个通信结构用于在所述IMP和所述一个或多个客户分区之间通信;以及 所述一个或多个客户分区的至少一个客户分区使用所述至少一个通信结构,利用的所述一个或多个支持IOV的 I/O端点的一个或多个虚拟功能,来执行虚拟功能配置操作。

【技术特征摘要】
US 2007-12-3 11/949,4191.一种用于在数据处理系统中管理输入/输出(I/O)虚拟化的方
法,包括:
在所述数据处理系统中创建一个或多个客户分区,每个客户分区
具有所述数据处理系统的资源的相关联的部分;
在所述数据处理系统中,创建I/O虚拟化管理分区(IMP);
由所述IMP标识与所述数据处理系统相关联的一个或多个支持
I/O虚拟化(IOV)的I/O端点;
由所述IMP将所述一个或多个支持IOV的I/O端点的虚拟功能
分配给所述一个或多个客户分区;
所述数据处理系统的系统管理器基于所述一个或多个客户分区
的虚拟功能的分配来创建至少一个通信结构,所述至少一个通信结
构用于在所述IMP和所述一个或多个客户分区之间通信;以及
所述一个或多个客户分区的至少一个客户分区使用所述至少一
个通信结构,利用的所述一个或多个支持IOV的I/O端点的一个或
多个虚拟功能,来执行虚拟功能配置操作。
2.根据权利要求1所述的方法,进一步包括:
由所述数据处理系统的所述系统管理器将所述数据处理系统的
资源的部分分配给所述IMP用于由所述IMP管理;
由所述IMP确定分配给所述一个或多个客户分区的所述虚拟功
能所必需的多种资源;
确定将在所述数据处理系统中实现的多种虚拟功能,以及将每个
虚拟功能分配给所述一个或多个客户分区的哪些客户分区;以及
执行来自被分配了虚拟功能的所述一个或多个客户分区的到所
述系统管理器的一个或多个调用,以将来自所述资源的部分的资源
分配给所述一个或多个客户分区。
3.根据权利要求2所述的方法,其中确定将在所述数据处理系
统中实现的多种虚拟功能,并且将每个虚拟功能分配给所述一个或
多个客户分区的哪些客户分区包括:
确定由每个所标识的支持IOV的I/O端点所支持的多种虚拟功
能;
向用户呈现描述了所述所标识的支持IOV的I/O端点以及由每
个所标识的支持IOV的I/O端点所支持的多种虚拟功能的信息;以

接收指示了将在所述数据处理系统中实现的多种虚拟功能,以及
将每个虚拟功能分配给所述一个或多个客户分区的哪些客户分区的
用户输入。
4.根据权利要求2所述的方法,进一步包括:
由所述IMP请求所述系统管理器发起到被分配了虚拟功能的所
述一个或多个客户分区的资源传输;
响应于所述请求,在所述IMP中接收来自所述系统管理器的一
个或多个令牌;以及
从所述IMP经由所述通信结构向所述一个或多个客户分区发送
所述令牌,其中所述一个或多个客户分区使用所述一个或多个令牌
来从所述系统管理器获得资源。
5.根据权利要求1所述的方法,其中向所述IMP提供对仅用于
在所述一个或多个支持IOV的I/O端点中的被分配给所述IMP的物
理功能的配置空间,以及属于被分配给所述IMP的物理功能的虚拟
功能的配置空间的访问。
6.根据权利要求1所述的方法,其中所述一个或多个客户分区
不直接访问在所述一个或多个支持IOV的I/O端点中的被分配给所
述一个或多个客户分区的虚拟功能的配置空间,以及仅可使用所述
至少一个通信结构经由IMP访问被分配给所述一个或多个客户分区
的虚拟功能的配置空间。
7.根据权利要求6所述的方法,其中所述IMP允许由客户分区
来访问在所述一个或多个支持IOV的I/O端点中被分配给所述客户
分区的虚拟功能的配置空间,以及阻止由所述客户分区访问在所述
一个或多个支持IOV的I/O端点中的没有被分配给所述客户分区的
虚拟功能的配置空间。
8.根据权利要求1所述的方法,进一步包括接收来自硬件管理
控制台(HMC)的输入,其指引对所述一个或多个客户...

【专利技术属性】
技术研发人员:AC布朗DM弗赖穆斯RJ雷西欧SM瑟伯
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1