修改逻辑分区数据处理系统中的虚拟适配器资源的制作方法

文档序号:6566652阅读:197来源:国知局

专利名称::修改逻辑分区数据处理系统中的虚拟适配器资源的制作方法
技术领域
:本发明总体来说涉及主机和输入/输出(I/O)适配器之间的通信协议。具体地说,本发明提供一种机制,通过该机制,单个物理I/O适配器(例如,PCI、PCI-X或者PCI-E适配器)可以修改与驻留于所述物理适配器中的一个或多个虚拟适配器相关的资源。
背景技术
:虚拟化就是为真实资源产生替代物。替代物与其真实的对等物具有相同的功能和外部接口,但是在诸如尺寸、性能和成本之类的属性上不同。这些替代物是虚拟资源,而且它们的用户通常不知道替代物的存在。服务器使用两种基本方法来对系统资源进行虚拟化分区和逻辑分区(LPAR)管理器。分区产生虛拟服务器,作为物理服务器资源的一部分,通常在以粗粒的(例如,物理)分配单元(例如,整个处理器及其关联内存和I/0适配器).LPAR管理器是软件或者固件元件,其能够将所有的服务器资源细粒度地(例如,以单个物理资源的小部分)虚拟化。在常规分区数据处理系统中,支持虚拟化的服务器具有两种选择方案用于处理I/O。第一种选择不允许在虚拟服务器之间共享单个物理I/O适配器。第二种选择是在LPAR管理器或另一个中介物中增加功能,从而提供允许多个操作系统共享单个物理适配器所必要的隔离。第一种选择存在几个问题。一个突出的问题是,昂贵的适配器不能在虚拟服务器之间共享。如果虚拟服务器只需要使用昂贵的适配器的一部分,那么整个适配器将专门用于这个服务器。随着在物理服务器上的虚拟服务器的数目增加,这样导致适配器的利用不足,并且导致更昂贵的解决方案,因为每个虚拟服务器需要专门用于其上的至少一个且潜在很多的物理适配器。对于支持许多虚拟服务器的物理服务器,这种选择的另一个突出的问题是,其需要多个适配器插槽,其中,所有的附属硬件(例如,芯片、连接器、线缆等)要求把这些适配器连接到物理服务器和下游基础设施(例如,线缆、交换机、路由器),以将附加的主机适配器与目标连接。尽管第二种选择提供在虚拟服务器之间共享适配器的机制,但是该机制必须在每个I/0事务中被调用和执行。由LPAR管理器或其它中介物在每个I/O事务中调用和执行所述共享机制会降低性能。还会导致更昂贵的解决方案,因为客户必须购买更多的硬件,以便补偿用来实现所述共享机制的周期,或者,如果共享机制卸栽到了中介物中,则用来补偿所述中介物硬件。有益的是具有改进的方法、设备和计算机指令,用来直接修改与驻留于物理适配器(例如,PCI、PCI-X或PCI-E适配器)中的一个或多个虚拟适配器相关联的资源。此外,有益的是使所述机制应用于支持内存映射的1/0接口的适配器,例如以太网NIC(网络接口控制器)、FC(光纤通道)、HBA(主机总线适配器)、pSCSI(并行SCSI)、HBA、InfiniBand、TCP/IP减负引擎、支持RDMA(远程直接内存存取)的NIC(网络接口控制器)、iSCSI适配器、iSER(用于RDMA的iSCSI扩展)等等。
发明内容本发明提供用于直接修改与驻留于物理适配器(例如,PCI、PCI-X或者PCI-E适配器)内的一个或者多个虚拟适配器相关联的资源的方法、计算机程序产品和分布数据处理系统。具体来i兌,本发明涉及用于共享常规的PCI(外围部件互连)I/O适配器、PCI-XI/O适配器、PCI-ExpressI/O适配器、以及(一般来说)使用内存映射I/O接口用于主机至适配器通信的任何i/o适配器,提供一机制,以便直接修改与驻留于物理适配器(例如,PCI、PCI-X或PCI-E适配器)中的一个或者多个虚拟适配器相关联的资源。另外,每一个虚拟适配器具有一组相关的主机侧资源(例如,内存地址和中断等级)和适配器侧资源(例如,适配器内存地址和处理队列),并且每一个虚拟适配器被隔离访问属于另一虚拟适配器或者物理适配器的主机侧资源和适配器资源。现在仅仅以举例的方式参照附图描述本发明,其中图l是根据本发明的优选实施例示出的分布计算机系统的视图;图2是根据本发明的优选实施例的小主机处理器节点的功能框图;图3是根据本发明的优选实施例的小集成主机处理器节点的功能框图;图4是根据本发明的优选实施例的大主机处理器节点的功能框图;图5是根据本发明的优选实施例示出并行外围计算机接口(PCI)总线协议的元件的视图;图6是根据本发明的优选实施例示出串联PCI总线协议(PCI-Express或者PCI-E)的元件的视图;图7是根据本发明的优选实施例示出为了提供虚拟主机访问隔离而设置在主机处理器节点中的I/O虚拟化功能的视图;图8是才艮据本发明的优选实施例示出用于PCI总线事务以识别虚拟适配器或者系统映像的控制场的视图;图9是示出根据本发明的优选实施例必须被虚拟化的适配器资源的视图,以允许适配器直接访问虚拟主机资源;虚拟主机直接访问适配器资源;以及适配器上的非PCI端口访问适配器或者主机上的资源;图10是根据本发明的优选实施例示出支持I/O虚拟化的用于管理PCI系列适配器的三个访问控制等级的形成的视图;图11是示出根据本发明的优选实施例如何通过逻辑分区管理器使与系统映像相关联的虚拟适配器可以使用与系统映像相关联的主机内存的视图;图12是示出根据本发明的优选实施例PCI系列适配器如何允许逻辑分区管理器将PCI适配器中的内存和系统映像及其关联虚拟适配器相关联的视图;图13是根据本发明的优选实施例示出用于确定与输入内存地址相关联的虚拟适配器的一种选择方案的视图;图14是根据本发明的优选实施例示出用于确定与PCI-X或者PCI-E总线事务相关联的虚拟适配器的一种选择方案的视图;图15是^L据本发明的优选实施例示出用于对适配器资源进行虚拟化的虚拟适配器管理方法的视图;以及图16是概述根据本发明的优选实施例的、实施图15所述的虚拟适配器管理方法的数据处理系统中的范例虚拟适配器属性修改过程的流程图。具体实施方式本发明适用于使用PCI系列I/O适配器直接连接存储装置或者连接网络的任何普通或者特殊的目的主机,其中,网络由终端节点、交换机、路由器和互连这些部件的链路组成。网络链路可以是,例如,光纤通道、以太网、InfiniBand,先进交换互连、或者使用专用协议或者标准协议的专用链路。虽然本发明的实施例示出和描述为利用外围部件互连(PCI)系列适配器,但是,本发明的实施方式并不局限于这种结构,如本领域技术人员所显而易见的那样。本发明的教导可以在支持内存映射输入/输出(MMIO)接口(例如,但不限于,HyperTransport、RapidI/O、专用MMIO接口)的任何物理适配器或者现在已知的或稍后开发的具有MMIO接口的其他适配器上实施。为了帮助理解本发明的范例目的,提供利用PCI系列适配器的本发明的实施方式。现在参照附图,尤其,参照图l,根据本发明的优选实施例示出分布计算机系统的视图。图l所示的分布计算机系统采用网络例如网络120的形式,并且仅仅为了范例的目的,提供该分布计算机系统,可以在很多其它类型和结构的计算机系统上实施下面所述的本发明的实施例。两个交换机(或者路由器),即,交换机116和交换机140,示出在网络120内。交换机116通过端口112连接小主机节点100。小主机节点IOO也包含第二类端口104,该第二类端口连接直接连接存储子系统,例如,直接连接存储器108。网络120也可以通过端口136连接大主机节点124,该端口136连接交换机140。大主机节点124也可以包含第二类端口128,该第二类端口128连接直接连接存储子系统,例如,直接连接存储器132。网络120也可以连接小集成主机节点144,该小集成主机节点144通过连接交换机140的端口148连接网络120。小集成主机节点144也可以包含第二类端口152,该第二类端口152连接直接连接存储子系统,例如,直接连接存储器156。现在转到图2,根据本发明的优选实施例示出小主机节点的功能框图。小主机节点202是主机处理器节点的例子,例如,图l所示的小主机节点100,在该例子中,图2所示的小主机节点202包括通过链路201互连的两个处理器I/0层次,例如,处理器I/O层次200和203。在图2的范例例子中,处理器I/0层次200包括处理器芯片207,该处理器芯片207包括一个或者多个处理器及其相关高速緩沖器。处理器芯片207通过链路208连接存储器212。在处理器芯片上的一个链路(例如,链路220)连接PCI系列I/O桥228。PCI系列I/O桥228具有一个或者多个PCI系列(PCI、PCI-X、PCI-Express或者任何下一代PCI)链路,用来通过PCI链路(例如,链路232、236和240)连接其它PCI系列I/O桥或者PCI系列I/O适配器,例如,PCI系列适配器244和PCI系列适配器245。PCI系列适配器245也可以用来通过经由交换机或者路由器(例如,交换机或者路由器260)的链路与网络(例如,网络264)连接。PCI系列适配器244可以用来通过链路248与直接连接存储器连接,例如,直接连接存储器252。可以用与就处理器I/O层次200所示出和描述的方式相似的方式构造处理器I/O层次203。现在参照图3,根据本发明的优选实施例示出小集成主机节点的功能框图。小集成主机节点302是主机处理器节点的例子,例如,图1所述的小集成主机节点144。在该实例中,小集成主机节点302包括两个处理器I/0层次300和303,这两个处理器I/O层次300和303通过链路301互连。在所图示的实例中,处理器I/0层次300包括处理器芯片304,该处理器芯片304代表一个或者多个处理器和关联高速緩冲器。处理器芯片304通过链路308连接存储器312。在处理器芯片上的一个链路,例如链路330,连接PCI系列适配器,例如,PCI系列适配器345。处理器芯片304具有一个或者多个PCI系列(即,PCI、PCI-X、PCI-Express或者任何下一代PCI)链路,其用来通过PCI链路(例如,链路316、330和324)连接PCI系列1/0桥或者PCI系列1/0适配器,例如,PCI系列适配器344和PCI系列适配器345。PCI系列适配器345也可以用来通过经由交换机或者路由器(例如,交换机或者路由器360)的链路与网络(例如,网络364)连接。PCI系列适配器344可以用来通过链路348与直接连接存储器352连接。现在转到图4,根据本发明的优选实施例示出大主机节点的功能框图。大主机节点402是主机处理器节点的例子,例如,图l所示的大主机节点124。在该实例中,大集成主机节点402包括两个处理器I/0层次400和403,这两个处理器I/O层次400和403通过链路401互连。在图4所示的实例中,处理器I/O层次400包括处理器芯片404,该处理器芯片404代表一个或者多个处理器和关联高速緩冲器。处理器芯片404通过链路408连接存储器412。在处理器芯片上的一个链路,例如链路440,连接PCI系列I/O集线器,例如,PCI系列I/O集线器441。PCI系列I/O集线器使用网络442连接PCI系列1/0桥448。即,PCI系列I/O桥448通过链路432连接交换机或者路由器436,并且,交换机或者路由器436通过链路443连接PCI系列I/O集线器441。网络442允许PCI系列I/O集线器和PCI系列I/O桥置于不同的封装中。PCI系列I/O桥448具有一个或者多个PCI系列(即,PCI、PCI-X、PCI-Express或者任何下一代PCI)链路,其用来通过PCI链路(例如,链路444、446和452)连接其它的PCI系列I/O桥或者PCI系列I/O适配器,例如,PCI系列适配器456和PCI系列适配器457。PCI系列适配器456可以用来通过链路460与直接连接存储器476连接。PCI系列适配器457也可以用来通过经由例如交换机或者路由器472的链路468与网络464连接。接下来转到图5,根据本发明的优选实施例示出对包含在PCI总线事务500和PCI-X总线事务520中的各阶段的图例。PCI总线事务500描述形成通过用于常规PCI的PCI结构传输的信息单元的常规PCI总线事务。PCI-X总线事务520描述形成通过用于PCI-X的PCI结构传输的信息单元的PCI-X总线事务。PCI总线事务500显示三个阶段地址阶段508;数据阶段512;以及周转循环516。此外所示出的是对下一个传输504的仲裁,其可以与地址阶段、数据阶段和周转阶段同时发生。对于PCI,使用包含在地址阶段中的地址来将总线事务从适配器发送到主机以及从主机发送到适配器。PCI-X事务520显示五个阶段地址阶段528;属性阶段532;响应阶段560;数据阶段564和周转循环566。此外所示出的是对下一个传输524的仲裁,其可以与地址阶段、属性阶段、响应阶段、数据阶段和周转循环阶段同时发生。与常规PCI相似,PCI-X使用包含在地址阶段中的地址来将总线事务从适配器发送到主机以及从主机发送到适配器。但是,PCI-X增加属性阶段532,该属性阶段532包含限定总线事务请求者的三个字段,即请求者总线号544、请求者装置号548和请求者功能号552(在本文总称为BDF)。总线事务还包含标记540,该标记相对于在请求者和响应者之间未完成的其它总线事务唯一地识别该特定总线事务。字节计数556包含对正发送的字节的数目的计数。现在转到图6,根据本发明的优选实施例示出包含在PCI-Express总线事务中的各个阶段的图例。PCI-E总线事务600形成通过用于PCI-E的PCI结构传输的信息单元。PCI-E总线事务600显示六个阶段帧阶段608;序列号612;报头664;数据阶段668;循环冗余检查(CRC)672;以及帧阶段680。PCI-E报头664包含在PCI-Express规格中定义的一组字段。请求者标识符(ID)字段628包含限定总线事务请求者的三个字段,即请求者总线号684、请求者装置号688和请求者功能号692。PCI-E报头还包含标记652,该标记相对于在请求者和响应者之间未完成的其它总线事务唯一地识别该特定总线事务。长度字段644包含对正发送的字节的数目的计数。现在参照图7,根据本发明的优选实施例示出PCI适配器(例如,PCI系列适配器736)以及在主机硬件(例如,可以具有I/O集线器或者I/0桥的处理器)(例如,主机硬件700)上运行的固件和软件。图7还示出在主机硬件700上运行的逻辑分区(LPAR)管理器708。LPAR管理器708可以实施为由美国纽约市的InternationalBusinessMachines,Inc.ofArmonk制造的Hypervisor,LPAR管理器708可以在固件、软件或者二者的组合上运行。LPAR管理器708宿主两个系统映像(SI)分区,例如,系统映像712和系统映像724(示例性地指定系统映像1和系统映像2)。该系统映像分区可以是在软件上运行的各自操作系统、在软件上运行的特殊目的映像(例如,存储块服务器或者存储文件服务器映像)、或者在固件上运行的特殊目的映像。在这些系统映像上可以运行应用程序,例如,应用程序716、720、728和732(示例性地指定应用程序1A、应用程序2、应用程序1B和应用程序3)。应用程序716和728代表公共应用程序的单独的例子,因此,用相应的标号"1A"和"1B"示例性地指定。在所图示的实例中,应用程序716和720在系统映像712上运行,应用程序728和732在系统映像724上运行。如本文所指,虚拟主机包括系统映像(例如,系统映像712)或者在系统映像中运行的系统映像和应用程序的组合。因此,在图7中示出两个虚拟主机。PCI系列适配器736包含一组物理适配器配置资源740和物理适配器内存资源744。物理适配器配置资源740和物理适配器内存资源744包含描述PCI系列适配器736可以支持的虚拟适配器的数目和分配给每一个虚拟适配器的物理资源的信息。如本文所指,虚拟适配器是与逻辑分区(例如,系统映像712和在系统映像712上运行的应用程序716及720)相关联的物理适配器资源的子集(例如,物理适配器资源和物理适配器内存的子集)的分配。给LPAR管理器708提供物理配置资源接口738和物理内存配置接口742,以在适配器的初始配置和重配置期间读入和写入物理适配器配置资源和内存空间。通过物理配置资源接口738和物理配置内存接口742,LPAR管理器708创建虚拟适配器,并且分配物理资源给每一个虚拟适配器。LPAR管理器708可以使用一个系统映像(例如,特殊软件或者固件分区)作为主机分区,该主机分区^f吏用物理配置资源接口738和物理配置内存接口742,以执行虚拟适配器初始配置和重配置功能的一部分或者甚至全部。图7示出配置有两个虚拟适配器的PCI系列适配器736的配置。第一虚拟适配器(指定的虚拟适配器1)包括通过与系统映像712(指定的系统映像l)相关联的LPAR管理器708分配的虚拟适配器资源748和虚拟适配器内存752。类似地,第二虚拟适配器(指定的虚拟适配器2)包括通过LPAR管理器708分配给虚拟适配器2并与另一系统映像724(指定的系统映像2)相关联的虚拟适配器756和虚拟适配器内存760。关于用于连接一个直接连接存储器(例如,图l所示的直接连接存储器108、132或者156)的适配器,虚拟适配器资源的例子可以包括一关联物理盘列表、一关联逻辑单元号列表和一关联适配器功能列表(例如,不昂贵磁盘冗余阵列(RAID)级别)。关于用于连接网络(例如,图1的网络120)的适配器,虚拟适配器资源的例子可以包括一关联链路级别标识符列表、一关联网络级别标识符列表、一关联虚拟结构标识符列表(例如,用于以太网结构的虚拟LANID、用于光纤通道结构的N-端口ID和用于InfiniBand结构的区分键)、和一关联网络层功能列表(例如,网络卸栽服务)。在LPAR管理器708配置PCI系列适配器736之后,允许每一个系统映像仅仅与通过LPAR管理器708同该系统映像相关联的虚拟适配器通信。如图7(实线)所示,允许系统映像712与虚拟适配器1的虚拟适配器资源748和虚拟适配器内存752直接通信。不允许系统映像712与如图7的虚线所示的虚拟适配器2的虚拟适配器资源756和虚拟适配器内存760直接通信。类似地,允许系统映像724与虚拟适配器2的虚拟适配器资源756和虚拟适配器内存760直接通信,不允许系统映像724与虚拟适配器1的虚拟适配器资源748和虚拟适配器内存752直接通信。现在参照图8,根据本发明的优选实施例示出在主机节点(例如,图1所示的小主机节点100、大主机节点124或者小集成的主机节点144)内的部件(例如,处理器、I/O集线器或者1/0桥800)的图例,所述主机节点通过PCI-X或者PCI-E链路(例如,PCI-X或者PCI-E链路808)连接PCI系列适配器,例如,PCI系列适配器804。图8示出在系统映像(例如,系统映像712或者724)或者LPAR管理器708执行PCI-X或者PCI-E总线事务(例如,主机至适配器PCI-X或者PCI-E总线事务812)时,处理器、1/0集线器、或者连接PCI-X或者PCI-E链路808的I/O桥800填入总线号、装置号和在PCI-X或者PCI-E总线亊务中的功能号字段,所述链路发送主机至适配器PCI-X或者PCI-E总线事务812。处理器、I/O集线器、或者I/O桥具有两个选择方案用于如何填入这三个字段对于使用处理器、I/O集线器、或者i/o桥的所有软件部件,可以使用相同的总线号、装置号和功能号;或者,对于使用处理器、1/0集线器、或者I/0桥的每一个软件部件,可以使用不同的总线号、装置号和功能号。该事务的发起者可以是软件部件,例如,系统映像712或者系统映像724(或者,在系统映像上运行的应用程序),或者可以是LPAR管理器708。如果对于所有的事务发起者,处理器、I/O集线器或者I/O桥800使用相同的总线号、装置号和功能号,则在软件部件发起PCI-X或者PCI-E总线事务(例如,主机至适配器PCI-X或者PCI-E总线事务812)时,处理器、1/O集线器或者I/O桥800将处理器、1/0集线器或者I/O桥的总线号置于PCI-X或者PCI-E总线事务的请求者总线号字段820(例如,图5所示的PCI-X事务的请求者总线号544字段或者图6所示的PCI-E事务的请求者总线号684字段)中。类似地,处理器、I/O集线器或者I/O桥800将处理器、I/O集线器或者I/O桥的装置号置于PCI-E总线事务的请求者装置号824字段,例如,图5所述的请求者装置号548字段或者图6所示的请求者装置号688字段。最后,处理器、1/O集线器或者I/O桥800将处理器、1/0集线器或者I/O桥的功能号置于PCI-X或者PCI-E总线事务的请求者功能号828字段,例如,图5所示的请求者功能号552字段或者图6所示的请求者功能号692字段。处理器、I/O集线器或者I/O桥800也将所述PCI-X或者PCI-E总线事务所作为目标的物理适配器或者虚拟适配器内存地址置于PCI-X或者PCI-E总线事务中,如图8中的适配器资源或者地址816字段所示。如果对于每一个事务发起者,处理器、1/0集线器或者I/O桥800使用不同的总线号、装置号和功能号,则处理器、1/0集线器或者I/0桥800分配总线号、装置号和功能号给事务发起者。当软件部件发起PCI-X或者PCI-E总线事务(例如,主机至适配器PCI-X或者PCI-E总线事务812)时,处理器、1/O集线器或者I/O桥800将软件部件的总线号置于PCI-X或者PCI-E总线事务的请求者总线号820字段,例如,图5所示的请求者总线号544字段或者图6所示的请求者总线号684字段。类似地,处理器、I/O集线器或者1/O桥800将软件部件的装置号置于PCI-X或者PCI-E总线事务的请求者装置号824字段,例如,图5所示的请求者装置号548字段或者图6所示的请求者装置号688。最后,处理器、1/O集线器或者I/O桥800将软件部件的功能号置于PCI-X或者PCI-E总线事务的功能号828字段,例如,图5所示的请求者功能号552字段或者图6所示的请求者功能号692字段。处理器、1/0集线器或者I/O桥800也将所述PCI-X或者PCI-E总线事务所作为目标的物理适配器或者虚拟适配器内存地址置于PCI-X或者PCI-E总线事务中,如图8中的适配器资源或者地址816字段所示。图8还示出,当物理适配器或者虚拟适配器806执行PCI-X或者PCI-E总线事务(例如,适配器至主机PCI-X或者PCI-E总线事务832)时,连接PCI-X或者PCI-E链路808的PCI系列适配器(例如,物理系列适配器804)将与发起总线事务的物理适配器或者虚拟适配器相关联的总线号、装置号和功能号置于请求者总线号、装置号和功能号836,840和844字段。显著地,为了支持一个以上的总线号或者装置号,PCI系列适配器804必须支持一个或者多个内部总线(对于PCI-X适配器,参见PCI-X附录至PCI局部总线规格l.O或者1.0a版;对于PCI-E适配器,参见PCI-Express基础规格1.0或者1.0a版,其细节以引用方式并入本文中)。为了执行该功能,LPAR管理器708通过分配总线号、装置号和功能号给物理适配器或者虚拟适配器来将每一个物理适配器或者虚拟适配器与软件部件相关联。当物理适配器或者虚拟适配器发起适配器至主机PCI-X或者PCI-E总线亊务时,PCI系列适配器804将物理适配器或者虚拟适配器的总线号放置在PCI-X或者PCI-E总线事务的请求者总线号836字段,例如,图5所示的请求者总线号544字段或者图6所述的请求者总线号684(在图8中示出为适配器总线号836)。类似地,PCI系列适配器804将物理适配器和虚拟适配器的装置号置于PCI-X或者PCI-E总线事务的请求者装置号840字段,例如,图5所示的请求者装置号548字段或者图6所述的请求者装置号688字段(在图8中示出为适配器装置号840)。PCI系列适配器804将物理适配器或者虚拟适配器的功能号置于PCI-X或者PCI-E总线事务的请求者功能号844字段,例如,图5所述的请求者功能号552字段或者图6所示的请求者功能号692字段(在图8中示出为适配器功能号844)。最后,PCI系列适配器804也将通过物理适配器或者虚拟适配器所关联并作为目标的软件部件的内存地址置于PCI-X或者PCI-E总线事务中的主机资源或者地址848字段。现在参照图9,示出根据本发明的优选实施例描述的具有两个虚拟适配器的PCI适配器的功能框图。范例的PCI系列适配器900配置有两个虚拟适配器916和920(示例性地指定虚拟适配器1和虚拟适配器2)。PCI系列适配器900可以包含一个(或者多个)PCI系列适配器端口(在本文中也称为上游端口),例如,PCI-X或者PCI-E适配器端口912。PCI系列适配器卯0也可以包含一个(或者多个)装置或者网络端口(在本文中也称为下游端口),例如,物理端口卯4和物理端口908。图9也示出在PCI适配器上可以虚拟化的资源类型。可以虚拟化的PCI系列适配器900的资源包括处理队列、地址和配置内存、PCI端口、主机内存管理资源和装置或者网络端口。在所图示的实例中,分配给虚拟适配器916的PCI系列适配器900的虚拟化资源包括,例如,处理队列924、地址和配置内存928、PCI虚拟端口936、主机内存管理资源984(例如,InfiniBand或者iWARP上的内存区域注册和内存窗粘结资源)和虚拟装置或者网络端口,例如,虛拟外部端口932和虚拟外部端口934(更通常称为虚拟端口)。类似地,分配给虚拟适配器920的PCI系列适配器900的虚拟化资源包括,例如,处理队列940、地址和配置内存944、PCI虚拟端口952、主机内存管理资源980和虚拟装置或者网络端口,例如,虚拟外部端口948和虚拟外部端口950。接下来转到图10,根据本发明的优选实施例示出在PCI系列适配器(例如,图9所示的PCI系列适配器900)上的访问控制等级的功能框图。三个访问等级是超特权物理资源分配等级1000、特权虚拟资源分配等级1008和非特权等级1016。在超特权物理资源分配等级1000上执行的功能包括,但不限于PCI系列适配器询问;创建、修改和删除虚拟适配器;提交和检索工作;复位和恢复物理适配器;分配物理资源给虚拟适配器实例。PCI系列适配器询问用来确定(例如)物理适配器类型(例如,光纤通道、以太网、iSCSI、并行SCSI)、在物理适配器上支持的功能和被PCI系列适配器支持的虚拟适配器的数目。LPAR管理器,例如,图7所示的LPAR管理器708,执行与超特权物理资源分配等级1000相关联的物理适配器资源管理1004功能。但是,LPAR管理器可以使用系统映像,例如,1/0主机分区,以执行物理适配器资源管理1004功能。在特权虚拟资源分配等级1008上执行的功能包括,例如,虚拟适配器询问;分配和初始化虚拟适配器资源;通过虚拟适配器资源提交和检索工作;以及,对于支持卸栽服务的虚拟适配器,分配和指定虚拟适配器资源给中间件处理和线程实例。虚拟适配器询问用来确定虚拟适配器类型(例如,光纤通道、以太网、iSCSI、并行SCSI)和在虚拟适配器上支持的功能。系统映像,例如图7所示的系统映像712,执行与虚拟资源分配等级1008相关联的特权虚拟适配器资源管理1012功能。最后,在非特权等级1016上执行的功能包括,例如,询问已指定给在非特权等级1016上运行的软件的虚拟适配器资源;以及通过已指定给在非特权等级1016上运行的软件的虚拟适配器资源提交和检索工作。应用程序,例如图7所示的应用程序716,执行与非特权等级1016相关联的虚拟适配器访问库1020功能。接下来转到图11,根据本发明的优选实施例示出对PCI系列适配器可用的主机内存地址的功能框图。PCI系列适配器1101是如上面图9所述的可以虚拟化资源的PCI系列适配器900的例子。图11描述四种不同的机制,通过这些机制,LPAR管理器708可以将主机内存与系统映像和虚拟适配器相关联。一旦主机内存与系统映像和虚拟适配器相关联,虚拟适配器就可以执行DMA直接写入和读入主机内存的操作。系统映像1108和1116是系统映像的例子,例如上面就图7所述的系统映像712和724,分别与虚拟适配器1104和1112相关联。虚拟适配器1104和1112是虚拟适配器的例子,例如上面就图9所述的虚拟适配器916和920,包括虚拟适配器资源和虛拟适配器内存的各自分配。第一种范例机制,即,LPAR管理器708可以用来使主机内存与系统映像和一个或者多个虚拟适配器相关联、并使主机内存可用于系统映像和一个或者多个虚拟适配器,将系统映像关联列表1122写入虚拟适配器的资源。虚拟适配器资源1120包含一PCI总线地址列表,其中,在该列表中的每一个PCI总线地址通过硬件平台与系统映像(SI)页(例如,分配给系统映像1108的SI1第1页1128到SI1第N页1136)的起始地址相关联。虚拟适配器资源1120也包含页尺寸,对于该列表中的所有页,页尺寸相等。在起初配置时,并且,在重配置的期间,LPAR管理器708将系统映像关联列表1122装入虚拟适配器资源1120。系统映〗象关联列表1122限定虚拟适配器1104可以用于DMA读写操作的地址集。在创建系统映像关联列表1122之后,虚拟适配器1104必须验证,通过系统映《象1108请求的每一个DMA写或者DMA读被包含在系统映像关联列表1122中的页内。如果通过系统映像1108请求的DMA写或者DMA读被包含在系统映像关联列表U22中的页内,则虚拟适配器1104可以执行操作。否则,禁止虚拟适配器1104执行操作。或者,PCI系列适配器1101可以使用特殊的LPAR管理器式虚拟适配器(而不是虚拟适配器1104)执行检测,以确定通过系统映像1108请求的DMA写或者DMA读是否被包含在系统映像关联列表1122中的页内。以相似的方式,与系统映像1116相关联的虚拟适配器1112验证通过系统映像1116提交的DMA写或读请求。具体来说,虚拟适配器1112通过确定DMA写或读请求是否在与系统映像1116的系统映像页相关联的系统映像关联列表(以与系统映像关联列表1122相似的方式配置)中的页内来对来自系统映像1116的DMA写读请求提供验证。第二种范例机制,即,LPAR管理器708可以用来使主机内存与系统映像和一个或者多个虚拟适配器相关联、并使主机内存可用于系统映像和一个或者多个虚拟适配器,将起始页地址和页尺寸写入虚拟适配器资源中的系统映像关联列表1122中。例如,虚拟适配器资源1120可以包含单个PCI总线地址,该PCI总线地址通过硬件平台与系统映像页(例如,SI1第1页1128)的起始地址相关联。在虚拟适配器资源1120中的映像关联列表1122也包含页尺寸。在起初配置时,并且,在重配置期间,LPAR管理器708将页尺寸和起始页地址装入虚拟适配器资源1120中的映像关联列表1122中。映l象关联列表1122限定虚拟适配器1104可以用于DMA读写操作的地址集。在创建映像关联列表1122之后,虚拟适配器1104验证通过系统映像1108请求的每一个DMA写或者DMA读是否被包含在系统映像关联列表1122中的页内。如果通过系统映l象1108请求的每一个DMA写或者DMA读是被包含在系统映像关联列表1122中的页内,则虚拟适配器1104可以执行操作。否则,禁止虚拟适配器执行操作。或者,PCI系列适配器1101可以使用特殊的LPAR管理器式虚拟适配器(而不是虚拟适配器1104)执行检测,以确定通过系统映像1108请求的DMA写或者DMA读是否被包含在系统映像关联列表1122中的页内。以相似的方式,与系统映像1116相关联的虚拟适配器1112可以验证通过系统映像1116提交的DMA写或读请求。具体来说,与系统映像关联列表1122相关联的系统映像管理列表可以与虚拟适配器1112相关联。与虚拟适配器1112相关联的系统映像关联列表装入与虚拟适配器1112相关联的系统映像1116的系统映像页的页尺寸和起始页地址。因此,与虚拟适配器1112相关联的系统映像关联列表提供这样的机制,通过确定DMA写或者读请求是否在与系统映像1116的系统映像页相关联的系统映像关联列表中的页内,验证来自系统映像1116的DMA读写请求.第三种范例机制,即,LPAR管理器708可以用来使主机内存与系统映像和一个或者多个虚拟适配器相关联、并使主机内存可用于系统映像和一个或者多个虚拟适配器,将系统映像緩冲器关联列表1154写入虚拟适配器的资源中。在图11中,虚拟适配器资源1150包含一PCI总线地址对列表(起始地址和结束地址),其中,通过硬件平台,将该列表中的每一对PCI总线地址与系统映像緩沖器的地址对(起始地址和结束地址)相关联,例如,分配给系统映像1116的SI2第1緩冲器1166到SI1第N緩冲器1180。在起初配置时,并且,在重配置期间,LPAR管理器708将系统映像緩冲器关联列表1154装入虚拟适配器资源1150。该系统映像緩沖器关联列表1154限定虚拟适配器1112可以用于DMA读写操作的地址集。在创建系统映像緩沖器关联列表1154之后,虚拟适配器1112验证通过系统映像1116请求的每一个DMA写或者DMA读被包含在系统映《象緩冲器关联列表1154的緩沖器内。如果通过系统映像1116请求的DMA写或者DMA读被包含在系统映像緩冲器关联列表1154的緩冲器内,则虚拟适配器1112可以执行操作。否则,禁止虚拟适配器1112执行操作。或者,PCI系列适配器1101可以使用特殊的LPAR管理器式虚拟适配器(而不是虚拟适配器1112)执行检测,以确定通过系统映像1116请求的DMA写操作或者DMA读操作是否被包含在系统映像緩沖器关联列表1154的緩沖器内。以相似的方式,与系统映像1108相关联的虚拟适配器1104可以验证通过系统映像1108提交的DMA写或者读请求。具体来说,以与上面对系统映像1116和虚拟适配器1112所述的方式相似的方式,虚拟适配器1104通过确定通过系统映像1108请求的DMZ写或者读被包含在緩冲器管理列表的緩冲器内,对来自系统映像1108的DMA读写请求提供验证,所述緩冲器关联列表包含与分配给系统映像1108的緩冲器的系统映像緩冲器起始和结束地址对相关联的PCI总线起始和结束地址对。第四种范例机制,即,LPAR管理器708可以用来使主机内存与系统映像和一个或者多个虚拟适配器相关联、并使主机内存可用于系统映像和一个或者多个虚拟适配器,将系统映像緩冲器关联列表1154中的单个起始和结束地址写入虚拟适配器的资源中。在图11中,虚拟适配器资源1150包含单对PCI总线起始和结束地址,该单对PCI总线起始和结束地址通过硬件平台与同系统映像緩沖器(例如,SI2第1緩冲器1166)相关联的地址对(起始和结束地址)相关联。在起初配置时,并且,在重配置期间,LPAR管理器708将SI2緩沖器1166的起始和结束地址装入虚拟适配器资源1150中的系统映像緩沖器关联列表1154中。然后,系统映像緩冲器关联列表1154限定虚拟适配器1112可以用于DMA读写操作的地址集。在创建系统映像緩沖器关联列表1154之后,虚拟适配器1112验证通过系统映像1116请求的每一个DMA写或者DMA读是否被包含在系统映像緩沖器关联列表1154内。如果通过系统映像1116请求的DMA写或者DMA读被包含在系统映像緩沖器关联列表1154内,则虚拟适配器1112可以执行操作。否则,禁止虚拟适配器1112执行操作。或者,PCI系列适配器1101可以使用特殊的、LPAR管理器式虚拟适配器(而不是虚拟适配器1150)执行检测,以确定通过系统映像1116请求的DMA写或者DMA读是否被包含在页系统映像緩沖器关联列表1154内。以相似的方式,与系统映〗象1108相关联的虚拟适配器1104可以验证通过系统映像1108提交的DMA写或者读请求。具体来说,以与上面对系统映^象1116和虚拟适配器1112描述的方式相似的方式,虚拟适配器1104通过确定通过系统映像1108请求的DMA写或者读是否被包含在緩冲器关联列表中的緩沖器内来对来自系统映像1108的DMA读写请求提供验证,所述緩沖器关联列表包含与分配给系统映像1108的系统映像緩沖器起始和结束地址相关联的单个PCI总线起始和结束地址。接着转到图12,根据本发明的优选实施例示出对系统映像可用的配置有内存地址的PCI系列适配器的功能框图。图12示出四种不同的机制,通过这些机制,LPAR管理器可以将PCI系列适配器内存与虚拟适配器(例如,虚拟适配器1204)和系统映像(例如,系统映像1208)相关联。一旦PCI系列适配器与系统映像和虚拟适配器相关联,然后系统映像就可以执行直接对PCI系列适配器内存的内存映射i/o读写操作(即,存储和装入)。在图11和图12所示的系统映像和虚拟适配器配置之间存在明显的不同之处。在图ll所示的配置中,PCI系列适配器1101仅仅保持一主机地址列表,所述主机地址不具有与它们相关联的任何局部内存。如果PCI系列适配器支持直通通信,则到达外部端口的数据可以直接流过PCI系列适配器,并且通过DMA写直接传输到这些主机地址。类似地,如果PCI系列适配器支持直通通信,则来自这些主机地址可以直接流过PCI系列适配器,并且从外部端口传输出去。因此,图11所示的PCI系列适配器1101不包含局部适配器内存,因此,不能发起DMA操作。另一方面,图12所示的PCI系列适配器1201具有与所述主机内存地址列表相关联的局部适配器内存。PCI系列适配器1201可以发起(例如)从其局部内存到主机内存的DMA写或者从主机内存到其局部内存的DMA读。类似地,主机可以发起(例如)从其局部内存到PCI系列适配器内存的内存映射I/O写或者从PCI系列适配器内存到主机局部内存的内存映射I/O读。第一种机制和第二种机制,即,LPAR管理器708可以用来4吏PCI系列适配器内存与系统映像和虚拟适配器相关联、并使PCI系列适配器内存可用于系统映像和虚拟适配器,将页尺寸和一页(第一种机制)或者多页(第二种机制)的起始地址写入PCI系列适配器的物理适配器内存转换表格1290中。在这种情况下,所有的页都具有相同的尺寸。例如,图12示出页集,所述页在系统映像1208和虚拟适配器1204之间映射。具体来说,将系统映像1208的SI1第1页1224至SI1第N页1242映射(通过互连箭头示例性地示出)到物理适配器1201局部内存的虚拟适配器内存页1224-1232。对于系统映像1208,在该列表中的所有页1224-1242具有相同的尺寸。在起初配置时,在重配置期间,LPAR管理器708用页尺寸和一页或者多页的起始地址装入PCI系列适配器的物理适配器内存转换表格12卯。然后,物理适配器内存转换表格1290可以限定虚拟适配器1204可以用于DMA读写操作的地址集。在创建物理适配器内存转换表格1290之后,PCI系列适配器1201(者虚拟适配器1204)验证通过系统映像1208请求的每一个DMA写或者DMA读是否被包含在物理适配器内存转换表格1290中并与虚拟适配器1204相关联。如果系统映像1208请求的DMA写或者DMA读被包含在物理适配器内存转换表格1290中并与虚拟适配器1204相关联,则虚拟适配器1204可以执行操作。否则,禁止虚拟适配器1204执行操作。物理适配器内存转换表格12卯也限定系统映像1208可以用于内存映射I/0(MMIO)读写操作的地址集。在创建物理适配器内存转换表格12卯之后,PCI系列适配器1201(或者虚拟适配器1204)验证通过系统映像1208请求的内存映射I/O写或者读是否被包含在物理适配器内存转换表格1290中并与虚拟适配器1204相关联。如果通过系统映像1208请求的MMIO写或者MMIO读^t包含在物理适配器内存转换表格1290中并与虚拟适配器1204相关联,则虚拟适配器1204可以执行操作。否则,禁止虚拟适配器1204执4亍操作。应该理解,以与PCI系列适配器1201(或者虚拟适配器1212)验证通过系统映像1216请求的DMA操作和MMIO操作的方式相似的方式,配置其它系统映像和关联虚拟适配器,例如,系统映4象1216和虚拟适配器1212。第三种机制和第四种机制,即,LPAR管理器708可以用来《吏PCI系列适配器内存与系统映像和虚拟适配器相关联、并使PCI系列适配器内存可用于系统映像和虚拟适配器,将一个(第三种机制)或者多个(第四种机制)緩冲器起始和结束地址(或者,起始地址和长度)写入PCI系列适配器的物理适配器内存转换表格12卯中。在这种情况下,緩冲器可以具有不同的尺寸。例如,图12示出不同尺寸的一组緩沖器,所述緩冲器在系统映像1216和虚拟适配器1212之间映射。具体来说,系统映像1216的SI2第1緩沖器1244至SI2第N緩沖器1248映射到虚拟适配器1212的虚拟适配器緩冲器1258-1274。关于系统映像1216,在该列表中的緩冲器具有不同的尺寸。在起初配置时,并且,在重配置期间,LPAR管理器708将一页或者多页的起始和结束地址(或者起始地址和长度)装入PCI系列适配器的物理适配器内存转换表格1290。然后,物理适配器内存转换表格1290限定虚拟适配器1212可以用于DMA读写操作的地址集。在创建物理适配器内存转换表格1290之后,PCI系列适配器1201(虚拟适配器1212)验证通过系统映像1216请求的每一个DMA写或者DMA读是否被包含在物理适配器内存转换表格1290中并与虚拟适配器1212相关联。如果通过系统映《象1216请求的DMA写或者DMA读被包含在物理适配器内存转换表格1290中并与虚拟适配器1212相关联,则虚拟适配器1212执行操作。否则,禁止虚拟适配器1212执行操作。物理适配器内存转换表格1290也限定系统映像1216可以用于内存映射I/O(MMIO)读写操作的地址集。在创建物理适配器内存转换表格1290之后,PCI系列适配器1201(虚拟适配器1212)验证通过系统映1象1216请求的MMIO写或者读是否被包含在物理适配器内存转换表格12卯中并与虚拟适配器1212相关联。如果通过系统映像1216请求的MMIO写或者读,皮包含在物理适配器内存转换表格1290中并与虚拟适配器1212相关联,则虚拟适配器1212可以执行操作。否则,禁止虚拟适配器1212执行操作。应该理解,以与PCI系列适配器1201(或者虚拟适配器1204)验证通过系统映像1216请求的DMA操作和MMIO操作的方式相似的方式,配置其它系统映4象和关联虚拟适配器,例如,系统映像1208和关联虛拟适配器1204。接下来,转到图13,根据本发明的优选实施例示出PCI系列适配器和物理地址内存转换表格(例如,緩冲器表格或者页表格)的功能框图。图13也示出如何可以使用在输入PCI总线事务1304中引用的地址来查询与内存地址相关联的虚拟适配器资源(包括映射到主机地址的局部PCI系列适配器内存地址)(例如,虚拟适配器资源1398或者虚拟适配器1394资源)的四种机制。第一机制是,将输入PCI总线事务1304的内存地址与緩冲器表格1390中的高地址1316和低地址1320中的每一行比较。如果输入PCI总线事务1304具有低于高地址1316单元的内容并高于低地址1320单元的内容的地址,则输入PCI总线事务1304在与相应的虚拟适配器相关联的高地址和低地址单元之内。在这种情况下,允许输入PCI总线事务1304在匹配的虚拟适配器上执行。或者,如果输入PCI总线事务1304具有不在高地址1316单元的内容和低地址1320单元的内容之间的地址,则禁止完成或者处理输入PCI总线事务1304。第二种机制仅仅允许在每一个虚拟适配器的緩沖器表格1390中的单个项。第三种机制是,将输入PCI总线事务1304的内存地址与每一行页起始地址1322和每一行页起始地址1332加上页表格1392中的页尺寸比较。如果输入PCI总线事务1304具有高于或者等于页起始地址1322单元的内容并低于页起始地址1322单元加上页尺寸的地址,则输入PCI总线事务1304在与虚拟适配器相关联的页内。因此,允许输入PCI总线事务1304在匹配的虚拟适配器上执行。或者,如果输入PCI总线事务1304具有不在页起始地址1322单元的内容和页起始地址1322单元加上页尺寸之内的地址,则禁止完成输入PCI总线事务1304。笫四种机制仅仅允许在每一个虚拟适配器的页表格1392中的单个项。接下来,参照图14,根据本发明的优选实施例示出PCI系列适配器和物理地址内存转换表格(例如,緩沖器表格、页表格或者间接局部地址表格)的功能框图。图14也示出如何使用在输入PCI总线事务1404中引用的请求者总线号(例如,主机总线号1408)、请求者装置号(例如,主机装置号1412)和请求者功能号(例如,主机功能号1416)来给緩沖器表格1498、页表格1494或者间接局部地址表格1464编索引的几种机制。緩冲器表格1498代表图13所示的緩沖器表格1390。页表格1490代表图13所示的页表格1392。局部地址表格1464包含局部PCI系列适配器内存地址,局部PCI系列适配器内存地址引用緩沖器表格(例如,緩冲器表格1438)或者页表格(例如,页表格1434),所述表格仅仅包含映射到同一虚拟适配器上的主机内存地址。在输入PCI总线事务1404中引用的请求者总线号(例如,主机总线号1408)、请求者装置号(例如,主机装置号1412)和请求者功能号(例如,主机功能号1416)提供由主机LPAR管理器建立的内存地址映射之外的附加检查。接下来,转到图15,根据本发明的优选实施例示出虚拟适配器等级管理方法。在该方法中,物理或者虚拟主机创建一个或者多个虚拟适配器(例如,虚拟适配器1514),每一个包含在物理适配器(例如,PCI适配器1532)的范围内的资源集。每一个虚拟适配器与主机侧系统映像相关联。虚拟适配器包含物理适配器的资源集(或者虚拟化的或者分区的)。通过限定虚拟适配器实体,通过指导对相应的虚拟适配器的操作,可以联合地操作与系统映像相关联的所有虚拟资源。例如,通过执行将相应的虚拟适配器作为目标的功能,可以创建、破坏和修改虚拟适配器(以及,所有包含的虚拟资源)。另外,虚拟适配器管理方法允许虚拟适配器的所有资源用与虚拟适配器相关联的单个标识符(例如,总线号、装置号和功能号)识别。与虚拟适配器1514相关联的资源集可以包括,例如处理队列和关联资源1504;用于在PCI物理适配器1532上包含的一个或者多个适配器PCI端口1528的适配器PCI端口1528;与在适配器PCI端口1528上的一个可能的地址相关联的PCI虚拟端口1506;用于每一个下游物理端口的一个或者多个下游物理端口1518和1522;与在物理端口1518和1522上的一个可能的地址相关联的下游虚拟端口1508和1510;以及一个或者多个地址转换和保护表格(ATPT)1512。如本文所指的虚拟端口包括帮助从输入/输出适配器的一个或者多个资源接收数据、并发送数据给输入/输出适配器的一个或者多个资源的软件实体。虚拟端口与在输入/输出适配器上部署的端口相关联或者被映射到其上。例如,虚拟端口可以与适配器PCI端口相关联,通过该适配器PCI端口所述输入/输出适配器与连接到外围或者网络的适配器上的主机或者物理端口连接。虚拟端口具有关联标识符(例如,地址、指针)或者用于引用所述虚拟适配器的另一合适的标识符。单个端口,例如,在输入/输出适配器上的PCI端口或者物理端口可以具有多个与其相关联的虚拟端口。另外,虚拟端口优选配置成表现其所映射的物理端口的一种或者多种特性。现在转到图16,根据本发明的优选实施例示出用于修改与数据处理系统中的虚拟适配器相关的资源的属性的虚拟适配器资源修改程序,该数据处理系统使用图15所述的虚拟适配器管理方法。通过调用修改现有的虚拟适配器的属性来开始虛拟适配器资源修改例程(步骤1700)。例如,可以通过用户管理接口或者自动脚本/工作流来调用修改虚拟适配器的属性的请求。表A包含可接受修改请求的各种虚拟适配器属性的例子。表A<table>tableseeoriginaldocumentpage30</column></row><table>LPAR管理器直接或者通过另一合适的中介物使用物理适配器的内存管理接口(即,用于虚拟适配器配置管理的内存映射1/0地址)来请求物理适配器修改现有的虚拟适配器的属性(步骤1708)。物理适配器检查以了解为所修改的虚拟适配器请求的资源的数目是否超过可用资源(步骤1724)。如果物理适配器的确没有充足的资源来完成修改请求,则以终止代码产生错误,该终止代码叙述它没有足够的资源(步骤1725)并且虚拟适配器资源修改例程存在(步骤1736)。或者,LPAR管理器,而不是物理适配器,可以检查以确定物理适配器在请求物理适配器修改虚拟适配器资源之前是否具有足以修改虚拟适配器资源的资源。再次返回到步骤1724,如果物理适配器的确具有足够的资源来完成请求,则它检查以了解该请求是否是修改当前占用的资源的请求(步骤1726)。如果该请求没有影响当前占用的资源,则物理适配器继续修改虚拟适配器的资源属性(步骤1732)。如果在步骤1726中确定该请求影响占用的资源,则PCI物理适配器启动定时器以等待静态点到达(步骤1728),静态点即是再也没有使用下游接口和上游接口上未完成的虚拟适配器资源修改请求所作为目标的资源的操作时。然后,物理适配器评估在到时之外是否到达静态点(步骤1730)。如果物理适配器在定时器到时之前到达静态点,则它继续根据步骤1732修改虚拟适配器的属性。否则,虚拟适配器资源修改例程产生显示物理适配器忙碌并且不能完成请求的错误(步骤1731),并且该例程继续根据步骤1736退出。在物理适配器修改现有的虚拟适配器的属性并完成请求时,物理适配器产生返回消息,该返回消息传送到LPAR管理器(步骤1734)。表B示出在成功地修改虚拟适配器资源属性时可以传送到LPAR管理器的范例的属性信息。31表B<table>tableseeoriginaldocumentpage32</column></row><table>一旦将返回消息传送给LPAR管理器,根据步骤1736退出虚拟适配器资源修改例程。权利要求1.一种用于修改在逻辑分区数据处理系统中的资源的方法,该方法包括以下步骤调用一请求以修改与在物理适配器上分配的虚拟适配器相关联的资源,其中所述资源包括一个物理适配器资源子集;将所述请求传送给所述物理适配器;以及响应于由所述物理适配器接收所述请求,修改分配给所述物理适配器上的所述虚拟适配器的所述资源。2.根据权利要求1所述的方法,其中通过与逻辑分区管理器相连接的用户管理接口执行所述调用步骤。3.根据权利要求l所述的方法,其中所述传送步骤还包括通过与所述物理适配器连接的逻辑分区管理器,请求所述物理适配器通过所述物理适配器的内存管理接口修改所述虚拟适配器的所述资源。4.根据权利要求1所述的方法,其中所述物理适配器包括外围部件互连系列适配器。5.根据权利要求l所述的方法,还包括评估与所述虚拟适配器相关联的现有资源是否足以满足所述请求。6.根据权利要求l所述的方法,还包括响应于确定与所述虚拟适配器相关联的所述资源可包含在所述现有的资源内,启动定时器。7.根据权利要求6所述的方法,还包括评估在所述定时器到时之前是否到达静态点。8.根据权利要求7所述的方法,其中响应于到达所述静态点,进行修改所述资源。9.根据权利要求l所述的方法,还包括将返回消息传送给逻辑分区管理器,其显示已修改的虚拟适配器资源的属性。10.根据权利要求l所述的方法,其中所述虚拟适配器具有包括总线号、装置号和功能号的关联标识符,并且所述请求通过参考所述标识符来指定所述虚拟适配器。11.一种用于修改逻辑分区数据处理系统中的资源的计算机程序产品,该计算机程序产品包括第一指令,其调用一请求以修改与分配在物理适配器上的虚拟适配器相关联的资源;笫二指令,其传送所述请求给所述物理适配器;以及第三指令,其响应于由所述物理适配器接收所述请求而修改分配在所述物理适配器上的所述虚拟适配器的所述资源。12.根据权利要求ll所述的计算机程序产品,还包括第四指令,其通过与逻辑分区管理器相连接的用户管理接口调用所述请求;13.根据权利要求ll所述的计算机程序产品,还包括第四指令,其评估与所述虚拟适配器相关联的所述资源是否可包含在现有资源内。14.根据权利要求13所述的计算机程序产品,还包括第五指令,其响应于确定与所述虚拟适配器相关联的所述资源可以包含在所述现有资源内的所述第四指令,而启动定时器。15.根据权利要求14所述的计算机程序产品,还包括第六指令,其评估在所述定时器到时之前是否到达所述静态点。16.根据权利要求15所述的计算机程序产品,其中所述第三指令响应于确定在所述定时器到时之前到达所述静态点的所述第六指令而修改所述资源。17.根据权利要求ll所述的计算机程序产品,还包括第四指令,其传送返回消息给逻辑分区管理器,其显示已修改的所述资源的属性。18.根据权利要求11所述的计算机程序产品,所述虚拟适配器具有包括总线号、装置号和功能号的关联标识符,并且所述请求通过参考所述标识符来指定所述虚拟适配器。19.一种适合修改虚拟适配器资源的逻辑分区数据处理系统,包括物理适配器,其具有多个被分配的虚拟适配器,其中每一个虚拟适配器具有所分配给它的、所述物理适配器的资源的相应子集;内存,其包含多个系统映像,每一个系统映像分别与所述多个虚拟适配器之一相关联;存储器,其包含作为指令集的逻辑分区管理器;以及处理器,响应于所述指令的执行,该处理器产生修改分配给所述多个虚拟适配器中的一个虚拟适配器的资源的子集的请求,并且传输所述请求给所述物理适配器,其中所述物理适配器响应于接收所述请求而修改分配给所述虚拟适配器的资源的子集。20.根据权利要求19所述的数据处理系统,其中所述存储器包括系统固件。21.根据权利要求19所述的数据处理系统,其中所述物理适配器包括外围部件互连系列适配器。22.根据权利要求19所述的数据处理系统,其中所述物理适配器传送返回消息给所述存储器,其指定已修改的所述资源的子集的属性。23.才艮据权利要求19所述的数据处理系统,其中所述虚拟适配器具有包括总线号、装置号和功能号的关联标识符,并且所述请求通过参考所述标识符来指定所述虚拟适配器。全文摘要本发明提供用于修改逻辑分区数据处理系统中的资源的机制。调用一请求以修改与分配在物理适配器上的虚拟适配器相关资源。与虚拟适配器相关的资源包括物理适配器资源的子集。将修改物理适配器的请求传送给物理适配器。响应于通过物理适配器接收请求,物理适配器修改分配给虚拟适配器的资源。文档编号G06F9/455GK101124541SQ200680005122公开日2008年2月13日申请日期2006年2月22日优先权日2005年2月25日发明者利赫·沙利夫,加亚·斯里克里什南,吉奥拉·比兰,哈维·G.·基埃尔,帕特里克·A.·巴克兰德,理查德·L.·阿恩德特,瓦蒂姆·马克赫尔瓦克斯,雷纳多·J.·雷西奥申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1