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

保留虛擬機(jī)的高速緩存的系統(tǒng)和方法

文檔序號(hào):6520582閱讀:145來(lái)源:國(guó)知局
專利名稱:保留虛擬機(jī)的高速緩存的系統(tǒng)和方法
技術(shù)領(lǐng)域
本發(fā)明一般地涉及計(jì)算機(jī)系統(tǒng),具體地說(shuō),涉及保留虛擬機(jī)的高速緩存的內(nèi)容。
背景技術(shù)
目前,配置為虛擬機(jī)的計(jì)算機(jī)是公知的。在這種配置中,系統(tǒng)管理程序?qū)?shí)際計(jì)算機(jī)的物理資源邏輯地劃分成獨(dú)立的虛擬機(jī)。虛擬機(jī)是對(duì)諸如一個(gè)或多個(gè)處理器、存儲(chǔ)器、存儲(chǔ)設(shè)備和I/O(即網(wǎng)卡、打印機(jī)和顯示裝置)之類的計(jì)算機(jī)資源的一種虛擬共享。在每個(gè)虛擬機(jī)上執(zhí)行/運(yùn)行客戶操作系統(tǒng)。一個(gè)或多個(gè)應(yīng)用和中間件程序(例如文件管理器)運(yùn)行在每個(gè)客戶操作系統(tǒng)上。盡管每個(gè)應(yīng)用、中間件程序和客戶操作系統(tǒng)都在虛擬機(jī)中執(zhí)行,但是它們就像運(yùn)行在其自己專用的實(shí)際計(jì)算機(jī)上那樣運(yùn)行。在公知的IBM z/VM操作系統(tǒng)中,系統(tǒng)管理程序被稱為控制程序(“CP”),并且每個(gè)虛擬機(jī)可以被稱為“虛擬機(jī)”、“用戶部分”或“客戶”。由邏輯分區(qū)程序?qū)?shí)際計(jì)算機(jī)的物理資源邏輯地劃分為邏輯分區(qū)(“LPAR”),然后由系統(tǒng)管理程序?qū)⒚總€(gè)LPAR邏輯地劃分為虛擬機(jī),這也公知的。在公知的IBM zSeries計(jì)算機(jī)中,公知的IBM處理器資源/資源管理器(“PR/SM”)程序?qū)?shí)際計(jì)算機(jī)邏輯地分區(qū)。
公知的將實(shí)際計(jì)算機(jī)劃分成虛擬機(jī)將在下面進(jìn)一步描述。系統(tǒng)管理程序?qū)⒁粋€(gè)或多個(gè)實(shí)際處理器的時(shí)間劃分分配給每個(gè)虛擬機(jī)。系統(tǒng)管理程序還將一系列映射到RAM的(虛擬)專用存儲(chǔ)器(“VPM”)分配給每個(gè)虛擬機(jī)。當(dāng)虛擬機(jī)尋址其自己的(虛擬)專用存儲(chǔ)器時(shí),系統(tǒng)管理程序?qū)⑻摂M存儲(chǔ)器地址轉(zhuǎn)換成實(shí)存儲(chǔ)器的實(shí)地址。系統(tǒng)管理程序還將存儲(chǔ)器分配給自身以便存儲(chǔ)其自己的控制結(jié)構(gòu)。
每個(gè)虛擬機(jī)中的客戶操作系統(tǒng)可以是Linux(Linus Torvalds的商標(biāo))操作系統(tǒng)、IBM CMS操作系統(tǒng)或其他操作系統(tǒng)。在每個(gè)虛擬機(jī)的每個(gè)客戶操作系統(tǒng)上執(zhí)行的應(yīng)用可以是IBM DB2數(shù)據(jù)庫(kù)管理應(yīng)用、IBM Websphere應(yīng)用或其他應(yīng)用。
用于每個(gè)虛擬機(jī)的客戶操作系統(tǒng)和應(yīng)用(多個(gè))被存儲(chǔ)在分配給虛擬機(jī)的專用存儲(chǔ)器中。每個(gè)虛擬機(jī)還包括虛擬機(jī)的專用存儲(chǔ)器中的高速緩存。該高速緩存包含由應(yīng)用或中間件通過(guò)文件系統(tǒng)從(盤)存儲(chǔ)設(shè)備最近訪問(wèn)的數(shù)據(jù),以及關(guān)聯(lián)的元數(shù)據(jù)。元數(shù)據(jù)包括文件的目錄和子目錄路徑、當(dāng)前被寫入或讀取的文件中的記錄的標(biāo)識(shí)、文件大小、文件中的記錄的大小、文件中的數(shù)據(jù)的類型(ASCII、EBCDIC或BINARY)、文件在盤上被存儲(chǔ)在何處等。
如以上說(shuō)明的,邏輯分區(qū)程序?qū)蝹€(gè)實(shí)際計(jì)算機(jī)邏輯地劃分成多個(gè)邏輯分區(qū)(“LPAR”),然后由系統(tǒng)管理程序?qū)⒚總€(gè)邏輯分區(qū)邏輯地劃分為獨(dú)立的虛擬機(jī),這也是公知的。換言之,邏輯分區(qū)程序邏輯地劃分和虛擬化計(jì)算機(jī)資源(包括處理器(多個(gè))和存儲(chǔ)器的共享)以形成每個(gè)LPAR,然后系統(tǒng)管理程序進(jìn)一步劃分每個(gè)LPAR的計(jì)算機(jī)資源的邏輯共享以便為每一個(gè)虛擬機(jī)形成資源平臺(tái)。通常,管理員通過(guò)向邏輯分區(qū)程序指定用于每個(gè)LPAR的處理器、存儲(chǔ)器、存儲(chǔ)設(shè)備的數(shù)量來(lái)幫助定義每個(gè)邏輯分區(qū)(“LPAR”)。每個(gè)LPAR可以被分配特定的實(shí)際計(jì)算機(jī)資源或總的計(jì)算機(jī)資源的一份。在一些計(jì)算機(jī)中,單獨(dú)的系統(tǒng)管理程序被裝入每個(gè)LPAR以便在每個(gè)邏輯分區(qū)中形成多個(gè)虛擬機(jī)。每個(gè)LPAR中的虛擬機(jī)以相同的方式運(yùn)行,好像它們是從實(shí)際計(jì)算機(jī)直接形成的那樣。
現(xiàn)有的IBM z/VM 4.2.0或4.3.0版虛擬機(jī)操作系統(tǒng)包括已知的系統(tǒng)管理程序,其具有從LPAR或?qū)嶋H計(jì)算機(jī)形成每個(gè)虛擬機(jī)的能力。現(xiàn)有的z/VM4.2.0操作系統(tǒng)的詳細(xì)信息已在IBM出版物“z/VM4.2.0通用信息”(z/VM4.2.0 General Information,文檔號(hào)GC24-5991-03)中公開,該出版物可從國(guó)際商業(yè)機(jī)器公司(PO Box 29570,IBMPublications,Raleigh,NorthCarolina 27626-0570)或者在萬(wàn)維網(wǎng)上從www.IBM.com/shop/publications/order獲得。此出版物在此作為本公開的一部分被引入作為參考。
諸如IBM DB/2程序之類的文件管理器程序也是公知的。文件管理器程序可以被認(rèn)為是“中間件”。虛擬機(jī)中的應(yīng)用可以向文件管理器請(qǐng)求文件,而文件管理器為該應(yīng)用從存儲(chǔ)設(shè)備訪問(wèn)文件。文件管理器可以在存儲(chǔ)器中創(chuàng)建高速緩存以便存儲(chǔ)應(yīng)用所需的文件頁(yè),并且根據(jù)最近使用的算法保留這些頁(yè)。
有時(shí),虛擬機(jī)會(huì)終止。當(dāng)由虛擬機(jī)的用戶或?qū)嶋H計(jì)算機(jī)的管理員請(qǐng)求時(shí),終止可以是“故意的”。此故意的終止通常被實(shí)現(xiàn)為標(biāo)準(zhǔn)的“注銷”。終止也可以是意外的,這歸因于虛擬機(jī)、客戶操作系統(tǒng)、系統(tǒng)管理程序或?qū)嶋H計(jì)算機(jī)的故障。當(dāng)虛擬機(jī)由于虛擬機(jī)或客戶操作系統(tǒng)的故障或者由于虛擬機(jī)的注銷而終止時(shí),公知的系統(tǒng)管理程序自動(dòng)地刪除虛擬機(jī)的專用存儲(chǔ)器(包括高速緩存)的內(nèi)容。
每個(gè)虛擬機(jī)中的客戶操作系統(tǒng)定期地將其高速緩存的內(nèi)容“記錄”或復(fù)制到非易失性盤是公知的。所以,如果虛擬機(jī)由于虛擬機(jī)、客戶操作系統(tǒng)、系統(tǒng)管理程序或?qū)嶋H計(jì)算機(jī)的故障而終止,則最近訪問(wèn)的數(shù)據(jù)和元數(shù)據(jù)將被保留。因此,當(dāng)虛擬機(jī)重新啟動(dòng)時(shí),可以從存儲(chǔ)設(shè)備提供高速緩存的內(nèi)容以便恢復(fù)處理。但是,與其他虛擬機(jī)操作相比,由于存儲(chǔ)設(shè)備的性質(zhì),定期將數(shù)據(jù)記錄/復(fù)制到存儲(chǔ)設(shè)備是較慢的。這將使虛擬機(jī)的運(yùn)行變慢。
本發(fā)明的一個(gè)目的是當(dāng)虛擬機(jī)由于所述虛擬機(jī)或其客戶操作系統(tǒng)的故障而終止時(shí),保留所述虛擬機(jī)的高速緩存的內(nèi)容。
本發(fā)明的一個(gè)更具體的目的是在不減緩虛擬機(jī)運(yùn)行的情況下保留所述虛擬機(jī)的高速緩存的內(nèi)容。

發(fā)明內(nèi)容
本發(fā)明存在于用于管理虛擬機(jī)的高速緩存的系統(tǒng)、計(jì)算機(jī)程序產(chǎn)品和方法中。在存儲(chǔ)器中定義高速緩存,并且虛擬機(jī)被指派給所述高速緩存。在存儲(chǔ)設(shè)備中記錄所述高速緩存的標(biāo)識(shí)。所述虛擬機(jī)終止,并且盡管所述虛擬機(jī)終止,但是所述高速緩存和所述高速緩存的內(nèi)容被保留,使得在所述虛擬機(jī)隨后恢復(fù)運(yùn)行時(shí),所述虛擬機(jī)可以訪問(wèn)所述高速緩存及其內(nèi)容。
根據(jù)本發(fā)明的另一個(gè)特征,在與所述第一虛擬機(jī)相同的實(shí)際計(jì)算機(jī)上定義第二虛擬機(jī)。產(chǎn)生所述第一和第二虛擬機(jī)都是所述高速緩存的用戶的記錄,使得當(dāng)所述第一虛擬機(jī)終止時(shí),仍存在一個(gè)為所述高速緩存記錄的運(yùn)行用戶。當(dāng)所述第一虛擬機(jī)終止時(shí),根據(jù)所述高速緩存的所述一個(gè)運(yùn)行用戶的所述記錄來(lái)保留所述高速緩存及其內(nèi)容。
根據(jù)本發(fā)明的另一個(gè)特征,所述虛擬機(jī)請(qǐng)求連接到所述高速緩存,并且作為響應(yīng),產(chǎn)生所述虛擬機(jī)是所述高速緩存的用戶的記錄。第二虛擬機(jī)請(qǐng)求連接到所述高速緩存,并且作為響應(yīng),產(chǎn)生所述第二虛擬機(jī)是所述高速緩存的另一個(gè)用戶的記錄。
根據(jù)本發(fā)明的另一個(gè)特征,所述虛擬機(jī)向所述虛擬機(jī)的系統(tǒng)管理程序做出連接到所述高速緩存并在所述虛擬機(jī)終止的情況下保留所述高速緩存的請(qǐng)求。作為響應(yīng),所述系統(tǒng)管理程序定義了一個(gè)表,該表將所述高速緩存的所述虛擬機(jī)使用的虛擬地址與所述高速緩存相關(guān)聯(lián)。所述表在所述虛擬機(jī)終止后繼續(xù)存在,由此在所述虛擬機(jī)終止的情況下,所述高速緩存被保留。
根據(jù)本發(fā)明的另一個(gè)特征,在與所述第一虛擬機(jī)相同的實(shí)際計(jì)算機(jī)上的另一個(gè)虛擬機(jī)向所述系統(tǒng)管理程序做出連接到另一個(gè)高速緩存但是在另一個(gè)虛擬機(jī)終止的情況不保留另一個(gè)高速緩存的請(qǐng)求。作為響應(yīng),所述系統(tǒng)管理程序定義了另一個(gè)表,該表將所述另一個(gè)高速緩存的所述另一個(gè)虛擬機(jī)使用的虛擬地址與所述另一個(gè)高速緩存相關(guān)聯(lián)。所述另一個(gè)表在所述另一個(gè)虛擬機(jī)終止時(shí)被刪除,由此在另一個(gè)虛擬機(jī)終止的情況下,所述另一個(gè)高速緩存被刪除。
根據(jù)本發(fā)明的另一個(gè)特征,所述虛擬機(jī)向所述虛擬機(jī)的系統(tǒng)管理程序做出連接到所述高速緩存并在所述虛擬機(jī)終止的情況下保留所述高速緩存的請(qǐng)求。作為響應(yīng),所述系統(tǒng)管理程序產(chǎn)生在所述虛擬機(jī)終止的情況下所述高速緩存應(yīng)被保留的記錄。當(dāng)所述虛擬機(jī)終止時(shí),所述系統(tǒng)管理程序保留所述高速緩存和所述高速緩存的內(nèi)容,使得在所述虛擬機(jī)恢復(fù)運(yùn)行時(shí),所述虛擬機(jī)可以訪問(wèn)所述高速緩存及其內(nèi)容。
根據(jù)本發(fā)明的另一個(gè)特征,所述虛擬機(jī)恢復(fù)運(yùn)行,并且所述虛擬機(jī)對(duì)所述高速緩存及其內(nèi)容的訪問(wèn)被恢復(fù)。
根據(jù)本發(fā)明的另一個(gè)實(shí)施例,存在一種用于管理邏輯分區(qū)的高速緩存的系統(tǒng)、方法和計(jì)算機(jī)程序產(chǎn)品。在存儲(chǔ)器中定義高速緩存,并且所述高速緩存被指派給邏輯分區(qū)。在存儲(chǔ)設(shè)備中產(chǎn)生所述高速緩存的標(biāo)識(shí)的記錄。所述邏輯分區(qū)終止,盡管所述邏輯分區(qū)終止,但是所述高速緩存和所述高速緩存的內(nèi)容被保留,使得在所述邏輯分區(qū)隨后恢復(fù)運(yùn)行時(shí),所述邏輯分區(qū)可以訪問(wèn)所述高速緩存及其內(nèi)容。


圖1是根據(jù)本發(fā)明的一個(gè)實(shí)施例的實(shí)際計(jì)算機(jī)的方框圖,該實(shí)際計(jì)算機(jī)具有兩個(gè)邏輯分區(qū),每個(gè)邏輯分區(qū)中有多個(gè)虛擬機(jī)和一個(gè)系統(tǒng)管理程序;圖2是在虛擬機(jī)的初始化和設(shè)置期間圖1的計(jì)算機(jī)系統(tǒng)內(nèi)的生產(chǎn)(productive)虛擬機(jī)和系統(tǒng)管理程序的處理的流程圖;圖3是圖1的計(jì)算機(jī)系統(tǒng)內(nèi)的高速緩存繼續(xù)存在(keep alive)虛擬機(jī)和系統(tǒng)管理程序的處理的流程圖;圖4是示出了在虛擬機(jī)終止期間圖2的生產(chǎn)虛擬機(jī)和系統(tǒng)管理程序的處理的流程圖;圖5是示出了在虛擬機(jī)重新引導(dǎo)期間圖2的生產(chǎn)虛擬機(jī)和系統(tǒng)管理程序的處理的流程圖;圖6是根據(jù)本發(fā)明的另一個(gè)實(shí)施例的另一個(gè)實(shí)際計(jì)算機(jī)的方框圖,該實(shí)際計(jì)算機(jī)具有兩個(gè)邏輯分區(qū),每個(gè)邏輯分區(qū)中有多個(gè)虛擬機(jī)和一個(gè)系統(tǒng)管理程序;圖7是在虛擬機(jī)的初始化和設(shè)置或重新引導(dǎo)期間圖6的計(jì)算機(jī)系統(tǒng)內(nèi)的虛擬機(jī)和系統(tǒng)管理程序的處理的流程圖;圖8是示出了在虛擬機(jī)終止期間圖7的虛擬機(jī)和系統(tǒng)管理程序的處理的流程圖;圖9是根據(jù)本發(fā)明的另一個(gè)實(shí)施例的具有兩個(gè)邏輯分區(qū)的實(shí)際計(jì)算機(jī)的方框圖;圖10是在LPAR的初始化和設(shè)置期間圖9的計(jì)算機(jī)系統(tǒng)內(nèi)的生產(chǎn)LPAR和邏輯分區(qū)程序的處理的流程圖;圖11是圖9的計(jì)算機(jī)系統(tǒng)內(nèi)的高速緩存繼續(xù)存在虛擬LPAR和邏輯分區(qū)程序的處理的流程圖;圖12是示出了在虛擬機(jī)終止期間圖10的生產(chǎn)LPAR和邏輯分區(qū)程序的處理的流程圖;圖13是示出了在虛擬機(jī)重新引導(dǎo)期間圖10的生產(chǎn)LPAR和邏輯分區(qū)程序的處理的流程圖。
具體實(shí)施例方式
現(xiàn)在將參考附圖詳細(xì)描述本發(fā)明,其中相同的標(biāo)號(hào)始終指相同的部件。圖1示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的通常指定為110的計(jì)算機(jī)系統(tǒng)。計(jì)算機(jī)系統(tǒng)110包括實(shí)際/物理計(jì)算機(jī)20。計(jì)算機(jī)20包括CPU 23、RAM 24、邏輯分區(qū)程序25以及操作者控制臺(tái)27。計(jì)算機(jī)系統(tǒng)110還包括本地或遠(yuǎn)程的外部(盤)存儲(chǔ)設(shè)備26。通過(guò)實(shí)例的方式,實(shí)際計(jì)算機(jī)20可以是IBMzSeries服務(wù)器,盡管本發(fā)明也可以以其他服務(wù)器計(jì)算機(jī)或個(gè)人計(jì)算機(jī)來(lái)實(shí)現(xiàn)。在圖1示出的實(shí)施例中,邏輯分區(qū)程序25是公知的IBM處理器資源/資源管理器(“PR/SM”)程序,并且將實(shí)際計(jì)算機(jī)20分成邏輯分區(qū)(“LPAR”)30和31,盡管如果希望,程序25可以將計(jì)算機(jī)20分成更多的邏輯分區(qū)。也可以使用其他公知的邏輯分區(qū)程序。LPAR是計(jì)算機(jī)20的實(shí)際計(jì)算機(jī)資源的實(shí)際或邏輯分區(qū)。例如,如果計(jì)算機(jī)20包括八個(gè)處理器,程序25可以將四個(gè)實(shí)際處理器分配給LPAR 30,而將其他四個(gè)實(shí)際處理器分配給LPAR31,或者程序25可以在LPAR 30與31之間分時(shí)使用所有八個(gè)處理器。程序25還在LPAR 30與LPAR 31之間劃分整個(gè)存儲(chǔ)器24,通常作為“虛擬”存儲(chǔ)器。“虛擬”存儲(chǔ)器分配基于分配給每個(gè)LPAR的虛擬存儲(chǔ)器地址范圍,與實(shí)存儲(chǔ)器24中的物理位置無(wú)關(guān)。程序25借助地址轉(zhuǎn)換表將每個(gè)LPAR使用的虛擬地址轉(zhuǎn)換成實(shí)際數(shù)據(jù)存儲(chǔ)的實(shí)存儲(chǔ)器地址。兩個(gè)LPAR中的虛擬機(jī)都通過(guò)提供給各自的系統(tǒng)管理程序的虛擬地址來(lái)訪問(wèn)存儲(chǔ)設(shè)備26。本發(fā)明還可以被包含在包括虛擬機(jī)和系統(tǒng)管理程序但是并沒有被劃分成單獨(dú)的LPAR的實(shí)際計(jì)算機(jī)中。
系統(tǒng)管理程序40和41分別在LPAR 30和31上執(zhí)行。系統(tǒng)管理程序40將LPAR 30劃分成虛擬機(jī)33,34和35(以及其他未示出的虛擬機(jī))。換言之,系統(tǒng)管理程序40邏輯地劃分和虛擬化LPAR 30的計(jì)算機(jī)資源(包括處理器(多個(gè))23和存儲(chǔ)器24的共享),以便為虛擬機(jī)33,34和35中的每個(gè)虛擬機(jī)形成資源平臺(tái)。系統(tǒng)管理程序40將分配給LPAR 30的實(shí)際處理器(多個(gè))23的時(shí)分分配給每個(gè)虛擬機(jī)33,34和35。系統(tǒng)管理程序40將一系列映射到RAM 24的(虛擬)專用存儲(chǔ)器(“VPM”)(例如,用于虛擬機(jī)33的虛擬專用存儲(chǔ)器133,以及用于虛擬機(jī)34的虛擬專用存儲(chǔ)器134)分配給每個(gè)虛擬機(jī)33,34和35。當(dāng)虛擬機(jī)33或34尋址其(虛擬)專用存儲(chǔ)器時(shí),系統(tǒng)管理程序40將虛擬存儲(chǔ)器地址轉(zhuǎn)換成實(shí)存儲(chǔ)器24的實(shí)地址。虛擬機(jī)33和34是“生產(chǎn)”虛擬機(jī),因?yàn)樗鼈儓?zhí)行諸如Web應(yīng)用或數(shù)據(jù)庫(kù)應(yīng)用之類的生產(chǎn)應(yīng)用。如以下更詳細(xì)地說(shuō)明的,“高速緩存繼續(xù)存在”虛擬機(jī)35的功能是確保在虛擬機(jī)33和34異常終止的情況下分配給虛擬機(jī)33和34的高速緩存繼續(xù)存在。
對(duì)于LPAR 30中的每個(gè)虛擬機(jī),客戶操作系統(tǒng)、一個(gè)或多個(gè)應(yīng)用以及中間件(例如文件管理器)在分配給虛擬機(jī)的(虛擬)處理器(多個(gè))上執(zhí)行??蛻舨僮飨到y(tǒng)43,44和45分別在虛擬機(jī)33,34和35上執(zhí)行,并且應(yīng)用53,54和中間件63,64分別在客戶操作系統(tǒng)43,44上執(zhí)行。但是,每個(gè)客戶操作系統(tǒng)上可以存在多個(gè)正在執(zhí)行的應(yīng)用。通過(guò)實(shí)例的方式,客戶操作系統(tǒng)可以是Linux(Linus Torvalds的商標(biāo))操作系統(tǒng)或IBM CMS操作系統(tǒng)。其他客戶操作系統(tǒng)也是可用的,例如Microsoft Windows(tm)操作系統(tǒng)、Unix(tm)操作系統(tǒng)、Sun Microsystems Solaris(tm)操作系統(tǒng)或Hewlett Packard HP UX操作系統(tǒng)。通過(guò)實(shí)例的方式,應(yīng)用53和54可以是IBM DB2數(shù)據(jù)庫(kù)管理應(yīng)用、IBM Websphere應(yīng)用或其他應(yīng)用。應(yīng)用53和54的性質(zhì)并不形成本發(fā)明的任何部分,除了它們使用用于數(shù)據(jù)和元數(shù)據(jù)的高速緩存存儲(chǔ)器以外。用于LPAR 30中的每個(gè)虛擬機(jī)的客戶操作系統(tǒng)和應(yīng)用(多個(gè))被存儲(chǔ)在分配給虛擬機(jī)的各自的專用存儲(chǔ)器中。
在示出的實(shí)施例中,虛擬機(jī)33和34的高速緩存被存儲(chǔ)在分配給系統(tǒng)管理程序40的存儲(chǔ)器220中。用于虛擬機(jī)33的高速緩存233可由虛擬機(jī)33、虛擬機(jī)35和系統(tǒng)管理程序40訪問(wèn),盡管實(shí)際上高速緩存繼續(xù)存在虛擬機(jī)35不需要訪問(wèn)高速緩存233。同樣地,用于虛擬機(jī)34的高速緩存234可由虛擬機(jī)34、虛擬機(jī)35和系統(tǒng)管理程序40訪問(wèn),盡管實(shí)際上高速緩存繼續(xù)存在虛擬機(jī)35不需要訪問(wèn)高速緩存234。
系統(tǒng)管理程序41將LPAR 31劃分成虛擬機(jī)36,37和38(以及其他未示出的虛擬機(jī))。換言之,系統(tǒng)管理程序41邏輯地劃分和虛擬化LPAR 31的計(jì)算機(jī)資源(包括處理器(多個(gè))23和存儲(chǔ)器24的共享),以便為虛擬機(jī)36,37和38中的每個(gè)虛擬機(jī)形成資源平臺(tái)。系統(tǒng)管理程序41將分配給LPAR 31的實(shí)際處理器(多個(gè))23的時(shí)分分配給每個(gè)虛擬機(jī)36,37和38。系統(tǒng)管理程序41還從LPAR 31將一系列映射到RAM 24的(虛擬)專用存儲(chǔ)器(“VPM”)(例如,用于虛擬機(jī)36的虛擬專用存儲(chǔ)器136,以及用于虛擬機(jī)37的虛擬專用存儲(chǔ)器137)分配給每個(gè)虛擬機(jī)36,37和38。當(dāng)虛擬機(jī)36或37尋址其(虛擬)專用存儲(chǔ)器時(shí),系統(tǒng)管理程序41將虛擬存儲(chǔ)器地址轉(zhuǎn)換成實(shí)存儲(chǔ)器24的實(shí)地址。虛擬機(jī)36和37是“生產(chǎn)”虛擬機(jī),因?yàn)樗鼈儓?zhí)行諸如Web應(yīng)用或數(shù)據(jù)庫(kù)應(yīng)用之類的生產(chǎn)應(yīng)用。如以下更詳細(xì)地說(shuō)明的,“高速緩存繼續(xù)存在”虛擬機(jī)38的功能是確保在虛擬機(jī)36和37異常終止的情況下分配給虛擬機(jī)36和37的高速緩存繼續(xù)存在。
對(duì)于LPAR 31中的每個(gè)虛擬機(jī),客戶操作系統(tǒng)以及一個(gè)或多個(gè)應(yīng)用在分配給虛擬機(jī)的(虛擬)處理器(多個(gè))上執(zhí)行??蛻舨僮飨到y(tǒng)46,47和48分別在虛擬機(jī)36,37和38上執(zhí)行,并且應(yīng)用56,57和中間件66,67(例如文件管理器)分別在客戶操作系統(tǒng)46,47上執(zhí)行。但是,每個(gè)客戶操作系統(tǒng)上可以存在多個(gè)正在執(zhí)行的應(yīng)用。通過(guò)實(shí)例的方式,客戶操作系統(tǒng)可以是Linux(Linus Torvalds的商標(biāo))操作系統(tǒng)或IBM CMS操作系統(tǒng)。其他客戶操作系統(tǒng)也是可用的,例如Microsoft Windows(tm)操作系統(tǒng)、Unix(tm)操作系統(tǒng)、Sun Microsystems Solaris(tm)操作系統(tǒng)或Hewlett Packard HP UX操作系統(tǒng)。通過(guò)實(shí)例的方式,應(yīng)用56和57可以是IBM DB2數(shù)據(jù)庫(kù)管理應(yīng)用、IBM Websphere應(yīng)用或其他應(yīng)用。應(yīng)用56和57的性質(zhì)并不形成本發(fā)明的任何部分,除了它們使用用于數(shù)據(jù)和元數(shù)據(jù)的高速緩存存儲(chǔ)器以外。用于LPAR 31中的每個(gè)虛擬機(jī)的客戶操作系統(tǒng)和應(yīng)用(多個(gè))被存儲(chǔ)在分配給虛擬機(jī)的各自的專用存儲(chǔ)器中。
在示出的實(shí)施例中,虛擬機(jī)36和37的高速緩存被存儲(chǔ)在分配給系統(tǒng)管理程序41的存儲(chǔ)器中。虛擬機(jī)36的高速緩存可由虛擬機(jī)36、虛擬機(jī)38和系統(tǒng)管理程序41訪問(wèn),盡管實(shí)際上虛擬機(jī)38不需要訪問(wèn)此高速緩存。同樣地,虛擬機(jī)37的高速緩存可由虛擬機(jī)37、虛擬機(jī)38和系統(tǒng)管理程序41訪問(wèn),盡管實(shí)際上虛擬機(jī)38不需要訪問(wèn)此高速緩存。
每個(gè)生產(chǎn)虛擬機(jī)都具有其自己的高速緩存,該高速緩存存儲(chǔ)從存儲(chǔ)設(shè)備26獲得的其自己的數(shù)據(jù)和元數(shù)據(jù)。緩存的數(shù)據(jù)通常是文件的最近引用的數(shù)據(jù)(或“頁(yè)”)。元數(shù)據(jù)可以包括文件的目錄和子目錄路徑、當(dāng)前被寫入或讀取的文件中的記錄的標(biāo)識(shí)、文件大小、文件中的記錄的大小、文件中的數(shù)據(jù)的類型(ASCII、EBCDIC或BINARY)、文件在盤上被存儲(chǔ)在何處等。根據(jù)本發(fā)明,每個(gè)生產(chǎn)虛擬機(jī)33和34的高速緩存被存儲(chǔ)在不能被其他生產(chǎn)虛擬機(jī)(在相同或不同LPAR中)訪問(wèn)但是可以被虛擬機(jī)的系統(tǒng)管理程序40訪問(wèn)的存儲(chǔ)器區(qū)域中。在示出的實(shí)例中,虛擬機(jī)33具有高速緩存233,其不能被虛擬機(jī)34,36,37訪問(wèn),但是可以被系統(tǒng)管理程序40訪問(wèn)。
圖2示出了每個(gè)生產(chǎn)虛擬機(jī)的初始化和設(shè)置。當(dāng)虛擬機(jī)33開始運(yùn)行時(shí)(圖2的步驟270),其讀取存儲(chǔ)設(shè)備26以便判定是否已經(jīng)存在用于虛擬機(jī)的高速緩存(圖2的步驟276)。如果沒有預(yù)先存在的高速緩存(判定278,否分支),則虛擬機(jī)33請(qǐng)求連接到新的、空的高速緩存(步驟283)。作為響應(yīng),系統(tǒng)管理程序40建立一個(gè)臨時(shí)的“頁(yè)和段”表或其他此類表50以便尋址該新的高速緩存,即,使將由虛擬機(jī)提供的高速緩存的虛擬地址與高速緩存所在的存儲(chǔ)器的相應(yīng)實(shí)地址/段相關(guān)聯(lián)(步驟284)。然后,系統(tǒng)管理程序40通知虛擬機(jī)33用來(lái)訪問(wèn)新的高速緩存的虛擬地址(步驟285)。這允許虛擬機(jī)33通過(guò)適當(dāng)?shù)奶摂M地址來(lái)訪問(wèn)(即讀出和寫入)新的高速緩存233。由于此高速緩存的頁(yè)和段表是臨時(shí)的,系統(tǒng)管理程序40被編程為只要沒有高速緩存的(活動(dòng))用戶就刪除該高速緩存。系統(tǒng)管理程序40還在高速緩存用戶表250中記錄當(dāng)前存在高速緩存233的一個(gè)虛擬機(jī)用戶(步驟286)。
再次參看判定278,是分支,其中具有預(yù)先存在的高速緩存。在這種情況下,虛擬機(jī)33向系統(tǒng)管理程序40做出“連接”到此高速緩存的請(qǐng)求(步驟279)。在此情況下,所述請(qǐng)求包括虛擬機(jī)33從存儲(chǔ)設(shè)備讀取的高速緩存233的標(biāo)識(shí)。作為響應(yīng),系統(tǒng)管理程序40通知虛擬機(jī)33用于所述高速緩存的虛擬地址(步驟280)。然后,系統(tǒng)管理程序40遞增高速緩存用戶表250以反映虛擬機(jī)33現(xiàn)在是高速緩存233的用戶(步驟281)。(如果此高速緩存的唯一其他活動(dòng)用戶是高速緩存繼續(xù)存在虛擬機(jī)35,則在高速緩存用戶表250中為此高速緩存233指示的活動(dòng)用戶數(shù)將為“2”,如示出的那樣。)然后,虛擬機(jī)33重新開始處理當(dāng)虛擬機(jī)33先前終止(異常地)時(shí)存在的高速緩存233中的數(shù)據(jù)(步驟282)。
圖3示出了LPAR 30中的高速緩存繼續(xù)存在虛擬機(jī)35進(jìn)行的處理。高速緩存繼續(xù)存在虛擬機(jī)35在引導(dǎo)時(shí)并且此后周期性地訪問(wèn)存儲(chǔ)設(shè)備26以獲知LPAR 30中的任意虛擬機(jī)的任意高速緩存的名稱(步驟288)。在上述實(shí)例中,在某些時(shí)刻,高速緩存繼續(xù)存在虛擬機(jī)35首先獲知由生產(chǎn)虛擬機(jī)33使用的高速緩存233(以及由LPAR 30中的任意虛擬機(jī)使用的任何其他高速緩存)的名稱。作為響應(yīng),高速緩存繼續(xù)存在虛擬機(jī)35向系統(tǒng)管理程序40做出“連接”到高速緩存233(以及虛擬機(jī)35尚未被連接到其的由LPAR 30中的任意虛擬機(jī)使用的任何其他高速緩存)的請(qǐng)求(步驟290)。所述連接到每個(gè)此類高速緩存的請(qǐng)求包括高速緩存的標(biāo)識(shí),例如高速緩存233的標(biāo)識(shí)。響應(yīng)于此請(qǐng)求,系統(tǒng)管理程序40通知虛擬機(jī)35用于每個(gè)此類高速緩存的虛擬地址(步驟292)。另外,系統(tǒng)管理程序40為虛擬機(jī)現(xiàn)在請(qǐng)求連接的每個(gè)此類高速緩存遞增高速緩存用戶表250中的用戶數(shù)(步驟294)。在圖1示出的實(shí)例中,現(xiàn)在有兩個(gè)高速緩存233的用戶,即虛擬機(jī)33和虛擬機(jī)35。(對(duì)于圖1所示的高速緩存233,是表250的第一行中的表項(xiàng)“2”)圖3還示出了高速緩存繼續(xù)存在虛擬機(jī)35中的其他程序。如果高速緩存繼續(xù)存在虛擬機(jī)35隨后正常地(例如,通過(guò)注銷)或異常地(這很少發(fā)生,除了其客戶操作系統(tǒng)出現(xiàn)故障以外)終止,則系統(tǒng)管理程序40為虛擬機(jī)被連接到其的每個(gè)高速緩存遞減高速緩存用戶表中的用戶數(shù)(步驟296)。另外,系統(tǒng)管理程序40判定這些高速緩存中的任意高速緩存是否存在活動(dòng)用戶,并且如果不存在活動(dòng)用戶,則系統(tǒng)管理程序40刪除相應(yīng)的高速緩存(步驟298)。
圖4示出了根據(jù)本發(fā)明的后續(xù)處理。在圖4的處理開始時(shí),虛擬機(jī)33是活動(dòng)(即,運(yùn)行)的,如圖2的步驟指示的(步驟302)。如果虛擬機(jī)33終止(故意的或者由于虛擬機(jī)33或客戶操作系統(tǒng)43的故障)(判定303,是分支),虛擬機(jī)33將通知(恰好在關(guān)閉之前)其系統(tǒng)管理程序40它正在終止以及該終止的性質(zhì),即正常注銷或由于故障(步驟304)。在z/VM 5.1系統(tǒng)管理程序中,可以通過(guò)虛擬機(jī)執(zhí)行“禁用等待(disabled wait)”指令來(lái)執(zhí)行通知。如果由于故障的性質(zhì),虛擬機(jī)33無(wú)法通知其系統(tǒng)管理程序40它正在終止,則系統(tǒng)管理程序40將在虛擬機(jī)隨后試圖重新引導(dǎo)時(shí)獲知該終止,并且系統(tǒng)管理程序40被調(diào)用以便重新引導(dǎo)虛擬機(jī)(步驟304)。如果系統(tǒng)管理程序40檢測(cè)到虛擬機(jī)的終止(判定305,否分支),則系統(tǒng)管理程序40將為虛擬機(jī)33遞減高速緩存用戶表250中的用戶計(jì)數(shù)(步驟308)。只要存在一個(gè)高速緩存233的(活動(dòng))虛擬機(jī)用戶,系統(tǒng)管理程序40就將保留(即,不刪除)高速緩存233及其內(nèi)容(判定310)。如果虛擬機(jī)33終止,則仍然存在高速緩存233的一個(gè)活動(dòng)用戶,即虛擬機(jī)35,所以系統(tǒng)管理程序40將保留高速緩存233及其內(nèi)容(判定310,是分支和步驟312)。此外,系統(tǒng)管理程序40將在盤26上保存此高速緩存的標(biāo)識(shí)以及此高速緩存被指派給虛擬機(jī)33的指示。接著,系統(tǒng)管理程序40將執(zhí)行與虛擬機(jī)33的終止關(guān)聯(lián)的其他公知的處理或″清除″(步驟320)。此公知的處理包括刪除定義了此虛擬機(jī)的實(shí)際計(jì)算機(jī)資源的共享的數(shù)據(jù)結(jié)構(gòu),包括其專用虛擬存儲(chǔ)器。
由于虛擬機(jī)35內(nèi)部的問(wèn)題,虛擬機(jī)35在與虛擬機(jī)33發(fā)生故障的相同時(shí)刻出現(xiàn)故障是不太可能的,因?yàn)樘摂M機(jī)35基本上不執(zhí)行功能。此外,雖然系統(tǒng)管理程序40、LPAR 30或物理計(jì)算機(jī)20的故障將導(dǎo)致失去高速緩存233,但是此類故障的發(fā)生比生產(chǎn)虛擬機(jī)的故障少得多。因此,當(dāng)虛擬機(jī)33異常地終止并且直到虛擬機(jī)33重新引導(dǎo)時(shí),很可能物理計(jì)算機(jī)20、LPAR30、系統(tǒng)管理程序40和虛擬機(jī)35仍然活動(dòng)并且高速緩存233的用戶計(jì)數(shù)將是“1”,所以如以上在步驟312指出的,系統(tǒng)管理程序40將保持高速緩存233及其內(nèi)容。盡管如此,如果當(dāng)虛擬機(jī)33發(fā)生故障/異常終止時(shí)沒有一個(gè)高速緩存233的用戶(判定310,否分支),則系統(tǒng)管理程序40將刪除高速緩存233(步驟324)。高速緩存233的“刪除”可以是由于實(shí)際擦除了高速緩存內(nèi)容、將高速緩存存儲(chǔ)器范圍重新指派給其他虛擬機(jī),或刪除了用于高速緩存的頁(yè)和段表或其他尋址表。
再次參考判定305,是分支,其中虛擬機(jī)33正常地終止(即,通過(guò)正常的注銷)。在這種情況下,系統(tǒng)管理程序40將遞減高速緩存233(以及虛擬機(jī)33被連接到其的任何其他高速緩存)的用戶數(shù)(步驟306)。在步驟306,系統(tǒng)管理程序40還將判定是否存在高速緩存233的任何剩余用戶,并且如果不存在,則系統(tǒng)管理程序40將擦除高速緩存233。無(wú)論哪種情況,系統(tǒng)管理程序40將執(zhí)行虛擬機(jī)33的正常終止處理,即刪除定義了此虛擬機(jī)的實(shí)際計(jì)算機(jī)資源的共享的數(shù)據(jù)結(jié)構(gòu),包括其專用虛擬存儲(chǔ)器(步驟307)。
圖5示出了后續(xù)的虛擬機(jī)33的恢復(fù)。在步驟402,虛擬機(jī)33被重新引導(dǎo)。然后,虛擬機(jī)33訪問(wèn)盤存儲(chǔ)設(shè)備26以獲知其是否具有高速緩存,并且如果具有高速緩存,獲知其高速緩存233的標(biāo)識(shí)(步驟404)。在上述條件下,其中虛擬機(jī)33終止并且高速緩存233被保留,則高速緩存233將仍然包含虛擬機(jī)33終止之前由虛擬機(jī)33存儲(chǔ)的數(shù)據(jù)和元數(shù)據(jù)。所以,假設(shè)存在這樣的高速緩存(判定406,是分支),在步驟402中重新引導(dǎo)之后,虛擬機(jī)33向系統(tǒng)管理程序40做出連接到高速緩存233的請(qǐng)求(步驟410)。該請(qǐng)求指定了高速緩存233的標(biāo)識(shí)。作為響應(yīng),系統(tǒng)管理程序40將預(yù)先存在的高速緩存的虛擬地址(如存儲(chǔ)在頁(yè)和段表或者其他此類表中)返回給虛擬機(jī)33,以便允許虛擬機(jī)33訪問(wèn)高速緩存233(步驟412)。此外,系統(tǒng)管理程序40將表250中高速緩存233的用戶計(jì)數(shù)遞增為“2”(步驟494);當(dāng)虛擬機(jī)33異常地終止時(shí)用戶計(jì)數(shù)被遞減為“1”。然后,虛擬機(jī)33可以重新開始處理,使用當(dāng)虛擬機(jī)33異常地終止時(shí)其遺漏的高速緩存233中的數(shù)據(jù)和元數(shù)據(jù)(步驟420)。
再次參考判定406,否分支,其中沒有用于虛擬機(jī)33的保留的高速緩存。在這種情況下,虛擬機(jī)33將繼續(xù)到步驟283以請(qǐng)求連接到新的空高速緩存。作為響應(yīng),系統(tǒng)管理程序40將為該新的高速緩存建立臨時(shí)的頁(yè)和段表或者其他這樣的表(步驟284),然后如上所述繼續(xù)步驟285-294。
當(dāng)虛擬機(jī)34,36和37初始化(圖2)時(shí),當(dāng)它們終止(圖4)時(shí),以及當(dāng)它們恢復(fù)(圖5)時(shí),對(duì)于每個(gè)其他生產(chǎn)虛擬機(jī)34、36和37以及高速緩存繼續(xù)存在虛擬機(jī)38,將發(fā)生類似的處理。在LPAR 31中,虛擬機(jī)36和37在系統(tǒng)管理程序41的共享存儲(chǔ)器(未示出)中具有相應(yīng)的高速緩存存儲(chǔ)器(未示出)和高速緩存用戶表(未示出)。當(dāng)虛擬機(jī)36和37是活動(dòng)的時(shí),它們各自的高速緩存的用戶計(jì)數(shù)都是“2”,因?yàn)楦咚倬彺胬^續(xù)存在虛擬機(jī)38也是每個(gè)這些高速緩存的用戶。如果虛擬機(jī)36終止,系統(tǒng)管理程序41將其高速緩存的用戶計(jì)數(shù)遞減為“1”,但是保留該高速緩存及其內(nèi)容以備虛擬機(jī)36重新引導(dǎo)時(shí)使用。同樣地,如果虛擬機(jī)37終止,系統(tǒng)管理程序41將其高速緩存的用戶計(jì)數(shù)遞減為″1″,但是保留該高速緩存及其內(nèi)容以備虛擬機(jī)37重新引導(dǎo)時(shí)使用。
圖6,7和8示出了本發(fā)明的另一個(gè)實(shí)施例(通常指定為510),其類似于圖1,2,4和5的實(shí)施例,除以下之外如圖6中示出的,系統(tǒng)510不包括任何高速緩存繼續(xù)存在虛擬機(jī)。系統(tǒng)510中的每個(gè)生產(chǎn)虛擬機(jī)的高速緩存(例如,用于生產(chǎn)虛擬機(jī)533的高速緩存833和用于生產(chǎn)虛擬機(jī)534的高速緩存834)可以被存儲(chǔ)在各自虛擬機(jī)的專用存儲(chǔ)器中或存儲(chǔ)在系統(tǒng)管理程序的共享存儲(chǔ)器中;在示出的實(shí)施例中,每個(gè)高速緩存被存儲(chǔ)在各自虛擬機(jī)的專用存儲(chǔ)器中。當(dāng)高速緩存被存儲(chǔ)在虛擬機(jī)的專用存儲(chǔ)器中時(shí),系統(tǒng)510中沒有高速緩存用戶表。當(dāng)LPAR 30中的生產(chǎn)虛擬機(jī)請(qǐng)求連接到新的高速緩存時(shí),系統(tǒng)管理程序540對(duì)頁(yè)和段或者其他這樣的表進(jìn)行更多永久擴(kuò)展以便包含此新的高速緩存;這導(dǎo)致所述高速緩存在虛擬機(jī)異常終止時(shí)被保留。如圖6和7中示出的和以下描述的,與系統(tǒng)管理程序40相比,系統(tǒng)管理程序540包括了其他功能,以便當(dāng)虛擬機(jī)終止時(shí)保留虛擬機(jī)的高速緩存。
在系統(tǒng)510中,當(dāng)生產(chǎn)虛擬機(jī)533引導(dǎo)時(shí)(圖7的步驟600),其訪問(wèn)存儲(chǔ)設(shè)備26以便判定虛擬機(jī)533是否已經(jīng)具有預(yù)先存在的高速緩存(圖7的步驟601)。然后,虛擬機(jī)533向系統(tǒng)管理程序540做出將虛擬機(jī)533連接到其預(yù)先存在的高速緩存(如果有)或否則連接到新的高速緩存的請(qǐng)求(步驟602)。虛擬機(jī)533可以在所述請(qǐng)求中包括在虛擬機(jī)533終止的情況下應(yīng)保留所述高速緩存的指示(步驟602);否則,在虛擬機(jī)533終止的情況下,所述高速緩存將被刪除。如果具有預(yù)先存在的高速緩存,所述請(qǐng)求還指定了希望的高速緩存的標(biāo)識(shí)。響應(yīng)于所述連接請(qǐng)求,系統(tǒng)管理程序540判定所述請(qǐng)求是要連接到新的高速緩存還是要連接到預(yù)先存在的高速緩存(判定603)。如果高速緩存是新的(判定603,是分支),則系統(tǒng)管理程序540進(jìn)行判定并且在存儲(chǔ)設(shè)備26中寫入新的高速緩存的標(biāo)識(shí)(步驟604)。如果虛擬機(jī)533在步驟602請(qǐng)求在虛擬機(jī)533終止的情況下保留所述高速緩存,則系統(tǒng)管理程序540“永久地”擴(kuò)展其頁(yè)和段或者其他這樣的表550以便定義和包含用于虛擬機(jī)533的新的高速緩存833(步驟606)。所述頁(yè)和段表將虛擬地址與所述高速緩存關(guān)聯(lián)。如果永久的頁(yè)和段或者其他這樣的表引用了該新的高速緩存,則當(dāng)虛擬機(jī)533異常終止時(shí)系統(tǒng)管理程序540將不會(huì)刪除該新的高速緩存??商娲?,在步驟606,如果虛擬機(jī)533并未請(qǐng)求在虛擬機(jī)533終止的情況下保留高速緩存,則系統(tǒng)管理程序540“臨時(shí)地”擴(kuò)展其頁(yè)和段或者其他這樣的表550以便定義和包含用于虛擬機(jī)533的新的高速緩存。如果臨時(shí)的頁(yè)和段或者其他這樣的表引用了該新的高速緩存,則當(dāng)虛擬機(jī)533終止時(shí)系統(tǒng)管理程序540將刪除該新的高速緩存。接著,系統(tǒng)管理程序540通知虛擬機(jī)533所述高速緩存的虛擬地址(步驟607)。然后,虛擬機(jī)533使用所述新的高速緩存來(lái)存儲(chǔ)從存儲(chǔ)設(shè)備讀取的數(shù)據(jù)和元數(shù)據(jù)(步驟608)。
再次參考判定603,否分支,其中虛擬機(jī)533請(qǐng)求連接到預(yù)先存在的高速緩存。在這種情況下,系統(tǒng)管理程序540將虛擬機(jī)533連接到所述連接請(qǐng)求中標(biāo)識(shí)的預(yù)先存在的高速緩存(步驟620)。如果虛擬機(jī)533在步驟602請(qǐng)求保留高速緩存,則系統(tǒng)管理程序540將創(chuàng)建頁(yè)和段或其他這樣的表的永久擴(kuò)展,如果當(dāng)前只存在用于預(yù)先存在的高速緩存的頁(yè)和段或其他這樣的表的臨時(shí)擴(kuò)展,則刪除該臨時(shí)擴(kuò)展(步驟622)。如果已經(jīng)存在用于預(yù)先存在的高速緩存的頁(yè)和段或者其他這樣的表的永久擴(kuò)展,則系統(tǒng)管理程序540不對(duì)其進(jìn)行任何操作。然后,系統(tǒng)管理程序540通知虛擬機(jī)533高速緩存的虛擬地址(步驟623)。然后,虛擬機(jī)533使用新的高速緩存來(lái)存儲(chǔ)從存儲(chǔ)設(shè)備讀取的數(shù)據(jù)和元數(shù)據(jù)(步驟624)。
圖8示出了當(dāng)虛擬機(jī)533終止時(shí)生產(chǎn)虛擬機(jī)533和系統(tǒng)管理程序540的處理(步驟630)。系統(tǒng)管理程序540通過(guò)禁用等待指令的執(zhí)行或虛擬機(jī)的重新引導(dǎo)來(lái)獲知終止(步驟631)。系統(tǒng)管理程序540將刪除臨時(shí)的頁(yè)和段或者其他這樣的表(如果對(duì)于此終止的虛擬機(jī)的高速緩存,所述表存在的話)以及關(guān)聯(lián)的高速緩存(步驟640)。但是,系統(tǒng)管理程序540將不會(huì)刪除永久的頁(yè)和段或者其他這樣的表(如果對(duì)于此終止的虛擬機(jī)的高速緩存,所述表存在的話)以及關(guān)聯(lián)的高速緩存(步驟640)。這是因?yàn)樗鼋K止可能阻止了虛擬機(jī)完全地處理高速緩存中的數(shù)據(jù)和元數(shù)據(jù)或?qū)⒏咚倬彺嬷械臄?shù)據(jù)和元數(shù)據(jù)刷新回存儲(chǔ)設(shè)備,并且如果虛擬機(jī)重新開始運(yùn)行,它可能需要此數(shù)據(jù)和元數(shù)據(jù)。
本發(fā)明的兩個(gè)其他實(shí)施例(未示出)分別類似于系統(tǒng)110或510,除了沒有邏輯分區(qū)程序25和沒有LPAR 30或31以外。存在諸如系統(tǒng)管理程序40或540之類的單個(gè)系統(tǒng)管理程序,并且該系統(tǒng)管理程序從實(shí)際計(jì)算機(jī)20的所有實(shí)際資源的共享形成了所有虛擬機(jī)。本發(fā)明的這兩個(gè)其他實(shí)施例的虛擬機(jī)和其他元件的功能分別類似于系統(tǒng)110和510的虛擬機(jī)和其他元件的功能。
圖9示出了根據(jù)本發(fā)明的另一個(gè)實(shí)施例的系統(tǒng)810。系統(tǒng)810在以下方面類似于系統(tǒng)110,即物理計(jì)算機(jī)20、處理器(多個(gè))23、RAM 24、控制臺(tái)27、邏輯分區(qū)程序25、LPAR 30、操作系統(tǒng)43、文件系統(tǒng)63、應(yīng)用53、高速緩存233、高速緩存用戶表250以及盤26。系統(tǒng)810還在以下方面類似于系統(tǒng)110,即操作系統(tǒng)44、文件系統(tǒng)64、應(yīng)用54以及LPAR 31,盡管LPAR 31的作用是在操作系統(tǒng)43或LPAR 30終止的情況下保持高速緩存233繼續(xù)存在。如圖10-13所示出的,除了沒有系統(tǒng)管理程序之外,系統(tǒng)810的程序步驟類似于系統(tǒng)110的那些步驟。
圖10示出了每個(gè)生產(chǎn)LPAR 30的初始化和設(shè)置。當(dāng)LPAR 30開始運(yùn)行時(shí)(圖10的步驟1070),LPAR 30讀取存儲(chǔ)設(shè)備26以判定用于LPAR的高速緩存是否已經(jīng)存在(圖10的步驟1076)。如果沒有預(yù)先存在的高速緩存(判定1078,否分支),則LPAR 30請(qǐng)求連接到新的空高速緩存(步驟1083)。作為響應(yīng),邏輯分區(qū)程序25建立臨時(shí)的“頁(yè)和段”或其他這樣的表50來(lái)尋址該新的高速緩存,即,使由LPAR提供的高速緩存的虛擬地址與高速緩存所在的存儲(chǔ)器的相應(yīng)實(shí)地址/段相關(guān)聯(lián)(步驟1084)。然后,邏輯分區(qū)程序25通知LPAR 30用來(lái)訪問(wèn)新的高速緩存的虛擬地址(步驟1085)。這允許LPAR 30通過(guò)適當(dāng)?shù)奶摂M地址來(lái)訪問(wèn)(即讀取和寫入)該新的高速緩存233。由于用于此高速緩存的頁(yè)和段表是臨時(shí)的,邏輯分區(qū)程序25被編程為只要沒有該高速緩存的(活動(dòng))用戶,邏輯分區(qū)程序25就刪除該高速緩存。邏輯分區(qū)程序25還在高速緩存用戶表250中記錄當(dāng)前有一個(gè)高速緩存233的LPAR用戶(步驟1086)。
再次參考判定1078,是分支,其中存在預(yù)先存在的高速緩存。在這種情況下,LPAR 30向邏輯分區(qū)程序25做出“連接”到此高速緩存的請(qǐng)求(步驟1079)。在這種情況下,所述請(qǐng)求包括LPAR 30從存儲(chǔ)設(shè)備讀取的高速緩存233的標(biāo)識(shí)。作為響應(yīng),邏輯分區(qū)程序25通知LPAR 30用于高速緩存的虛擬地址(步驟1080)。然后,邏輯分區(qū)程序25遞增高速緩存用戶表250以便反映LPAR 30現(xiàn)在是高速緩存233的用戶(步驟1081)。(如果此高速緩存的唯一其他活動(dòng)用戶是高速緩存繼續(xù)存在LPAR 31,則高速緩存用戶表250中為此高速緩存233指示的活動(dòng)用戶數(shù)將為“2”,如所示出的。)然后,LPAR 30使用當(dāng)LPAR 30先前終止(異常地)時(shí)在高速緩存233中存在的數(shù)據(jù)來(lái)重新開始處理(步驟1082)。
圖11示出了高速緩存繼續(xù)存在LPAR 31的處理。高速緩存繼續(xù)存在LPAR 31在引導(dǎo)時(shí)并且此后周期性地訪問(wèn)存儲(chǔ)設(shè)備26以獲知由邏輯分區(qū)程序25提供的任何LPAR的任何高速緩存的名稱(步驟1188)。在上述實(shí)例中,在某些時(shí)刻,高速緩存繼續(xù)存在LPAR 31首先獲知由生產(chǎn)LPAR 30使用的高速緩存233(以及由邏輯分區(qū)程序25提供的任何LPAR使用的任何其他高速緩存)的名稱。作為響應(yīng),高速緩存繼續(xù)存在LPAR 31向邏輯分區(qū)程序25做出“連接”到高速緩存233(以及LPAR 31尚未連接到其的、由邏輯分區(qū)程序25提供的任何LPAR使用的任何其他高速緩存)的請(qǐng)求(步驟1190)。所述連接到每個(gè)此類高速緩存的請(qǐng)求包括高速緩存的標(biāo)識(shí),例如高速緩存233的標(biāo)識(shí)。響應(yīng)于此請(qǐng)求,邏輯分區(qū)程序25通知LPAR 31用于每個(gè)此類高速緩存的虛擬地址(步驟1192)。此外,邏輯分區(qū)程序25為L(zhǎng)PAR現(xiàn)在請(qǐng)求連接的每個(gè)此類高速緩存遞增高速緩存用戶表250中的用戶數(shù)(步驟1194)。在圖9示出的實(shí)例中,現(xiàn)在有兩個(gè)高速緩存233的用戶,即LPAR 30和LPAR 31。(對(duì)于圖9所示的高速緩存233,是表250的第一行中的表項(xiàng)“2”。)圖11還示出了高速緩存繼續(xù)存在LPAR 31中的其他程序。如果高速緩存繼續(xù)存在LPAR 31隨后正常地(例如,通過(guò)注銷)或者異常地(這很少發(fā)生,除了其客戶操作系統(tǒng)出現(xiàn)故障以外)終止,則邏輯分區(qū)程序25為L(zhǎng)PAR 31被連接到其的每個(gè)高速緩存遞減高速緩存用戶表中的用戶數(shù)(步驟1196)。此外,邏輯分區(qū)程序25判定這些高速緩存中的任意高速緩存是否存在活動(dòng)用戶,并且如果不存在活動(dòng)用戶,則邏輯分區(qū)程序25刪除相應(yīng)的高速緩存(步驟1198)。
圖12示出了根據(jù)本發(fā)明的后續(xù)處理。在圖12的處理開始時(shí),LPAR 30是活動(dòng)(即,運(yùn)行)的,如圖10的步驟指示的(步驟1002)。如果LPAR 30終止(故意的或者由于LPAR 30或操作系統(tǒng)43的故障)(判定1203,是分支),LPAR 30將通知(恰好在關(guān)閉之前)邏輯分區(qū)程序25它正在終止以及該終止的性質(zhì),即正常注銷或由于故障(步驟1204)??梢酝ㄟ^(guò)LPAR執(zhí)行“禁用等待”指令來(lái)執(zhí)行通知。如果由于故障的性質(zhì),LPAR 30無(wú)法通知邏輯分區(qū)程序25它正在終止,則邏輯分區(qū)程序25將在虛擬機(jī)隨后試圖重新引導(dǎo)時(shí)獲知該終止,并且邏輯分區(qū)程序25被調(diào)用以便重新引導(dǎo)LPAR(步驟1204)。如果邏輯分區(qū)程序25檢測(cè)到LPAR的終止(判定1205,否分支),則邏輯分區(qū)程序25將在高速緩存用戶表250中遞減LPAR 31的用戶計(jì)數(shù)(步驟308)。只要存在一個(gè)高速緩存233的(活動(dòng))LPAR用戶(判定1210),邏輯分區(qū)程序25就將保留(即,不刪除)高速緩存233及其內(nèi)容。如果LPAR 30終止,則仍存在一個(gè)高速緩存233的活動(dòng)用戶(即,LPAR 31),所以邏輯分區(qū)程序25將保留高速緩存233及其內(nèi)容(判定1210,是分支和步驟1212)。此外,邏輯分區(qū)程序25將在盤26上保存此高速緩存的標(biāo)識(shí)以及此高速緩存被指派給LPAR 30的指示。接著,邏輯分區(qū)程序25將執(zhí)行與LPAR 30的終止關(guān)聯(lián)的其他公知的處理或″清除″(步驟1220)。此公知的處理包括刪除定義了此LPAR的實(shí)際計(jì)算機(jī)資源的共享的數(shù)據(jù)結(jié)構(gòu),包括其專用虛擬存儲(chǔ)器。
圖13示出了后續(xù)的LPAR 30的恢復(fù)。在步驟1302,LPAR 30被重新引導(dǎo)。接著,LPAR 30訪問(wèn)盤存儲(chǔ)設(shè)備26以獲知其是否具有高速緩存,并且如果具有高速緩存,獲知其高速緩存233的標(biāo)識(shí)(步驟1304)。在上述條件下,其中LPAR 30終止并且高速緩存233被保留,則高速緩存233將仍包含LPAR 30終止前由LPAR 30存儲(chǔ)的數(shù)據(jù)和元數(shù)據(jù)。所以,假定存在這樣的高速緩存(判定1306,是分支),在步驟402的重新引導(dǎo)之后,LPAR30向邏輯分區(qū)程序25做出連接到高速緩存233的請(qǐng)求(步驟1310)。該請(qǐng)求指定了高速緩存233的標(biāo)識(shí)。作為響應(yīng),邏輯分區(qū)程序25將存儲(chǔ)在頁(yè)和段表或其他這樣的表中的預(yù)先存在的高速緩存的虛擬地址返回給LPAR30,以便允許LPAR 30訪問(wèn)高速緩存233(步驟1312)。此外,邏輯分區(qū)程序25將表250中高速緩存233的用戶計(jì)數(shù)遞增為“2”(步驟1314);當(dāng)LPAR 30異常地終止時(shí)用戶計(jì)數(shù)被遞減為“1”。然后,LPAR 30可以重新開始處理,使用當(dāng)LPAR 30異常地終止時(shí)其遺漏的高速緩存233中的數(shù)據(jù)和元數(shù)據(jù)(步驟1320)。
再次參考判定1306,否分支,其中沒有為L(zhǎng)PAR 30保留的高速緩存。在這種情況下,LPAR 30將轉(zhuǎn)到步驟1083以便請(qǐng)求連接到新的空高速緩存。作為響應(yīng),邏輯分區(qū)程序25將為該新的高速緩存建立臨時(shí)的頁(yè)和段表或者其他這樣的表(步驟1084),然后如上所述繼續(xù)步驟1085-1096。
根據(jù)以上所述,已經(jīng)公開了包含本發(fā)明的計(jì)算機(jī)系統(tǒng)、方法和程序。但是,可以做出大量修改和替換而不偏離本發(fā)明的范圍。例如,代替在系統(tǒng)110中創(chuàng)建高速緩存繼續(xù)存在虛擬機(jī),當(dāng)生產(chǎn)虛擬機(jī)請(qǐng)求連接到高速緩存時(shí),用于每個(gè)生產(chǎn)虛擬機(jī)的系統(tǒng)管理程序可以為生產(chǎn)虛擬機(jī)的高速緩存在高速緩存用戶表250中將用戶數(shù)自動(dòng)地遞增額外的計(jì)數(shù)。因此,如果生產(chǎn)虛擬機(jī)終止并且系統(tǒng)管理程序40遞減高速緩存用戶表250中的用戶數(shù),將仍然存在表中指出的一個(gè)用戶,并且系統(tǒng)管理程序40將不會(huì)刪除該高速緩存。因此,通過(guò)示例而非限制的方式公開了本發(fā)明,并且應(yīng)參考以下權(quán)利要求來(lái)確定本發(fā)明的范圍。
權(quán)利要求
1.一種用于管理虛擬機(jī)的高速緩存的方法,所述方法包括以下步驟在存儲(chǔ)器中定義高速緩存,將所述高速緩存指派給虛擬機(jī),并且在存儲(chǔ)設(shè)備中記錄所述高速緩存的標(biāo)識(shí);以及所述虛擬機(jī)終止,并且盡管所述虛擬機(jī)的所述終止,仍保留所述高速緩存和所述高速緩存的內(nèi)容,以便如果所述虛擬機(jī)隨后重新開始運(yùn)行,所述虛擬機(jī)可以訪問(wèn)所述高速緩存和所述內(nèi)容。
2.如權(quán)利要求1所述的方法,還包括以下步驟在與第一所述虛擬機(jī)相同的實(shí)際計(jì)算機(jī)上定義第二虛擬機(jī);記錄所述第一和第二虛擬機(jī)都是所述高速緩存的用戶,以便當(dāng)所述第一虛擬機(jī)終止時(shí),仍存在一個(gè)為所述高速緩存記錄的運(yùn)行用戶,并且當(dāng)所述第一虛擬機(jī)終止時(shí)保留所述高速緩存及其內(nèi)容的所述步驟基于所述高速緩存的所述一個(gè)運(yùn)行用戶的所述記錄。
3.如權(quán)利要求1所述的方法,還包括以下步驟所述虛擬機(jī)請(qǐng)求連接到所述高速緩存,并且作為響應(yīng),記錄所述虛擬機(jī)是所述高速緩存的用戶;以及第二虛擬機(jī)請(qǐng)求連接到所述高速緩存,并且作為響應(yīng),記錄所述第二虛擬機(jī)是所述高速緩存的另一個(gè)用戶。
4.如權(quán)利要求1所述的方法,還包括以下步驟所述虛擬機(jī)向所述虛擬機(jī)的系統(tǒng)管理程序做出連接到所述高速緩存并且在所述虛擬機(jī)終止的情況下保留所述高速緩存的請(qǐng)求,并且作為響應(yīng),所述系統(tǒng)管理程序定義一個(gè)表,該表將所述高速緩存的所述虛擬機(jī)所使用的虛擬地址與所述高速緩存相關(guān)聯(lián),所述表在所述虛擬機(jī)終止之后繼續(xù)存在,由此在所述虛擬機(jī)終止的情況下所述高速緩存被保留。
5.如權(quán)利要求4所述的方法,還包括以下步驟在與第一所述虛擬機(jī)相同的實(shí)際計(jì)算機(jī)上的另一個(gè)虛擬機(jī)向所述系統(tǒng)管理程序做出連接到另一個(gè)高速緩存但是在所述另一個(gè)虛擬機(jī)終止的情況下不保留所述另一個(gè)高速緩存的請(qǐng)求,并且作為響應(yīng),所述系統(tǒng)管理程序定義另一個(gè)表,該表將所述另一個(gè)高速緩存的所述另一個(gè)虛擬機(jī)所使用的虛擬地址與所述另一個(gè)高速緩存相關(guān)聯(lián),所述另一個(gè)表在所述另一個(gè)虛擬機(jī)終止時(shí)被刪除,由此在所述另一個(gè)虛擬機(jī)終止的情況下所述另一個(gè)高速緩存被刪除。
6.如權(quán)利要求1所述的方法,還包括以下步驟所述虛擬機(jī)向所述虛擬機(jī)的系統(tǒng)管理程序做出連接到所述高速緩存并且在所述虛擬機(jī)終止的情況下保留所述高速緩存的請(qǐng)求,并且作為響應(yīng),所述系統(tǒng)管理程序產(chǎn)生所述高速緩存在所述虛擬機(jī)終止的情況下應(yīng)被保留的記錄,并且當(dāng)所述虛擬機(jī)終止時(shí),所述系統(tǒng)管理程序保留所述高速緩存和所述高速緩存的內(nèi)容,以便如果所述虛擬機(jī)重新開始運(yùn)行,所述虛擬機(jī)可以訪問(wèn)所述高速緩存和所述內(nèi)容。
7.如權(quán)利要求6所述的方法,還包括以下后續(xù)步驟所述虛擬機(jī)重新開始運(yùn)行;以及恢復(fù)所述虛擬機(jī)對(duì)所述高速緩存和所述內(nèi)容的訪問(wèn)。
8.如權(quán)利要求1所述的方法,還包括以下后續(xù)步驟所述虛擬機(jī)重新開始運(yùn)行;以及恢復(fù)所述虛擬機(jī)對(duì)所述高速緩存和所述內(nèi)容的訪問(wèn)。
9.一種系統(tǒng),所述系統(tǒng)包括用于在存儲(chǔ)器中定義高速緩存,將所述高速緩存指派給虛擬機(jī),并且在存儲(chǔ)設(shè)備中記錄所述高速緩存的標(biāo)識(shí)的裝置;以及用于終止所述虛擬機(jī),并且盡管所述虛擬機(jī)的所述終止,仍保留所述高速緩存和所述高速緩存的內(nèi)容,以便如果所述虛擬機(jī)隨后重新開始運(yùn)行,所述虛擬機(jī)可以訪問(wèn)所述高速緩存和所述內(nèi)容的裝置。
10.如權(quán)利要求9所述的系統(tǒng),還包括用于在與第一所述虛擬機(jī)相同的實(shí)際計(jì)算機(jī)上定義第二虛擬機(jī)的裝置;用于記錄所述第一和第二虛擬機(jī)都是所述高速緩存的用戶,以便當(dāng)所述第一虛擬機(jī)終止時(shí),仍存在一個(gè)為所述高速緩存記錄的運(yùn)行用戶的裝置,并且當(dāng)所述第一虛擬機(jī)終止時(shí)保留所述高速緩存及其內(nèi)容的所述裝置基于所述高速緩存的所述一個(gè)運(yùn)行用戶的所述記錄。
11.如權(quán)利要求9所述的系統(tǒng),還包括用于響應(yīng)于所述虛擬機(jī)請(qǐng)求連接到所述高速緩存,記錄所述虛擬機(jī)是所述高速緩存的用戶的裝置;以及第二虛擬機(jī)和用于請(qǐng)求將所述第二虛擬機(jī)連接到所述高速緩存,并且作為響應(yīng),記錄所述第二虛擬機(jī)是所述高速緩存的另一個(gè)用戶的裝置。
12.如權(quán)利要求9所述的系統(tǒng),還包括用于所述虛擬機(jī)向所述虛擬機(jī)的系統(tǒng)管理程序做出連接到所述高速緩存并且在所述虛擬機(jī)終止的情況下保留所述高速緩存的請(qǐng)求的裝置,并且作為響應(yīng),所述系統(tǒng)管理程序包括用于定義表的裝置,該表將所述高速緩存的所述虛擬機(jī)所使用的虛擬地址與所述高速緩存相關(guān)聯(lián),所述表在所述虛擬機(jī)終止之后繼續(xù)存在,由此在所述虛擬機(jī)終止的情況下所述高速緩存被保留。
13.如權(quán)利要求12所述的系統(tǒng),還包括在與第一所述虛擬機(jī)相同的實(shí)際計(jì)算機(jī)上的另一個(gè)虛擬機(jī),以及用于所述另一個(gè)虛擬機(jī)向所述系統(tǒng)管理程序做出連接到另一個(gè)高速緩存但是在所述另一個(gè)虛擬機(jī)終止的情況下不保留所述另一個(gè)高速緩存的請(qǐng)求的裝置,并且作為響應(yīng),所述系統(tǒng)管理程序包括用于定義另一個(gè)表的裝置,該表將所述另一個(gè)高速緩存的所述另一個(gè)虛擬機(jī)所使用的虛擬地址與所述另一個(gè)高速緩存相關(guān)聯(lián),所述另一個(gè)表在所述另一個(gè)虛擬機(jī)終止時(shí)被刪除,由此在所述另一個(gè)虛擬機(jī)終止的情況下所述另一個(gè)高速緩存被刪除。
14.如權(quán)利要求9所述的系統(tǒng),還包括所述虛擬機(jī)包括用于向所述虛擬機(jī)的系統(tǒng)管理程序做出連接到所述高速緩存并且在所述虛擬機(jī)終止的情況下保留所述高速緩存的請(qǐng)求的裝置,并且作為響應(yīng),所述系統(tǒng)管理程序包括用于產(chǎn)生所述高速緩存在所述虛擬機(jī)終止的情況下應(yīng)被保留的記錄的裝置,并且當(dāng)所述虛擬機(jī)終止時(shí),所述系統(tǒng)管理程序保留所述高速緩存和所述高速緩存的內(nèi)容,以便如果所述虛擬機(jī)重新開始運(yùn)行,所述虛擬機(jī)可以訪問(wèn)所述高速緩存和所述內(nèi)容。
15.如權(quán)利要求14所述的系統(tǒng),還包括用于所述虛擬機(jī)重新開始運(yùn)行的裝置;以及用于響應(yīng)于所述虛擬機(jī)的重新開始運(yùn)行,恢復(fù)所述虛擬機(jī)對(duì)所述高速緩存和所述內(nèi)容的訪問(wèn)的裝置。
16.如權(quán)利要求9所述的系統(tǒng),還包括用于所述虛擬機(jī)重新開始運(yùn)行的裝置;以及用于響應(yīng)于所述虛擬機(jī)的重新開始,恢復(fù)所述虛擬機(jī)對(duì)所述高速緩存和所述內(nèi)容的訪問(wèn)的裝置。
17.一種用于管理虛擬機(jī)的高速緩存的計(jì)算機(jī)程序產(chǎn)品,所述計(jì)算機(jī)程序產(chǎn)品包括計(jì)算機(jī)可讀介質(zhì);第一程序指令,所述第一程序指令在存儲(chǔ)器中定義高速緩存,將所述高速緩存指派給虛擬機(jī),并且在存儲(chǔ)設(shè)備中記錄所述高速緩存的標(biāo)識(shí);以及第二程序指令,所述第二程序指令使所述虛擬機(jī)終止,并且盡管所述虛擬機(jī)的所述終止,仍保留所述高速緩存和所述高速緩存的內(nèi)容,以便如果所述虛擬機(jī)隨后重新開始運(yùn)行,所述虛擬機(jī)可以訪問(wèn)所述高速緩存和所述內(nèi)容;并且其中所述第一和第二程序指令被記錄在所述介質(zhì)上。
18.一種用于管理邏輯分區(qū)的高速緩存的方法,所述方法包括以下步驟在存儲(chǔ)器中定義高速緩存,將所述高速緩存指派給邏輯分區(qū),并且在存儲(chǔ)設(shè)備中記錄所述高速緩存的標(biāo)識(shí);以及所述邏輯分區(qū)終止,并且盡管所述邏輯分區(qū)的所述終止,仍保留所述高速緩存和所述高速緩存的內(nèi)容,以便如果所述邏輯分區(qū)隨后重新開始運(yùn)行,所述邏輯分區(qū)可以訪問(wèn)所述高速緩存和所述內(nèi)容。
19.如權(quán)利要求18所述的方法,還包括以下步驟在與第一所述邏輯分區(qū)相同的實(shí)際計(jì)算機(jī)上定義第二邏輯分區(qū);記錄所述第一和第二邏輯分區(qū)都是所述高速緩存的用戶,以便當(dāng)所述第一邏輯分區(qū)終止時(shí),仍存在一個(gè)為所述高速緩存記錄的運(yùn)行用戶,并且當(dāng)所述第一邏輯分區(qū)終止時(shí)保留所述高速緩存及其內(nèi)容的所述步驟基于所述高速緩存的所述一個(gè)運(yùn)行用戶的所述記錄。
20.如權(quán)利要求18所述的方法,還包括以下步驟所述邏輯分區(qū)請(qǐng)求連接到所述高速緩存,并且作為響應(yīng),記錄所述邏輯分區(qū)是所述高速緩存的用戶;以及第二邏輯分區(qū)請(qǐng)求連接到所述高速緩存,并且作為響應(yīng),記錄所述第二邏輯分區(qū)是所述高速緩存的另一個(gè)用戶。
21.如權(quán)利要求18所述的方法,還包括以下后續(xù)步驟所述邏輯分區(qū)重新開始運(yùn)行;以及恢復(fù)所述邏輯分區(qū)對(duì)所述高速緩存和所述內(nèi)容的訪問(wèn)。
全文摘要
一種管理虛擬機(jī)高速緩存的系統(tǒng)、計(jì)算機(jī)程序產(chǎn)品和方法。在存儲(chǔ)器中定義高速緩存且虛擬機(jī)被指派給所述高速緩存。在存儲(chǔ)設(shè)備中記錄所述高速緩存的標(biāo)識(shí)。所述虛擬機(jī)終止,盡管所述虛擬機(jī)終止,仍保留所述高速緩存和所述高速緩存的內(nèi)容,以便如果所述虛擬機(jī)隨后重新開始運(yùn)行,所述虛擬機(jī)可訪問(wèn)所述高速緩存及其內(nèi)容。還存在一種管理邏輯分區(qū)高速緩存的系統(tǒng)、方法和計(jì)算機(jī)程序產(chǎn)品。在存儲(chǔ)器中定義高速緩存且所述高速緩存被指派給邏輯分區(qū)。在存儲(chǔ)設(shè)備中記錄所述高速緩存的標(biāo)識(shí)。所述邏輯分區(qū)終止,盡管所述邏輯分區(qū)終止,仍保留所述高速緩存和所述高速緩存的內(nèi)容,以便如果所述邏輯分區(qū)隨后重新開始運(yùn)行,所述邏輯分區(qū)可訪問(wèn)所述高速緩存及其內(nèi)容。
文檔編號(hào)G06F9/455GK1790294SQ20051002301
公開日2006年6月21日 申請(qǐng)日期2005年11月14日 優(yōu)先權(quán)日2004年12月17日
發(fā)明者S·舒爾茨, X·特卡特壽 申請(qǐng)人:國(guó)際商業(yè)機(jī)器公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1