TWI463304B - 用於在一硬體管理控制台及一邏輯分割區間通信之以超管理器為基礎之設施 - Google Patents

用於在一硬體管理控制台及一邏輯分割區間通信之以超管理器為基礎之設施 Download PDF

Info

Publication number
TWI463304B
TWI463304B TW099106799A TW99106799A TWI463304B TW I463304 B TWI463304 B TW I463304B TW 099106799 A TW099106799 A TW 099106799A TW 99106799 A TW99106799 A TW 99106799A TW I463304 B TWI463304 B TW I463304B
Authority
TW
Taiwan
Prior art keywords
hypervisor
target
endpoint
request
source
Prior art date
Application number
TW099106799A
Other languages
English (en)
Other versions
TW201102805A (en
Inventor
Gary D Anderson
Curtis S Eide
Jonathan L Kaus
Steven E Royer
Original Assignee
Ibm
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US12/403,402 external-priority patent/US8230077B2/en
Application filed by Ibm filed Critical Ibm
Publication of TW201102805A publication Critical patent/TW201102805A/zh
Application granted granted Critical
Publication of TWI463304B publication Critical patent/TWI463304B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0712Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a virtual computing platform, e.g. logically partitioned systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)

Description

用於在一硬體管理控制台及一邏輯分割區間通信之以超管理器為基礎之設施
本發明大體而言係關於資料處理系統,且更特定言之,係關於一種在一經邏輯分割的資料處理系統之硬體管理控制台與邏輯分割區之間的以超管理器為基礎之通用通信設施。
此申請案主張2008年6月6日申請之題為「Virtual Real Memory」之美國臨時申請案第61/059,492號之權利,該案之全部內容以引用的方式併入本文中。
在複雜電腦系統資源之管理方面的一新近發展為對系統資源之邏輯分割。在概念上,邏輯分割意謂建立多個離散分割區,且將特定類型之系統資源指派至各別分割區。舉例而言,可藉由將不同處理器指派至不同分割區、藉由在一些分割區(而非其他)之間共用處理器、藉由指定對於正共用一組處理器之每一分割區而言可用的處理資源度量的量等等來分割多處理器系統之處理器資源。在一邏輯分割區內執行之任務僅可使用經指派至彼分割區之資源,而非經指派至另一分割區之資源。
一般地,藉由一體現為低層級經編碼可執行指令及資料之分割管理器來強制執行邏輯分割,雖然可能存在一定量的對邏輯分割之硬體支援(諸如,保存狀態資訊之專用硬體暫存器)。低層級程式碼函式及/或硬體阻止對分配至不同分割區之資源的存取。一般地,邏輯分割管理器之某一部分包括一用於管理強制執行邏輯分割之低層級程式碼函式的使用者介面。此邏輯分割管理器介面意欲供單一或一小群授權使用者(亦即,系統管理員)使用。在本文中使用時,此低層級邏輯分割程式碼稱為超管理器,且分割管理器介面稱為硬體管理控制台(HMC)。在資料處理系統之HMC與邏輯分割區之間的通信對於(例如)同時硬體維護、動態邏輯分割、清查收集(inventory collection)、虛擬輸入/輸出(I/O)器件映射等可為理想的。
在資料處理系統之HMC與邏輯分割區之間的一通信方法利用用於HMC與高強運算架構平台要求(PAPR)(亦即,分割區及LINUX分割區)之間之通信的以資源監視及控制(RMC)為基礎之設施。(為位於美國紐約阿蒙克(Armonk,New York,U.S.A.)之國際商業機器公司之註冊商標。本文中使用之其他名稱可為國際商業機器公司或其他公司之註冊商標、商標或產品名稱)。遺憾的是,RMC解決方案要求HMC與分割區之間的真實LAN連接。與真實LAN連接相關聯的是額外硬體要求(LAN配接器及電纜線)、額外組態任務(網路管理)及額外的潛在故障點(LAN連接)。
在本文中,在一態樣中提供一種在一經邏輯分割的資料處理系統之一硬體管理控制台與一邏輯分割區之間通信的電腦實施方法。該方法包括:由一源端點將該源端點之一請求或一回應作為貨物封裝於一泛用傳送基元中,該源端點為該資料處理系統之一硬體管理控制台或一邏輯分割區中之一者,其中該硬體管理控制台為用於分割管理之一使用者介面;及經由該資料處理系統之一超管理器將該泛用傳送基元自該源端點轉遞至一目標端點,其中該超管理器接收在該源端點處經封裝之該泛用傳送基元且將該泛用傳送基元之該貨物轉遞至該目標端點,該貨物包含該請求或該回應,且其中在由該超管理器進行之該接收及該轉遞中未由該超管理器對該貨物進行檢驗或剖析,且該目標端點為該資料處理系統之該邏輯分割區或該硬體管理控制台中之另一者。
在另一態樣中,提供一種經邏輯分割的資料處理系統。該經邏輯分割的資料處理系統包括:至少一處理器,其包含至少一邏輯分割區;至少一外部硬體管理控制台;及一超管理器,其使該至少一硬體管理控制台與該至少一邏輯分割區介面連接。每一硬體管理控制台為用於分割管理之一使用者介面。該超管理器包括用於經由該超管理器在該至少一硬體管理控制台與該至少一邏輯分割區之間通信的一通信設施。該通信包括:由一源端點將一請求或一回應作為貨物封裝於一泛用傳送基元中,該源端點為該至少一硬體管理控制台中之一硬體管理控制台或該至少一邏輯分割區中之一邏輯分割區;及經由該超管理器將該泛用傳送基元自該源端點轉遞至一目標端點,其中該超管理器接收在該源端點處經封裝之該泛用傳送基元且將該泛用傳送基元之該貨物轉遞至該目標端點,該貨物包括該源端點之該請求或該回應,且其中在由該超管理器進行之該接收及轉遞中未由該超管理器對該貨物進行檢驗或剖析,且該目標端點為該至少一邏輯分割區中之該邏輯分割區或該至少一硬體管理控制台中之該硬體管理控制台中的另一者。
在另一態樣中,提供一種包括至少一電腦可讀媒體之製品,該至少一電腦可讀媒體具有用以促進一經邏輯分割的資料處理系統之一硬體管理控制台與一邏輯分割區之間之通信的電腦可讀程式碼邏輯。當在一處理器上執行時,該電腦可讀程式碼邏輯執行以下動作:由一源端點將該源端點之一請求或一回應作為貨物封裝於一泛用傳送基元中,該源端點為該資料處理系統之一硬體管理控制台或一邏輯分割區中之一者,其中該硬體管理控制台為用於分割管理之一使用者介面;及經由該資料處理系統之一超管理器將該泛用傳送基元自該源端點轉遞至一目標端點,其中該超管理器接收在該源端點處經封裝之該泛用傳送基元且將該泛用傳送基元之該貨物轉遞至該目標端點,該貨物包含該源端點之該請求或該回應,且其中在由該超管理器進行之該接收及該轉遞中未由該超管理器對該貨物進行檢驗或剖析,且該目標端點為該資料處理系統之該邏輯分割區或該硬體管理控制台中之另一者。
另外,經由本發明之技術來實現額外特徵及優點。本發明之其他實施例及態樣在本文中詳細描述,且將其視為所主張之本發明的一部分。
特定地指出被視為本發明之標的物,且在說明書之結尾處的申請專利範圍中清楚地予以主張。自以下結合隨附圖式進行之詳細描述將顯而易見本發明之前述及其他目標、特徵及優點。
邏輯分割為一種用於將單一大型電腦系統劃分為多個分割區之技術,該等分割區中之每一者在一些方面像獨立電腦系統一樣運作。可以各種方式中之任一種來分配電腦系統資源以供該等分割區使用。一給定資源可經分配以供單一分割區專用,或可基於時間交錯或其他方式在所有分割區(或分割區之某一子群)之間共用。可將一些資源分配給各別特定分割區,而共用其他資源。可分割之資源的實例為中央處理器、主記憶體、I/O處理器及配接器,及I/O器件。將在經邏輯分割的電腦系統中執行之每一使用者任務指派至該等邏輯分割區中之一者(「在該分割區中執行」),此意謂著其僅可使用經指派至彼分割區之系統資源或資源部份,而非經指派至其他分割區之資源。
邏輯分割區實際上為邏輯的而非實體的。通用電腦通常具有實體資料連接,諸如在不同硬體組件之間延伸之匯流排,從而允許該等不同硬體組件彼此通信。此等硬體資源可由不同分割區共用及/或經分配至不同分割區。自實體組態之觀點而言,通常不關於邏輯分割區作出區別。一般地,藉由一體現為低層級經編碼可執行指令及資料之分割管理器來強制執行邏輯分割區,雖然可存在一定量的對邏輯分割區之硬體支援(諸如,保存狀態資訊之專用硬體暫存器)。系統之實體器件及其子組件通常實體地連接以允許通信而不考慮邏輯分割區,且自此硬體之觀點而言,無法阻止一在分割區A中執行之任務寫入至經分配至分割區B的記憶體或I/O器件。低層級程式碼函式及/或硬體阻止對經分配至其他分割區之資源的存取。
邏輯分割區約束之程式碼強制執行大體上意謂有可能改變經邏輯分割的電腦系統之邏輯組態,亦即,改變邏輯分割區之數目或重新指派資源至不同分割區而不重新組態硬體。一般地,邏輯分割管理器之某一部分包含一用於管理強制執行邏輯分割區之低層級程式碼函式的使用者介面。此邏輯分割管理器介面意欲供單一或一小群授權使用者(在本文中指明為系統管理員)使用。在本文中使用時,此低層級邏輯分割程式碼稱為「超管理器」,且分割管理器介面稱為「硬體管理控制台」。
對大型電腦系統之邏輯分割區具有若干潛在優點。如上文所提,其靈活性在於易於實現對資源之重新組態及重新分配而不改變硬體。其將任務或任務群組隔離,從而有助於防止任一任務或任務群組壟斷系統資源。其促進對提供至特定使用者之資源的調節;此在電腦系統由服務提供者所有之情況下為重要的,該服務提供者以按每次使用資源時計費的方式將電腦服務提供至不同使用者。其可使得單一電腦系統能夠同時支援多個作業系統及/或環境,因為每一邏輯分割區可執行不同之作業系統或環境。最後,任務及資源之隔離使得在一分割區中執行之處理程序更加難以存取另一分割區中之資源,由此提供較大之安全性及資料完整性。
參考諸圖式,其中相同數字貫穿若干視圖表示相同部分,圖1為具有多個實體硬體組件之可經邏輯分割的電腦系統100之特定硬體組件的高層級表示。在功能層級,系統100之主要組件在圖1中經展示為虛線輪廓;此等組件包括:一或多個中央處理單元(CPU)101、主記憶體102、服務處理器103、終端機介面106、儲存器介面107、其他I/O器件介面108及通信/網路介面109,所有該等組件經由一或多個匯流排105耦接以用於進行組件間通信。
CPU 101為一或多個通用可程式化處理器,其執行儲存於記憶體102中之指令;系統100可含有單一CPU或多個CPU(其中任一情況共同地由圖1中之特徵CPU 101表示),且可包括一或多個層級之機載快取記憶體(未圖示)。通常,一經邏輯分割的系統將含有多個CPU。記憶體102為一用於儲存資料及程式之隨機存取半導體記憶體。記憶體102在概念上為單一單塊實體,應理解,記憶體常常配置於快取記憶體及其他記憶體器件之階層架構中。另外,可將記憶體102劃分為與特定CPU或CPU組及特定匯流排相關聯之部分,如在各種所謂的非一致記憶體存取(NUMA)電腦系統架構之任一者中時。
服務處理器103為一用於初始化系統、維護及其他低層級功能之專用功能單元。大體而言,其不執行使用者應用程式,而CPU 101執行使用者應用程式。在一實施例中,服務處理器103及附接之硬體管理控制台(HMC)114尤其為系統管理員或類似人員提供一介面,從而允許人管理對系統100之邏輯分割區。
終端機介面106提供一用於附接一或多個使用者終端機121A至121C(統稱為121)之連接,且可以各種方式來實施該終端機介面106。許多大型伺服器電腦系統(大型主機)經由終端機介面I/O處理器(通常在一或多個電子電路卡上)而支援多個終端機之直接附接。或者,介面106可提供一至區域網路之連接,終端機121附接至該區域網路。各種其他替代方案係可能的。資料儲存器介面107提供至一或多個資料儲存器件122A至122C(統稱為122)之介面,該一或多個資料儲存器件可為旋轉磁性硬碟機單元,雖然可使用其他類型之資料儲存器件。I/O及其他器件介面108提供至各種其他輸入/輸出器件或其他類型之器件中之任一者之介面。在圖1之例示性實施例中展示兩個此等器件:印表機123及傳真機124,應理解,可存在許多其他此等器件(其可為不同類型)。通信介面109提供自系統100至其他數位器件及電腦系統之一或多個通信路徑;此等路徑可包括(例如)一或多個網路126(諸如,網際網路、區域網路或其他網路),或可包括遠端器件通信線路、無線連接等等。
匯流排105提供各種系統組件之間的通信路徑。雖然在圖1中表示單一概念性匯流排實體105,但應瞭解,典型電腦系統可具有多個匯流排,其通常以一複雜拓撲配置,諸如階層式星形或網狀組態中的點對點鏈路、多個階層式匯流排、平行及冗餘路徑等,且可存在用於傳達特定資訊(諸如,位址或狀態資訊)的單獨匯流排。在一實施例中,除用於作為正常資料處理操作之部分之資料通信的各種高速資料匯流排以外,使用I2C協定之特殊服務匯流排連接各種硬體單元,從而允許服務處理器或其他低層級處理程序獨立於高速資料匯流排而執行各種功能,諸如開機及關機、讀取識別硬體單元之資料等等。
通常自一或多個現場可替換單元建構主要實體單元。通常,此現場可替換單元(FRU)為一電子電路卡套組。然而,實體單元無需為電子電路卡套組。其可替代地為諸如磁碟機儲存器件122、終端機121、電源供應器等等之組件。另外,單一實體單元可在其中具有一或多個FRU。對於較大系統,單一主要功能組件(諸如,CPU 101或記憶體102)將通常包含呈電子電路卡套組之形式的多個實體單元,雖然替代性地,一個以上主要功能組件有可能駐留於單一實體單元中。在圖1中,CPU 101被表示為含有四個電路卡111A至111D,每一電路卡可含有一或多個處理器;記憶體102被表示為含有六個卡112A至112F;服務處理器103被表示為含有單一卡113;匯流排105被表示為含有三個卡115A至115C;終端機介面106被表示為含有三個卡116A至116C;儲存器介面107被表示為含有兩個卡117A至117B;I/O及其他介面108被表示為含有兩個卡118A至118B;且通信介面109被表示為含有兩個卡119A至119B。
應瞭解,圖1意欲在高層級描繪例示性資料處理系統100之代表性組件,個別組件可具有比圖1所表示之組件更大的複雜度,且此等功能單元及實體單元之數目、類型及組態可顯著不同。進一步應瞭解,並非圖1中所展示之所有組件可存在於一特定電腦系統中,且除彼等所展示組件以外亦可存在其他組件。儘管系統100經描繪為一具有多個終端機之多使用者系統,但系統100可替代性地為單一使用者系統,其通常僅含有單一使用者顯示器及鍵盤輸入。
圖2為展示電腦系統100中之在不同硬體及軟體抽象層級之邏輯分割區的存在的概念說明。圖2表示一具有可用於使用者應用程式之四個邏輯分割區204至207(指明為「分割區1」、「分割區2」等)的系統,應瞭解,分割區之數目可變化。如所熟知的,電腦系統為執行處理程序之順序狀態機。可在不同抽象層級處表示此等處理程序。在高抽象層級,使用者指定一處理程序及輸入,且接收一輸出。當進行至較低層級時,可發現此等處理程序為以某一程式設計語言編寫之指令序列,在繼續向下時該等指令序列被轉譯成較低層級指令序列,且通過經授權之內碼,且最終成為資料位元,該等資料位元被輸入機器暫存器中以促使執行特定動作。在一極低層級處,改變的電位引起各種電晶體接通及關斷。在圖2中,「較高」抽象層級被表示為朝向圖式之頂部,而較低層級被表示為朝向底部。
如圖2中所展示及早先所解釋,邏輯分割為一程式碼強制執行之概念。在硬體層級201處,不存在邏輯分割區。在本文中使用時,硬體層級201表示圖1中所展示之實體器件(而非儲存於器件中之資料)(諸如處理器、記憶體、匯流排、I/O器件等)的集合,其有可能包括未展示於圖1中之其他硬體。就CPU 101之處理器而言,其僅執行機器層級指令。在一實施例中,每一處理器為相同的且可為可互換的。雖然程式碼可指引特定分割區中之任務在特定處理器上執行,但在處理器自身中無法指定此指派,且事實上可藉由程式碼來改變該指派。因此,在圖2中硬體層級被表示為單一實體201,其自身在邏輯分割區之間並無區別。
藉由一分割管理器(稱為「超管理器」,其由一不可重定位不可分派部分202(亦稱為「不可分派超管理器」或「分割授權內碼」或「PLIC」)及一可重定位可分派部分203組成)來強制執行分割。超管理器為超級權限可執行程式碼,其能夠存取指派至任何分割區之資源(諸如,處理器資源及記憶體)。超管理器維護在各種專用硬體暫存器中及在通用記憶體中的表或其它結構中之狀態資料,該等資料控管邏輯分割區之邊界及行為。此狀態資料尤其定義了對邏輯分割區之資源分配,且藉由改變該狀態資料而非對硬體之實體重組態來改變該分配。
在一實施例中,不可分派超管理器202包含由CPU 101執行之不可重定位指令,正如用於在分割區中執行之任務的指令。該程式碼為不可重定位的,其意謂構成不可分派超管理器之程式碼位於記憶體中之固定真實位址處。不可分派超管理器202可存取系統100之整個真實記憶體範圍,且可操縱真實記憶體位址。可分派超管理器程式碼203(以及所有分割區)被包含在與一邏輯分割區指派有關之位址處,且因此此程式碼為可重定位的。可分派超管理器以與使用者分割區大致相同之方式運作(且因此,有時被指明為「分割區0」),但其對使用者而言為隱藏的且不可用於執行使用者應用程式。一般地,不可分派超管理器202處置對實體處理器之任務指派、記憶體映射及分割區強制執行,以及在經分割區系統中執行應用程式碼所需的類似必要分割區任務,而可分派超管理器203處置以維護為導向之任務,諸如建立及改變分割區定義。
如圖2中所表示,較高層級(在不可分派超管理器202之上的層級)與硬體層級201之間不存在直接路徑。雖然在較高層級處執行之任務之機器指令可直接在處理器上執行,但對硬體資源的存取由不可分派超管理器控制。不可分派超管理器202強制執行對處理器資源之邏輯分割區。亦即,較高層級處之任務分派器(各別作業系統)將任務分派至由邏輯分割區參數定義之虛擬處理器,且超管理器又將虛擬處理器分派至硬體層級201處之實體處理器以用於執行基礎任務。超管理器亦強制執行對其他資源之分割區(諸如,將記憶體分配至分割區),及將I/O投送至與恰當分割區相關聯之I/O器件。
可分派超管理器203執行並非任何分割區之管轄範圍(province)的許多輔助系統管理功能。可分派超管理器通常管理較高層級之分割管理操作,諸如建立及刪除分割區、同時硬體維護、將處理器、記憶體及其他硬體資源分配至各種分割區等。可分派超管理器尤其可處置對實體指示燈(indicator light)之存取。可分派超管理器203可包括視覺指示器221之狀態資料結構、至分割區之可分割實體分配222的狀態資料結構,及可分割實體位置223之狀態資料結構,其結合可分派超管理器程式碼而用以調節對實體指示燈之存取以及啟動及撤銷實體指示燈。
將特殊使用者互動介面提供至可分派超管理器203中,以供系統管理員、服務人員或類似有權限之使用者使用。在一實施例中,亦即,在系統100含有一服務處理器103及附接之硬體管理控制台114之情況下,HMC 114提供一至可分派超管理器的介面以用於服務及分割管理,且在本文中之描述中將如此假定。
在不可分派超管理器202之上為複數個邏輯分割區204至207。每一邏輯分割區(自在其內執行之處理程序的觀點而言)如同一獨立電腦系統(其具有其自身之記憶體空間及其他資源)而運作。每一邏輯分割區因此含有一各別作業系統核心,其在本文中識別為「OS核心」211至214。在OS核心層級及以上,每一分割區以不同方式運作,且因此圖2將OS核心表示為對應於四個不同分割區之四個不同實體211至214。一般地,每一OS核心211至214執行大致等效之功能。然而,不一定所有OS核心211至214為彼此之相同複本,且其可為架構上等效之作業系統的不同版本,或甚至可為架構上不同之作業系統模組。OS核心211至214執行各種任務管理功能,諸如任務分派、傳呼、強制多個任務間之資料完整性及安全性等等。
在每一各別分割區中之OS核心之上,可存在一組高層級作業系統函式,及使用者應用程式碼及資料(未圖示)。使用者可在OS核心層級之上建立程式碼,該程式碼調用高層級作業系統函式以存取OS核心,或該程式碼可直接存取OS核心。在IBM iTM 作業系統中,一使用者可存取的在架構上固定之「機器介面」形成OS核心(OS核心稱為「SLIC」)之上邊界,但應理解,不同之作業系統架構可以不同方式定義此介面,且將有可能使用邏輯分割區來在共同硬體平台上操作不同之作業系統。
視情況將邏輯分割區中之一者指明為服務分割區。在圖2中,將分割區205指明為服務分割區,其為經指派以供系統維護人員使用以執行各種管理及維護功能之分割區。該服務分割區可專門用於管理及維護功能,或其亦可用於使用者應用程式。然而,在系統100含有硬體管理控制台114(如圖1之所說明實施例中展示)之情況下,自硬體管理控制台而非服務分割區來執行大部分服務及維護功能。
如最初所提及,由本發明處理之基本問題為需要在經邏輯分割的資料處理系統之硬體管理控制台(HMC)與邏輯分割區之間的通用通信設施,該經邏輯分割的資料處理系統諸如為由美國紐約阿蒙克(Armonk,New York,U.S.A.)之國際商業機器公司提供的計算系統。作為特定市售實例,實施以超管理器為基礎之通信設施(諸如下文中所描述)的資料處理系統可基於見於IBM之p/i Series產品系列的韌體及系統體(systemware)中的技術(如在Power.org(http://www.power.org/members/developers/specs/PAPR_Version_2.7_09Oct07.pdf)處之「高強運算架構平台參考」(PAPR)材料中所描述,該材料特此以引用的方式併入本文中)來建置。(為國際商業機器公司(Armonk,New York,U.S.A.)之註冊商標。)本文中所呈現之通信設施可用於系統管理任務,諸如同時硬體維護、動態邏輯分割、清查收集(inventory collection)、虛擬I/O器件映射等。此以超管理器為基礎之通信設施為在HMC與邏輯分割區之間的通用、低等待時間、完全非同步通信方法。此與現有通信設施形成對比,現有通信設施為非通用的,抑或要求在HMC與邏輯分割區之間的額外實體連接(諸如,真實LAN連接及額外組態任務)。
大體而言,本文中呈現在HMC與邏輯分割區之間的通用、零維護、低等待時間、完全非同步之穩健通信設施,其在超管理器中實施。此超管理器實施之通信設施在本文中稱為超管理器管道。超管理器管道之通用性在於其並非特定針對HMC與超管理器之間(或超管理器與邏輯分割區之間)的任何特定類型或類別之命令或流(諸如動態邏輯分割區對虛擬I/O、非同步對同步等)。
在管道自身未意識到正於HMC與邏輯分割區之間流動之特定命令(亦即,請求及回應)的意義上,超管理器管道為零維護的。將該等特定命令看作駐留於流經超管理器管道之基本或泛用傳送基元中之貨物。超管理器辨識泛用傳送基元,但不檢驗或剖析包含於泛用傳送基元內之貨物。因此,當在HMC與邏輯分割區之間引入新命令流時,超管理器不受影響。
超管理器管道經設計以對通過管道之通信流造成最小的等待時間。由超管理器造成之等待時間主要為將該等通信流直接記憶體存取(DMA)至靈活服務處理器(FSP)(其為HMC與超管理器藉以進行通信之構件)或自靈活服務處理器(FSP)直接記憶體存取(DMA)該等通信流及將該等通信流DMA至邏輯分割區或自邏輯分割區DMA該等通信流所需的時間。由超管理器管道進行之處理主要為在一或多個HMC與一或多個邏輯分割區之間的投送、調整進度(pacing)及統計資料收集。
為了在最小化超管理器管道之系統資源要求(亦即,記憶體、緩衝器、任務)之同時最大化超管理器管道之輸送量,且防止一不良運作(亦即,未及時地回應)之邏輯分割區或HMC負面地影響其他分割區及HMC之輸送量,超管理器管道本質上為完全非同步的且針對每一邏輯分割區及每一HMC使用單獨之緩衝器集區(pool)。換言之,若HMC H1起始一至分割區P1之通信流,但P1極為忙碌或無反應(hung)且不回應,則超管理器在P1緩衝器集區未耗盡之情況下將通信流一直投送至P1,且接著對H1應答(之後若P1確實不回應,則H1可因等待來自P1之回應流而逾時),抑或在超管理器處之P1緩衝器集區耗盡的情況下,超管理器用忙碌狀態應答HMC H1。管道任務及超管理器不封鎖(block)對來自HMC或分割區之回應或應答的等待,且經由忙碌狀態或通信流自身之逾時而將處置無回應目標之責任傳遞回至通信流之來源。
本文中呈現之超管理器管道的穩健性在於不存在輸入/輸出(I/O)配接器及通信電纜,從而減少發生組態問題及硬體故障之機會。
因此,以超管理器為基礎之通信設施(亦即,超管理器管道)介接於經邏輯分割的資料處理系統之HMC(外部平台管理器件)與邏輯分割區之間。超管理器管道為一通用通信設施,使得其可處置HMC與邏輯分割區之間的許多類型或類別之流/命令。超管理器管道僅意識到基本傳送基元,而非在HMC與邏輯分割區之間流動之特定命令(請求或回應)(其被看作簡單貨物或額外資料),且因此每當將在HMC與邏輯分割區之間之新命令、請求或回應流引入至資料處理系統時,超管理器管道不受影響。超管理器管道能夠在一或多個HMC與一或多個邏輯分割區之間投送流,且不允許一無回應之分割區或HMC阻止流之傳送或負面地影響彼等來往於其他分割區或HMC之流的效能。
本文中呈現之通信設施優於上文所描述之習知RMC資源管理機制,因為其不要求每一HMC與邏輯分割區之間的單獨、實體LAN連接,藉此降低硬體要求(無LAN配接器)、組態努力(無網路管理、佈線)及故障率(無配接器或電纜故障)。然而,在每一HMC與由彼HMC管理之系統之間仍存在一網路連接。對於具有多個邏輯分割區之所管理系統,本文中呈現之通信設施與RMC資源管理機制相比表現出在網路額外負荷方面之潛在顯著降低。
圖3至圖5描繪根據本發明之態樣的超管理器管道的三個不同視圖。
在圖3中,呈現實體框架視圖,其中經邏輯分割的資料處理系統300包括多個邏輯分割區310(標記為P1、P2及P3)、包含本文中所描述之超管理器管道(或通信設施)325的超管理器320、靈活服務處理器330,及多個硬體管理控制台(HMC)340,該等HMC 340經由靈活服務處理器(FSP)330而網路連接至超管理器320。FSP 330與超管理器320之間的通信係經由直接記憶體存取(DMA),且超管理器與邏輯分割區亦經由一形式之分割區間DMA而通信。超管理器中之超管理器管道組件進行流投送、調整進度及統計資料收集。
圖4描繪資料處理系統300之較低層級邏輯視圖,其中HMC 340與超管理器320(或更特定地,超管理器管道325)經由FSP 330而建立邏輯HMC命令會期400。如所展示,在每一HMC與超管理器之間存在單一通信會期400。與每一HMC對超管理器會期400相關聯的是超管理器管道325內之訊息緩衝器集區405。如下文進一步解釋,此等訊息緩衝器用於實施HMC與邏輯分割區之間的以超管理器為基礎之通信設施。類似地,邏輯分割區與超管理器建立邏輯分割事件會期410,在該等邏輯分割事件會期410上經由泛用傳送基元而交換通信流。針對每一邏輯分割對超管理器會期410再次定義各別訊息緩衝器集區415。在操作中,超管理器剖析該等通用基元傳送命令以判定目標且在各別HMC與邏輯分割區之間移動貨物。
在一實施中,除泛用傳送基元以外,使用三種類型之會期管理請求,亦即,可在HMC與超管理器管道之間(以及超管理器管道中之每一邏輯分割區之間)使用開啟通信會期請求、關閉通信會期請求及交換能力請求。因此,在一實施例中,來自HMC或邏輯分割區之請求可包含開啟請求、交換能力請求、關閉請求或泛用傳送基元(在下文描述之邏輯流程中稱為HypePipe請求)。
圖5描繪資料處理系統300之較高層級之邏輯表示,其中本文中呈現之邏輯管道可被認為是經由資料處理系統之超管理器320而建立每一HMC 340與每一分割區310之間的點對點、邏輯HMC對分割區通信會期500。此圖為該通信框架在其最高層級處之概念視圖。HMC中之端點將通信流發送至邏輯分割區中之端點,且反之亦然。
圖6至圖10描繪用於實施一以超管理器為基礎之通信設施(諸如本文中所呈現)之超管理器(或超管理器管道)邏輯的一實施例,而圖11至圖13描繪根據本發明之態樣的可在HMC或邏輯分割區內實施的特定端點邏輯流程。
首先參看圖6,超管理器管道等待來自源端點之請求600。在本文中使用時,該源端點為HMC或邏輯分割區,且該請求可包含會期管理請求(諸如,開啟會期請求、交換能力請求或關閉會期請求)或超管理器管道(或HypePipe)請求。超管理器管道請求為本文中所描述之泛用或基本傳送基元。端點正是使用此基元來經由超管理器管道進行通信。在一實施例中,泛用傳送基元具有以下資料結構:
目標端點ID∣貨物長度∣貨物(經囊封之請求或回應通信)∣
超管理器初始判定接收到之源端點請求605是一開啟會期管理請求或是一交換能力會期管理請求610。若為任一者,則將源端點與超管理器之間的會期狀態設定為開啟615,且在超管理器內設定由源端點要求之能力620。將應答狀態(ACK狀態)設定為成功625,且將該應答(包括其狀態及經調整之能力)傳回至源端點630。若源端點請求並非開啟會期管理或交換能力會期管理請求,則超管理器判定該請求是否為關閉會期管理請求635。若是,則將源端點與超管理器之間的會期狀態設定為關閉640,且取消針對彼會期之任何排入佇列或待決請求645。超管理器將應答狀態設定為成功650,且將具有隨附狀態之應答發送回至源端點630,之後返回以等待下一源端點請求600。若源端點請求並非會期管理請求,則超管理器判定其是否為基本傳送基元(亦即,超管理器管道(或HypePipe)請求)。若「是」,則自查詢655起超管理器執行圖7之處理660(描述於下文),之後返回以等待下一源端點請求。若源端點請求並非會期管理請求或超管理器管道請求,則該請求為一未辨識之請求,且因此將應答狀態設定為錯誤665,且傳回具有一錯誤狀態之應答630。
假定超管理器管道接收到來自源端點之超管理器管道請求(亦即,泛用傳送基元),則執行圖7之邏輯流程。超管理器管道判定該泛用傳送基元是否具有可接受之貨物大小(亦即,具有小於或等於最大傳送單元(MTU)大小的大小)700。若「否」,則將應答狀態設定為MTU違規705,且超管理器返回770至圖6之邏輯。否則,超管理器判定目標端點識別是否為資料處理系統內之有效端點識別710。若「否」,則將應答狀態設定為一無效參數715,且超管理器返回770至圖6之邏輯。假定貨物大小及目標端點識別為可接受的,則超管理器判定目標訊息緩衝器集區是否為空720。若「是」,則將應答狀態設定為忙碌725,且超管理器返回770。否則,自目標訊息緩衝器集區取出一目標訊息緩衝器730,且在該目標訊息緩衝器中建置一新的超管理器管道請求(亦即,目標傳送基元),其包括將貨物自源超管理器管道請求(亦即,源傳送基元)複製至目標超管理器管道請求735。一旦建置了此目標傳送基元,超管理器就判定目標端點會期是否處於開啟狀態740。若「否」,則將應答狀態設定為會期關閉745,且超管理器返回770至圖6之邏輯。否則,超管理器判定其是否處於與目標端點交換能力之過程中(亦即,該會期狀態是需要交換能力或正等候能力應答)750。若「是」,則將應答狀態設定為忙碌755,且超管理器返回770至圖6之邏輯。否則,非同步地將目標傳送基元發送至目標端點760,且將應答狀態設定為成功765,之後處理返回770。
圖8描繪用於處理來自端點之應答之超管理器邏輯的一實施例。超管理器等待來自端點之應答800。一旦接收到一應答805,超管理器就判定該應答是否為交換能力應答810。若「是」,則超管理器判定該端點是否履行(honor)超管理器能力請求815。若「是」,則將端點對超管理器會期狀態設定為開啟820,且將在交換能力請求中使用之訊息緩衝器傳回至各別端點訊息緩衝器集區825。若端點並未履行超管理器能力,則僅將訊息緩衝器傳回至各別端點訊息緩衝器集區,而不將端點對超管理器會期狀態設定為開啟。在將訊息緩衝器傳回至超管理器管道中之對應端點訊息緩衝器集區之後,超管理器判定該會期狀態是否為需要交換能力會期狀態830。若「否」,則處理返回以等待來自端點之下一應答800。否則,執行圖9之邏輯835(描述於下文)。
若接收到之應答並非交換能力應答,則超管理器判定該應答是否為超管理器管道應答840。若「是」,則檢查該應答之隨附傳回狀態以查看其是否為一需要交換能力狀態845。若「是」,則將會期狀態設定為需要發送能力850,之後將端點訊息緩衝器傳回至對應端點訊息緩衝器集區。若接收到之應答並非交換能力或超管理器管道應答,則超管理器未能辨識該應答855,且返回以等待下一應答。
假定接收到之應答之會期狀態為需要交換能力,則自查詢830起,執行圖9之邏輯835。此邏輯執行超管理器管道與對應端點(與之建立了通信會期)之間的能力交換。回應於經設定為需要交換能力之一通信會期狀態,超管理器自對應訊息緩衝器集區獲得一端點訊息緩衝器900,且在彼訊息緩衝器中建置一交換能力請求905。接著將超管理器之通信會期狀態設定為等候能力應答910,且超管理器非同步地將交換能力請求發送至通信會期之各別端點915,之後返回至該邏輯被呼叫時所在之邏輯流程920。
圖10描繪用於處理資料處理系統內之能力改變事件之邏輯的一實施例。在發生了一能力改變事件時1000,考慮每一HMC會期1005。舉例而言,能力改變事件可為同時韌體更新。超管理器判定是否仍存在待考慮之HMC會期1010,且若「是」,則獲得下一HMC會期1015。將此HMC會期之會期狀態設定為需要交換能力1020,且超管理器判定目標HMC訊息緩衝器集區是否為空1025。若「是」,則考慮下一HMC會期1005。否則,執行圖9之邏輯1030,之後超管理器返回以評估下一HMC會期。一旦已處理所有HMC會期,則自查詢1010起,超管理器評估每一邏輯分割(LP)會期1035。超管理器判定是否存在另一開啟的LP通信會期1040,且若「否」,則能力交換邏輯已完成1045。若存在另一待考慮之LP會期,則獲得下一LP通信會期1050,且將其會期狀態設定為需要交換能力1055。超管理器判定目標邏輯分割區之訊息緩衝器集區是否為空1060,且若「是」,則處理下一LP會期。若訊息緩衝器集區不為空,則針對所獲得之LP會期而執行圖9之邏輯1065。
圖11描繪用於在邏輯分割區或HMC內處理超管理器管道請求(泛用傳送基元)之端點邏輯的一實施例。該端點等待一超管理器管道請求1100,且在接收到時1105將貨物複製至一本端緩衝器中1110。該端點接著判定貨物是否含有一有效端點請求1115。若「是」,則該端點用成功狀態應答該超管理器管道請求1120。該端點接著判定是否需要與請求源交換能力1125。若「是」,則將一以回應作為貨物之新超管理器管道請求發送至源端點,其中該回應含有一指示需要交換能力之狀態1130。若不需要與源端點交換能力,則目標端點處理該請求1135且判定是否需要對該請求之回應1140。若「否」,則該端點返回以等待下一超管理器管道請求。否則,產生一回應且將其封裝為一自目標端點發送回至源端點之新超管理器管道請求之貨物,該回應具有一基於在目標端點處處理第一超管理器管道請求之結果而設定的狀態1145。
若貨物不含有一有效請求,則該端點判定該貨物是否含有一有效回應1150。若「是」,則發送對超管理器管道請求之應答,其中狀態經設定為成功1155,且該端點判定該回應是否針對交換能力請求1160。若「否」,則處理該回應1165,且若「是」,則目標端點記錄已與源端點交換能力之事實1170。若貨物不含有有效請求或有效回應,則發送一具有錯誤狀態之對超管理器管道請求之應答1175。
圖12及圖13描繪用於回應於在一端點處之能力改變事件而交換能力的兩種方法。圖12為主動方法,而圖13為被動方法。
首先參看圖12,端點邏輯判定一可能已改變端點中之能力的事件已發生1200。舉例而言,端點通電或同時韌體更新已發生。端點邏輯設定能力交換狀態,以指示尚未對於正被追蹤能力交換狀態之所有端點交換能力1205。接著將一交換能力請求發送至超管理器1210。在一實施例中,對於端點通電,可經由開啟會期請求而非交換能力請求來交換能力。考慮了所有可能目標端點1215後,主端點(subject endpoint)判定是否存在另一待考慮之端點1220。若「是」,則獲得下一端點1225,且將一以交換能力請求為貨物之超管理器管道請求發送至彼端點1230。一旦已考慮所有端點,處理完成1235。
在一替代方法中,可使用圖13之邏輯來回應於一端點中之能力改變事件而交換能力。在此方法中,發生一可能已改變主端點中之能力的事件,諸如同時韌體更新1300。改變主端點處之能力交換記錄以指示尚未對於正被追蹤能力交換狀態之所有端點交換能力1305。端點接著將一交換能力請求發送至超管理器1310。再次地,對於端點通電,可經由開啟會期請求而非交換能力請求來與超管理器交換能力。一旦已將交換能力請求轉遞至超管理器,處理完成1315。在此方法中,端點並非主動地將交換能力請求推至其他端點,而是將等待彼等其他端點起始一通信流,且將用一需要交換能力狀態來回應彼通信流。
作為進一步解釋,下文中描述用於在(例如)IBM Power計算系統中實施上文所述之以超管理器為基礎之通信設施的各種命令結構。僅作為實例提供以下論述,且應理解,與此說明書一起呈現之申請專利範圍不限於下文所呈現之特定實施例。
術語及概念
在本文中使用時,使用以下術語:
‧上游-在此上下文中,基於具有位於韌體之上的分割區的經邏輯分割系統(包括HMC)的共同觀點,上游係指一自HMC至分割區之流。
‧下游-在此上下文中,基於具有位於韌體之上的分割區的經邏輯分割系統(包括HMC)的共同觀點,下游係指一自分割區至HMC之流。
‧入埠-在進出分割區及HMC之流的上下文中,入埠係指一進入分割區或HMC之流。應自HMC或分割區而非超管理器(HYP)之觀點來解譯該術語。
‧出埠-在進出分割區及HMC之流的上下文中,入埠係指一離開分割區或HMC之流。應自HMC或分割區而非HYP之觀點來解譯該術語。
高層級流
此部分論述在超管理器管道流中所涉及之子系統之間及子系統中發生的主要互動及事件。
用於封包化與自HMC至分割區之上游請求相關聯之回應資料的兩種方法係可能的。第一種方法為「拉」方法,藉此請求之源端點在取得對初始請求之回應之後將一或多個GetRemainingResponseData(取得剩餘回應資料)流發送至請求之目標,直至已擷取所有相關聯之回應資料為止。第二種方法為「推」方法,藉此請求之目標重複地發送針對該請求之回應流,直至與該請求相關聯之所有回應資料被傳遞回至請求之源。
拉方法之益處在於其允許初始請求之源按其自身之速率擷取資料。
推方法之益處在於其涉及總體上較少的通過超管理器管道之流,且其允許目標將所有回應資料立即發送回至源而不必應對源直接放棄剩餘資料之情形。一潛在缺點在於若目標緊接地發送回若干回應流,則其可自超管理器得到「忙碌」狀態。若有其他分割區正同時發送流至同一HMC,則此情況可加重。另外,在理論上封包有可能丟失,其意謂HMC應監視此情形且在發生丟失時應重試初始請求。藉由拉方法,HMC將僅重試失敗之GetRemainingResponseData(取得剩餘回應資料)流。
開啟會期
此為一HMC訊息介面,HMC經由該HMC訊息介面而開啟一與超管理器之會期且與超管理器交換能力。
可針對每一附接之HMC開啟一個會期。對於單一HMC,不能開啟多個會期。
在下文之參數中,入埠及出埠係自HMC之觀點而言。
開啟會期請求參數:
開啟會期回應參數:
除了「最大入埠訊息」及「最大出埠訊息」將含有超管理器之反建議(counter proposal)(其將始終小於或等於HMC所指定之數目)之外,回應參數與請求參數相同,且除了表示不被超管理器支援之能力的位元被關閉之外,能力位元遮罩將與在請求中所傳遞之遮罩相同。
超管理器將對「最大入埠事件」及「最大出埠事件」反建議之最大值分別為8及1。若HMC指定較高值,則超管理器將反建議此等值。若HMC出於某種原因指定較低值,則超管理器將履行該等較低值,但管道輸送量可受到負面影響。初始值零將導致GenericError(一般性錯誤)。
開啟會期狀態碼:
在共同標頭中傳遞回。無命令特定之傳回碼。可能值為:
‧Good(良好)
‧InvalidOpcode(無效作業碼)
‧GenericError(一般性錯誤)
‧InvalidState(無效狀態)-在一會期開啟的同時,發布一開啟會期。
關閉會期
此為一介面,HMC經由該介面而關閉與超管理器之命令會期。不存在請求或回應參數,且不存在會期特定的傳回碼。
交換能力:
此為一HMC訊息介面,HMC與超管理器經由該HMC訊息介面而交換能力。在會期之持續時間/壽命內,可多次發送此命令。該命令可緊接於開啟會期之後,及/或可稍後在實際上將使用會期時發送該命令。HMC及HYP必須作為源與目標皆支援該命令。
若HMC或超管理器之能力由於同時韌體更新而改變,則可使用此命令來交換能力(假定非同時韌體更新將引起會期關閉且在更新之後使一開啟會期發生)。兩種實體每當接收到一以其為目標的並非交換能力之流時必須驗證其當前能力已與源交換。若尚未交換,則必須傳回ExchangeCapabilities(交換能力)傳回碼。若一改變或可能已改變目標之能力的事件發生,則目標必須再次與所有源交換能力。
請求參數:
回應參數:
除了表示不被目標支援之能力的位元為關閉之外,回應參數與請求參數相同。
傳回碼:
在共同標頭中傳遞回。無命令特定的傳回碼。可能值為:
‧Good(良好)
‧InvalidOpcode(無效作業碼)
‧GenericError(一般性錯誤)
超管理器管道請求:
此為一HMC訊息介面,HMC經由該HMC訊息介面而與分割區直接通信。超管理器充當一簡單管道。其不檢驗經由該管道傳送(pipe)至分割區或自分割區傳送之資料。其精確地複製資料區(貨物)而不作修改。
此為一完全非同步命令。當HMC將該命令發送至超管理器時,超管理器將此命令內之貨物投送至指定分割區。當一分割區將一以HMC為目標之流發送至超管理器時,超管理器將該命令連同來自分割區之貨物一起發送至指定HMC。
對此等命令之所有計時由HMC及分割區負責。
請求參數:
Ack參數:
傳回碼:
‧Success(成功)
‧Failure(失敗)
‧Busy(忙碌)
‧InvalidParms(無效參數)
‧PipeClosed(管道關閉)
‧MtuViolation(Mtu違規)
‧ExchangeCapabilities(交換能力)
傳回碼: Success( 成功):
成功地完成請求。
恢復:N/A
Failure(失敗):
請求失敗,且無其他資訊。
恢復:重試該請求。若問題繼續存在,則開始標準分析。
Busy(忙碌):
未執行請求,因為請求目標(或可能為超管理器)忙碌。預期此狀況為暫時的。
恢復:在短暫延遲之後,重試程序。若該狀況繼續存在一延長時間段(亦即,若干分鐘),則目標或超管理器中有可能存在錯誤。
InvalidParms(無效參數):
未執行請求,因為命令含有無效或未辨識之參數。無效目標ID為將導致此傳回碼之狀況的實例。
恢復:無
PipeClosed(管道關閉):
未執行請求,因為到達指定目標之管道關閉或不在作用中。此可指示目標斷電或處於故障狀態。
恢復:通電或對目標進行IPL。
MtuViolation(Mtu違規):
指定貨物之大小超過最大傳送單元(MTU)之大小。
額外資料:
恢復:使用一所支援之貨物大小重試。
ExchangeCapabilities(交換能力):
未執行請求,因為目標之能力自上次交換能力之後可能已被改變。
恢復:發布ExchangeCapabilities 請求,且接著重試失敗之請求。
邏輯分割(LP)事件: 開啟會期:
此為一LP事件介面,分割區經由該LP事件介面而在會期開啟協定期間與超管理器協商能力及最大入埠/出埠值。分割區始終為該事件之源/起始方,而超管理器始終為目標。
在會期開啟之後,不可再次發送此事件。會期管理程式碼監視該事件ID,且若其在會期開啟之後出現,則會期管理程式碼將拒絕該發送。
在下文之參數中,入埠及出埠係自分割區之觀點而言。
請求參數:
回應參數:
除了「最大入埠事件」及「最大出埠事件」將含有超管理器之反建議(其將始終小於或等於分割區所指定的數目)之外,回應參數與請求參數相同,且除了表示不被超管理器支援之能力的位元為關閉之外,能力位元遮罩將與在請求中傳遞之遮罩相同。
超管理器將對「最大入埠事件」及「最大出埠事件」反建議之最大值分別為8及1。若分割區指定較高值,則超管理器將反建議此等值。若分割區出於某種原因指定較低值,分割區將履行該等較低值,但管道輸送量可受到負面影響。初始值零將導致GenericError(一般性錯誤)。
傳回碼:
在共同標頭中傳遞回。無特定事件傳回碼。可能值為:
‧Good(良好)
‧GenericError(一般性錯誤)
交換能力:
此為一LP事件介面,分割區與超管理器在會期開啟之後經由該LP事件介面而交換能力。不同於開啟會期,在會期之持續時間/壽命內,可多次發送此命令。分割區及HYP必須作為源與目標皆支援該命令。
若分割區或超管理器之能力由於同時韌體/程式碼更新而改變,則可使用此命令來交換能力(假定非同時韌體/程式碼更新將引起會期關閉且在更新之後使一開啟會期發生)。兩種實體每當接收到一以其為目標的並非交換能力之流時必須驗證其當前能力已與源交換。若尚未交換,則必須傳回ExchangeCapabilities(交換能力)傳回碼。若一改變或可能已改變目標之能力的事件發生,則目標必須再次與所有源交換能力。
請求參數:
回應參數:
除了表示不被目標支援之能力的位元為關閉之外,回應參數與請求參數相同。
傳回碼:
在共同標頭中傳遞回。無事件特定的傳回碼。可能值為:
‧Good(良好)
‧GenericError(一般性錯誤)
HypervisorPipeRequestInbound(超管理器管道請求入埠):
此為一LP事件介面,超管理器經由該LP事件介面而將一超管理器管道流傳送至一經指明為該流之目標的分割區。自分割區之觀點而言,該流為入埠的。
此為一非同步事件。ACK僅應答分割區接收到該事件且意欲處理該事件。在ACK中,應僅報告阻止分割區最終處理請求之錯誤。換言之,若分割區由於某種如無效命令參數之原因而將永不處理請求,則分割區應以一不良傳回碼(諸如,InvalidParms(無效參數))ACK該HypervisorPipeRequestInbound(超管理器管道請求入埠)。在HypervisorPipeRequestInbound(超管理器管道請求入埠)經ACK之後,應在超管理器管道請求出埠事件中經由貨物而將在處理該請求時發生之錯誤報告回給源實體。
請求參數:
ack參數:
傳回碼:
‧Success(成功)
‧Failure(失敗)
‧InvalidParms(無效參數)
‧ExchangeCapabilities(交換能力)
超管理器管道請求出埠
此為一LP事件介面,分割區經由該LP事件介面而作為流之來源起始一超管理器管道流。自分割區之觀點而言,該流為出埠的。超管理器將貨物輸送至目標實體。
此為一非同步事件。ACK僅應答超管理器接收到該事件且意欲將其轉遞至目標。在ACK中,將僅報告阻止超管理器將請求轉遞至目標之錯誤。
分割區可指定是否DMA該貨物或其是否包括於此事件中。分割區可決定僅在貨物對於該事件而言過大之情況下進行DMA或一直進行DMA,雖然當貨物小到足以裝入該事件時,DMA與將貨物包括於事件自身中相比較為低效。若指定DMA(「DMA required(需要DMA)」=1),則分割區必須指定描述貨物資料緩衝器的一系列邏輯真實位址/長度對。每一輸入項描述單一相連真實位址範圍。此範圍不可跨頁。舉例而言,若分割區自系統堆積分配長度為4000位元組且跨越一頁邊界之貨物緩衝器,則分割區必須固定(pin)儲存器且在緩衝器清單中建立兩個邏輯真實位址/長度輸入項。此外,分割區在超管理器ACK該事件之前不能釋放含有待DMA之資料的緩衝器。
請求參數:
緩衝器清單:
緩衝器清單為一系列位址/長度對,其中每一對描述一塊(chunk)相連的真實緩衝器空間。若緩衝器駐留於不相連之真實記憶體中,則需要多個輸入項。
ack參數:
傳回碼:
‧Success(成功)
‧Failure(失敗)
‧Busy(忙碌)
‧InvalidParms(無效參數)
‧PipeClosed(管道關閉)
‧MtuViolation(Mtu違規)
‧ExchangeCapabilities(交換能力)
‧BufferNotPinned(緩衝器不固定)
‧記憶體Sue(MemorySue)
傳回碼
LP事件傳回碼與用於HMC命令之彼等傳回碼相同,附加以下LP事件所獨有者。
BufferNotPinned(緩衝器不固定)
未執行請求,因為由分割區指定的自其DMA資料或DMA資料至其之緩衝器不固定。
恢復:改變分割程式碼以固定緩衝器。此最有可能為分割區中之程式碼錯誤。
MemorySue(記憶體Sue)
未執行請求,因為在存取分割區記憶體時發生記憶體SUE。
恢復:無。
HMC-i5/OS命令:
此部分列出作為超管理器管道流中之貨物而在HMC與分割區之間流動的命令。應注意,此部分中之材料為架構流經超管理器管道之貨物的彼等者提供實例及指南。
在以下部分中,請求參數為出現於起始該請求之超管理器管道流(源傳送基元)之貨物欄位中的參數,且回應參數為出現於表示對原始請求之回應之超管理器管道流(目標傳送基元)之貨物欄位中的參數。
命令類別,命令碼:
在下文之命令定義中,「命令類別」值表示一特定類別之命令,諸如與一特定功能(亦即,會期管理)相關之所有彼等命令。「命令碼」值表示在彼類別內之一特定命令。類別值必須在所有類別中為唯一的。碼值僅必須在彼類別內為唯一的。
針對與一特定請求相關聯之回應的命令碼為針對其上具有高階位元之請求的命令碼。
交換能力
此為一交換,兩個端點(源及目標)經由該交換而交換定義與該兩端點間之超管理器管道會期有關之期望及行為的能力。
可根據兩個端點所需而協商最大入埠/出埠。應自請求之源的觀點來解譯入埠/出埠。ExchangeCapabilities(交換能力)請求之源應將最大入埠設定為其同時可處理之請求的數目,且將最大出埠設定為0。目標應將其出埠請求之調整進度設定為小於或等於由源指定之最大入埠值的一值,且將最大出埠值設定為其同時可處理之請求的數目。源應接著將其出埠請求之調整進度設定為小於或等於由目標指定之最大出埠值的一值。作為一實例,假定最大入埠及出埠皆經協商為值4,此意謂HMC可預期分割區同時支援多達4個未處理之上游請求,且分割區可預期HMC同時支援多達4個未處理之下游請求。若存在一尚未被請求流之源接收到之對應回應流,則認為該請求流為未處理的。自最大入埠/出埠之觀點而言,在通用超管理器管道上不存在對應回應流之請求流不會被認為是未處理的。
若一端點不具有對其可處置之未處理入埠之數目的可識別限制(如可能為該端點動態地分配內部訊息及控制區塊而非預分配該等內部訊息及控制區塊之狀況),則該端點可將在交換能力中的對應於其可支援之最大未處理入埠的值設定為一指示無限制的特殊值(諸如,全部0xF)。另一端點可接著將其所要數目之超管理器管道流發送至目標而不調整進度,但應準備處置因目標可能暫時無法獲取必要資源(諸如,訊息、控制區塊空間等)之狀況而來自目標之偶然的Busy(忙碌)傳回碼。
請求參數:
回應參數:
傳回碼:
‧Success(成功)
‧Failure(失敗)
‧InvalidParms(無效參數)
‧PresentStateProhibits(目前狀態禁止)
‧Busy(忙碌)
取消請求
此為一交換,仍未處理之先前請求流之源/起始方可經由該交換而取消彼請求。其意圖為在由源/起始方維持之請求計時器過期或源僅僅出於某種原因不願意看到回應的狀況下,使用此流。來自此請求之目標的肯定回應(成功傳回碼)流意謂目標將不發送針對指定請求ID之回應流,且該指定請求ID可由請求之起始方再使用。來自目標之否定回應(不成功傳回碼)意謂起始方仍可取得一針對指定請求ID之回應流,且在接收到回應流之前無法再使用該請求ID。
請求參數:
回應參數:
傳回碼:
‧Success(成功)
‧Failure(失敗)
‧InvalidParms(無效參數)
‧PresentStateProhibits(目前狀態禁止)
‧RequestCannotBeCancelled(無法取消請求)
‧Busy(忙碌)
功能X請求
此部分說明對一虛構「功能X」請求之命令定義,該虛構「功能X」請求為起源於HMC處之超管理器管道流之典型請求且要求使用「拉」方法對回應資料進行封包化。該請求為一上游流。該回應為一下游流。
請求參數:
回應參數:
傳回碼:
‧Success(成功)
‧Failure(失敗)
‧InvalidParms(無效參數)
‧PresentStateProhibits(目前狀態禁止)
‧ExchangeCapabilities(交換能力)
‧Busy(忙碌)
取得剩餘回應資料請求
此為一請求,其經由超管理器管道自一端點流至另一端點以起始與早先請求相關聯之額外回應資料之傳送。要求使用拉方法對回應資料進行封包化之每一類別之命令應定義此命令之命令碼,以促進將該請求投送至目標內之恰當組件。
亦可藉由經由超管理器管道發送多個回應流(推方法)來達成對回應資料之封包化。亦即,請求之目標發送多個回應直至不再存在回應資料為止。請求之源(回應之目標)知曉何時接收到最後一個回應,因為「剩餘回應資料大小」欄位為0。
請求參數:
回應參數:
傳回碼:
‧Success(成功)
‧Failure(失敗)
‧InvalidParms(無效參數)
‧PresentStateProhibits(目前狀態禁止)
‧ExchangeCapabilities(交換能力)
‧InvalidResponseDataKey(無效回應資料索引鍵)
‧Busy(忙碌)
傳回碼 Success(成功)
成功地完成請求。
恢復:N/A
Failure(失敗)
請求失敗,且無其他資訊。
恢復:重試該請求。若問題繼續存在,則開始標準問題分析程序。
InvalidParms(無效參數)
目標偵測到命令中之無效資料/參數(諸如,未辨識之命令類別或命令碼)。
恢復:無。可能為一錯誤。
PresentStateProhibits(目前狀態禁止)
目標之目前狀態禁止處理此命令。
恢復:使目標進入一使其可處理該命令之狀態中。
ExchangeCapabilities(交換能力)
未執行請求,因為目標之能力自上次交換能力之後可能已被改變。
恢復:源應發布ExchangeCapabilities(交換能力)命令且接著重試請求。
InvalidResponseDataKey(無效回應資料索引鍵)
擷取額外回應資料之請求未由目標處理,因為命令中所提供之回應資料索引鍵值並非有效的。
恢復:無。
RequestCannotBeCancelled(無法取消請求)
無法取消指定請求。該指定請求可能處於傳送過程中(in flight),或其可能已進行至一不再可能加以取消之境地。回應流將來臨。
恢復:無。
Busy(忙碌)
未執行該請求,因為請求目標忙碌。預期此狀況為暫時的。
恢復:在短暫延遲之後,重試程序。若該狀況繼續存在一延長時間段(亦即,若干分鐘),則目標中有可能存在錯誤,且應聯繫IBM技術維護部門。
設計細節:
命令流控制及調整進度
分割區-HYP LP事件會期
HYP必須為發送至分割區之每一HypervisorPipeRequestInbound(超管理器管道請求入埠)提供一ACK訊息。HYP將為實際存在之每一分割區(而非最大架構分割區)維護單獨之預分配訊息集區。當建立或刪除分割區時,將亦建立及刪除其訊息集區及訊息。每一分割區具有一單獨集區連同立即以忙碌狀態對至具有空訊息集區之目標的上游流進行ACK防止了一不及時ACK事件之分割區影響至其他分割區之輸送量。以忙碌狀態對自HMC至ACK訊息集區為空之分割區的上游請求進行ACK會將處置目標分割區中之暫時忙碌時間段及永久無反應的負擔置於HMC上。HMC應將一Busy(忙碌)傳回碼視作暫時狀況,且週期性地重試上游請求,直至其起作用抑或一合理時間量已過去而仍然忙碌(在此狀況下,HMC可假定目標無反應)。
對來自分割區之ACK的接收將不由HYP計時。並未正ACK請求之分割區有可能亦非正在接收新請求,因此藉由逾時而釋放ACK訊息以使得可發送額外請求有可能是無用的。
HYP將用信號將超管理器管道請求事件非同步地發送至分割區。此意謂HYP任務在接收到ACK之前未被封鎖,且對於分割區而言,多個事件可同時為未處理的。由於可為未處理之事件的數目受集區中之ACK訊息的數目限制,因此HYP將與由該分割區建議之等於或小於每一分割區之預分配訊息數目的任何最大入埠值一致。若分割區建議更大值,則HYP將把該數目減小為開啟會期回應中的所組態數目。HYP將對至分割區的上游請求發送進行調整進度,以使得永不超過所協商之最大入埠值。HYP將始終在開啟會期回應中將最大出埠值設定為1,因為在處理來自分割區之下游超管理器管道請求出埠事件流之過程中,HYP將為單線緒的,由此使得大於1之值無意義。
分割區應儘快ACK入埠流,以使得ACK訊息將被快速傳回至HYP中之適當集區。此將最大化管道輸送量。分割區ACK入埠流所耗費時間愈長,ACK訊息集區將耗盡的機會愈大,在耗盡時,HYP將開始用忙碌狀態向源ACK以昏睡(lethargic)分割區為目標之請求。
重新啟動一無反應且不ACK上游請求之分割區將迫使所有未處理之ACK訊息回到HYP。
HMC-HYP命令會期
對HMC與HYP之間的會期之HYP處置類似於如先前部分中所描述之針對分割區與HYP之間之會期的處置。
HYP必須為其發送至HMC之每一超管理器管道請求命令提供一ACK訊息。HYP將為所連接之每一HMC維護一訊息集區。每一HMC具有一單獨集區連同立即用忙碌狀態對至具有空訊息集區之目標HMC的下游流進行ACK防止了一未及時ACK事件之HMC影響至其他HMC之輸送量。用忙碌狀態ACK自分割區至ACK訊息集區為空之HMC的下游請求會將處置目標HMC中之暫時忙碌時間段及永久無反應的負擔置於分割區上。分割區應將一Busy(忙碌)傳回碼視為暫時狀況,且週期性地重試下游請求,直至其起作用抑或一合理時間量已過去而仍然忙碌(在此狀況下,分割區可假定目標無反應)。
HYP將對至HMC的下游請求發送進行調整進度以使得永不超過給定HMC之所協商之最大入埠值,該最大入埠值將經協商為最大值(例如)8(若HMC初始建議一小於8之值,則HYP將履行一較低值)。HYP將始終在開啟會期回應中將最大出埠值設定為1,因為在處理來自HMC之上游超管理器管道請求命令流之過程中,HYP將為單線緒的,由此使得大於1之值無意義。
對來自HMC之ACK的接收將不由HYP計時。並未正ACK請求之HMC有可能亦非正在接收新請求,因此藉由逾時而釋放ACK訊息以使得可發送額外請求有可能是無用的。
HMC應儘快ACK入埠流,以使得ACK訊息將被快速傳回至HYP中之適當集區。此將最大化管道輸送量。HMC ACK入埠流所耗費時間愈長,ACK訊息集區將耗盡的機會愈大,在耗盡時,HYP將開始用忙碌狀態向源ACK以昏睡HMC為目標之請求。
重新啟動或斷開一無反應且不ACK下游請求之HMC將迫使所有未處理之ACK訊息回到HYP。
HMC-分割區會期
上文所描述之會期包含端點(HMC與分割區)之間的較高層級會期,且以與基礎會期大致相同之方式來管理及控制此等會期。能力交換允許兩個端點協商最大入埠/出埠值,且判定彼此對在能力位元組中定義之特定能力的支援。
為了防止超管理器管道會期之兩個端點在能力及/或最大入埠/出埠方面不同步,並非ExchangeCapabilities(交換能力)命令之任何超管理器管道流之目的地必須檢查自目的地經歷一可能已改變其能力之事件(諸如,IPL,在其期間應用程式碼更新,或同時韌體更新)以來源是否已與目的地交換能力。若否,則目的地必須在回應流中傳回ExchangeCapabilities(交換能力)傳回碼。
當請求之源接收到該ExchangeCapabilities(交換能力)傳回碼時,其必須將一ExchangeCapabilities(交換能力)命令發至目的地,且接著可重新發送失敗之原始請求。
可根據兩個端點所需而協商最大入埠/出埠。應根據請求之源的觀點解譯入埠/出埠。ExchangeCapabilities(交換能力)請求之源應將最大入埠設定為其同時可處理之請求的數目,且將最大出埠設定為0。目標應將其出埠請求之調整進度設定為小於或等於由源指定之最大入埠值的一值,且將最大出埠值設定為其同時可處理之請求的數目。源應接著將其出埠請求之調整進度設定為小於或等於由目標指定之最大出埠值的一值。作為一實例,假定最大入埠及出埠皆經協商為值4,此意謂HMC可預期分割區同時支援多達4個未處理之上游請求,且分割區可預期HMC同時支援多達4個未處理之下游請求。未處理意謂請求流之源尚未接收到來自源之對應回應流。
若一端點不具有對其可處置之未處理入埠之數目的可識別限制(如可能為該端點動態地分配內部訊息及控制區塊而非預分配該等內部訊息及控制區塊之狀況),則該端點可將交換能力中的對應於其可支援之最大未處理入埠的值設定為一指示無限制的特殊值(諸如,全部0xF)。另一端點可接著將其所要數目之超管理器管道流發送至彼目標而不調整進度,但應準備處置因目標可能暫時無法獲取必要資源(諸如,訊息、控制區塊空間等)之狀況而來自目標之偶然的Busy(忙碌)傳回碼。
應注意,遵守HMC與分割區之間所協商之最大入埠/出埠值不會保證在此會期上的請求流之源可避免Busy(忙碌)傳回碼。若目標之ACK訊息集區為空,則Busy(忙碌)傳回碼可由HYP在HypervisorPipeRequest(超管理器管道請求)請求流ACK中產生。
檢測
HYP應提供一定量之檢測來追蹤諸如所產生之忙碌ACK及造成其之目標端點的數目、發送失敗之次數、流處於管道(針對上游及下游兩者)中之平均時間量、上游流及下游流之總數目等的事項。
Busy傳回碼處置
在端點中對來自HYP之忙碌傳回碼的建議處置為在一短暫延遲之後重試出埠流,且重複直至一合理時間量過去或出埠流最後成功。合理量可基於正發送之命令或請求而不同。
交換能力處置
對來自HYP或其他端點之ExchangeCapabilities(交換能力)傳回碼的建議處置為發布ExchangeCapabilities(交換能力)請求且接著重試被拒絕之請求。或者,端點可選擇發布ExchangeCapabilities(交換能力)請求且中止而非重試被拒絕之請求。使用者接著將必須手動地重試失敗之請求。在難以自動重試失敗之請求的情況下,此替代方案可具有吸引力。若實施此替代方案,則應知道儘管能力改變很少有,但分割區斷電/通電可相對頻繁地發生且將引起分割區傳回ExchangeCapabilities(交換能力)傳回碼(直至再次與請求之源/起始方交換能力為止)。然而,可採取措施來降低ExchangeCapabilities(交換能力)傳回碼發生之可能性。
端點中之一實施(選項1)為每當一可能已改變能力之事件(諸如,同時程式碼更新(或移除)或端點通電)發生時,將ExchangeCapabilities(交換能力)請求發布至所有作用中端點。藉由此實施,端點快取所有其他可能端點之能力,且藉由在可能改變其他端點之能力之某事發生時非同步地通知該等其他端點來保持所快取之能力為當前的。此方法不會完全防止ExchangeCapabilities(交換能力)傳回碼,因為在交換能力時,流可能處於傳送過程中,但其確實將發生ExchangeCapabilities(交換能力)傳回碼的機會減少到足夠低的程度,使得中止被拒絕之請求(而非自動重試被拒絕之請求)將為一可接受之選項。
端點中之降低ExchangeCapabilities(交換能力)傳回碼發生之可能性的另一實施(選項2)為在每一請求之前將ExchangeCapabilities(交換能力)請求發布至端點。藉由此方法,不必快取能力。僅在需要時即時查詢能力。如同選項1,此方法不完全消除得到ExchangeCapabilities(交換能力)傳回碼之可能性,但其將機會減少到足夠低的程度以至於中止被拒絕之請求(而非自動重試)將為可接受的。應注意,此方法可能顯著增加端點間之流之數目。在最簡單的形式中,其將使流之數目加倍。若存在涉及至一特定端點之多個流來完成任務的特定使用者任務,則起始端點可每一使用者任務一次(而非每一請求流一次)地將ExchangeCapabilities(交換能力)發布至目標端點,由此減小ExchangeCapabilities(交換能力)流之總數目。
對於上文所描述之兩個選項,每一端點必須追蹤已與之交換能力的其他端點,且針對其為目標的並非交換能力之每一流而驗證其已與彼流之源交換其當前能力。若一改變或可能已改變其能力之事件發生,則其必須再次與其他端點交換其新能力或潛在新能力。
每當一可能改變HYP之能力的事件(亦即,同時韌體更新)發生時,HYP將在所有作用中的通用超管理器管道HMC會期及LP事件會期上起始一ExchangeCapabilities(交換能力)請求。類似地,每當一可能同時改變端點之能力的事件(亦即,同時程式碼更新)發生時,端點應起始對HYP之ExchangeCapabilities(交換能力)請求。因此,端點必須作為源(亦即,當端點經受同時程式碼更新時)與目標(亦即,當HYP經受同時韌體更新時)兩者支援與HYP之ExchangeCapabilities(交換能力)流。經由開啟會期命令在HMC或分割區通電時交換能力。
關於共用記憶體分割區資料處理系統之其他細節提供於以下共同申請之專利申請案中,該等專利申請案中之每一者的全部內容特此以引用的方式併入本文中:美國第       號(代理人案號ROC 920080415US1),「Hypervisor Page Fault Processing in a Shared Memory Partition Data Processing System」;美國第       號(代理人案號ROC 920080416US1),「Managing Assignment of Partition Services to Virtual Input/Output Adapters」;美國第       號(代理人案號ROC 920080417US1),「Automated Paging Device Management in a Shared Memory Partition Data Processing System」;美國第       號(代理人案號ROC 920080418US1),「Dynamic Control of Partition Memory Affinity in a Shared Memory Partition Data Processing System」;美國第      號(代理人案號ROC 920080419US1),「Transparent Hypervisor Pinning of Critical Memory Areas in a Shared Memory Partition Data Processing System」;美國第      號(代理人案號ROC 920080420US1),「Shared Memory Partition Data Processing System with Hypervisor Managed Paging」;美國第      號(代理人案號ROC 920080421US1),「Controlled Shut-Down of Partitions Within a Shared Memory Partition Data Processing System」;及美國第      號(代理人案號ROC 920080422US1),「Managing Migration of a Shared Memory Logical Partition From a Source System to a Target System」。
本發明之一或多個態樣可包括於一具有(例如)電腦可用媒體之製品(例如,一或多個電腦程式產品)中。媒體在其中具有(例如)電腦可讀程式碼構件或邏輯(例如,指令、程式碼、命令等)以提供並促進本發明之能力。製品可被包括作為電腦系統之一部分或單獨銷售。
參看圖14描述併有本發明之一或多個態樣之製品或電腦程式產品之一實例。電腦程式產品1400包括(例如)一或多個電腦可讀媒體1410,該一或多個電腦可讀媒體1410用以將電腦可讀程式碼構件或邏輯1420儲存於其上以提供並促進本發明之一或多個態樣。媒體可為電子、磁性、光學、電磁、紅外線或半導體系統(或裝置或器件)或者傳播媒體。電腦可讀媒體之實例包括半導體或固態記憶體、磁帶、抽取式電腦磁片、隨機存取記憶體(RAM)、唯讀記憶體(ROM)、硬磁碟及光碟。光碟之實例包括緊密光碟唯讀記憶體(CD-ROM)、緊密光碟讀/寫(CD-R/W)及DVD。
由一或多個電腦可讀程式碼構件或邏輯定義之程式指令序列或一或多個相關模組之邏輯套組指引本發明之一或多個態樣的執行。
儘管上文描述各種實施例,但此等實施例僅為實例。
此外,環境可包括模擬器(例如,軟體或其他模擬機構),其中模擬一特定架構或其子集。在此環境中,模擬器之一或多個模擬功能可實施本發明之一或多個態樣,即使執行該模擬器之電腦可能具有一與正模擬之能力不同的架構亦如此。作為一實例,在模擬模式中,對正模擬之特定指令或操作進行解碼,且建置一適當模擬功能以實施個別指令或操作。
在一模擬環境中,主機電腦包括(例如):一記憶體,其用以儲存指令及資料;一指令提取單元,其用以自記憶體提取指令,且視情況用以提供對經提取指令之本端緩衝;一指令解碼單元,其用以接收經提取之指令且用以判定已提取之指令的類型;及一指令執行單元,其用以執行指令。執行可包括:將資料自記憶體載入至暫存器中;將資料自暫存器儲存回至記憶體;或執行如由解碼單元判定之某一類型的算術或邏輯運算。在一實例中,以軟體來實施每一單元。舉例而言,將由該等單元執行之操作實施為模擬器軟體內之一或多個副常式。
另外,可使用適用於儲存及/或執行程式碼之資料處理系統,其包括直接或經由系統匯流排間接耦接至記憶體元件的至少一處理器。記憶體元件包括(例如)在程式碼之實際執行期間使用之本端記憶體、大容量儲存器,及快取記憶體,快取記憶體提供對至少某一程式碼之暫時儲存以便減少在執行期間必須自大容量儲存器擷取程式碼的次數。
輸入/輸出或I/O器件(包括(但不限於)鍵盤、顯示器、指標器件、DASD、磁帶、CD、DVD、隨身碟及其他記憶體媒體等)可直接或經由介入I/O控制器耦接至該系統。網路配接器亦可耦接至系統以使得資料處理系統能夠經由介入之私用或公用網路而耦接至其他資料處理系統或遠端印表機或儲存器件。數據機、電纜數據機及乙太網路卡僅為可用類型之網路配接器中的少數幾種。
本發明之一或多個態樣的能力可以軟體、韌體、硬體或其某一組合來實施。可提供可由機器讀取之至少一程式儲存器件,其具體化可由該機器執行以執行本發明之能力之指令的至少一程式。
本文中所描繪之流程圖僅為實例。在不脫離本發明之精神的情況下,可存在對本文中所描述之此等圖或步驟(或操作)之許多變化。舉例而言,可按不同次序執行該等步驟,或者可添加、刪除或修改步驟。將所有此等變化視為所主張之本發明的一部分。
儘管已在本文中詳細地描繪並描述了實施例,但對於熟習相關技術者將顯而易見,可在不脫離本發明之精神的情況下作出各種修改、添加、替代及其類似者,且因此,將此等修改、添加、替代及其類似者視為在如以下申請專利範圍中所定義之本發明的範疇內。
100...可經邏輯分割的電腦系統
101...中央處理單元(CPU)
102...主記憶體
103...服務處理器
105...匯流排
106...終端機介面
107...儲存器介面
108...其他I/O器件介面
109...通信/網路介面
111A、111B、111C、111D...電路卡
112A、112B、112C、112D、112E、112F...電路卡
113...電路卡
114...硬體管理控制台(HMC)
115A、115B、115C...電路卡
116A、116B、116C...電路卡
117A、117B...電路卡
118A、118B...電路卡
119A、119B...電路卡
121A、121B、121C...使用者終端機
122A、122B、122C...資料儲存器件
123...印表機
124...傳真機
126...網路
201...硬體層級
202...不可分派超管理器
203...可分派超管理器
204...邏輯分割區
205...邏輯分割區
206...邏輯分割區
207...邏輯分割區
211...OS核心
212...OS核心
213...OS核心
214...OS核心
221...視覺指示器
222...分配至分割區之可分割實體
223...可分割實體位置
300...經邏輯分割的資料處理系統
310...邏輯分割區
320...超管理器
325...超管理器管道
330...靈活服務處理器
340...硬體管理控制台(HMC)
400...邏輯HMC命令會期/HMC對超管理器會期
405...訊息緩衝器集區
410...邏輯分割事件會期/邏輯分割對超管理器會期
415...訊息緩衝器集區
500...邏輯HMC對分割區通信會期
1400...電腦程式產品
1410...電腦可讀媒體
1420...電腦可讀程式碼構件或邏輯
圖1為根據本發明之態樣的經邏輯分割的資料處理系統之各種硬體組件的高層級方塊圖;
圖2為根據本發明之態樣的在資料處理系統中的不同硬體及軟體抽象層級處之邏輯分割區的概念說明;
圖3為根據本發明之態樣的具有以超管理器為基礎之通信設施的經邏輯分割的資料處理系統之一實體實施例的方塊圖說明;
圖4為根據本發明之態樣的圖3之資料處理系統及通信設施的較低層級邏輯視圖,其中通信會期建立於HMC與超管理器管道之間,及邏輯分割區與超管理器管道之間;
圖5為根據本發明之態樣的圖3及圖4之以超管理器為基礎之通信設施的較高層級邏輯描繪;
圖6為根據本發明之態樣的用於處理自經邏輯分割的資料處理系統之源端點接收到之通信的超管理器邏輯的一實施例的流程圖;
圖7為根據本發明之態樣的用於在超管理器處處理泛用傳送基元(HypePipe)的邏輯的一實施例的流程圖;
圖8為根據本發明之態樣的用於處理自經邏輯分割的資料處理系統之一端點接收到之應答(ACK)的超管理器邏輯的一實施例的流程圖;
圖9為根據本發明之態樣的用於建置一exchange capabilities(交換能力)請求並將其發送至經邏輯分割的資料處理系統之目標端點的超管理器邏輯的一實施例的流程圖;
圖10為根據本發明之態樣的在一可引起超管理器能力改變之事件在經邏輯分割的資料處理系統內發生時執行的超管理器邏輯的一實施例的流程圖;
圖11為根據本發明之態樣的用於在經邏輯分割的資料處理系統之目標端點處處理目標傳送基元的端點邏輯的一實施例的流程圖;
圖12為根據本發明之態樣的用於主動地自端點起始一exchange capabilities(交換能力)請求的端點邏輯的一實施例的流程圖;
圖13為根據本發明之態樣的用於回應於在通信設施之端點處的能力改變事件而被動地執行能力交換的端點邏輯的一實施例的流程圖;及
圖14描繪併有本發明之一或多個態樣之電腦程式產品的一實施例。
100...可經邏輯分割的電腦系統
101...中央處理單元(CPU)
102...主記憶體
103...服務處理器
105...匯流排
106...終端機介面
107...儲存器介面
108...其他I/O器件介面
109...通信/網路介面
111A、111B、111C、111D...電路卡
112A、112B、112C、112D、112E、112F...電路卡
113...電路卡
114...硬體管理控制台(HMC)
115A、115B、115C...電路卡
116A、116B、116C...電路卡
117A、117B...電路卡
118A、118B...電路卡
119A、119B...電路卡
121A、121B、121C...使用者終端機
122A、122B、122C...資料儲存器件
123...印表機
124...傳真機
126...網路

Claims (20)

  1. 一種在一經邏輯分割的資料處理系統之一硬體管理控制台與一邏輯分割區之間通信的方法,該方法包含:利用一超管理器管道於該硬體管理控制台與該邏輯分割區之間直接通信,該超管理器管道包含經由該資料處理系統之一超管理器之該硬體管理控制台與該邏輯分割區之間的一點對點、邏輯通信會期,該利用包含:由一源端點將該源端點之一請求或一回應作為貨物封裝於待經由該超管理器管道轉遞之一泛用傳送基元中,該源端點為該資料處理系統之該硬體管理控制台或該邏輯分割區中之一者,其中該硬體管理控制台為用於分割管理之一使用者介面;及經由該超管理器管道將該泛用傳送基元直接地自該源端點轉遞至一目標端點,其中該轉遞包含藉由該超管理器接收在該源端點處經封裝之該泛用傳送基元且將該泛用傳送基元之該貨物轉遞至該目標端點,該貨物包含該源端點之該請求或該回應,且其中在由該超管理器進行之該接收及該轉遞中未由該超管理器對該貨物進行檢驗或剖析,且該目標端點為該資料處理系統之該邏輯分割區或該硬體管理控制台中之另一者。
  2. 如請求項1之方法,其中該接收到之泛用傳送基元為一源傳送基元,且其中該轉遞包含由該超管理器建置一目標傳送基元,該建置包含將該源傳送基元之該貨物複製至該目標傳送基元中,且將該目標傳送基元自該超管理 器轉遞至該目標端點。
  3. 如請求項2之方法,其中該接收包含在該超管理器處將該源傳送基元接收至一接收緩衝器中,且該建置包含在該超管理器處在一目標訊息緩衝器中建置該目標傳送基元,該目標訊息緩衝器係來自在該超管理器處之與該目標端點相關聯的訊息緩衝器之一集區(pool)。
  4. 如請求項3之方法,其中該建置進一步包含判定與該目標端點相關聯之訊息緩衝器之該集區中是否有一目標訊息緩衝器可用,且若是,則自與該目標端點相關聯之訊息緩衝器之該集區獲得該目標訊息緩衝器且在該所獲得之目標訊息緩衝器中建置該目標傳送基元,該建置包含由該超管理器將包含該源端點之該請求或該回應的該貨物自該接收緩衝器複製至該目標訊息緩衝器中而不對該貨物進行檢驗或剖析。
  5. 如請求項2之方法,其中將該目標傳送基元轉遞至該目標端點包含將該目標傳送基元非同步地轉遞至該目標端點。
  6. 如請求項2之方法,其中該建置包含由該超管理器驗證該源傳送基元中之該貨物之大小在一可接受大小範圍內,且驗證隨該源傳送基元提供之一目標端點識別為有效的。
  7. 如請求項2之方法,其中該目標端點在接收到該目標傳送基元之後判定其貨物是否含有一有效請求,且若是,則處理該請求且經由該超管理器將一回應作為另一泛用 傳送基元內之貨物傳回至該源端點,而若隨該目標傳送基元一起接收到之該貨物並非一有效請求,則該目標端點判定該貨物是否含有一有效回應,且若是,則處理該回應。
  8. 如請求項1之方法,其進一步包含開啟該硬體管理控制台與該邏輯分割區之間的該點對點、邏輯通信會期,其中該開啟該等通信會期發生在對該泛用傳送基元之該封裝及該轉遞之前。
  9. 如請求項8之方法,其進一步包含回應於改變在該經邏輯分割的資料處理系統之該超管理器或一端點處之能力的一事件而在該邏輯分割區、該超管理器及該硬體管理控制台之間自動交換通信能力,該端點為該邏輯分割區或該硬體管理控制台中之一者,其中在該邏輯分割區與該硬體管理控制台之間交換能力包含以下各項中之一者:(i)在該邏輯分割區處將一交換能力請求作為貨物封裝於一泛用傳送基元中,且經由該超管理器將該泛用傳送基元自該邏輯分割區轉遞至該硬體管理控制台而不由該超管理器對該貨物進行檢驗或剖析;或(ii)由該超管理器起始一交換能力請求,且將該交換能力請求自該超管理器轉遞至該邏輯分割區。
  10. 一種經邏輯分割的資料處理系統,其包含:至少一處理器,其包含至少一邏輯分割區;至少一硬體管理控制台,每一硬體管理控制台為用於 分割管理之一使用者介面;及一超管理器,其使該至少一硬體管理控制台與該至少一邏輯分割區介面連接,且包含用於經由該超管理器在該至少一硬體管理控制台中之一硬體管理控制台與該至少一邏輯分割區中之一邏輯分割區之間通信的一通信設施,該通信設施包含在該硬體管理控制台與該邏輯分割區之間的一超管理器管道,該超管理器管道包含經由該超管理器之該硬體管理控制台與該邏輯分割區之間的一點對點、邏輯通信會期,該通信包括:由一源端點將該源端點之一請求或一回應作為貨物封裝於待經由該超管理器管道轉遞之一泛用傳送基元中,該源端點為該至少一硬體管理控制台中之該硬體管理控制台或該至少一邏輯分割區中之該邏輯分割區中之一者;及經由該超管理器管道將該泛用傳送基元直接地自該源端點轉遞至一目標端點,其中該轉遞包含藉由該超管理器接收在該源端點處經封裝之該泛用傳送基元且將該泛用傳送基元之該貨物轉遞至該目標端點,該貨物包含該請求或該回應,且其中在由該超管理器進行之該接收及該轉遞中未由該超管理器對該貨物進行檢驗或剖析,且該目標端點為該至少一邏輯分割區中之該邏輯分割區或該至少一硬體管理控制台中之該硬體管理控制台中的另一者。
  11. 如請求項10之經邏輯分割的資料處理系統,其中該接收 到之泛用傳送基元為一源傳送基元,且其中該轉遞包含由該超管理器建置一目標傳送基元,該建置包含將該源傳送基元之該貨物複製至該目標傳送基元中,且將該目標傳送基元自該超管理器轉遞至該目標端點。
  12. 如請求項11之經邏輯分割的資料處理系統,其中該超管理器進一步包括與該目標端點相關聯之訊息緩衝器之一集區,且其中該超管理器將該泛用傳送基元接收至一接收緩衝器中且在一目標訊息緩衝器中建置該目標傳送基元,該目標訊息緩衝器為自與該目標端點相關聯之訊息緩衝器之該集區擷取到之一訊息緩衝器。
  13. 如請求項12之經邏輯分割的資料處理系統,其中該建置該目標傳送基元進一步包括判定與該目標端點相關聯之訊息緩衝器之該集區中是否有一目標訊息緩衝器可用,且若是,則自與該目標端點相關聯之訊息緩衝器之該集區獲得該目標訊息緩衝器且在該所獲得之目標訊息緩衝器中建置該目標傳送基元,該建置包括由該超管理器將包含該源端點之該請求或該回應的該貨物自該接收緩衝器複製至該目標訊息緩衝器中而不對該貨物進行檢驗或剖析。
  14. 如請求項11之經邏輯分割的資料處理系統,其中將該目標傳送基元轉遞至該目標端點包含由該超管理器將該目標傳送基元非同步地轉遞至該目標端點。
  15. 如請求項10之經邏輯分割的資料處理系統,其中該至少一處理器包含多個邏輯分割區,且其中該至少一硬體管 理控制台跨越耦接至該超管理器之一靈活服務處理器而連接至該經邏輯分割的資料處理系統之該超管理器,且該通信設施進一步包含在該至少一硬體管理控制台中之每一硬體管理控制台與該至少一邏輯分割區中之一各別邏輯分割區之間的一各別超管理器管道。
  16. 如請求項15之經邏輯分割的資料處理系統,其中該通信設施經組態以回應於改變在該經邏輯分割的資料處理系統之該超管理器或一端點處之能力的一事件而在該等邏輯分割區、該超管理器及該至少一硬體管理控制台之間自動交換能力,該端點為該至少一邏輯分割區中之該邏輯分割區或該至少一硬體管理控制台中之該硬體管理控制台。
  17. 一具有用以促進一經邏輯分割的資料處理系統之一硬體管理控制台與一邏輯分割區之間之通信的製品,其包含:至少一非暫時性電腦可讀媒體,其具有用以促進該經邏輯分割的資料處理系統之該硬體管理控制台與該邏輯分割區之間之通信的電腦可讀程式碼邏輯,當在一處理器上執行時,該電腦可讀程式碼邏輯執行以下動作:利用一超管理器管道於該硬體管理控制台與該邏輯分割區之間直接通信,該超管理器管道包含經由該資料處理系統之一超管理器之該硬體管理控制台與該邏輯分割區之間的一點對點、邏輯通信會期,該利用包含: 由一源端點將該源端點之一請求或一回應作為貨物封裝於待經由該超管理器管道轉遞之一泛用傳送基元中,該源端點為該資料處理系統之該硬體管理控制台或該邏輯分割區中之一者,其中該硬體管理控制台為用於分割管理之一使用者介面;及經由該超管理器管道將該泛用傳送基元直接地自該源端點轉遞至一目標端點,其中該轉遞包含藉由該超管理器接收在該源端點處經封裝之該泛用傳送基元且將該泛用傳送基元之該貨物轉遞至該目標端點,該貨物包含該源端點之該請求或該回應,且其中在由該超管理器進行之該接收及該轉遞中未由該超管理器對該貨物進行檢驗或剖析,且該目標端點為該資料處理系統之該邏輯分割區或該硬體管理控制台中之另一者。
  18. 如請求項17之製品,其中該接收到之泛用傳送基元為一源傳送基元,且其中該轉遞包含由該超管理器建置一目標傳送基元,該建置包含將該源傳送基元之該貨物複製至該目標傳送基元中,且將該目標傳送基元自該超管理器轉遞至該目標端點。
  19. 如請求項18之製品,其中該接收包含在該超管理器處將該源傳送基元接收至一接收緩衝器中,且該建置包含在該超管理器處在一目標訊息緩衝器中建置該目標傳送基元,該目標訊息緩衝器來自在該超管理器處之與該目標端點相關聯的訊息緩衝器之一集區。
  20. 如請求項19之製品,其中該建置進一步包含判定與該目 標端點相關聯之訊息緩衝器之該集區中是否有一目標訊息緩衝器可用,且若是,則自與該目標端點相關聯之訊息緩衝器之該集區獲得該目標訊息緩衝器且在該所獲得之目標訊息緩衝器中建置該目標傳送基元,該建置包含由該超管理器將包含該源端點之該請求或該回應的該貨物自該接收緩衝器複製至該目標訊息緩衝器中而不對該貨物進行檢驗或剖析。
TW099106799A 2009-03-13 2010-03-09 用於在一硬體管理控制台及一邏輯分割區間通信之以超管理器為基礎之設施 TWI463304B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US12/403,402 US8230077B2 (en) 2008-06-06 2009-03-13 Hypervisor-based facility for communicating between a hardware management console and a logical partition

Publications (2)

Publication Number Publication Date
TW201102805A TW201102805A (en) 2011-01-16
TWI463304B true TWI463304B (zh) 2014-12-01

Family

ID=44838280

Family Applications (1)

Application Number Title Priority Date Filing Date
TW099106799A TWI463304B (zh) 2009-03-13 2010-03-09 用於在一硬體管理控制台及一邏輯分割區間通信之以超管理器為基礎之設施

Country Status (1)

Country Link
TW (1) TWI463304B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050071446A1 (en) * 2003-09-25 2005-03-31 International Business Machines Corporation Auto-configuration of an internal vlan network interface
TW200606706A (en) * 2004-05-28 2006-02-16 Ibm System for correct distribution of hypervisor work
US20060123217A1 (en) * 2004-12-07 2006-06-08 International Business Machines Corporation Utilization zones for automated resource management
TW200813844A (en) * 2006-02-28 2008-03-16 Ibm Method and apparatus for generating unique identifiers for logical partitions

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050071446A1 (en) * 2003-09-25 2005-03-31 International Business Machines Corporation Auto-configuration of an internal vlan network interface
TW200606706A (en) * 2004-05-28 2006-02-16 Ibm System for correct distribution of hypervisor work
US20060123217A1 (en) * 2004-12-07 2006-06-08 International Business Machines Corporation Utilization zones for automated resource management
TW200813844A (en) * 2006-02-28 2008-03-16 Ibm Method and apparatus for generating unique identifiers for logical partitions

Also Published As

Publication number Publication date
TW201102805A (en) 2011-01-16

Similar Documents

Publication Publication Date Title
US8230077B2 (en) Hypervisor-based facility for communicating between a hardware management console and a logical partition
US11194753B2 (en) Platform interface layer and protocol for accelerators
TWI559153B (zh) 分散式計算架構
US8249072B2 (en) Scalable interface for connecting multiple computer systems which performs parallel MPI header matching
JP5595635B2 (ja) 入出力(i/o)ファブリック内のキューをクリアする方法、i/oファブリック・エラーを処理する方法及びコンピュータ・プログラム製品(エラー回復のためにi/oファブリックのロックアップ状態を検出しクリアするためのメカニズム)
CN102859491B (zh) 通过利用接收侧缩放(rss)软件为网络适配器动态添加或移除队列对的资源关联
CN100478926C (zh) 发送数据的方法和系统及接收数据的方法和系统
US8112559B2 (en) Increasing available FIFO space to prevent messaging queue deadlocks in a DMA environment
JP6336988B2 (ja) 使用要求の小バッチ処理のためのシステムおよび方法
JP4636629B2 (ja) リモート・サーバの遠隔復旧を提供することができるシステム
CN104871493A (zh) 高性能计算(hpc)网络中的通信信道故障切换
CN1881944B (zh) 改进型分布式核心操作系统
US20050080933A1 (en) Master-slave adapter
CN104714905A (zh) 用于执行从第一适配器到第二适配器的失效转移操作的方法和系统
CN104994032B (zh) 一种信息处理的方法和装置
US8990451B2 (en) Controller for direct access to a memory for the direct transfer of data between memories of several peripheral devices, method and computer program enabling the implementation of such a controller
US20090320023A1 (en) Process Migration Based on Service Availability in a Multi-Node Environment
CN107210967A (zh) 用于优化网络传输的系统和方法
US20160210255A1 (en) Inter-processor bus link and switch chip failure recovery
US8028017B2 (en) Virtual controllers with a large data center
CN107533493A (zh) 恢复服务加速
US8631086B2 (en) Preventing messaging queue deadlocks in a DMA environment
JP6336602B2 (ja) パケットフロー制御方法、関連装置、及びコンピューティングノード
CN113886089A (zh) 一种任务处理方法、装置、系统、设备及介质
US20050080945A1 (en) Transferring message packets from data continued in disparate areas of source memory via preloading