專利名稱:在支持虛擬適配器的物理適配器上的虛擬適配器解構(gòu)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明總體來說涉及在主機和輸入/輸出(I/O)適配器之間的通信協(xié)議。更具體地說,本發(fā)明提供一種用于對在物理i/o適配器上的 資源進行虛擬化的技術(shù)實現(xiàn)。尤其,本發(fā)明提供一種機制,通過該機制,單個物理I/0適配器,例如,PCI、 PCI-X或者PCI-E適配器, 可以破壞與駐留在物理適配器內(nèi)的一個或者多個虛擬適配器相關(guān)聯(lián)的資源。
背景技術(shù):
虛擬化就是為真實資源產(chǎn)生替代物。替代物與其真實的對等物具 有相同的功能和外部接口,但是在諸如尺寸、性能和成本之類的屬性 上不同。這些替代物是虛擬資源,而且它們的用戶通常不知道替代物 的存在。服務器使用兩種基本方法來對系統(tǒng)資源進行虛擬化分區(qū)和 邏輯分區(qū)(LPAR)管理器。分區(qū)產(chǎn)生虛擬服務器,作為物理服務器 資源的一部分,通常在粗粒的(例如,物理)分配單元(例如,整個 處理器及其關(guān)聯(lián)內(nèi)存和I/0適配器)。LPAR管理器是軟件或者固件 元件,其能夠?qū)⑺械姆掌髻Y源細粒度地(例如,以單個物理資源 的小部分)虛擬化。在常規(guī)數(shù)據(jù)處理系統(tǒng)中,支持虛擬化的服務器具有兩種選擇方案 用于處理I/O.第一種選擇不允許在虛擬服務器之間共享單個物理I/O 適配器。第二種選擇是在LPAR管理器或另 一個中介物中增加功能, 從而提供允許多個操作系統(tǒng)共享單個物理適配器所必要的隔離。第一種選擇存在幾個問題。 一個突出的問題是,昂貴的適配器不 能在虛擬服務器之間共享。如果虛擬服務器只需要使用昂貴的適配器 的一部分,那么整個適配器將專門用于這個服務器。隨著在物理服務
器上的虛擬服務器的數(shù)目增加,這樣導致適配器的利用不足,更重要 的是,導致更昂貴的解決方案,因為每個虛擬服務器需要專門用于其 上的物理適配器。對于支持許多虛擬服務器的物理服務器,這種選擇 的另一個突出的問題是,其需要多個適配器插槽,其中,所有的附屬 硬件(例如,芯片、連接器、線纜等)要求把這些適配器連接到物理 服務器。盡管第二種選擇提供在虛擬服務器之間共享適配器的機制,但是該機制必須在每個I/O事務中被調(diào)用和執(zhí)行。由LPAR管理器或其它 中介物在每個I/O事務中調(diào)用和執(zhí)行所述共享機制會降低性能。還會 導致更昂貴的解決方案,因為客戶必須購買更多的硬件,以便補償用 來實現(xiàn)所述共享機制的周期,或者,如果共享機制卸栽到了中介物中, 則用來補償所述中介物硬件.有益的是具有改進的方法、設備和計算機指令,用來直接破壞與 駐留于物理適配器(例如,PCI、 PCI-X或PCI-E適配器)中的一個 或多個虛擬適配器相關(guān)聯(lián)的資源。此外,有益的是使所述機制應用于 下述器件以太網(wǎng)NIC (網(wǎng)絡接口控制器)、FC (光纖通道)、HBA (主機總線適配器)、pSCSI(并行SCSI) 、 HBA、 InfiniBand、 TCP/IP 減負引擎、支持RDMA (遠程直接內(nèi)存訪問)的NIC (網(wǎng)M口控制 器)、iSCSI適配器、iSER (用于RDMA的iSCSI擴展)以及支持 內(nèi)存映射的1/0接口的任何其它類型的適配器。發(fā)明內(nèi)容本發(fā)明提供用于直接破壞與駐留于物理適配器(例如,PCI、 PCI-X或者PCI-E適配器)內(nèi)的一個或者多個虛擬適配器相關(guān)聯(lián)的資 源的方法、計算機程序產(chǎn)品和分布數(shù)據(jù)處理系統(tǒng)。具體來說,本發(fā)明 涉及用于共享常規(guī)的PCI (外圍部件互連)I/O適配器、PCI-X I/O適 配器、PCI-Express I/O適配器、以及( 一般來說)使用內(nèi)存映射I/O接口用于主機與適配器通信的任何i/o適配器。提供一機制,以便直接破壞與駐留于物理適配器(例如,PCI、 PCI-X或PCI-E適配器)
中的一個或者多個虛擬適配器相關(guān)聯(lián)的資源。另外,每一個虛擬適配 器具有一組相關(guān)的主機側(cè)資源(例如,內(nèi)存地址和中斷等級)和適配 器側(cè)資源(例如,適配器內(nèi)存地址和處理隊列),并且每一個虛擬適 配器隔離訪問屬于另一虛擬適配器或者物理適配器的主機側(cè)資源和 適配器資源。
現(xiàn)在僅僅以舉例的方式參照附圖描述本發(fā)明,其中圖l是根據(jù)本發(fā)明的優(yōu)選實施例示出的分布計算機系統(tǒng)的視圖;圖2是根據(jù)本發(fā)明的優(yōu)選實施例的小主機處理器節(jié)點的功能框圖;圖3是根據(jù)本發(fā)明的優(yōu)選實施例的小集成主機處理器節(jié)點的功能框圖;圖4是根據(jù)本發(fā)明的優(yōu)選實施例的大主機處理器節(jié)點的功能框圖;圖5是根據(jù)本發(fā)明的優(yōu)選實施例示出并行外圍計算機接口 ( PC1) 總線協(xié)議的元件的視圖;圖6是根據(jù)本發(fā)明的優(yōu)選實施例示出串聯(lián)PCI總線協(xié)議 (PCI-Express或者PCI-E)的元件的視圖;圖7是根據(jù)本發(fā)明的優(yōu)選實施例示出為了提供虛擬主機訪問隔 離而設置在主機處理器節(jié)點中的I/O虛擬化功能的視圖;圖8是根據(jù)本發(fā)明的優(yōu)選實施例示出用于PCI總線事務以識別 虛擬適配器或者系統(tǒng)映像的控制場的視圖;圖9是示出根據(jù)本發(fā)明的優(yōu)選實施例必須被虛擬化的適配器資 源的視圖,以允許適配器直接訪問虛擬主機資源;虛擬主機直接訪 問適配器資源;以及適配器上的非PCI端口訪問適配器或者主機上的 資源;圖10是根據(jù)本發(fā)明的優(yōu)選實施例示出支持I/O虛擬化的用于管 理PCI系列適配器的三個訪問控制等級的形成的視圖11是示出根據(jù)本發(fā)明的優(yōu)選實施例如何通過邏輯分區(qū)管理器 使與系統(tǒng)映像相關(guān)聯(lián)的虛擬適配器可以使用與系統(tǒng)映像相關(guān)聯(lián)的主機內(nèi)存的視圖12是示出根據(jù)本發(fā)明的優(yōu)選實施例PCI系列適配器如何允 許邏輯分區(qū)管理器將PCI適配器中的內(nèi)存和系統(tǒng)映像及其關(guān)聯(lián)虛擬 適配器相關(guān)聯(lián)的視圖13是才艮據(jù)本發(fā)明的優(yōu)選實施例示出用于確定與輸入內(nèi)存地址 相關(guān)聯(lián)的虛擬適配器的一種選擇方案的視圖14是根據(jù)本發(fā)明的優(yōu)選實施例示出用于確定與PCI-X或者 PCI-E總線事務相關(guān)聯(lián)的虛擬適配器的一種選擇方案的視圖15是根據(jù)本發(fā)明的優(yōu)選實施例示出用于對適配器資源進行虛 擬化的虛擬適配器管理方法的視圖;以及
圖16是概述根據(jù)本發(fā)明的優(yōu)選實施例的通過圖15所述的虛擬適 配器管理方法解構(gòu)現(xiàn)有的虛擬適配器的范例操作的流程圖.
具體實施例方式
本發(fā)明適用于使用PCI系列I/O適配器直接連接存儲裝置或者 連接網(wǎng)絡的任何普通或者特殊的目的主機,其中,網(wǎng)絡由終端節(jié)點、 交換機、路由器和互連這些部件的鏈路組成。網(wǎng)絡鏈路可以是,例如, 光纖通道、以太網(wǎng)、InfiniBand、先進交換互連、或者使用專用協(xié)議 或者標準協(xié)議的專用鏈路,雖然本發(fā)明的實施例示出和描述為利用外 圍部件互連(PCI)系列適配器,但是,本發(fā)明的實施方式并不局限 于這種結(jié)構(gòu),如本領(lǐng)域技術(shù)人員所顯而易見的那樣。本發(fā)明的教導可 以在支持內(nèi)存映射輸入/輸出(MMIO)接口 (例如,但不限于, HyperTransport、 Rapid I/O、專用MMIO接口 )的任何物理適配器 或者現(xiàn)在已知的或稍后開發(fā)的具有MMIO接口的其他適配器上實施。 為了幫助理解本發(fā)明的范例目的,提供利用PCI系列適配器的本發(fā)明 的實施方式。
現(xiàn)在參照附圖,尤其,參照圖l,根據(jù)本發(fā)明的優(yōu)選實施例示出分布計算機系統(tǒng)的視圖。圖1所示的分布計算機系統(tǒng)采用網(wǎng)絡例如網(wǎng)絡120的形式,并且僅僅為了范例的目的,提供該分布計算機系統(tǒng), 可以在很多其它類型和結(jié)構(gòu)的計算機系統(tǒng)上實施下面所述的本發(fā)明的實施例。兩個交換機(或者路由器),即,交換機116和交換機140, 示出在網(wǎng)絡120內(nèi)。交換機116通過端口 112連接小主機節(jié)點100。 小主機節(jié)點IOO也包含第二類端口 104,該第二類端口連接直接連接 存儲子系統(tǒng),例如,直接連接存儲器108。網(wǎng)絡120也可以通過端口 136連接大主機節(jié)點124,該端口 136 連接交換機140,大主機節(jié)點124也可以包含第二類端口 128,該第 二類端口 128連接直接連接存儲子系統(tǒng),例如,直接連接存儲器132。網(wǎng)絡120也可以連接小集成主機節(jié)點144,該小集成主機節(jié)點144 通過連接交換機140的端口 148連接網(wǎng)絡120。小集成主機節(jié)點144 也可以包含第二類端口 152,該第二類端口 152連接直接連接存儲子 系統(tǒng),例如,直接連接存儲器156,現(xiàn)在轉(zhuǎn)到圖2,根據(jù)本發(fā)明的優(yōu)選實施例示出小主機節(jié)點的功能 框圖。小主機節(jié)點202是主機處理器節(jié)點的例子,例如,圖l所示的 小主機節(jié)點100。在該例子中,圖2所示的小主機節(jié)點202包括通過鏈路201互連 的兩個處理器I/O層次,例如,處理器I/O層次200和203.在圖2 的范例例子中,處理器I/0層次200包括處理器芯片207,該處理器 芯片207包括一個或者多個處理器及其相關(guān)高速緩沖器,處理器芯片 207通過鏈路208連接存儲器212,在處理器芯片上的一個鏈路(例 如,鏈路220 )連接PCI系列I/O橋228. PCI系列I/O橋228具有 一個或者多個PCI系列(PCI、 PCI-X、 PCI-Express或者任何下一代 PCI)鏈路,用來通過PCI鏈路(例如,鏈路232、 236和240)連接 其它PCI系列1/0橋或者PC1系列1/0適配器,例如,PCI系列適配 器244和PCI系列適配器245。 PCI系列適配器245也可以用來通過 經(jīng)由交換機或者路由器(例如,交換機或者路由器260)的鏈路與網(wǎng) 絡(例如,網(wǎng)絡264)連接。PCI系列適配器244可以用來通過鏈路248與直接連接存儲器連接,例如,直接連接存儲器252。可以用與 就處理器I/O層次200所示出和描述的方式相似的方式構(gòu)造處理器 I/O層次203?,F(xiàn)在參照圖3,根據(jù)本發(fā)明的優(yōu)選實施例示出小集成主機節(jié)點的 功能框圖。小集成主機節(jié)點302是主機處理器節(jié)點的例子,例如,圖 1所述的小集成主機節(jié)點144。在該實例中,小集成主機節(jié)點302包括兩個處理器I/0層次300 和303,這兩個處理器I/O層次300和303通過鏈路301互連。在所 圖示的實例中,處理器I/0層次300包括處理器芯片304,該處理器 芯片304代表一個或者多個處理器和關(guān)聯(lián)高速緩沖器。處理器芯片304 通過鏈路308連接存儲器312。在處理器芯片上的一個鏈路,例如鏈 路330,連接PCI系列適配器,例如,PCI系列適配器345。處理器 芯片304具有一個或者多個PCI系列(即,PCI、 PCI-X、 PCI-Express 或者任何下一代PCI)鏈路,其用來通過PCI鏈路(例如,鏈路316、 330和324 )連接PCI系列I/O橋或者PCI系列I/O適配器,例如, PCI系列適配器344和PCI系列適配器345。 PCI系列適配器345也 可以用來通過經(jīng)由交換機或者路由器(例如,交換機或者路由器360 ) 的鏈路與網(wǎng)絡(例如,網(wǎng)絡364)連接。PCI系列適配器344可以用 來通過鏈路348與直接連接存儲器352連接?,F(xiàn)在轉(zhuǎn)到圖4,根據(jù)本發(fā)明的優(yōu)選實施例示出大主機節(jié)點的功能 框圖,大主機節(jié)點402是主機處理器節(jié)點的例子,例如,圖l所示的 大主機節(jié)點124。在該實例中,大集成主機節(jié)點402包括兩個處理器I/0層次400 和403,這兩個處理器I/O層次400和403通過鏈路401互連,在圖 4所示的實例中,處理器I/O層次400包括處理器芯片404,該處理 器芯片404代表一個或者多個處理器和關(guān)聯(lián)高速緩沖器。處理器芯片 404通過鏈路408連接存儲器412。在處理器芯片上的一個鏈路,例 如鏈路440,連接PCI系列I/O集線器,例如,PCI系列I/O集線器 441。PCI系列I/O集線器使用網(wǎng)絡442連接PCI系列1/0橋448。即,PCI系列I/O橋448通過鏈路432連接交換機或者路由器436,并且, 交換機或者路由器436通過鏈路443連接PCI系列I/O集線器441。 網(wǎng)絡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也可以用來通過經(jīng)由例如交換機或者路由器 472的鏈路468與網(wǎng)絡464連接,接下來轉(zhuǎn)到圖5,根據(jù)本發(fā)明的優(yōu)選實施例示出對包含在PCI 總線事務500和PCI-X總線事務520中的各階段的圖例.PCI總線事 務500描述形成通過用于常規(guī)PCI的PCI結(jié)構(gòu)傳輸?shù)男畔卧某?規(guī)PCI總線事務。PCI-X總線事務520描述形成通過用于PCI-X的 PCI結(jié)構(gòu)傳輸?shù)男畔卧腜CI-X總線事務。PCI總線事務500顯示三個階段地址階段508;數(shù)據(jù)階段512; 以及周轉(zhuǎn)循環(huán)516。此外所示出的是對下一個傳輸504的仲裁,其可 以與地址階段、數(shù)據(jù)階段和周轉(zhuǎn)階段同時發(fā)生。對于PCI,使用包含 在地址階段中的地址來將總線事務從適配器發(fā)送到主機以及從主機 發(fā)送到適配器。PCI-X事務520顯示五個階段地址階段528;屬性階段532; 響應階段560;數(shù)據(jù)階段564和周轉(zhuǎn)循環(huán)566。此外所示出的是對下 一個傳輸524的仲裁,其可以與地址階段、屬性階段、響應階段、數(shù) 據(jù)階段和周轉(zhuǎn)循環(huán)階段同時發(fā)生。與常規(guī)PCI相似,PCI-X使用包含 在地址階段中的地址來將總線事務從適配器發(fā)送到主機以及從主機 發(fā)送到適配器。但是,PCI-X增加屬性階段532,該屬性階段532包 含限定總線事務請求者的三個字段,即請求者總線號544、請求者 裝置號548和請求者功能號552 (在本文總稱為BDF).總線事務還 包含標記540,該標記相對于在請求者和響應者之間未完成的其它總
線事務唯一地識別該特定總線事務。字節(jié)計數(shù)556包含對正發(fā)送的字 節(jié)的數(shù)目的計數(shù)。現(xiàn)在轉(zhuǎn)到圖6,根據(jù)本發(fā)明的優(yōu)選實施例示出包含在 PCI-Express總線事務中的各個階段的圖例。PCI-E總線事務600形 成通過用于PCI-E的PCI結(jié)構(gòu)傳輸?shù)男畔卧CI-E總線事務600顯示六個階段幀階段608;序列號612; 報頭664;數(shù)據(jù)階段668;循環(huán)冗余檢查(CRC )672;以及幀階段680。 PCI-E報頭664包含在PCI-Express規(guī)格中定義的一組字段。請求者 標識符(ID)字段628包含限定總線事務請求者的三個字段,即請 求者總線號684、請求者裝置號688和請求者功能號692。 PCI-E報 頭還包含標記652,該標記相對于在請求者和響應者之間未完成的其 它總線事務唯一地識別該特定總線事務。長度字段644包含對正發(fā)送 的字節(jié)的數(shù)目的計數(shù)?,F(xiàn)在參照圖7,根據(jù)本發(fā)明的優(yōu)選實施例示出PCI適配器(例如, PCI系列適配器736)以及在主機硬件(例如,可以具有I/O集線器 或者I/O橋的處理器)(例如,主機硬件700 )上運行的固件和軟件。圖7還示出在主機硬件700上運行的邏輯分區(qū)(LPAR)管理器 708。 LPAR管理器708可以實施為由美國紐約市的International Business Machines, Inc. of Armonk制造的Hypervisor。 LPAR管理器 708可以在固件、軟件或者二者的組合上運行。LPAR管理器708宿 主兩個系統(tǒng)映像(SI)分區(qū),例如,系統(tǒng)映像712和系統(tǒng)映像724 (示 例性地指定系統(tǒng)映像1和系統(tǒng)映像2).該系統(tǒng)映像分區(qū)可以是在軟 件上運行的各自操作系統(tǒng)、在軟件上運行的特殊目的映像(例如,存 儲塊服務器或者存儲文件服務器映像)、或者在固件上運行的特殊目 的映像。在這些系統(tǒng)映像上可以運行應用程序,例如,應用程序716、 720、 728和732 (示例性地指定應用程序IA、應用程序2、應用程序 1B和應用程序3).應用程序716和728代表公共應用程序的單獨的 例子,因此,用相應的標號"IA"和"IB"示例性地指定.在所圖示的實 例中,應用程序716和720在系統(tǒng)映像712上運行,應用程序728和 732在系統(tǒng)映像724上運行。如本文所指,虛擬主機包括系統(tǒng)映像(例 如,系統(tǒng)映像712)或者在系統(tǒng)映像中運行的系統(tǒng)映像和應用程序的 組合。因此,在圖7中示出兩個虛擬主機。PCI系列適配器736包含一組物理適配器配置資源740和物理適 配器內(nèi)存資源744。物理適配器配置資源740和物理適配器內(nèi)存資源 744包含描述PCI系列適配器736可以支持的虛擬適配器的數(shù)目和分 配給每一個虛擬適配器的物理資源的信息。如本文所指,虛擬適配器 是與邏輯分區(qū)(例如,系統(tǒng)映像712和在系統(tǒng)映像712上運行的應用 程序716及720)相關(guān)聯(lián)的物理適配器資源的子集(例如,物理適配 器資源和物理適配器內(nèi)存的子集)的分配。給LPAR管理器708提供 物理配置資源接口 738和物理內(nèi)存配置接口 742,以在適配器的初始 配置和重配置期間讀入和寫入物理適配器配置資源和內(nèi)存空間。通過 物理配置資源接口 738和物理配置內(nèi)存接口 742, LPAR管理器708 創(chuàng)建虛擬適配器,并且分配物理資源^ :一個虛擬適配器。LPAR管 理器708可以使用一個系統(tǒng)映像(例如,特殊軟件或者固件分區(qū))作 為主機分區(qū),該主機分區(qū)使用物理配置資源接口 738和物理配置內(nèi)存 接口 742,以執(zhí)行虛擬適配器初始配置和重配置功能的一部分或者甚 至全部。圖7示出配置有兩個虛擬適配器的PCI系列適配器736的配置。 笫一虛擬適配器(指定的虛擬適配器1)包括通過與系統(tǒng)映像712 (指 定的系統(tǒng)映像l)相關(guān)聯(lián)的LPAR管理器708分配的虛擬適配器資源 748和虛擬適配器內(nèi)存752.類似地,第二虛擬適配器(指定的虛擬 適配器2 )包括通過LPAR管理器708分配給虛擬適配器2并與另一 系統(tǒng)映像724 (指定的系統(tǒng)映像2)相關(guān)聯(lián)的虛擬適配器756和虛擬 適配器內(nèi)存760.關(guān)于用于連接一個直接連接存儲器(例如,圖l所 示的直接連接存儲器108、 132或者156)的適配器,虛擬適配器資源 的例子可以包括 一關(guān)聯(lián)物理盤列表、 一關(guān)聯(lián)邏輯單元號列表和一關(guān) 聯(lián)適配器功能列表(例如,不昂貴磁盤冗余陣列(RAID)級別). 關(guān)于用于連接網(wǎng)絡(例如,圖1的網(wǎng)絡120)的適配器,虛擬適配器
資源的例子可以包括 一關(guān)聯(lián)鏈路級別標識符列表、 一關(guān)聯(lián)網(wǎng)絡級別 標識符列表、 一關(guān)聯(lián)虛擬結(jié)構(gòu)標識符列表(例如,用于以太網(wǎng)結(jié)構(gòu)的 虛擬LAN ID、用于光纖通道結(jié)構(gòu)的N-端口 ID和用于InfiniBand結(jié) 構(gòu)的區(qū)分鍵)、和一關(guān)聯(lián)網(wǎng)絡層功能列表(例如,網(wǎng)絡卸載服務)。在LPAR管理器708配置PCI系列適配器736之后,允許每一 個系統(tǒng)映4象僅僅與通過LPAR管理器708同該系統(tǒng)映4象相關(guān)聯(lián)的虛擬 適配器通信。如圖7 (實線)所示,允許系統(tǒng)映像712與虛擬適配器 1的虛擬適配器資源748和虛擬適配器內(nèi)存752直接通信。不允許系 統(tǒng)映像712與如圖7的虛線所示的虛擬適配器2的虛擬適配器資源756 和虛擬適配器內(nèi)存760直接通信。類似地,允許系統(tǒng)映像724與虛擬 適配器2的虛擬適配器資源756和虛擬適配器內(nèi)存760直接通信,不 允許系統(tǒng)映像724與虛擬適配器1的虛擬適配器資源748和虛擬適配 器內(nèi)存752直接通信?,F(xiàn)在參照圖8,根據(jù)本發(fā)明的優(yōu)選實施例示出在主機節(jié)點(例如, 圖1所示的小主機節(jié)點100、大主機節(jié)點124或者小集成的主機節(jié)點 144)內(nèi)的部件(例如,處理器、1/0集線器或者1/0橋800)的圖例, 所述主機節(jié)點通過PCI-X或者PCI-E鏈路(例如,PCI-X或者PCI-E 鏈路808)連接PCI系列適配器,例如,PCI系列適配器804。圖8示出在系統(tǒng)映像(例如,系統(tǒng)映像712或者724 )或者LPAR 管理器708執(zhí)行PCI-X或者PCI-E總線事務(例如,主機至適配器 PCI-X或者PCI-E總線亊務812)時,處理器、1/0集線器、或者連 接PCI-X或者PCI-E鏈路808的I/O橋800填入總線號、裝置號和在 PCI-X或者PCI-E總線事務中的功能號字段,所述鏈路發(fā)送主機至適 配器PCI-X或者PCI-E總線亊務812。處理器、I/O集線器、或者I/O 橋具有兩個選擇方案用于如何填入這三個字段對于使用處理器、I/O 集線器、或者i/o橋的所有軟件部件,可以使用相同的總線號、裝置 號和功能號;或者,對于使用處理器、1/0集線器、或者I/0橋的每 一個軟件部件,可以使用不同的總線號、裝置號和功能號。該亊務的 發(fā)起者可以是軟件部件,例如,系統(tǒng)映像712或者系統(tǒng)映像724 (或
者,在系統(tǒng)映像上運行的應用程序),或者可以是LPAR管理器708。 如果對于所有的事務發(fā)起者,處理器、I/O集線器或者I/O橋800 使用相同的總線號、裝置號和功能號,則在軟件部件發(fā)起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總線事務所作為目標的物理適配器或者虛擬適配器內(nèi)存 地址置于PCI-X或者PCI-E總線事務中,如圖8中的適配器資源或 者地址816字段所示。如果對于每一個事務發(fā)起者,處理器、I/O集線器或者I/O橋800 使用不同的總線號、裝置號和功能號,則處理器、1/0集線器或者I/0 橋800分配總線號、裝置號和功能號給事務發(fā)起者.當軟件部件發(fā)起 PCI-X或者PCI-E總線亊務(例如,主機至適配器PCI-X或者PCI-E 總線亊務812 )時,處理器、I/O集線器或者I/O橋800將軟件部件的 總線號置于PCI-X或者PCI-E總線事務的請求者總線號820字段, 例如,圖5所示的請求者總線號544字段或者圖6所示的請求者總線 號684字段。類似地,處理器、1/O集線器或者I/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 總線事務所作為目標的物理適配器或者虛擬適配器內(nèi)存地址置于 PCI-X或者PCI-E總線事務中,如圖8中的適配器資源或者地址816 字段所示。圖8還示出,當物理適配器或者虛擬適配器806執(zhí)行PCI-X或 者PCI-E總線事務(例如,適配器至主機PCI-X或者PCI-E總線亊 務832 )時,連接PCI-X或者PCI-E鏈路808的PCI系列適配器(例 如,物理系列適配器804)將與發(fā)起總線事務的物理適配器或者虛擬 適配器相關(guān)聯(lián)的總線號、裝置號和功能號置于請求者總線號、裝置號 和功能號836, 840和844字段。顯著地,為了支持一個以上的總線 號或者裝置號,PCI系列適配器804必須支持一個或者多個內(nèi)部總線 (對于PCI-X適配器,參見PCI-X附錄至PCI局部總線規(guī)格l.O或 者1.0a版;對于PCI-E適配器,參見PCI-Express基礎(chǔ)規(guī)格1.0或 者l.Oa版,其細節(jié)以引用方式并入本文中)。為了執(zhí)行該功能,LPAR 管理器708通過分配總線號、裝置號和功能號給物理適配器或者虛擬 適配器來將每一個物理適配器或者虛擬適配器與軟件部件相關(guān)聯(lián)。當 物理適配器或者虛擬適配器發(fā)起適配器至主機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也將通過物理適配器或者虛擬適配器所關(guān)聯(lián)并作為目標的 軟件部件的內(nèi)存地址置于PCI-X或者PCI-E總線事務中的主機資源 或者地址848字段。現(xiàn)在參照圖9,示出根據(jù)本發(fā)明的優(yōu)選實施例描述的具有兩個虛 擬適配器的PCI適配器的功能框圖。范例的PCI系列適配器900配 置有兩個虛擬適配器916和920 (示例性地指定虛擬適配器1和虛擬 適配器2) . PCI系列適配器900可以包含一個(或者多個)PCI系 列適配器端口 (在本文中也稱為上游端口 ),例如,PCI-X或者PCI-E 適配器端口 912。 PCI系列適配器900也可以包含一個(或者多個) 裝置或者網(wǎng)絡端口 (在本文中也稱為下游端口 ),例如,物理端口 904 和物理端口 908。圖9也示出在PCI適配器上可以虛擬化的資源類型。可以虛擬 化的PCI系列適配器900的資源包括處理隊列、地址和配置內(nèi)存、PCI 端口、主機內(nèi)存管理資源和裝置或者網(wǎng)絡端口。在所圖示的實例中, 分配給虛擬適配器916的PCI系列適配器900的虛擬化資源包括,例 如,處理隊列924、地址和配置內(nèi)存928、 PCI虛擬端口 936、主機內(nèi) 存管理資源984 (例如,InfiniBand或者iWARP上的內(nèi)存區(qū)域注冊 和內(nèi)存窗粘結(jié)資源)和虛擬裝置或者網(wǎng)絡端口,例如,虛擬外部端口 932和虛擬外部端口 934 (更通常稱為虛擬端口 )。類似地,分配給 虛擬適配器920的PCI系列適配器900的虛擬化資源包括,例如,處 理隊列940、地址和配置內(nèi)存944、 PCI虛擬端口 952、主機內(nèi)存管理 資源980和虛擬裝置或者網(wǎng)絡端口,例如,虛擬外部端口 948和虛擬 外部端口 950。接下來轉(zhuǎn)到圖10,根據(jù)本發(fā)明的優(yōu)選實施例示出在PCI系列適 配器(例如,圖9所示的PCI系列適配器900)上的訪問控制等級的 功能框圖。三個訪問等級是超特權(quán)物理資源分配等級IOOO、特權(quán)虛擬 資源分配等級1008和非特權(quán)等級1016。在超特權(quán)物理資源分配等級IOOO上執(zhí)行的功能包括,但不限于
PCI系列適配器詢問;創(chuàng)建、修改和刪除虛擬適配器;提交和檢索工 作;復位和恢復物理適配器;分配物理資源給虛擬適配器實例。PCI 系列適配器詢問用來確定(例如)物理適配器類型(例如,光纖通道、 以太網(wǎng)、iSCSI、并行SCSI)、在物理適配器上支持的功能和被PCI 系列適配器支持的虛擬適配器的數(shù)目。LPAR管理器,例如,圖7所 示的LPAR管理器708,執(zhí)行與超特權(quán)物理資源分配等級1000相關(guān) 聯(lián)的物理適配器資源管理1004功能。但是,LPAR管理器可以使用 系統(tǒng)映〗象,例如,1/0主機分區(qū),以執(zhí)行物理適配器資源管理1004功 能。在特權(quán)虛擬資源分配等級1008上執(zhí)行的功能包括,例如,虛擬 適配器詢問;分配和初始化虛擬適配器資源;通過虛擬適配器資源提 交和檢索工作;以及,對于支持卸栽服務的虛擬適配器,分配和指定 虛擬適配器資源給中間件處理和線程實例。虛擬適配器詢問用來確 定虛擬適配器類型(例如,光纖通道、以太網(wǎng)、iSCSI、并行SCSI) 和在虛擬適配器上支持的功能。系統(tǒng)映像,例如圖7所示的系統(tǒng)映像 712,執(zhí)行與虛擬資源分配等級1008相關(guān)聯(lián)的特權(quán)虛擬適配器資源管 理1012功能.最后,在非特權(quán)等級1016上執(zhí)行的功能包括,例如,詢問已指 定給在非特權(quán)等級1016上運行的軟件的虛擬適配器資源;以及通過 已指定給在非特權(quán)等級1016上運行的軟件的虛擬適配器資源提交和 檢索工作.應用程序,例如圖7所示的應用程序716,執(zhí)行與非特權(quán) 等級1016相關(guān)聯(lián)的虛擬適配器訪問庫1020功能.接下來轉(zhuǎn)到圖11,根據(jù)本發(fā)明的優(yōu)選實施例示出對PCI系列適 配器可用的主機內(nèi)存地址的功能框圖,PCI系列適配器1101是如上 面圖9所述的可以虛擬化資源的PCI系列適配器900的例子。圖ll描述四種不同的機制,通過這些機制,LPAR管理器708 可以將主機內(nèi)存與系統(tǒng)映像和虛擬適配器相關(guān)聯(lián)。 一旦主機內(nèi)存與系 統(tǒng)映像和虛擬適配器相關(guān)聯(lián),虛擬適配器就可以執(zhí)行DMA直接寫入 和讀入主機內(nèi)存的操作。系統(tǒng)映像1108和1116是系統(tǒng)映像的例子,
例如上面就圖7所述的系統(tǒng)映像712和724,分別與虛擬適配器1104 和1112相關(guān)聯(lián)。虛擬適配器1104和1112是虛擬適配器的例子,例 如上面就圖9所述的虛擬適配器916和920,包括虛擬適配器資源和 虛擬適配器內(nèi)存的各自分配。第一種范例機制,即,LPAR管理器708可以用來使主機內(nèi)存與 系統(tǒng)映像和一個或者多個虛擬適配器相關(guān)聯(lián)、并使主機內(nèi)存可用于系 統(tǒng)映像和一個或者多個虛擬適配器,將系統(tǒng)映像關(guān)聯(lián)列表1122寫入 虛擬適配器的資源。虛擬適配器資源1120包含一 PCI總線地址列表, 其中,在該列表中的每一個PCI總線地址通過硬件平臺與系統(tǒng)映像 (SI)頁(例如,分配給系統(tǒng)映像1108的SI 1第1頁1128到SI 1 第N頁1136)的起始地址相關(guān)聯(lián).虛擬適配器資源1120也包含頁尺 寸,對于該列表中的所有頁,頁尺寸相等。在起初配置時,并且,在 重配置的期間,LPAR管理器708將系統(tǒng)映像關(guān)聯(lián)列表1122裝入虛 擬適配器資源1120。系統(tǒng)映像關(guān)聯(lián)列表1122限定虛擬適配器1104可 以用于DMA讀寫操作的地址集。在創(chuàng)建系統(tǒng)映像關(guān)聯(lián)列表1122之后, 虛擬適配器1104必須驗證,通過系統(tǒng)映像1108請求的每一個DMA 寫或者DMA讀被包含在系統(tǒng)映像關(guān)聯(lián)列表1122中的頁內(nèi)。如果通過 系統(tǒng)映像1108請求的DMA寫或者DMA讀被包含在系統(tǒng)映像關(guān)聯(lián)列 表1122中的頁內(nèi),則虛擬適配器1104可以執(zhí)行操作。否則,禁止虛 擬適配器1104執(zhí)行操作?;蛘撸琍CI系列適配器1101可以使用特殊 的LPAR管理器式虛擬適配器(而不是虛擬適配器1104 )執(zhí)行檢測, 以確定通過系統(tǒng)映像1108請求的DMA寫或者DMA讀是否被包含在 系統(tǒng)映像關(guān)聯(lián)列表1122中的頁內(nèi)。以相似的方式,與系統(tǒng)映像1116 相關(guān)聯(lián)的虛擬適配器1112驗證通過系統(tǒng)映像1116提交的DMA寫或 讀請求。具體來說,虛擬適配器1112通過確定DMA寫或讀請求是否 在與系統(tǒng)映像1116的系統(tǒng)映像頁相關(guān)聯(lián)的系統(tǒng)映像關(guān)聯(lián)列表(以與 系統(tǒng)映像關(guān)聯(lián)列表1122相似的方式配置)中的頁內(nèi)來對來自系統(tǒng)映 像1116的DMA寫讀請求提供驗證。第二種范例機制,即,LPAR管理器708可以用來使主機內(nèi)存與
系統(tǒng)映像和一個或者多個虛擬適配器相關(guān)聯(lián)、并使主機內(nèi)存可用于系 統(tǒng)映像和一個或者多個虛擬適配器,將起始頁地址和頁尺寸寫入虛擬適配器資源中的系統(tǒng)映像關(guān)聯(lián)列表1122中。例如,虛擬適配器資源 1120可以包含單個PCI總線地址,該PCI總線地址通過硬件平臺與 系統(tǒng)映像頁(例如,SI 1第1頁1128)的起始地址相關(guān)聯(lián)。在虛擬 適配器資源1120中的映像關(guān)聯(lián)列表1122也包含頁尺寸。在起初配置 時,并且,在重配置期間,LPAR管理器708將頁尺寸和起始頁地址 裝入虛擬適配器資源1120中的映像關(guān)聯(lián)列表1122中。映像關(guān)聯(lián)列表 1122限虛擬適配器1104可以用于DMA讀寫操作的地址集。在創(chuàng)建 映像關(guān)聯(lián)列表1122之后,虛擬適配器1104驗證通過系統(tǒng)映像1108 請求的每一個DMA寫或者DMA讀是否被包含在系統(tǒng)映像關(guān)聯(lián)列表 1122中的頁內(nèi)。如果通過系統(tǒng)映像1108請求的每一個DMA寫或者 DMA讀是被包含在系統(tǒng)映像關(guān)聯(lián)列表1122中的頁內(nèi),則虛擬適配器 1104可以執(zhí)行操作《否則,禁止虛擬適配器執(zhí)行操作.或者,PCI系 列適配器1101可以使用特殊的LPAR管理器式虛擬適配器(而不是 虛擬適配器1104)執(zhí)行檢測,以確定通過系統(tǒng)映像1108請求的DMA 寫或者DMA讀是否被包含在系統(tǒng)映像關(guān)聯(lián)列表1122中的頁內(nèi)。以相 似的方式,與系統(tǒng)映像1116相關(guān)聯(lián)的虛擬適配器1112可以驗證通過 系統(tǒng)映像1116提交的DMA寫或讀請求。具體來說,與系統(tǒng)映像關(guān)聯(lián) 列表1122相關(guān)聯(lián)的系統(tǒng)映像管理列表可以與虛擬適配器1112相關(guān) 聯(lián).與虛擬適配器1112相關(guān)聯(lián)的系統(tǒng)映像關(guān)聯(lián)列表裝入與虛擬適配 器1112相關(guān)聯(lián)的系統(tǒng)映像1116的系統(tǒng)映像頁的頁尺寸和起始頁地 址。因此,與虛擬適配器1112相關(guān)聯(lián)的系統(tǒng)映像關(guān)聯(lián)列表提供這樣 的機制,通過確定DMA寫或者讀請求是否在與系統(tǒng)映像1116的系統(tǒng) 映像頁相關(guān)聯(lián)的系統(tǒng)映像關(guān)聯(lián)列表中的頁內(nèi),驗證來自系統(tǒng)映像1116 的DMA讀寫請求。第三種范例機制,即,LPAR管理器708可以用來使主機內(nèi)存與 系統(tǒng)映像和一個或者多個虛擬適配器相關(guān)聯(lián)、并使主機內(nèi)存可用于系 統(tǒng)映像和一個或者多個虛擬適配器,將系統(tǒng)映像緩沖器關(guān)聯(lián)列表1154
寫入虛擬適配器的資源中。在圖11中,虛擬適配器資源1150包含一 PCI總線地址對列表(起始地址和結(jié)束地址),其中,通過硬件平臺, 將該列表中的每一對PCI總線地址與系統(tǒng)映像緩沖器的地址對(起始 地址和結(jié)束地址)相關(guān)聯(lián),例如,分配給系統(tǒng)映像1116的SI 2第1 緩沖器1166到SI1第N緩沖器1180。在起初配置時,并且,在重 配置期間,LPAR管理器708將系統(tǒng)映像緩沖器關(guān)聯(lián)列表1154裝入 虛擬適配器資源1150。該系統(tǒng)映像緩沖器關(guān)聯(lián)列表1154限定虛擬適 配器1112可以用于DMA讀寫操作的地址集。在創(chuàng)建系統(tǒng)映像緩沖器 關(guān)聯(lián)列表1154之后,虛擬適配器1112驗證通過系統(tǒng)映像1116請求 的每一個DMA寫或者DMA讀被包含在系統(tǒng)映像緩沖器關(guān)聯(lián)列表 1154的緩沖器內(nèi)。如果通過系統(tǒng)映像1116請求的DMA寫或者DMA 讀被包含在系統(tǒng)映像緩沖器關(guān)聯(lián)列表1154的緩沖器內(nèi),則虛擬適配 器1112可以執(zhí)行操作,否則,禁止虛擬適配器1112執(zhí)行操作?;蛘?, PCI系列適配器1101可以使用特殊的LPAR管理器式虛擬適配器(而 不是虛擬適配器1112)執(zhí)行檢測,以確定通過系統(tǒng)映像1116請求的 DMA寫操作或者DMA讀操作是否被包含在系統(tǒng)映像緩沖器關(guān)聯(lián)列 表1154的緩沖器內(nèi)。以相似的方式,與系統(tǒng)映像1108相關(guān)聯(lián)的虛擬 適配器1104可以驗證通過系統(tǒng)映像1108提交的DMA寫或者讀請求。 具體來說,以與上面對系統(tǒng)映像1116和虛擬適配器1112所述的方式 相似的方式,虛擬適配器1104通過確定通過系統(tǒng)映像1108請求的 DMZ寫或者讀被包含在緩沖器管理列表的緩沖器內(nèi),對來自系統(tǒng)映 像1108的DMA讀寫請求提供驗證,所述緩沖器關(guān)聯(lián)列表包含與分配 給系統(tǒng)映像1108的緩沖器的系統(tǒng)映像緩沖器起始和結(jié)束地址對相關(guān) 聯(lián)的PCI總線起始和結(jié)束地址對。笫四種范例機制,即,LPAR管理器708可以用來使主機內(nèi)存與 系統(tǒng)映像和一個或者多個虛擬適配器相關(guān)聯(lián)、并使主機內(nèi)存可用于系 統(tǒng)映像和一個或者多個虛擬適配器,將系統(tǒng)映像緩沖器關(guān)聯(lián)列表1154 中的單個起始和結(jié)束地址寫入虛擬適配器的資源中。在圖11中,虛擬適配器資源1150包含單對PCI總線起始和結(jié)束地址,該單對PCI
總線起始和結(jié)束地址通過硬件平臺與同系統(tǒng)映像緩沖器(例如,SI 2 第1緩沖器1166)相關(guān)聯(lián)的地址對(起始和結(jié)束地址)相關(guān)聯(lián)。在起 初配置時,并且,在重配置期間,LPAR管理器708將SI2第l緩沖 器1166的起始和結(jié)束地址裝入虛擬適配器資源1150中的系統(tǒng)映像緩 沖器關(guān)聯(lián)列表1154中。然后,系統(tǒng)映像緩沖器關(guān)聯(lián)列表1154限定虛 擬適配器1112可以用于DMA讀寫操作的地址集。在創(chuàng)建系統(tǒng)映像緩 沖器關(guān)聯(lián)列表1154之后,虛擬適配器1112確認通過系統(tǒng)映像1116 請求的每一個DMA寫或者DMA讀是否被包含在系統(tǒng)映像緩沖器關(guān) 聯(lián)列表1154內(nèi)。如果通過系統(tǒng)映像1116請求的DMA寫或者DMA 讀被包含在系統(tǒng)映像緩沖器關(guān)聯(lián)列表1154內(nèi),則虛擬適配器1112可 以執(zhí)行操作。否則,禁止虛擬適配器1112執(zhí)行操作?;蛘撸琍CI系 列適配器1101可以使用特殊的、LPAR管理器式虛擬適配器(而不 是虛擬適配器1150浙行檢測,以確定通過系統(tǒng)映像1116請求的DMA 寫或者DMA讀是否被包含在頁系統(tǒng)映像緩沖器關(guān)聯(lián)列表1154內(nèi)。以 相似的方式,與系統(tǒng)映像1108相關(guān)聯(lián)的虛擬適配器1104可以驗證通 過系統(tǒng)映像1108提交的DMA寫或者讀請求。具體來說,以與上面對 系統(tǒng)映像1116和虛擬適配器1112描述的方式相似的方式,虛擬適配 器1104通過確定通過系統(tǒng)映像1108請求的DMA寫或者讀是否被包 含在緩沖器關(guān)聯(lián)列表中的緩沖器內(nèi)來對來自系統(tǒng)映像1108的DMA讀 寫請求提供驗證,所述緩沖器關(guān)聯(lián)列表包含與分配給系統(tǒng)映像1108 的系統(tǒng)映像緩沖器起始和結(jié)束地址相關(guān)聯(lián)的單個PCI總線起始和結(jié) 束地址.接著轉(zhuǎn)到圖12,根據(jù)本發(fā)明的優(yōu)選實施例示出對系統(tǒng)映像可用 的配置有內(nèi)存地址的PCI系列適配器的功能框圖.圖12示出四種不同的機制,通過這些機制,LPAR管理器可以 將PCI系列適配器內(nèi)存與虛擬適配器(例如,虛擬適配器1204)和 系統(tǒng)映像(例如,系統(tǒng)映像1208)相關(guān)聯(lián)。 一旦PCI系列適配器與 系統(tǒng)映像和虛擬適配器相關(guān)聯(lián),然后系統(tǒng)映像就可以執(zhí)行直接到PCI系列適配器內(nèi)存的內(nèi)存映射i/o讀寫操作(即,存儲和裝入)。
在圖ll和圖12所示的系統(tǒng)映像和虛擬適配器配置之間存在明顯 的不同之處。在圖ll所示的配置中,PCI系列適配器1101僅僅保持 一主機地址列表,所述主機地址不具有與它們相關(guān)聯(lián)的任何局部內(nèi) 存。如果PCI系列適配器支持直通通信,則到達外部端口的數(shù)據(jù)可以 直接流過PCI系列適配器,并且通過DMA寫直接傳輸?shù)竭@些主機地 址。類似地,如果PCI系列適配器支持直通通信,則來自這些主機地 址可以直接流過PCI系列適配器,并且從外部端口傳輸出去。因此, 圖11所示的PCI系列適配器1101不包含局部適配器內(nèi)存,因此,不 能發(fā)起DMA操作。另一方面,圖12所示的PCI系列適配器1201具 有與所述主機內(nèi)存地址列表相關(guān)聯(lián)的局部適配器內(nèi)存。PCI系列適配 器1201可以發(fā)起(例如)從其局部內(nèi)存到主機內(nèi)存的DMA寫或者從 主機內(nèi)存到其局部內(nèi)存的DMA讀。類似地,主機可以發(fā)起(例如) 從其局部內(nèi)存到PCI系列適配器內(nèi)存的內(nèi)存映射I/O寫或者從PCI 系列適配器內(nèi)存到主機局部內(nèi)存的內(nèi)存映射1/0讀。第一種機制和第二種機制,即,LPAR管理器708可以用來使 PCI系列適配器內(nèi)存與系統(tǒng)映像和虛擬適配器相關(guān)聯(lián)、并使PCI系列 適配器內(nèi)存可用于系統(tǒng)映像和虛擬適配器,將頁尺寸和一頁(第一種 機制)或者多頁(第二種機制)的起始地址寫入PCI系列適配器的物 理適配器內(nèi)存轉(zhuǎn)換表格1290中。在這種情況下,所有的頁都具有相 同的尺寸。例如,圖12示出頁集,所述頁在系統(tǒng)映像1208和虛擬適 配器1204之間映射,具體來說,將系統(tǒng)映像1208的SI1第1頁1224 至SI1第N頁1242映射(通過互連箭頭示例性地示出)到物理適配 器1201局部內(nèi)存的虛擬適配器內(nèi)存頁1224-1232.對于系統(tǒng)映像1208, 在該列表中的所有頁1224-1242具有相同的尺寸.在起初配置時,在 重配置期間,LPAR管理器708用頁尺寸和一頁或者多頁的起始地址 裝入PCI系列適配器的物理適配器內(nèi)存轉(zhuǎn)換表格1290。然后,物理 適配器內(nèi)存轉(zhuǎn)換表格1290可以限定虛擬適配器1204可以用于DMA 讀寫操作的地址集。在創(chuàng)建物理適配器內(nèi)存轉(zhuǎn)換表格1290之后,PCI 系列適配器1201 (或者虛擬適配器1204 )驗證通過系統(tǒng)映像1208請
求的每一個DMA寫或者DMA讀是否被包含在物理適配器內(nèi)存轉(zhuǎn)換 表格1290中并與虛擬適配器1204相關(guān)聯(lián)。如果系統(tǒng)映像1208請求 的DMA寫或者DMA讀被包含在物理適配器內(nèi)存轉(zhuǎn)換表格1290中并 與虛擬適配器1204相關(guān)聯(lián),則虛擬適配器1204可以執(zhí)行操作。否則, 禁止虛擬適配器1204執(zhí)行操作。物理適配器內(nèi)存轉(zhuǎn)換表格1290也限 定系統(tǒng)映像1208可以用于內(nèi)存映射I/0( MMIO )讀寫操作的地址集。 在創(chuàng)建物理適配器內(nèi)存轉(zhuǎn)換表格1290之后,PCI系列適配器1201(或 者虛擬適配器1204)驗證通過系統(tǒng)映4象1208請求的內(nèi)存映射I/O寫 或者讀是否被包含在物理適配器內(nèi)存轉(zhuǎn)換表格1290中并與虛擬適配 器1204相關(guān)聯(lián)。如果通過系統(tǒng)映像1208請求的MMIO寫或者MMIO 讀被包含在物理適配器內(nèi)存轉(zhuǎn)換表格1290中并與虛擬適配器1204相 關(guān)聯(lián),則虛擬適配器1204可以執(zhí)行操作。否則,禁止虛擬適配器1204 執(zhí)行操作。應該理解,以與PCI系列適配器1201 (或者虛擬適配器 1212)驗證通過系統(tǒng)映像1216請求的DMA操作和MMIO操作的方 式相似的方式,配置其它系統(tǒng)映像和關(guān)聯(lián)虛擬適配器,例如,系統(tǒng)映 像1216和虛擬適配器1212。第三種機制和第四種機制,即,LPAR管理器708可以用來使 PCI系列適配器內(nèi)存與系統(tǒng)映像和虛擬適配器相關(guān)聯(lián)、并使PCI系列 適配器內(nèi)存可用于系統(tǒng)映像和虛擬適配器,將一個(第三種機制)或 者多個(第四種機制)緩沖器起始和結(jié)束地址(或者,起始地址和長 度)寫入PCI系列適配器的物理適配器內(nèi)存轉(zhuǎn)換表格1290中。在這 種情況下,緩沖器可以具有不同的尺寸.例如,圖12示出不同尺寸 的一組緩沖器,所述緩沖器在系統(tǒng)映像1216和虛擬適配器1212之間 映射。具體來說,系統(tǒng)映像1216的SI 2第1緩沖器1244至SI 2第N 緩沖器1248映射到虛擬適配器1212的虛擬適配器緩沖器1258-1274。 關(guān)于系統(tǒng)映像1216,在該列表中的緩沖器具有不同的尺寸。在起初配 置時,并且,在重配置期間,LPAR管理器708將一頁或者多頁的起 始和結(jié)束地址(或者起始地址和長度)裝入PCI系列適配器的物理適 配器內(nèi)存轉(zhuǎn)換表格1290。然后,物理適配器內(nèi)存轉(zhuǎn)換表格1290限定
虛擬適配器1212可以用于DMA讀寫操作的地址集。在創(chuàng)建物理適配 器內(nèi)存轉(zhuǎn)換表格1290之后,PCI系列適配器1201(虛擬適配器1212) 驗證通過系統(tǒng)映像1216請求的每一個DMA寫或者DMA讀是否被包 含在物理適配器內(nèi)存轉(zhuǎn)換表格1290中并與虛擬適配器1212相關(guān)聯(lián)。 如果通過系統(tǒng)映像1216請求的DMA寫或者DMA讀被包含在物理適 配器內(nèi)存轉(zhuǎn)換表格1290中并與虛擬適配器1212相關(guān)聯(lián),則虛擬適配 器1212執(zhí)行操作。否則,禁止虛擬適配器1212執(zhí)行操作。物理適配 器內(nèi)存轉(zhuǎn)換表格1290也限定系統(tǒng)映像1216可以用于內(nèi)存映射I/O (MMIO)讀寫操作的地址集。在創(chuàng)建物理適配器內(nèi)存轉(zhuǎn)換表格1290 之后,PCI系列適配器1201 (虛擬適配器1212)驗證通過系統(tǒng)映像 1216請求的MMIO寫或者讀是否被包含在物理適配器內(nèi)存轉(zhuǎn)換表格 12卯中并與虛擬適配器1212相關(guān)聯(lián)。如果通過系統(tǒng)映像1216請求的 MMIO寫或者讀被包含在物理適配器內(nèi)存轉(zhuǎn)換表格1290中并與虛擬 適配器1212相關(guān)聯(lián),則虛擬適配器1212可以執(zhí)行操作。否則,禁止 虛擬適配器1212執(zhí)行操作。應該理解,以與PCI系列適配器1201(或 者虛擬適配器1204)發(fā)征通過系統(tǒng)映像1216請求的DMA操作和 MMIO操作的方式相似的方式,配置其它系統(tǒng)映像和關(guān)聯(lián)虛擬適配 器,例如,系統(tǒng)映像1208和關(guān)聯(lián)虛擬適配器1204。接下來,轉(zhuǎn)到圖13,根據(jù)本發(fā)明的優(yōu)選實施例示出PCI系列適 配器和物理地址內(nèi)存轉(zhuǎn)換表格(例如,緩沖器表格或者頁表格)的功 能框圖.困13也示出如何可以使用在輸入PCI總線亊務1304中引用的 地址來查詢與內(nèi)存地址相關(guān)聯(lián)的虛擬適配器資源(包括映射到主機地 址的局部PCI系列適配器內(nèi)存地址)(例如,虛擬適配器資源1398 或者虛擬適配器1394資源)的四種機制.第一機制是,將輸入PCI總線事務1304的內(nèi)存地址與緩沖器表 格1390中的高地址1316和低地址1320中的每一行比較.如果輸入 PCI總線事務1304具有低于高地址1316單元的內(nèi)容并高于低地址 1320單元的內(nèi)容的地址,則輸入PCI總線事務1304在與相應的虛擬 適配器相關(guān)聯(lián)的高地址和低地址單元之內(nèi)。在這種情況下,允許輸入PCI總線事務1304在匹配的虛擬適配器上執(zhí)行?;蛘?,如果輸入PCI 總線事務1304具有不在高地址1316單元的內(nèi)容和低地址1320單元 的內(nèi)容之間的地址,則禁止完成或者處理輸入PCI總線事務1304。 第二種機制僅僅允許在每一個虛擬適配器的緩沖器表格1390中的單 個輸入。第三種機制是,將輸入PCI總線事務1304的內(nèi)存地址與每一行 頁起始地址1322和每一行頁起始地址1332加上頁表格1392中的頁 尺寸比較。如果輸入PCI總線事務1304具有高于或者等于頁起始地 址1322單元的內(nèi)容并低于頁起始地址1322單元加上頁尺寸的地址, 則輸入PCI總線事務1304在與虛擬適配器相關(guān)聯(lián)的頁內(nèi)。因此,允 許輸入PCI總線事務1304在匹配的虛擬適配器上執(zhí)行?;蛘?,如果 輸入PCI總線事務1304具有不在頁起始地址1322單元的內(nèi)容和頁起 始地址1322單元加上頁尺寸之內(nèi)的地址,則禁止完成輸入PCI總線 事務1304。第四種機制僅僅允許在每一個虛擬適配器的頁表格1392 中的單個輸入。接下來,參照圖14,根據(jù)本發(fā)明的優(yōu)選實施例示出PCI系列適 配器和物理地址內(nèi)存轉(zhuǎn)換表格(例如,緩沖器表格、頁表格或者間接 局部地址表格)的功能框圖.圖14也示出如何使用在輸入PCI總線事務1404中引用的請求 者總線號(例如,主機總線號1408)、請求者裝置號(例如,主機裝 置號1412)和請求者功能號(例如,主機功能號1416)來給緩沖器 表格1498、頁表格1494或者間接局部地址表格1464編索引的幾種機 制。緩沖器表格1498代表圖13所示的緩沖器表格1390。頁表格1490 代表圖13所示的頁表格1392。局部地址表格1464包含局部PCI系 列適配器內(nèi)存地址,局部PCI系列適配器內(nèi)存地址引用緩沖器表格 (例如,緩沖器表格1438)或者頁表格(例如,頁表格1434),所 述表格僅僅包含映射到同一虛擬適配器上的主機內(nèi)存地址.在輸入PCI總線事務1404中引用的請求這總線號(例如,主機 總線號1408)、請求者裝置號(例如,主機裝置號1412)和請求者 功能號(例如,主機功能號1416)提供由主機LPAR管理器建立的 內(nèi)存地址映射之外的附加檢查。接下來,轉(zhuǎn)到圖15,根據(jù)本發(fā)明的優(yōu)選實施例示出虛擬適配器 等級管理方法。在該方法中,物理或者虛擬主機創(chuàng)建一個或者多個虛 擬適配器(例如,虛擬適配器1514),每一個包含在物理適配器(例 如,PCI適配器1532)的范圍內(nèi)的資源集。每一個虛擬適配器與主機 側(cè)系統(tǒng)映像相關(guān)聯(lián)。虛擬適配器包含物理適配器的資源集(或者虛擬 化的或者分區(qū)的)。通過限定虛擬適配器實體,通過指導對相應的虛 擬適配器的操作,可以聯(lián)合地操作與系統(tǒng)映像相關(guān)聯(lián)的所有虛擬資 源。例如,通過執(zhí)行將相應的虛擬適配器作為目標的功能,可以創(chuàng)建、 破壞和修改虛擬適配器(以及,所有包含的虛擬資源)。另外,虛擬 適配器管理方法允許虛擬適配器的所有資源用與虛擬適配器相關(guān)聯(lián) 的單個標識符(例如,總線號、裝置號和功能號)識別。與虛擬適配 器1514相關(guān)聯(lián)的資源集可以包括,例如處理隊列和關(guān)聯(lián)資源1504; 用于在PCI物理適配器1532上包含的一個或者多個適配器PCI端口 1528的適配器PCI端口 1528;與在適配器PCI端口 1528上的一個 可能的地址相關(guān)聯(lián)的PCI虛擬端口 1506;用于每一個下游物理端口 的一個或者多個下游物理端口 1518和1522;與在物理端口 1518和 1522上的一個可能的地址相關(guān)聯(lián)的下游虛擬端口 1508和1510;以及 一個或者多個地址轉(zhuǎn)換和保護表格(ATPT) 1512。如本文所指的虛 擬端口包括幫助從輸入/輸出適配器的一個或者多個資源接收數(shù)據(jù)、并 發(fā)送數(shù)據(jù)給輸入/輸出適配器的一個或者多個資源的軟件實體.虛擬端 口與在輸入/輸出適配器上部署的端口相關(guān)聯(lián)或者被映射到其上.例 如,虛擬端口可以與適配器PCI端口相關(guān)聯(lián),通過該適配器PCI端 口所述輸入/輸出適配器與連接到外圍或者網(wǎng)絡的適配器上的主機或 者物理端口連接。虛擬端口具有關(guān)聯(lián)標識符(例如,地址、指針)或 者用于引用所述虛擬適配器的另一合適的標識符.單個端口,例如, 在輸入/輸出適配器上的PCI端口或者物理端口可 關(guān)聯(lián)的虛擬端口。另外,虛擬端口優(yōu)選配置成表現(xiàn)其所映射的物理端 口的一種或者多種特性。在實體(例如,系統(tǒng)映像或者應用程序)使用虛擬適配器執(zhí)行輸 入/輸出操作時,隨后該虛擬適配器可以被破壞,以防止殘余數(shù)據(jù)在系 統(tǒng)分區(qū)之間遷移,例如,從一個系統(tǒng)映像到另一個系統(tǒng)映像。例如, 假設在輸入/輸出事務期間以及在該事務完成之后第 一 系統(tǒng)映像訪問 虛擬適配器,然后,在該虛擬適配器被破壞時該系統(tǒng)映像終止。虛擬 適配器的解構(gòu)包括解除分配給該虛擬適配器的資源。然后,所解除的 資源可以稍后分配給隨后初始化的虛擬適配器。為了防止數(shù)據(jù)在系統(tǒng) 分區(qū)之間遷移,在虛擬適配器破壞操作期間,被虛擬適配器資源維持 的任何數(shù)據(jù)從其清除。有利地,在創(chuàng)建虛擬適配器的過程中促進了系 統(tǒng)映像數(shù)據(jù)隔離,該虛擬適配器的創(chuàng)建使用先前分配給后來被破壞的 接著,參照圖16,根據(jù)本發(fā)明的優(yōu)選實施例示出分配給物理適 配器的一個或者多個虛擬適配器的范例虛擬適配器破壞操作的流程 圖。所述的范例虛擬適配器破壞操作在使用上面圖15所述的虛擬適 配器管理技術(shù)的物理適配器上執(zhí)行。通過用戶管理接口或者自動的腳本/工作流,調(diào)用破壞一個或者 所有的虛擬適配器的請求。在破壞請求中所引用的虛擬適配器可以通 過各種屬性或者標識符中的任何一個限定。表A總結(jié)可用于引用破壞 請求中的一個或者多個虛擬適配器的范例屬性。
表A屬性類型描述下游虛擬ID可選的與被復位的虛擬適配器相關(guān)聯(lián)的下游網(wǎng)絡 ID: -對于光纖通道,N-端口 ID; -對于以太網(wǎng),MAC地址; -對于以太網(wǎng)VLAN, VLANID; -對于IP, IP地址; -對于SCSI主機,發(fā)起者ID; -對于SCSI目標,目標ID,虛擬適配器的總 線/裝置/功能號可選的僅僅用于PCI-X和PCI-E適配器。與被復 位的虛擬適配器相關(guān)聯(lián)的PCI總線號、裝置 號和功能號(總線/裝置/功能號#)用于虛擬適配器 的MSI等級可選的對于能夠支持消息信號中斷(MSI)的適配 器,與被復位的虛擬適配器相關(guān)聯(lián)的消息信 令中斷。虛擬適配器ID可選的與被復位的虛擬適配器相關(guān)聯(lián)的虛擬適配 器ID。LPAR管理器使用物理適配器的內(nèi)存管理接口 (即,用于虛擬適 配器配置管理的內(nèi)存映射I/O地址)來請求物理適配器破壞一個或者 多個虛擬適配器(步驟1602)。該請求可以直接從LPAR管理器傳 送,或者,另一可選的方式是,可以通過代表LPAR管理的中介物(例 如,系統(tǒng)映像)發(fā)送。表A所述的一個或者多個屬性或者合適的替代 物可以被包含在傳送給所述物理適配器的請求中,以引用要破壞的虛 擬適配器。所述物理適配器進行檢查,以知道所述請求是否用于解構(gòu)所有的 虛擬適配器(步驟1604 ).即,所迷物理適配器進行檢查,以確定破 壞請求是否是用于物理破壞的請求。如果所述請求是物理破壞請求, 物理適配器破壞所有的虛擬適配器(步驟1606)。例如,物理適配器 可以復位所有的虛擬適配器,并且通過釋放與虛擬適配器相關(guān)聯(lián)的所 有資源而破壞它們。虛擬適配器破壞操作然后返回所述操作結(jié)果到 LPAR管理器,即如果虛擬適配器成功地被破壞,確定虛擬適配器 破壞;或者,另一可選的方式是,如果由于一定原因而虛擬適配器不 能被破壞,出錯代碼(步驟1616)。
再次返回到步驟1604,在虛擬適配器破壞請求不是物理破壞請 求的情況,虛擬適配器破壞操作繼續(xù)確定所述破壞請求是否是正常的 虛擬適配器虛擬破壞請求(步驟1608 )。正常的虛擬適配器破壞是在 虛擬適配器上執(zhí)行的破壞操作,其允許在虛擬適配器上未完成的操作 在解構(gòu)虛擬適配器之前完成。異常的或者強迫的虛擬適配器破壞是這 樣的虛擬適配器破壞操作,其不管在虛擬資源上是否有未完成的工作 或者未執(zhí)行或未決,該虛擬適配器操作也執(zhí)行虛擬適配器解構(gòu)。在由 于錯誤條件而沒有成功地執(zhí)行正常的破壞請求時,可以(例如)執(zhí)行 異常的破壞請求。如果虛擬適配器破壞請求不是正常的破壞請求,則 虛擬適配器破壞操作進行破壞現(xiàn)有的虛擬適配器(步驟1612 ),例如, 通過立即釋放與在虛擬適配器破壞請求中所引用的虛擬適配器相關(guān) 聯(lián)的所有資源。
再次返回到步驟1608,在虛擬適配器破壞請求被識別為正常的 虛擬適配器破壞請求的情況,物理適配器評價對于在虛擬適配器破壞 請求中引用的虛擬適配器任何I/0事務是否未完成的(步驟1610)。 如果確定沒有I/O事務用于所述破壞請求所引用的虛擬適配器,則物 理適配器進行破壞在根據(jù)步驟1612的破壞請求中引用的虛擬適配器。
再次返回到步驟1610,如果確定任何未完成的I/O事務用于所 述虛擬適配器,則所述虛擬適配器破壞操作等待所確定的未完成的 I/O事務直到成功完成或者超時(步驟1614)。然后,根據(jù)步驟1612, 虛擬適配器破壞操作進行破壞現(xiàn)有的虛擬適配器.在所述物理適配器 破壞所述虛擬適配器并釋放與所破壞的虛擬適配器相關(guān)聯(lián)的資源之 后,根據(jù)步驟1616,所述物理適配器將操作的結(jié)果返回到LPAR管 理器。
權(quán)利要求
1.一種破壞在邏輯分區(qū)數(shù)據(jù)處理系統(tǒng)中的虛擬適配器的方法,該方法包括下述步驟調(diào)用一請求以破壞分配給物理適配器的至少一個虛擬適配器;傳送所述請求給所述物理適配器;以及響應于通過所述物理適配器接收所述請求,釋放分配給所述物理適配器上的所述虛擬適配器的資源,其中在釋放所述資源時清除所述資源中的任何數(shù)據(jù)。
2. 根據(jù)權(quán)利要求1所述的方法,其中通過與邏輯分區(qū)管理器相 連接的用戶管理接口執(zhí)行所述調(diào)用步驟。
3. 根據(jù)權(quán)利要求l所述的方法,其中所述調(diào)用步驟還包括 通過與所述物理適配器連接的邏輯分區(qū)管理器,請求所述物理適配器通過所述物理適配器的內(nèi)存管理接口破壞所述至少一個虛擬適 配器。
4. 根據(jù)權(quán)利要求1所述的方法,其中所述物理適配器包括外圍 部件互連系列適配器。
5. 根據(jù)權(quán)利要求1所述的方法,其中所述至少一個虛擬適配器 包括多個虛擬適配器,該方法還包括識別所述請求作為物理虛擬適配器破壞請求,其中釋放所述資源 包括釋放所述多個虛擬適配器中的每一個的相應資源。
6. 根據(jù)權(quán)利要求1所述的方法,其中所述至少一個虛擬適配器 包括第一虛擬適配器,該方法還包括識別所述請求作為虛擬破壞請求,其中釋放所述資源包括釋放所 述第一虛擬適配器的資源。
7. 根據(jù)權(quán)利要求1所述的方法,其中所述請求包括識別所要破 壞的所述至少一個虛擬適配器之一的屬性。
8. 根據(jù)權(quán)利要求1所述的方法,其中所述資源包括虛擬適配器 資源和虛擬適配器內(nèi)存,以及其中所述虛擬適配器內(nèi)存從所述物理適 配器的配置內(nèi)存中被分配。
9. 一種用于破壞在邏輯分區(qū)數(shù)據(jù)處理系統(tǒng)中的虛擬適配器的計 算機程序產(chǎn)品,該計算機程序產(chǎn)品包括第一指令,其用于接收破壞分配在物理適配器上的至少一個虛擬適配器的請求;第二指令,其傳送所述請求給所迷物理適配器;以及 第三指令,其響應于通過所述物理適配器接收所述請求而釋放分配所述至少一個虛擬適配器的資源,其中在釋放所述資源時清除在所述資源中保持的任何數(shù)據(jù)。
10. 根據(jù)權(quán)利要求9所述的計算機程序產(chǎn)品,還包括 笫四指令,其通過與邏輯分區(qū)管理器相連接的用戶管理接口調(diào)用所述請求;
11. 根據(jù)權(quán)利要求9所述的計算機程序產(chǎn)品,其中所述至少一個 虛擬適配器包括多個虛擬適配器,所述計算機程序產(chǎn)品還包括笫四指令,其識別所述請求作為物理虛擬適配器破壞請求,其中釋放所述資源包括釋放所述多個虛擬適配器中的每一個的相應資源.
12. 根據(jù)權(quán)利要求9所述的計算機程序產(chǎn)品,其中所述至少一個 虛擬適配器包括第一虛擬適配器,所述計算機程序產(chǎn)品還包括 第四指令,其識別所述請求作為虛擬破壞請求,其中釋放所述資 源包括釋放所述第一虛擬適配器的資源。
13. 根據(jù)權(quán)利要求9所述的計算機程序產(chǎn)品,其中所述請求包括 識別所要破壞的所述至少 一 個虛擬適配器的屬性。
14. 根據(jù)權(quán)利要求9所述的計算機程序產(chǎn)品,其中所述資源包括 虛擬適配器資源和虛擬適配器內(nèi)存,其中所述虛擬適配器內(nèi)存從所述 物理適配器的配置內(nèi)存中被分配。
15. —種邏輯分區(qū)數(shù)據(jù)處理系統(tǒng),包括 物理適配器,其具有多個被分配的虛擬適配器;內(nèi)存,其包含多個系統(tǒng)映像,每一個系統(tǒng)映像分別與所述多個虛 擬適配器之一相關(guān)聯(lián);存儲器,其包含作為一組指令集的邏輯分區(qū)管理器;以及 處理器,響應于所述指令的執(zhí)行,該處理器產(chǎn)生一個請求以破壞 分配在所述物理適配器上的多個虛擬適配器的至少一個虛擬適配器, 并且傳輸所述請求給所述物理適配器,其中所述物理適配器釋放分配 給所述虛擬適配器的資源,其中在釋放所述資源時清除所述資源中的 任何數(shù)據(jù).
16. 根據(jù)權(quán)利要求15所述的數(shù)據(jù)處理系統(tǒng),其中所述存儲器包 括系統(tǒng)固件。
17. 根據(jù)權(quán)利要求15所述的數(shù)據(jù)處理系統(tǒng),其中所述物理適配 器包括外圍部件互連系列適配器。
18. 根據(jù)權(quán)利要求15所述的數(shù)據(jù)處理系統(tǒng),其中所述物理適配 器識別所述請求為物理虛擬適配器破壞請求,并且釋放所述多個虛擬適配器中的每一個的相應資源。
19.根據(jù)權(quán)利要求15所述的數(shù)據(jù)處理系統(tǒng),其中所述物理適配 器識別所述請求為虛擬破壞請求,并且釋放與在所述虛擬破壞請求中 引用的虛擬適配器相關(guān)聯(lián)的資源。20根據(jù)權(quán)利要求19所述的數(shù)據(jù)處理系統(tǒng),其中,所述物理適配 器識別用于所述虛擬適配器的未完成的輸入/輸出事務,并且其中在完 成所述未完成的輸入/輸出事務或所述未完成的輸入/輸出事務超時之 后,所述物理適配器釋放所述資源。
全文摘要
提供用于直接破壞與駐留在物理適配器中的一個或者多個虛擬適配器相關(guān)聯(lián)的資源的方法、計算機程序產(chǎn)品和分布數(shù)據(jù)處理系統(tǒng)。提供用于直接破壞與駐留于物理適配器(例如,PCI、PCI-X或者PCI-E適配器)中的一個或者多個虛擬適配器相關(guān)聯(lián)的資源的機制。
文檔編號G06F9/455GK101120315SQ200680005123
公開日2008年2月6日 申請日期2006年2月22日 優(yōu)先權(quán)日2005年2月25日
發(fā)明者利赫·沙利夫, 加亞·斯里克里什南, 吉奧拉·比蘭, 哈維·G.·基埃爾, 理查德·L.·阿恩德特, 瓦蒂姆·馬克赫爾瓦克斯, 雷納多·J.·雷西奧 申請人:國際商業(yè)機器公司