亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

提供兩級服務(wù)器虛擬化的方法和系統(tǒng)的制作方法

文檔序號:6609142閱讀:386來源:國知局
專利名稱:提供兩級服務(wù)器虛擬化的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及在邏輯分區(qū)的數(shù)據(jù)處理系統(tǒng)中發(fā)送中斷請求,并且特別涉及添加第二虛擬化事件通告級,其用于在邏輯分區(qū)的數(shù)據(jù)處理系統(tǒng)內(nèi)向邏輯分區(qū)中運(yùn)行的虛擬機(jī)或客戶發(fā)送中斷請求。
背景技術(shù)
InfiniBand(無限帶寬網(wǎng)絡(luò))規(guī)范描述了工作隊列對(QP)和完成隊列(CQ)的概念。為了增強(qiáng)對大量邏輯分區(qū)和虛擬機(jī)資源的可擴(kuò)展性,添加了事件隊列(EQ),其被主機(jī)通道適配器(HCA)用于記錄與QP和CQ資源相關(guān)聯(lián)的事件的總和。圖1說明了現(xiàn)有技術(shù)的InfiniBand系統(tǒng)10,其具有通過構(gòu)造網(wǎng)絡(luò)102與例如存儲子系統(tǒng)104、RAID子系統(tǒng)106、控制臺108互連的多個處理器節(jié)點100;以及通過其連接SCSI設(shè)備、以太網(wǎng)連接、光纖通道(FC)集線器和FC設(shè)備、圖形和視頻設(shè)備的多個I/O機(jī)架110。該構(gòu)造102包括多個交換機(jī)112和路由器114,從而消息和數(shù)據(jù)可以在該InfiniBand系統(tǒng)10上進(jìn)行交換。每個處理器節(jié)點100包括一個或多個中央處理單元(CPU)116、存儲器118和主機(jī)通道適配器(HCA)120。InfiniBand系統(tǒng)10和HCA 120是公知的并且在InfiniBand商業(yè)聯(lián)盟的InfiniBand體系結(jié)構(gòu)規(guī)范,版本1.0.a,(2001)中進(jìn)行了完整的解釋。
Rogers等人的“ABCs OF z/OS SYSTEM PROGRAMMINGVOLUME 10”(IBM Redbook,SG24-6990-00(2004年6月))中討論了邏輯分區(qū)(LPAR)的概念。
在2005年9月13日簽發(fā)給Desai等人的美國專利No.6,944,847 B2,VIRTUALIZATION OF INPUT/OUTPUT DEVICES IN A LOGICALLYPARTITIONED DATA PROCESSING SYSTEM,公開了一種管理程序?qū)?,該管理程序?qū)油ㄟ^使虛擬化輸入/輸出設(shè)備可被任何系統(tǒng)分區(qū)調(diào)用而將對虛擬化輸入/輸出設(shè)備的使用同步到該管理程序?qū)?,其中該虛擬化輸入/輸出設(shè)備可由邏輯分區(qū)的數(shù)據(jù)處理系統(tǒng)的多個分區(qū)有規(guī)律地使用。
在2004年6月8日簽發(fā)給Brice,Jr.等人的美國專利No.6,748,460B2,“INITIATIVE PASSING IN AN I/O OPERATION WITHOUT THEOVERHEAD OF AN INTERRUPT”,公開了將主動權(quán)交給處理器以處理對I/O操作的I/O請求,該I/O操作用于在主存儲器與一個或多個設(shè)備之間發(fā)送數(shù)據(jù)。
在2004年6月22日簽發(fā)給Brice,Jr.等人的美國專利No.6,754,738B2,“LOW OVERHEAD I/O INTERRUPT”,公開了在I/O操作中將數(shù)據(jù)發(fā)送給一個或多個I/O設(shè)備或者從一個或多個I/O設(shè)備接收數(shù)據(jù),其中在數(shù)據(jù)處理系統(tǒng)中主存儲器由處理器來控制。
在2005年4月12日簽發(fā)給Easton等人的美國專利No.6,889,021 B2,“INTELLIGENT INTERRUPT WITH HYPERVISORCOLLABORATION”,公開了在數(shù)據(jù)處理系統(tǒng)中對數(shù)據(jù)的轉(zhuǎn)移進(jìn)行控制,其中該數(shù)據(jù)處理系統(tǒng)具有處理I/O操作中的I/O請求的處理器、由該處理器控制的用于存儲數(shù)據(jù)的主存儲器、以及用于將數(shù)據(jù)發(fā)送給該主存儲器或從該主存儲器接收數(shù)據(jù)的一個或多個I/O設(shè)備。
在2001年12月6日公開的Skene等人的美國專利申請公開US2001/0049741 A1,“METHOD AND SYSTEM FOR BALANCING LOADDISTRIBUTION ON A WIDE AREA NETWORK”,公開了一種系統(tǒng)和方法,其用于平衡由在分開的數(shù)據(jù)中心處的服務(wù)器陣列控制器管理的虛擬服務(wù)器上的負(fù)載,其中分開的數(shù)據(jù)中心地理上分布在諸如互聯(lián)網(wǎng)之類的廣域網(wǎng)上。
在2002年11月21日公開的Imada等人的美國專利申請公開US2002/0173863A1,“VIRTUAL MACHINE SYSTEM AND VIRTUALMACHINE CONTROL METHOD”,公開了一種用于虛擬機(jī)系統(tǒng)的用戶接口函數(shù),該虛擬機(jī)系統(tǒng)通過應(yīng)用軟件建立在服務(wù)器或PC基礎(chǔ)上而無需使用服務(wù)處理器等。
在2003年7月3日公開的Aziz等人的美國專利申請公開US2003/0126265A1,“REQUEST QUEUE MANAGEMENT”,公開了用于管理具有動態(tài)大小、高可擴(kuò)展性和可用性的服務(wù)器中心(server farm)的方法和裝置。
在2003年7月17日公開的Fitzpatrick等人的美國專利申請公開2003/0133449A1,“FAST PATH ROUTING IN A LARGE-SCALEVIRTUAL SERVER COMPUTING ENVIRONMENT”,公開了用于在復(fù)雜計算環(huán)境中改善數(shù)據(jù)轉(zhuǎn)移的方法、系統(tǒng)和計算機(jī)程序產(chǎn)品。定義了內(nèi)部路由增強(qiáng),其能夠?qū)崿F(xiàn)更高效地處理虛擬服務(wù)器的業(yè)務(wù),由此改善總的數(shù)據(jù)轉(zhuǎn)移速率。
在2003年8月14日公開的Dar等人的美國專利申請公開US2003/0154236A1,“DATABASE SWITCH ENABLING A DATABASEAREA NETWORK”,公開了一種用于改善對典型DBMS客戶端-服務(wù)器配置的利用的方法和系統(tǒng),并且包括在能夠使用標(biāo)準(zhǔn)數(shù)據(jù)庫服務(wù)器和標(biāo)準(zhǔn)協(xié)議動態(tài)且透明地將應(yīng)用程序連接到數(shù)據(jù)庫的網(wǎng)絡(luò)中位于應(yīng)用程序和數(shù)據(jù)庫服務(wù)器之間的數(shù)據(jù)庫交換機(jī)。
在2004年6月22日公開的Usa等人的美國專利申請公開US2004/0143664A1,“METHOD FOR ALLOCATING COMPUTERRESOURCE”,公開了動態(tài)地將計算機(jī)資源重新分配給多個虛擬機(jī)LPAR,其中最優(yōu)數(shù)量的資源分配被確定,從而這些虛擬機(jī)LPAR在近期將幾乎不會出現(xiàn)資源短缺。
在2004年8月5日公開的Bitner等人的美國專利申請公開US2004/0153614A1,“TAPE STORAGE EMULATION FOR OPEN SYSTEMSENVIRONMENTS”,公開了一種駐留在網(wǎng)絡(luò)上的虛擬磁帶服務(wù)器,該網(wǎng)絡(luò)在其前端可以連接到多個異類的具有不同操作系統(tǒng)和/或備份應(yīng)用程序的備份主機(jī),并且在其后端可以連接到開放系統(tǒng)環(huán)境中的一個或多個磁盤存儲器設(shè)備。
在2004年12月9日公開的Frank等人的美國專利申請公開US2004/0250254A1,“VIRTUAL PROCESSOR METHODS ANDAPPARATUS WITH UNIFIED EVENT NOTIFICATION ANDCONSUMER-PRODUCER MEMORY OPERATIONS”,公開了一種虛擬處理器,其包括在一個或多個處理器上執(zhí)行的一個或多個虛擬處理單元,其中每個虛擬處理單元執(zhí)行一個或多個進(jìn)程或線程。
在2005年2月24日公開的Vasilevsky等人的美國專利申請公開US2005/0044301A1,“METHOD AND APPARATUS FOR PROVIDINGVIRTUAL COMPUTING SERVICES”,公開了一種在一組物理處理器與一組虛擬多處理器之間創(chuàng)建的以形成虛擬化數(shù)據(jù)中心的抽象級別。
在2004年11月18日公開的Belmar等人的美國專利申請公開US2004/0230712,“MANAGING INPUT/OUTPUT INTERRUPTIONS INNON-DEDICATED INTERRUPTION HARDWARE ENVIRONMENTS”,公開了在計算環(huán)境中管理的輸入/輸出中斷,其不使用專用的基于每個客戶的中斷硬件來提出中斷。在該環(huán)境中可調(diào)度的客戶程序直接接收I/O中斷,而無需管理程序的干預(yù)。
回到圖1,在用于與由IBM提供的InfiniBand系統(tǒng)一起使用的HCA120中,在EQ中所記錄的事件被分成完成事件或未完成事件這兩類。完成事件包括該HCA何時完成程序發(fā)起的工作請求,該工作請求由QP中的工作隊列條目(WQE)來標(biāo)識。完成事件可以被識別,并且完成隊列條目(CQE)被記錄在與QP相關(guān)聯(lián)的CQ中。如果與CQ相關(guān)聯(lián)的EQ還沒有包含針對完成事件的掛起(pending)的EQE,則在該EQ中使針對完成事件的EQE掛起。未完成事件包括與HCA資源相關(guān)聯(lián)的錯誤何時發(fā)生或者HCA資源的狀態(tài)或配置何時改變。未完成可以被識別,并且如果與資源相關(guān)聯(lián)的EQ還未包含針對被識別的未完成事件類型的掛起的EQE,則在該EQ中使針對該未完成事件類型的EQE掛起。
對于HCA,處理器節(jié)點100的操作系統(tǒng)分配一個或多個QP或CQ,分配單個EQ,并且使該QP和CQ與該EQ相關(guān)聯(lián)。這形成一種層級,在該層級中QP和CQ處在底部而單個EQ(及其相關(guān)聯(lián)的I/O中斷)處在頂部。因此,可以將單個HCA的完成事件和未完成事件映射到針對每個操作系統(tǒng)的單個EQ。
該分層設(shè)計允許操作系統(tǒng)有效地根據(jù)需要將HCA事件解復(fù)用回至各個QP和CQ。其他IBM專利描述了如何虛擬化給定的物理HCA,以通過讓每個分區(qū)均擁有并管理其自己的單獨(dú)的QP、CQ和EQ來同時支持多個單獨(dú)的邏輯分區(qū)(在單個中央處理裝置(PC)內(nèi))。在這種情況下,HCA硬件通過將HCA事件定向(vectoring)到分區(qū)的EQ來完成解復(fù)用的形式,該分區(qū)擁有用于被識別的事件的資源(也即QP或CQ)。

發(fā)明內(nèi)容
被解決的問題是,諸如IBM zSeries平臺之類的平臺提供兩級服務(wù)器虛擬化。第一級由LPAR管理程序來提供,使得多個邏輯分區(qū)能夠共享HCA資源。第二級由諸如z/VM管理程序之類的虛擬機(jī)管理程序來提供,使得多個獨(dú)立的虛擬機(jī)能夠共享被指定給單個邏輯分區(qū)的HCA資源。該環(huán)境具有高的擴(kuò)展需求,因為它必須支持在多個邏輯分區(qū)中的每個邏輯分區(qū)內(nèi)同時執(zhí)行的成千上萬的虛擬機(jī)之間共享HCA資源。
本發(fā)明解決了這樣的可擴(kuò)展性需要。本發(fā)明是HCA硬件和固件、zSeries平臺固件以及z/VM管理程序的協(xié)作,該協(xié)作提供這樣一種外部特性,即在邏輯分區(qū)和虛擬機(jī)上執(zhí)行的潛在的數(shù)千個操作系統(tǒng)中的每個操作系統(tǒng)均擁有其自己的單獨(dú)的EQ以從所共享的HCA硬件接收HCA事件通告。這是通過在背景技術(shù)部分所描述的EQ級上添加第二虛擬化EQ級來實現(xiàn)的。
特別地,該HCA硬件將針對單個邏輯分區(qū)內(nèi)的所有虛擬機(jī)的所有事件歸類為“單個”分區(qū)所擁有的EQ,并且接著發(fā)送中斷請求,其使得zSeries固件獲得控制。該固件在z/VM管理程序的幫助下將來自分區(qū)所擁有的EQ的歸類事件解復(fù)用到基于每個虛擬機(jī)分配的各個虛擬化EQ,并且恰當(dāng)?shù)厣上嚓P(guān)聯(lián)的虛擬機(jī)EQ條目和相關(guān)聯(lián)的中斷。虛擬機(jī)和HCA都不知曉這個附加級別的EQ虛擬化。
本發(fā)明的一個目的是通過提供一種用于在數(shù)千個消費(fèi)服務(wù)器鏡像之間共享HCA資源的有成本效益的又非常有效的機(jī)制而為zSeries平臺提供重要的競爭優(yōu)勢。
這里還描述了與上面概述的方法相對應(yīng)的系統(tǒng)和計算機(jī)程序產(chǎn)品,并要求其權(quán)利。
通過本發(fā)明的技術(shù)實現(xiàn)了另外的特征和優(yōu)點。這里詳細(xì)描述了本發(fā)明的其他實施例和方面,并且認(rèn)為它們是所主張的發(fā)明的一部分。參考該描述和附圖可以更好地理解本發(fā)明的優(yōu)點和特征。


在本說明書的總結(jié)部分的權(quán)利要求書中,具體指出并清楚地主張了本發(fā)明的主題。根據(jù)下面結(jié)合附圖所進(jìn)行的詳細(xì)描述,本發(fā)明前述的以及其他的目標(biāo)、特征和優(yōu)點變得顯而易見。
圖1是對可與本發(fā)明一起使用的現(xiàn)有技術(shù)的InfiniBand系統(tǒng)的說明,并且該InfiniBand系統(tǒng)包括每個均有主機(jī)通道適配器(HCA)的多個處理器節(jié)點;圖2是對圖1中的處理器節(jié)點之一的中央處理器裝置(CPC)的說明,并且包括具有提供第一級虛擬化的邏輯分區(qū)(LPAR)管理程序?qū)拥闹鞔鎯ζ鞅硎?,并且包括邏輯分區(qū)和邏輯分區(qū)的存儲器中的數(shù)據(jù)結(jié)構(gòu);圖3是對圖2中的CPC的進(jìn)一步說明,并且包括管理著圖2中的單個分區(qū)內(nèi)的資源的虛擬機(jī)(VM)管理程序?qū)?,而其提供第二層虛擬化;圖4、圖5和圖6放到一起時形成了用于邏輯分區(qū)的主機(jī)通道適配器中斷的流程圖;圖7是對客戶事件隊列聯(lián)系文件(GEQA)的主機(jī)結(jié)構(gòu)的說明;圖8是對客戶事件隊列控制塊(GEQCB)的主機(jī)結(jié)構(gòu)的說明;圖9說明了GEQA、GEQCB以及客戶和主機(jī)HCA資源之間的關(guān)系;圖10至圖15放到一起時形成了由主機(jī)完成的用于進(jìn)行資源分配和結(jié)構(gòu)初始化的函數(shù)的流程圖;以及圖16和圖17放到一起時形成了針對可分頁虛擬機(jī)的主機(jī)通道適配器事件通告的函數(shù)的流程圖。
通過參考附圖所舉的例子,該詳細(xì)的描述解釋了本發(fā)明的優(yōu)選的實施例,以及本發(fā)明的優(yōu)點和特征。
具體實施例方式
如在這里所使用的,術(shù)語“客戶”是指可分頁的虛擬機(jī)而術(shù)語“主機(jī)”是指使用解釋執(zhí)行來實現(xiàn)客戶的管理程序。這樣的管理程序的一個例子是可以從紐約Armonk的國際商業(yè)機(jī)器公司獲得的IBM z/VM。應(yīng)該理解,類似于解釋執(zhí)行的其他設(shè)備實現(xiàn)可被用于實現(xiàn)主機(jī)和客戶。術(shù)語“虛擬機(jī)”和“客戶”在這里可被互換地使用。
如在這里所使用的,術(shù)語“鎖定(pinning)”用于指主機(jī)使正常情況下可分頁的主機(jī)頁變?yōu)椴豢煞猪摗?br> 如在這里所使用的,“機(jī)器”用于指程序所看到的CPU。于是,機(jī)器同時包括CPU硬件和任何固件實現(xiàn)。
如在這里所使用,提供了以下定義使用恰當(dāng)?shù)腁LLOCATE指令來分配諸如QP、CQ和EQ之類的HCA資源。
分配指令是虛擬化的,從而當(dāng)被客戶發(fā)送時,它被截取,并且主機(jī)對HCA的資源分配進(jìn)行調(diào)節(jié)。
針對HCA QP、CQ和EQ資源的控制駐留在適配器存儲器中并且可以通過恰當(dāng)?shù)腖OAD(加載)和STORE(存儲)指令來訪問。
該STORE和LOAD指令是虛擬化的,從而當(dāng)被客戶發(fā)送時,它們可被主機(jī)截取并處理,或者可在沒有截取的情況下被客戶解釋執(zhí)行。
當(dāng)配置HCA資源時,以下情況可能是正確的QP最多可以與兩個CQ相關(guān)聯(lián),其中一個CQ針對完成的發(fā)送請求而一個CQ針對完成的接收請求。或者QP可以與同時針對完成的發(fā)送請求和完成的接收請求的單個CQ相關(guān)聯(lián)。
多于一個的QP可以與單個CQ相關(guān)聯(lián)。
QP可以與單個EQ相關(guān)聯(lián)。與該QP相關(guān)聯(lián)的未完成事件被記錄在該EQ中。
多于一個的QP可以與單個EQ相關(guān)聯(lián)。
CQ可以僅與一個EQ相關(guān)聯(lián)。與該CQ相關(guān)聯(lián)的完成事件及其相關(guān)聯(lián)的QP被記錄在該EQ中。
多于一個的CQ可以與單個EQ相關(guān)聯(lián)。
適配器概要字節(jié)(ASB)可以與EQ相關(guān)聯(lián)。(ASB是程序存儲器中的一個字節(jié),程序通常將其初始化為零。當(dāng)將EQE加到與ASB相關(guān)聯(lián)的EQ時,適配器將ASB的值設(shè)置成非零值)。
主概要字節(jié)(PSB)可以與EQ相關(guān)聯(lián)。(PSB是硬件存儲區(qū)(HAS)中的一個字節(jié),機(jī)器通常將其初始化為零。當(dāng)將EQE加到與PSB相關(guān)聯(lián)的EQ時,適配器將PSB的值設(shè)置成非零值)。PSB僅對于機(jī)器固件是可見的。
多于一個的EQ可以與單個ASB相關(guān)聯(lián)。
多于一個的EQ可以與單個PSB相關(guān)聯(lián)。
適配器中斷是I/O類中斷,其不與任何子信道相關(guān)聯(lián)。適配器中斷與中斷區(qū)(IZone)和中斷子類(ISC)相關(guān)聯(lián)。IZone標(biāo)識哪個邏輯分區(qū)將接收中斷。在分區(qū)或虛擬機(jī)內(nèi),ISC定義中斷優(yōu)先級并且還允許對中斷進(jìn)行屏蔽。
圖2是對圖1的處理器節(jié)點100之一的中央處理器裝置(CPC)200的說明。該CPC 200包括存儲器118和圖1的CPU 116中的至少之一。該CPC 200與HCA 120相連。該CPC 200包括邏輯分區(qū)管理程序220,如所公知的那樣其將該存儲器分成多個邏輯分區(qū)198。每個邏輯分區(qū)198具有作為存儲器118的一部分的存儲器199。用于該邏輯分區(qū)198的每個存儲器199包括隊列對(QP)202、完成隊列(CQ)204和事件隊列(EQ)206。應(yīng)該理解,該CQ 204包括完成隊列條目(COE)205,而EQ 206包括事件隊列事件(EQE)207,其中每個完成和事件被記錄,如將討論的那樣。該EQ 206包括類型1EQ 206a和類型2EQ 206b。該QP 202控制I/O請求,一個隊列用于發(fā)送請求,且一個隊列用于接收請求。該CQ204用于記錄I/O完成狀態(tài)。該EQ 206記錄事件通告,其包括事件的完成和未完成。同樣,在每個邏輯分區(qū)存儲器199中存在也稱為輔助概要字節(jié)(SSB)的適配器概要字節(jié)(ASB)208,其可以與EQ 206a相關(guān)聯(lián)。在存儲器118中包括了主概要字節(jié)(PSB)210,其可以與EQ 206b相關(guān)聯(lián)??梢詫⒃揚(yáng)SB 210保存在存儲器中被稱為硬件存儲區(qū)(HSA)212的那部分中,HAS 212是存儲器118中的受限部分,并且其對于運(yùn)行在該處理器上的應(yīng)用程序不可用,而是用于機(jī)器固件。
如所提及的,該CPC 200中的一個層是被稱為LPAR管理程序的邏輯分區(qū)管理程序220,其是控制程序,該控制程序與下面的固件一起管理該CPC 200中的LPAR 198。例如,在用于zSeries z990平臺的LPAR管理程序中,CPC 200可以具有一到三十個邏輯分區(qū),其中每個分區(qū)具有其自己的操作系統(tǒng),如圖2所示。這是第一級虛擬化。
圖3是對CPC 200的附加層的說明,其中虛擬機(jī)管理程序?qū)?00共享被指定給其邏輯分區(qū)的資源,該資源諸如在虛擬機(jī)之間的物理的中央處理器單元或中央處理器(CP)116和存儲器118。該虛擬機(jī)管理程序管理單個分區(qū)198內(nèi)的資源。所示出的CP 116和存儲器118僅是被指定給虛擬機(jī)管理程序300正在其中運(yùn)行的那個分區(qū)的那些CP和存儲器。圖3說明了具有被指定給虛擬機(jī)管理程序正在其中執(zhí)行的那個邏輯分區(qū)的多個處理器116的處理器。在這個例子中,分區(qū)的處理器116中的兩個處理器被該VM管理程序唯一地指定給標(biāo)識為MVS1的虛擬機(jī),而處理器116中的八個處理器在標(biāo)識為MVS2到MVS5的虛擬機(jī)之間共享。在圖3中,虛擬機(jī)管理程序300可以是例如z/VM管理程序。同樣,被指定給單個邏輯分區(qū)的HCA資源可以在由在該邏輯分區(qū)中執(zhí)行的虛擬機(jī)管理程序所管理的多個獨(dú)立的虛擬機(jī)之間共享。這是第二級虛擬化。
為了減輕與EQ輪詢相關(guān)聯(lián)的開銷,利用了這樣一種機(jī)制,其中HCA120可以發(fā)送I/O類中斷請求,其被稱為適配器中斷。當(dāng)EQ 206從空狀態(tài)轉(zhuǎn)換到非空狀態(tài)時,可以請求這樣的中斷。適配器中斷將主動權(quán)提供給該程序以處理所有的完成事件(記錄在相關(guān)聯(lián)的CQ 204的CQE 205中)和/或記錄在EQ 206中的未完成事件。
該程序?qū)⒗^續(xù)處理所記錄的事件直到處理完所有事件,并且該程序?qū)⒃揈Q 206放置回空狀態(tài)。注意,當(dāng)EQ 206處于非空狀態(tài)時,假設(shè)該程序具有主動權(quán)。當(dāng)該程序具有主動權(quán)時,期望該程序識別EQ 206中任何新的EQE 207的到來。因此,適配器可以識別新的事件完成并且添加新的EQE 207,同時禁止生成新的適配器中斷。
概要指示符ASB 208和PSB 210還可以與EQ 206或EQ組相關(guān)聯(lián)以方便該程序和機(jī)器識別需要處理哪些EQ。無論何時該HCA將EQE 207記錄在與概要指示符ASB 208或PSB 210相關(guān)聯(lián)的EQ 206中,該指示符都被設(shè)置成非零值。當(dāng)該程序獲得開始消費(fèi)EQE 207的主動權(quán)時,它首先將概要指示符ASB 208設(shè)置成零值,從而不會丟失主動權(quán)。
通過利用包括所討論的附加虛擬化EQ 206級的這種HCA資源層級,用于客戶完成事件的EQE 207被直接記錄在擁有該事件的客戶所擁有的EQ 206中,提供了在大量客戶間的非常有效的EQE 207遞送。這涉及在HCA 120、zSeries固件以及z/VM管理程序300之間的協(xié)作。
虛擬機(jī)管理程序300針對它正在其中執(zhí)行的邏輯分區(qū),給每個HCA120分配兩個EQ 206。第一(或類型-1)EQ 206a用于記錄客戶的正常(也即完成)事件,而第二(也即類型-2)EQ 206b用于記錄客戶的例外(也即未完成事件)。虛擬機(jī)管理程序300還使唯一的ASB 208與每個類型-2EQ 206b相關(guān)聯(lián)。通過由z/VM管理程序300初始化的一組控制塊,其中為每個客戶EQ 206設(shè)置一個控制塊,被分配給一個HCA 120的所有客戶EQ 206都與該HCA的類型-1 EQ 206a相關(guān)聯(lián)。
當(dāng)分配類型-1 EQ 206a時,該固件確保唯一的PSB 210與該邏輯分區(qū)的類型-1 EQ 206a中的每一個相關(guān)聯(lián)。當(dāng)分配類型-2 EQ 206b時,該固件確保單個PSB 210與該邏輯分區(qū)的所有類型-2 EQ 206b相關(guān)聯(lián)。
當(dāng)在類型-1 EQ 206a中記錄EQE 207時,該HCA 120將與該類型-1EQ 206a相關(guān)聯(lián)的所有PSB 210設(shè)置成非零值,并且發(fā)送適配器中斷請求。該固件對適配器中斷請求的響應(yīng)是將EQE 207轉(zhuǎn)發(fā)給擁有該事件的客戶的EQ 206,并且基于該客戶的EQ 206和中斷控制來設(shè)置客戶ASB208,并且將適配器中斷提交給該客戶。固件使用PSB 210來標(biāo)識哪些類型-1 EQ 206a包含需要轉(zhuǎn)發(fā)的EQE 207,并且使用那些EQE 207中的信息來標(biāo)識該轉(zhuǎn)發(fā)應(yīng)該發(fā)生到哪個客戶EQ 206。該固件還使用使客戶EQ206與主機(jī)類型-1 EQ 206a相關(guān)聯(lián)的虛擬機(jī)管理程序存儲器中的控制塊來確定客戶EQ 206a的位置。該固件還使用z/VM控制塊來使客戶適配器中斷掛起。
當(dāng)在類型-2 EQ 206b中記錄EQE 207時,HCA 120將與類型-2 EQ206b相關(guān)聯(lián)的所有PSB 210設(shè)置成非零值,將與類型-2 EQ 206b相關(guān)聯(lián)的唯一的ASB 208設(shè)置成非零值,并且發(fā)送適配器中斷請求。該固件對適配器中斷請求的響應(yīng)是生成針對該分區(qū)的適配器中斷,其驅(qū)動z/VM管理程序300處理該事件(其可以包括在擁有該事件的客戶的EQ 206中生成EQE 207,并且設(shè)置該客戶ASB,并且使客戶適配器中斷掛起)。虛擬機(jī)管理程序300使用ASB 208來標(biāo)識哪些類型-2 EQ 206b包含需要轉(zhuǎn)發(fā)的EQE 207。
在LPAR和可分頁虛擬機(jī)(z/VM)環(huán)境中,用于HCA的QDIO適配器中斷可以進(jìn)行非常有效的擴(kuò)展。由IBM提供的QDIO適配器為大家所公知,并且將不再進(jìn)一步討論它。與邏輯分區(qū)所擁有的HCA資源相關(guān)聯(lián)的適配器中斷可以被直接路由給那個邏輯分區(qū),而無需LPAR管理程序220的干預(yù)。類似地,與客戶所擁有的HCA資源相關(guān)聯(lián)的適配器中斷可以被直接路由給那個虛擬機(jī),而無需LPAR管理程序220和虛擬機(jī)管理程序300的干預(yù)。與其說排隊是關(guān)于客戶是否在運(yùn)行的函數(shù),倒不如說中斷到客戶的提交是關(guān)于客戶是否在運(yùn)行的函數(shù)。
在圖4、圖5和圖6中說明了用于邏輯分區(qū)的InfiniBand主機(jī)通道適配器中斷,這些圖放到一起時形成了用于邏輯分區(qū)的主機(jī)通道適配器中斷的流程圖,其在包括HCA事件通告的事件序列的上下文中被最佳地理解。在圖4中開始,在401處,適配器-事件描述記錄函數(shù)開始。在402處,針對完成事件進(jìn)行檢查。當(dāng)在402處HCA識別出完成事件時,在404處進(jìn)行檢查以檢查該完成事件是否與發(fā)送CQ相關(guān)聯(lián),并且在408處進(jìn)行檢查以確定該完成事件是否與接收CQ相關(guān)聯(lián)。在與包含工作請求的QP相關(guān)聯(lián)的CQ(406用于發(fā)送CQ而410用于接收CQ)中記錄CQE。在412處進(jìn)行檢查以確定與該CQ相關(guān)聯(lián)的EQ是否已經(jīng)包含針對那個CQ的完成事件的EQE。如果在412處的檢查結(jié)果為“是”,則不采取任何動作。如果在412處的檢查結(jié)果為“否”,則在414中將這樣的EQE加到EQ,并且該程序進(jìn)行到圖5。
在416處進(jìn)行檢查以確定是否識別出針對QP或CQ資源的未完成事件。如果在416處的檢查結(jié)果為“否”,則不采取任何動作。如果在416處的檢查結(jié)果為“是”,則在418處進(jìn)行檢查以確定與該資源相關(guān)聯(lián)的EQ是否已經(jīng)包含用于針對該QP或CQ資源的未完成事件的EQE。如果在418處的檢查結(jié)果為“是”,則不采取任何動作。如果在418處的檢查結(jié)果為“否”,則在420處將這樣的EQE加到EQ。該程序接著進(jìn)行到圖5。
圖5說明用于給出適配器概要指示的程序,并且始于500處。在502處進(jìn)行檢查以確定ASB是否與該EQ相關(guān)聯(lián)。如果在502處的檢查結(jié)果為“是”,則在504處將該ASB設(shè)置為非零值。在506處進(jìn)行檢查以確定PSB是否與該EQ相關(guān)聯(lián)。如果檢查結(jié)果為“是”,則在508處將與該EQ相關(guān)聯(lián)的PSB設(shè)置成非零值。該程序接著進(jìn)行到圖6。
圖6說明適配器中斷,并且始于600處。在602處進(jìn)行檢查以確定,在記錄EQE時該EQ中是否存在針對完成事件的EQE。如果在602處的檢查結(jié)果為“是”,則在604處進(jìn)行檢查以確定該EQ控制是否規(guī)定立即中斷。如果在604處的檢查結(jié)果為“否”,則不使任何適配器中斷掛起,并且在612處HCA繼續(xù)。如果在602處在記錄EQE時該EQ中存在針對完成事件的EQE,則基于在608處確定的中斷延遲定時器的狀態(tài)可能使適配器中斷掛起或者可能不使適配器中斷掛起。如果在608處的中斷定時器未準(zhǔn)備好用于中斷,則在612處HCA繼續(xù)。如果在608處的檢查結(jié)果指示中斷定時器時間準(zhǔn)備好用于中斷,則在610處使該適配器中斷掛起。如果在602處在記錄EQE時該EQ中不存在針對完成事件的EQE并且在604處該EQ控制規(guī)定了立即中斷,則在610處發(fā)送適配器中斷請求并且在與該EQ相關(guān)聯(lián)的Izone和ISC上使該適配器中斷請求掛起。在612處,HCA接著繼續(xù)。
應(yīng)該理解,當(dāng)識別出適配器中斷時或者當(dāng)程序具有主動權(quán)時,程序可以使用相關(guān)聯(lián)的ASB來確定哪些EQ包含需要處理的EQE。這可能導(dǎo)致當(dāng)中斷被提交時不會產(chǎn)生新的工作,但是這是所期望的。
現(xiàn)在將描述用于可分頁虛擬機(jī)的InfiniBand主機(jī)通道適配器中斷?;氐綀D2,用于可分頁虛擬機(jī)的適配器中斷利用類型-1 EQ 206a和類型-2EQ 206b。由主機(jī)程序(處于主機(jī)存儲器中)代表該通告的一個或多個客戶將類型-1 EQ 206a分配給這種與客戶CQ 204相關(guān)聯(lián)的完成事件和未完成事件的客戶。類型-1 EQ 206a被機(jī)器使用來將HCA 120記錄的EQE 207轉(zhuǎn)發(fā)給相應(yīng)的客戶EQ 206。如果客戶ASB 208與客戶EQ 206相關(guān)聯(lián),則在將EQE 207從類型-1 EQ 206a轉(zhuǎn)發(fā)到客戶EQ 206時,機(jī)器設(shè)置ASB208。
由主機(jī)程序(位于主機(jī)存儲器中)代表不與客戶CQ 204相關(guān)聯(lián)的未完成事件的通告的一個或多個客戶來分配類型-2 EQ 206b,。無論何時HCA 120在類型-2 EQ 206b中記錄EQE 207,都立即在與該EQ 206相關(guān)聯(lián)的Izone和ISC上使適配器中斷掛起。當(dāng)識別出適配器中斷時,主機(jī)負(fù)責(zé)處理類型-2 EQ 206b中的EQE 207。這種處理可以包括將EQE 207轉(zhuǎn)發(fā)給客戶EQ 206。在前面所解釋的,Izone標(biāo)識哪個邏輯分區(qū)將接收中斷,并且ISC定義中斷優(yōu)先權(quán)。
圖7和圖8說明兩種主機(jī)結(jié)構(gòu),用于將客戶CQ 204上下文與位于客戶存儲器中的客戶EQ 206和客戶ASB 208相關(guān)聯(lián),并且與位于主機(jī)存儲器中的客戶中斷狀態(tài)區(qū)域(GISA)900(見圖9)相關(guān)聯(lián)。圖7說明客戶EQ聯(lián)系文件(GEQA)700,并且圖8說明客戶EQ控制塊(GEQCB)800。該GEQA 700包括指向GEQCB 800的指針702和原始客戶CQ令牌704。該GEQCB 800包括指向GISA的指針802、GISC804、指向客戶ASB的指針806、以及指向下一個要使用的客戶EQE的指針808。在圖9中示出了GEQA、GEQCB以及客戶和主機(jī)HCA資源之間的關(guān)系。
現(xiàn)在將描述分配和構(gòu)建圖9的關(guān)系的方式以及資源分配和結(jié)構(gòu)初始化。當(dāng)客戶發(fā)出ALLOCATE指令來分配HCA資源時,該指令被主機(jī)截取。這允許主機(jī)將客戶資源鎖定在主機(jī)存儲器中,并且在適配器資源上下文、主機(jī)結(jié)構(gòu)以及類型-1 EQ 206a和類型-2 EQ 206b之間建立如下所述的附加關(guān)聯(lián)。
圖10和11放在一起形成了由主機(jī)完成的函數(shù)的流程圖。當(dāng)截取到標(biāo)明EQ分配的客戶ALLOCATE指令時,主機(jī)完成以下作為模擬客戶ALLOCATE的一部分的始于1100處的任務(wù)。在1000處,主機(jī)分配GEQCB 800,在1002處初始化GISA指針802以指向用于該客戶的GISA900,以及在1004處根據(jù)客戶原先規(guī)定的值來初始化規(guī)定的GISC值804。在1006處進(jìn)行檢查以確定該客戶是否是為該規(guī)定的適配器分配EQ的第一客戶。如果在1006處的檢查結(jié)果為“是”,則主機(jī)發(fā)出兩次ALLOCATE,以在1008處為適配器分配類型-1 EQ 206a以及在1010處為適配器分配類型-2 EQ 206b。在圖11的1102處,主機(jī)還規(guī)定用于這些EQ的主機(jī)ISC,并且在1104處發(fā)出STORE指令以將唯一的主機(jī)ASB 208與類型-2 EQ206b相關(guān)聯(lián)。(沒有主機(jī)ASB與類型-1 EQ相關(guān)聯(lián))。當(dāng)在1008處主機(jī)發(fā)出ALLOCATE以分配類型-1 EQ時,在1012處機(jī)器將唯一的PSB 210與類型-1 EQ 206a相關(guān)聯(lián)。當(dāng)在1010處主機(jī)發(fā)出ALLOCATE以分配類型-2 EQ時,在1014處機(jī)器將對于所有類型-2 EQ是公共的單個PSB 210與類型-2 EQ 206b相關(guān)聯(lián)。在1106處,主機(jī)給客戶指定用于客戶EQ 206的資源標(biāo)識符值,該值大于HCA 120中應(yīng)用的任何標(biāo)識符值。這將保證由客戶所執(zhí)行的標(biāo)明EQ 206的未來的STORE和LOAD指令將被截取到主機(jī)。
圖12形成這樣的程序的流程圖,該程序當(dāng)截取到標(biāo)明CQ分配的客戶ALLOCATE指令時,主機(jī)完成作為模擬客戶ALLOCATE的一部分的圖12的函數(shù)。在1200處,主機(jī)分配GEQA。在1202處,主機(jī)代表客戶重新發(fā)出ALLOCATE,并且規(guī)定解釋執(zhí)行控制,其導(dǎo)致對規(guī)定實際存儲區(qū)類型的客戶STORE和LOAD指令的截取。在1204處,主機(jī)發(fā)出STORE指令以將CQ令牌設(shè)置成該CQ的GEQA的地址。在1206處,進(jìn)行檢查以確定客戶是否發(fā)出STORE指令來設(shè)置CQ令牌值。如果檢查結(jié)果為“是”,則在1208處截取指令并且在GEQA 700中存儲客戶CQ令牌值702。在1210處,進(jìn)行檢查以確定客戶是否發(fā)送STORE指令以使EQ與CQ相關(guān)聯(lián)。如果檢查結(jié)果為“是”,則在1212處截取指令并且在GEQA 700中存儲指向EQ 702的GEQCB的指針。
圖13是提供這樣的函數(shù)的流程圖,該函數(shù)當(dāng)客戶發(fā)出STORE指令以使ASB與其EQ相關(guān)聯(lián)時,截取指令,并且在1330處主機(jī)鎖定包含客戶ASB的頁,并且在1302處將ASB 208的主機(jī)地址放置在804處的GEQCB 800。
圖14是提供這樣的函數(shù)的流程圖,該函數(shù)當(dāng)截取到標(biāo)明QP分配的客戶ALLOCATE指令時,在1400處主機(jī)代表客戶重新發(fā)出ALLOCATE,并且規(guī)定解釋執(zhí)行控制,其導(dǎo)致對規(guī)定實際存儲區(qū)域類型的客戶存儲和裝載指令的截取。
圖15是提供這樣的函數(shù)的流程圖,該函數(shù)當(dāng)客戶發(fā)出STORE以使EQ與QP相關(guān)聯(lián)時,截取指令,并且主機(jī)代表客戶重新發(fā)出STORE,規(guī)定針對適配器的類型-2 EQ 206到客戶QP 202的關(guān)聯(lián)?,F(xiàn)在將描述針對可分頁虛擬機(jī)的主機(jī)通道適配器事件通告。在包括客戶HCA事件通告的事件序列的上下文環(huán)境中,可以最佳地理解針對可分頁虛擬機(jī)的主機(jī)通道適配器中斷。
圖16形成針對邏輯分區(qū)的虛擬機(jī)(也即客戶)HCA事件通告的流程圖。在1600處,HCA完成檢查以確定是否由HCA識別完成事件。如果在1600處的檢查結(jié)果為“是”,則在1602處將CQE 205記錄在與包含工作請求的客戶QP 202相關(guān)聯(lián)的客戶(發(fā)送或接收)CQ 204中。在1604處進(jìn)行檢查以確定與CQ 204相關(guān)聯(lián)的類型-1 EQ 206a是否已經(jīng)包含針對該CQ的完成事件的EQE 207。如果在1604處的檢查結(jié)果為“是”,則HCA不采取任何動作。如果在1604處的檢查結(jié)果為“否”,則在1606處將EQE 207添加到類型-1 EQ 206a。在1608處,將相關(guān)聯(lián)的PSB設(shè)置成非零值。在1610處,針對主機(jī)發(fā)送適配器中斷請求,并且在1612處,在EQ中分配ISC。接著HAS前往圖17。
如果在1600處的檢查結(jié)果為“否”,則在1616處進(jìn)行檢查以確定與資源相關(guān)聯(lián)的類型-2 EQ 206b是否已經(jīng)包含針對QP 202或CQ 204資源的未完成事件的EQE 207。如果在1616處的檢查結(jié)果為“是”,則HCA不采取任何動作。如果在1616處的檢查結(jié)果為“否”,則在1618處將EQE207添加到EQ 206。
如果在1618處將針對未完成事件的EQE 207添加到類型-2 EQ206b,則在1620處將與EQ 206相關(guān)聯(lián)的ASB 208設(shè)置成非零值。(類型-1 EQ沒有相關(guān)聯(lián)的ASB)。當(dāng)將EQE 207添加到類型-2 EQ 206b時,在1622處將相關(guān)聯(lián)的PSB設(shè)置成非零值,并且前往圖17。
現(xiàn)在將討論主機(jī)適配器中斷。如果將EQE 207添加到類型-1 EQ206a,則在1610處針對主機(jī)發(fā)送適配器中斷請求,并且在1612處將ISC分配給EQ 206,并且HCA前往圖17。當(dāng)在1618處將EQE 207添加到類型-2 EQ 206b時,在1624處基于分配給該類型-2 EQ 206b的主機(jī)ISC發(fā)送中斷請求并使該中斷請求掛起,并且HCA繼續(xù)。
圖17形成由機(jī)器針對來自圖16的完成事件所執(zhí)行的附加動作的流程圖。客戶適配器-事件描述記錄如下所示。使用在類型-1 EQ 206a中的下一個EQE 207,將EQ 206轉(zhuǎn)發(fā)給(被記錄在)客戶EQ 206。在1700處,被記錄在EQE 207中的CQ令牌704是主機(jī)存儲器中的GEQA 700的地址。在1702處,GEQA 700包含指向客戶EQ 206的GEQCB 702的指針。在1704處,GEQCB 800包括指向下一個待使用的客戶EQE的指針808。這個指針的值被保留并且指針前進(jìn)指向下一個EQE 207以阻止其他CPU同時使用相同的EQE。在1708處,將類型-1 EQ 206a復(fù)制到客戶EQE 207并且將GEQA 700中的原始客戶CQ令牌值704復(fù)制到客戶EQE 207中的CQ令牌域704。
現(xiàn)在將討論客戶適配器-概要指示記錄。在1710處進(jìn)行檢查以確定客戶ASB是否與客戶EQ相關(guān)聯(lián)。如果在1710處的檢查結(jié)果為“是”,(指向GEQCB 800中的客戶ASB 806的指針是非零),則在1712處將客戶ASB設(shè)置成非零值。
現(xiàn)在將討論客戶適配器中斷。在1714處,針對圖9中所示出的GISA900中的客戶,使適配器中斷掛起,在圖9中所示出的GISA 900針對由GEQCB 800中的GISA指針802所標(biāo)識的客戶。這是通過對GISA 900中的客戶中斷子類(GISC)比特進(jìn)行設(shè)置來實現(xiàn)的,該GISA 900對應(yīng)于與客戶EQ 206相關(guān)聯(lián)的GISC。當(dāng)在GISA 900中已經(jīng)使中斷掛起之后,在1716處由機(jī)器基于每個客戶I/O和中斷子類使能(enablement)將中斷提交給客戶。如果在GISA中的相應(yīng)的告警屏蔽比特是“1”,則對主機(jī)做出告警中斷。
本發(fā)明的性能可以以軟件、固件、硬件或它們的某些組合來實現(xiàn)。
作為一個例子,本發(fā)明的一個或多個方面可以被包括在制造品中(例如,一個或多個計算機(jī)程序產(chǎn)品),其具有例如計算機(jī)可用的介質(zhì)。該介質(zhì)具有在其中包含的例如計算機(jī)可讀程序代碼工具,該工具用于提供并促進(jìn)本發(fā)明的各性能。該制造品可以作為計算機(jī)系統(tǒng)的一部分被包括或者可被單獨(dú)出售。
此外,可以提供至少一個機(jī)器可讀的程序存儲設(shè)備,該程序存儲設(shè)備具體包含至少一個可由機(jī)器執(zhí)行以完成本發(fā)明的性能的指令程序。
這里所描繪的流程圖僅作示例。在不偏離本發(fā)明的精神的條件下,可以對這里所描述的這些圖或步驟(或操作)做出許多改變。例如,可以以不同的順序來執(zhí)行各步驟,或者可以添加、刪除或修改步驟。所有這些變型都被認(rèn)為是所主張的本發(fā)明的一部分。
盡管已經(jīng)描述了本發(fā)明的優(yōu)選實施例,但是應(yīng)當(dāng)理解,現(xiàn)在和將來,本領(lǐng)域的普通技術(shù)人員可以做出各種各樣的改進(jìn)和增強(qiáng),其屬于后續(xù)權(quán)利要求書的范圍。這些權(quán)利要求應(yīng)該被理解成用于對首次描述的本發(fā)明維持合適的保護(hù)。
權(quán)利要求
1.一種提供兩級服務(wù)器虛擬化的方法,其包括通過第一管理程序提供第一級虛擬化,使得多個邏輯分區(qū)能夠共享一組資源;通過第二管理程序提供第二級虛擬化,使得多個獨(dú)立的虛擬機(jī)能夠共享所述被指定給單個邏輯分區(qū)的資源;將針對所述單個邏輯分區(qū)中的所有虛擬機(jī)的所有事件歸類為單個分區(qū)所擁有的事件隊列,以便從該單個邏輯分區(qū)的共享的資源接收事件通告;以及針對來自所述分區(qū)所擁有的事件隊列的歸類事件,發(fā)送中斷請求,用于將來自所述分區(qū)所擁有的事件隊列的歸類事件解復(fù)用到基于每個虛擬機(jī)分配的各個虛擬化事件隊列。
2.根據(jù)權(quán)利要求1所述的方法,還包括將在所述分區(qū)所擁有的事件隊列中的事件歸類為完成事件和未完成事件。
3.根據(jù)權(quán)利要求2所述的方法,還包括使在所述事件隊列中的事件與存儲在所述邏輯分區(qū)中的適配器概要字節(jié)相關(guān)聯(lián)。
4.根據(jù)權(quán)利要求2所述的方法,還包括使在所述事件隊列中的事件與存儲在所述服務(wù)器的主存儲器的硬件存儲區(qū)中的唯一的主概要字節(jié)相關(guān)聯(lián)。
5.根據(jù)權(quán)利要求3所述的方法,還包括將所述事件隊列中的條目轉(zhuǎn)發(fā)給擁有所述事件的客戶;緊隨所述客戶已經(jīng)配置了所述適配器概要字節(jié)之后,設(shè)置所述客戶的相關(guān)聯(lián)的適配器概要字節(jié);以及當(dāng)所述客戶已經(jīng)請求客戶適配器中斷時,使所述客戶適配器中斷掛起。
6.一種提供兩級服務(wù)器虛擬化的系統(tǒng),其包括第一管理程序,其提供第一級虛擬化,使得多個邏輯分區(qū)能夠共享一組資源;第二管理程序,其提供第二級虛擬化,使得多個獨(dú)立的虛擬機(jī)能夠共享所述被指定給單個邏輯分區(qū)的資源;在單個邏輯分區(qū)中的單個分區(qū)所擁有的事件隊列,用于將針對所述單個邏輯分區(qū)中的所有虛擬機(jī)的所有事件歸類起來,以便從該單個邏輯分區(qū)的共享的資源接收事件通告;以及中斷信號生成器,其生成針對來自所述分區(qū)所擁有的事件隊列的歸類事件的中斷請求,用于將來自所述分區(qū)所擁有的事件隊列的歸類事件解復(fù)用到基于每個虛擬機(jī)分配的各個虛擬化事件隊列。
7.根據(jù)權(quán)利要求6所述的系統(tǒng),還包括在所述分區(qū)所擁有的事件隊列中的完成隊列和未完成隊列,用于將事件分類為完成事件和未完成事件。
8.根據(jù)權(quán)利要求7所述的系統(tǒng),還包括存儲在所述邏輯分區(qū)中的適配器概要字節(jié),其與所述事件隊列中的事件相關(guān)聯(lián)。
9.根據(jù)權(quán)利要求7所述的系統(tǒng),還包括存儲在所述服務(wù)器的主存儲器的硬件存儲區(qū)中的唯一的主概要字節(jié),其與所述事件隊列中的事件相關(guān)聯(lián)。
10.根據(jù)權(quán)利要求8所述的系統(tǒng),還包括轉(zhuǎn)發(fā)函數(shù),其響應(yīng)于所述中斷請求將所述事件隊列中的條目轉(zhuǎn)發(fā)給擁有所述事件的客戶;設(shè)置函數(shù),其緊隨所述客戶已經(jīng)配置了所述適配器概要字節(jié)之后,設(shè)置所述客戶的相關(guān)聯(lián)的適配器概要字節(jié);以及中斷函數(shù),其在所述客戶已經(jīng)請求客戶適配器中斷時,使所述客戶適配器中斷掛起。
11.一種計算機(jī)數(shù)據(jù)結(jié)構(gòu),其包括計算機(jī)可讀取的介質(zhì),其具有記錄在其上的計算機(jī)可讀取數(shù)據(jù)結(jié)構(gòu),所述數(shù)據(jù)結(jié)構(gòu)包括由提供第一級虛擬化的第一管理程序建立的多個邏輯分區(qū),所述多個邏輯分區(qū)用于共享一組資源;由提供第二級虛擬化的第二管理程序指定給單個邏輯分區(qū)的多個獨(dú)立的虛擬機(jī),所述虛擬機(jī)用于共享所述的那組資源;以及單個分區(qū)所擁有的事件隊列,用于從該單個邏輯分區(qū)的共享資源接收事件通告,由此對針對所述單個邏輯分區(qū)中的所有虛擬機(jī)的所有事件進(jìn)行歸類,其中針對來自所述分區(qū)所擁有的事件隊列的歸類事件發(fā)送中斷請求,提供將來自所述分區(qū)所擁有的事件隊列的歸類事件解復(fù)用到基于每個虛擬機(jī)分配的各個虛擬化隊列。
12.根據(jù)權(quán)利要求11所述的數(shù)據(jù)結(jié)構(gòu),其中所述分區(qū)所擁有的事件隊列被分為針對完成事件的第一類隊列和針對未完成事件的第二類隊列。
13.根據(jù)權(quán)利要求12所述的數(shù)據(jù)結(jié)構(gòu),還包括存儲在所述邏輯分區(qū)中的適配器概要字節(jié),所述適配器概要字節(jié)與所述事件隊列中的事件相關(guān)聯(lián)。
14.根據(jù)權(quán)利要求11所述的數(shù)據(jù)結(jié)構(gòu),還包括存儲在所述服務(wù)器的主存儲器的硬件存儲區(qū)中的唯一的主概要字節(jié),所述主概要字節(jié)與所述事件隊列中的事件相關(guān)聯(lián)。
15.根據(jù)權(quán)利要求13所述的數(shù)據(jù)結(jié)構(gòu),還包括在擁有所述事件的客戶的事件隊列中且響應(yīng)于所述中斷請求被轉(zhuǎn)發(fā)給所述客戶的條目;所述客戶的相關(guān)聯(lián)的適配器概要字節(jié),其緊隨所述客戶已經(jīng)配置了所述適配器概要字節(jié)之后進(jìn)行設(shè)置。
全文摘要
一種用于提供兩級服務(wù)器虛擬化的方法、系統(tǒng)、程序產(chǎn)品和計算機(jī)數(shù)據(jù)結(jié)構(gòu)。第一管理程序使多個邏輯分區(qū)能夠共享一組資源并且提供第一級虛擬化。第二管理程序使多個獨(dú)立的虛擬機(jī)能夠共享被指定給單個邏輯分區(qū)的資源并且提供第二級虛擬化。針對在所述單個邏輯分區(qū)內(nèi)的所有虛擬機(jī)的所有事件被歸類為單個分區(qū)所擁有的事件隊列,以便從該單個邏輯分區(qū)的共享的資源接收事件通告。針對來自分區(qū)所擁有的事件隊列的歸類事件,發(fā)送中斷請求,用于由機(jī)器將來自分區(qū)所擁有的事件隊列的歸類事件解復(fù)用到基于每個虛擬機(jī)分配的各個虛擬化事件隊列。
文檔編號G06F9/46GK101075198SQ20071010474
公開日2007年11月21日 申請日期2007年4月25日 優(yōu)先權(quán)日2006年5月17日
發(fā)明者G·E·西特曼三世, C·W·小蓋尼, D·L·奧西塞克, D·W·施米特, F·W·小布賴斯, J·R·伊斯頓, S·G·威爾金斯, U·C·恩喬庫, 陸坦 申請人:國際商業(yè)機(jī)器公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1