專利名稱:用于測(cè)試引導(dǎo)鏡像的系統(tǒng)和方法
技術(shù)領(lǐng)域:
本申請(qǐng)涉及一種用于測(cè)試引導(dǎo)鏡像的系統(tǒng)和方法。
背景技術(shù):
引導(dǎo)序列是當(dāng)計(jì)算機(jī)通電時(shí)其執(zhí)行的初始操作的集合。引導(dǎo)序列的一部分包括找 到可引導(dǎo)的設(shè)備。 一旦找到可引導(dǎo)設(shè)備,操作轉(zhuǎn)移到所述可引導(dǎo)設(shè)備的引導(dǎo)扇區(qū)。所述引 導(dǎo)扇區(qū)包括引導(dǎo)鏡像。引導(dǎo)鏡像是包括用于載入程序(例如但不限于,操作系統(tǒng))的引導(dǎo) 指令和配置參數(shù)的數(shù)據(jù)文件。
發(fā)明內(nèi)容
根據(jù)本發(fā)明的一個(gè)實(shí)施例,公開了一種用于測(cè)試引導(dǎo)鏡像的方法和技術(shù)。所述方 法包括通過在數(shù)據(jù)處理系統(tǒng)上創(chuàng)建第二邏輯分區(qū)來測(cè)試用于數(shù)據(jù)處理系統(tǒng)的第一邏輯分 區(qū)的引導(dǎo)鏡像,其中第二邏輯分區(qū)是第一邏輯分區(qū)的復(fù)制,使用所述引導(dǎo)鏡像啟動(dòng)用于第 二邏輯分區(qū)的引導(dǎo)序列,并且將引導(dǎo)序列的結(jié)果返回給請(qǐng)求者。
為了更好地理解本申請(qǐng)及其目的和優(yōu)點(diǎn),現(xiàn)在結(jié)合附圖作出以下說明,其中
圖1示出了數(shù)據(jù)處理系統(tǒng)的網(wǎng)絡(luò)的實(shí)施例,其中可以實(shí)現(xiàn)本發(fā)明的說明性實(shí)施 例; 圖2示出了數(shù)據(jù)處理系統(tǒng)的實(shí)施例,在所述數(shù)據(jù)處理系統(tǒng)中可以實(shí)現(xiàn)本發(fā)明的說 明性實(shí)施例; 圖3示出了引導(dǎo)鏡像測(cè)試平臺(tái)的實(shí)施例;
圖4示出了引導(dǎo)鏡像測(cè)試應(yīng)用程序的實(shí)施例;
圖5示出了用于創(chuàng)建引導(dǎo)鏡像的方法的實(shí)施例;以及
圖6示出了用于測(cè)試引導(dǎo)鏡像的方法的實(shí)施例。
具體實(shí)施例方式
本發(fā)明的實(shí)施例提供了用于測(cè)試數(shù)據(jù)處理系統(tǒng)的引導(dǎo)鏡像的方法、系統(tǒng)和計(jì)算機(jī)
程序產(chǎn)品。例如,在一些實(shí)施例中,在具有邏輯分區(qū)的數(shù)據(jù)處理系統(tǒng)中,創(chuàng)建復(fù)制的邏輯分 區(qū),由此使得該復(fù)制的邏輯分區(qū)是引導(dǎo)鏡像所用于的邏輯分區(qū)的復(fù)制。所述方法通過使用 測(cè)試引導(dǎo)鏡像來啟動(dòng)用于復(fù)制邏輯分區(qū)的引導(dǎo)序列。如果用于復(fù)制分區(qū)的引導(dǎo)序列成功 了,則可以刪除所述復(fù)制分區(qū)并且此后刪除用于期望的邏輯分區(qū)的測(cè)試引導(dǎo)鏡像。如果用 于復(fù)制的邏輯分區(qū)的引導(dǎo)序列沒有成功,則可以進(jìn)一步評(píng)估和/或分析該測(cè)試引導(dǎo)鏡像, 從而在保持測(cè)試引導(dǎo)鏡像所用于的邏輯分區(qū)不受影響的同時(shí)識(shí)別引導(dǎo)序列錯(cuò)誤的原因。 如本領(lǐng)域技術(shù)人員將理解的,本發(fā)明可以被實(shí)現(xiàn)為系統(tǒng)、方法或計(jì)算機(jī)程序產(chǎn)品。 因此,本發(fā)明可以采取全硬件實(shí)施例的形式、全軟件實(shí)施例的形式(包括固件、駐留軟件、微代碼等等)或者可以采用組合軟件和硬件方面的實(shí)施例,在此處,所有形式總體地可以 被稱為〃 電路〃 、 〃 模塊〃 或〃 系統(tǒng)〃 。此外,本發(fā)明可以采取在如下表現(xiàn)形式的任意實(shí) 體載體中實(shí)現(xiàn)的計(jì)算機(jī)程序產(chǎn)品的形式,所述表現(xiàn)形式具有在介質(zhì)中實(shí)現(xiàn)的計(jì)算機(jī)可用程 序代碼。 可以使用一個(gè)或多個(gè)計(jì)算機(jī)可用或者計(jì)算機(jī)可讀介質(zhì)(多個(gè))的任意組合。計(jì) 算機(jī)可用或者計(jì)算機(jī)可讀介質(zhì)可以是,例如但不限于,電子的、磁的、光學(xué)的、電磁的、紅外 的或者半導(dǎo)體系統(tǒng)、裝置、設(shè)備或者傳播介質(zhì)。更具體的計(jì)算機(jī)可讀介質(zhì)的例子(非窮舉 列舉)包括以下具有一個(gè)或多個(gè)線路的電連接、便攜式計(jì)算機(jī)磁碟、硬盤、隨機(jī)存取存儲(chǔ) 器(RAM)、只讀存儲(chǔ)器(ROM)、可擦可編程序只讀存儲(chǔ)器(EPR0M或者閃存)、光纖、便攜式只 讀光盤(CD-ROM)、光存儲(chǔ)設(shè)備、例如支持因特網(wǎng)或者內(nèi)部網(wǎng)的傳輸介質(zhì)、或者磁存儲(chǔ)設(shè)備。 注意,因?yàn)槌绦蚩梢酝ㄟ^例如紙張或者其他介質(zhì)的光學(xué)掃描而被電子地捕捉,隨后編譯、解 析、或者以合適的方式另行處理,必要時(shí),隨后將其存儲(chǔ)在計(jì)算機(jī)存儲(chǔ)器中,因此計(jì)算機(jī)可 用或者計(jì)算機(jī)可讀介質(zhì)甚至可以是其上印有程序的紙張或者其他合適的介質(zhì)。在本文的上 下文中,計(jì)算機(jī)可用或者計(jì)算機(jī)可讀介質(zhì)可以是如下所述的任意介質(zhì),所述介質(zhì)能夠容納、 存儲(chǔ)、傳送、傳播或者轉(zhuǎn)移程序以供指令執(zhí)行系統(tǒng)、裝置或者設(shè)備使用或者相關(guān)地使用。計(jì) 算機(jī)可用介質(zhì)可以包括傳播的數(shù)據(jù)信號(hào),且計(jì)算機(jī)可用程序代碼可以利用該傳播的數(shù)據(jù)信 號(hào)在基帶中或者作為載波的一部分實(shí)現(xiàn)??梢岳萌魏芜m當(dāng)?shù)慕橘|(zhì)傳輸計(jì)算機(jī)可用的程序 代碼,包括但不限于無線、有限、光纖電纜、RF等等。 可以以一種或多種編程語言的任意組合編寫用于實(shí)現(xiàn)本發(fā)明的操作的計(jì)算機(jī)程 序代碼,所述編程語言包括面向?qū)ο蟮木幊陶Z言(例如JaVa、Smalltalk、C++等)以及傳統(tǒng) 的過程編程語言(例如C程序語言或者類似的編程語言)??梢酝耆卦谟脩舻挠?jì)算機(jī)上 執(zhí)行程序代碼,在用戶的計(jì)算機(jī)上部分地執(zhí)行程序代碼,作為獨(dú)立的軟件包,可以在用戶計(jì) 算機(jī)上部分地執(zhí)行以及部分地在遠(yuǎn)程計(jì)算機(jī)上執(zhí)行或者全部在遠(yuǎn)程計(jì)算機(jī)或者服務(wù)器上 執(zhí)行。在后者的情況下,遠(yuǎn)程計(jì)算機(jī)可以通過任意類型的網(wǎng)絡(luò)連接到用戶的計(jì)算機(jī),所述網(wǎng) 絡(luò)包括局域網(wǎng)(LAN)或者廣域網(wǎng)(WAN),或者可以建立到外部計(jì)算機(jī)的連接(例如,利用因 特網(wǎng)服務(wù)供應(yīng)商通過因特網(wǎng)建立)。 以下,將參考根據(jù)本發(fā)明實(shí)施例的方法、裝置(系統(tǒng))和計(jì)算機(jī)程序產(chǎn)品的流程圖 和/或框圖描述本發(fā)明。應(yīng)當(dāng)理解,流程圖和/或框圖的每個(gè)框以及流程圖和/或框圖中 的各框的組合都能夠通過計(jì)算機(jī)程序指令來實(shí)現(xiàn)。所述計(jì)算機(jī)程序指令可以被提供至通用 計(jì)算機(jī)、專用計(jì)算機(jī)或者生產(chǎn)機(jī)器的其他可編程數(shù)據(jù)處理設(shè)備的處理器,由此使得通過計(jì) 算機(jī)或者其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令形成用于實(shí)現(xiàn)所述流程圖和/或 框圖的框或多個(gè)框中指定的功能/動(dòng)作的裝置。 所述計(jì)算機(jī)程序指令還可以被存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)中,所述計(jì)算機(jī)可讀介質(zhì)可 以指引計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備以特定的方式實(shí)現(xiàn)功能,由此使得存儲(chǔ)在計(jì)算機(jī) 可讀介質(zhì)中的指令產(chǎn)生包括指令裝置的制品,其將實(shí)現(xiàn)所述流程圖和/或框圖的框或多個(gè) 框中指定的功能/動(dòng)作。 計(jì)算機(jī)程序指令還可以被載入到計(jì)算機(jī)或者其他可編程數(shù)據(jù)處理設(shè)備上,使得在 計(jì)算機(jī)或者其他可編程裝置上執(zhí)行一系列操作步驟以生產(chǎn)計(jì)算機(jī)實(shí)現(xiàn)的處理,由此使得在 計(jì)算機(jī)或者其他可編程裝置上執(zhí)行的指令提供用于實(shí)現(xiàn)所述流程圖和/或框圖的框或多個(gè)框中指定的功能/動(dòng)作的處理。 現(xiàn)在參考附圖,特別是參考附圖l-2,提供了數(shù)據(jù)處理環(huán)境的示例圖,在所述數(shù)據(jù) 處理環(huán)境中可以實(shí)現(xiàn)本發(fā)明的說明性實(shí)施例。應(yīng)當(dāng)理解,圖l-2僅僅是示例性的,并且不意 圖聲明或者暗示對(duì)于其中可以實(shí)現(xiàn)不同實(shí)施例的環(huán)境的任何限制??梢詫?duì)所描述的環(huán)境做 出多種改型。 圖1示出了數(shù)據(jù)處理系統(tǒng)的網(wǎng)絡(luò)的圖示表示,其中可以實(shí)現(xiàn)本發(fā)明的說明性實(shí)施 例。網(wǎng)絡(luò)數(shù)據(jù)處理系統(tǒng)100是其中可以實(shí)現(xiàn)本發(fā)明的說明性實(shí)施例的計(jì)算機(jī)的網(wǎng)絡(luò)。網(wǎng)絡(luò) 數(shù)據(jù)處理系統(tǒng)100包含網(wǎng)絡(luò)130,其是用于在網(wǎng)絡(luò)數(shù)據(jù)處理系統(tǒng)100內(nèi)連接在一起的各種設(shè) 備和計(jì)算機(jī)之間提供通信鏈接的介質(zhì)。網(wǎng)絡(luò)130可以包括例如有線、無線通信鏈接或者光 纖電纜的連接。 在一些實(shí)施例中,服務(wù)器140和服務(wù)器150以及數(shù)據(jù)存儲(chǔ)器160連接到網(wǎng)絡(luò)130。 服務(wù)器140和服務(wù)器150例如可以是IBM系統(tǒng)p⑧服務(wù)器。此外,客戶機(jī)110和120連接到 網(wǎng)絡(luò)130??蛻魴C(jī)110和120例如可以是個(gè)人計(jì)算機(jī)或者網(wǎng)絡(luò)計(jì)算機(jī)。在所述的例子中,服 務(wù)器140向客戶機(jī)110和120提供數(shù)據(jù)和/或服務(wù),例如但不限于,數(shù)據(jù)文件、操作系統(tǒng)鏡 像和應(yīng)用程序。網(wǎng)絡(luò)數(shù)據(jù)處理系統(tǒng)100可以包括額外的服務(wù)器、客戶機(jī)及其他設(shè)備。
在所述的例子中,網(wǎng)絡(luò)數(shù)據(jù)處理系統(tǒng)100是具有表示網(wǎng)絡(luò)和網(wǎng)關(guān)的世界范圍的集 合的網(wǎng)絡(luò)130,其使用傳輸控制協(xié)議/網(wǎng)際協(xié)議(TCP/IP)的協(xié)議組從而彼此通信。在因特 網(wǎng)的核心處是主節(jié)點(diǎn)或者主計(jì)算機(jī)之間的高速數(shù)據(jù)通信線路的主干網(wǎng),由路由數(shù)據(jù)和消息 的數(shù)以千計(jì)的商業(yè)的、政府的、教育的及其他計(jì)算機(jī)系統(tǒng)組成。當(dāng)然,網(wǎng)絡(luò)數(shù)據(jù)處理系統(tǒng)100 還可以被實(shí)現(xiàn)為多個(gè)不同類型的網(wǎng)絡(luò),例如,內(nèi)部網(wǎng)、局域網(wǎng)(LAN)或者廣域網(wǎng)(WAN)。圖l 被用作一個(gè)例子,而并非用作對(duì)不同說明性實(shí)施例的結(jié)構(gòu)限制。 圖2示出了數(shù)據(jù)處理系統(tǒng)的實(shí)施例,例如但不限于,服務(wù)器140,在所述服務(wù)器140 中可以實(shí)現(xiàn)根據(jù)本發(fā)明的引導(dǎo)鏡像測(cè)試應(yīng)用程序的實(shí)施例。在本實(shí)施例中,數(shù)據(jù)處理系統(tǒng) 200包括通信網(wǎng)202,其在處理器單元204、存儲(chǔ)器206、永久存儲(chǔ)器208、通信單元210、輸入 /輸出(I/O)單元212和顯示器214之間提供通信。 處理器單元204用于執(zhí)行可以載入存儲(chǔ)器206的軟件的指令。取決于特定的實(shí)現(xiàn) 方式,處理器單元204可以是一組一個(gè)或多個(gè)處理器或者可以是多處理器內(nèi)核。進(jìn)一步,可 以利用一個(gè)或多個(gè)不同種類的處理器系統(tǒng)實(shí)現(xiàn)處理器單元204,在所述不同種類的處理器 系統(tǒng)中,在一個(gè)芯片具有主處理機(jī)和副處理器。作為另一說明性的例子,處理器單元204可 以是包含相同類型的多處理器的對(duì)稱多處理器系統(tǒng)。 在一些實(shí)施例中,存儲(chǔ)器206可以是隨機(jī)存取存儲(chǔ)器或者任何其他合適的易失性 或者非易失性存儲(chǔ)設(shè)備。取決于特定的實(shí)現(xiàn)方式,永久存儲(chǔ)器208可以采用各種形式。例 如,永久存儲(chǔ)器208可以包含一個(gè)或多個(gè)部件或者裝置。永久存儲(chǔ)器208可以是硬盤驅(qū)動(dòng) 器、閃存、可重寫光盤、可重寫磁帶、或者上述的某些組合。永久存儲(chǔ)器208采用的介質(zhì)還可 以是可移除的,例如但不限于可移除的硬盤驅(qū)動(dòng)器。 通信單元210提供了與其他數(shù)據(jù)處理系統(tǒng)或者設(shè)備的通信。在這些實(shí)例中,通信 單元210是網(wǎng)絡(luò)接口卡。調(diào)制解調(diào)器、電纜調(diào)制解調(diào)器和以太網(wǎng)卡只不過是網(wǎng)絡(luò)接口適配 器的幾種當(dāng)前可用的類型。通信單元210可以通過使用物理和無線通訊鏈接中的任意一種 或兩者來提供通信。
輸入/輸出單元212允許與可以連接到數(shù)據(jù)處理系統(tǒng)200的其他設(shè)備輸入和輸出 數(shù)據(jù)。在一些實(shí)施例中,輸入/輸出單元212可以通過鍵盤和鼠標(biāo)為用戶輸入提供連接。進(jìn) 一步,輸入/輸出單元212可以向打印機(jī)發(fā)送輸出。顯示器214向用戶提供了顯示信息的 機(jī)制。 操作系統(tǒng)和應(yīng)用程序或者程序的指令位于永久存儲(chǔ)器208上。該指令可以被載入 存儲(chǔ)器206用于由處理器單元204執(zhí)行??梢岳糜?jì)算機(jī)執(zhí)行的指令通過處理器單元204 實(shí)現(xiàn)不同實(shí)施例的處理,所述計(jì)算機(jī)執(zhí)行的指令可以位于例如存儲(chǔ)器206的存儲(chǔ)器中。所 述指令被稱為程序代碼、計(jì)算機(jī)可用的程序代碼或者計(jì)算機(jī)可讀的程序代碼,其可以由處 理器單元204中的處理器讀取和執(zhí)行。可以在不同的物理或者實(shí)體計(jì)算機(jī)可讀介質(zhì)(例如 存儲(chǔ)器206或者永久存儲(chǔ)器208)上實(shí)現(xiàn)不同實(shí)施例中的程序代碼。 程序代碼216以功能形式位于可選擇性地移除的計(jì)算機(jī)可讀介質(zhì)218上,并且可 以被加載到或者轉(zhuǎn)移到數(shù)據(jù)處理系統(tǒng)200用于通過處理器單元204執(zhí)行。程序代碼216和 計(jì)算機(jī)可讀介質(zhì)218形成了這些實(shí)例中的計(jì)算機(jī)程序產(chǎn)品220。在一個(gè)實(shí)例中,計(jì)算機(jī)可 讀介質(zhì)218可以具有實(shí)體形式,例如,被插入或者置于作為永久存儲(chǔ)器208的一部分的其他 設(shè)備或者驅(qū)動(dòng)器中的光盤或者磁盤,用于傳送到存儲(chǔ)設(shè)備(例如作為永久存儲(chǔ)器208的一 部分的硬盤驅(qū)動(dòng)器)上。在實(shí)體的形式中,計(jì)算機(jī)可讀介質(zhì)218還可以采取永久存儲(chǔ)器的 形式,例如連接到數(shù)據(jù)處理系統(tǒng)200的閃存、硬盤驅(qū)動(dòng)器或者拇指驅(qū)動(dòng)器。計(jì)算機(jī)可讀介質(zhì) 218的實(shí)體形式還被稱為計(jì)算機(jī)可記錄存儲(chǔ)介質(zhì)。在有些情況下,計(jì)算機(jī)可讀介質(zhì)218可能 不可移除。 可選地,程序代碼216可以從計(jì)算機(jī)可讀介質(zhì)218通過至通信單元210的通信鏈 路和/或通過到輸入/輸出單元212的連接被轉(zhuǎn)移到數(shù)據(jù)處理系統(tǒng)200。在說明性的例子 中,所述通信鏈接和/或連接可以是物理的或者無線的。計(jì)算機(jī)可讀介質(zhì)也可以采取非實(shí) 體介質(zhì)的形式,例如包含程序代碼的通信鏈接或者無線傳輸。 對(duì)于數(shù)據(jù)處理系統(tǒng)200示出的不同組件不意圖提供對(duì)于可以實(shí)現(xiàn)不同實(shí)施例的 方式的結(jié)構(gòu)限制??梢栽诎ㄈ缦陆M件的數(shù)據(jù)處理系統(tǒng)中實(shí)現(xiàn)不同的說明性實(shí)施例,所述 組件是除了對(duì)于數(shù)據(jù)處理系統(tǒng)200所示的組件之外的組件或者替代那些組件的組件。圖2 所示的其他組件可以不同于所示的說明性的例子。例如,數(shù)據(jù)處理系統(tǒng)200中的存儲(chǔ)設(shè)備 是可以儲(chǔ)存數(shù)據(jù)的任何硬件設(shè)備。存儲(chǔ)器206、永久存儲(chǔ)器208和計(jì)算機(jī)可讀介質(zhì)218是實(shí) 體形式的存儲(chǔ)設(shè)備的例子。 圖3示出了引導(dǎo)鏡像測(cè)試系統(tǒng)300的實(shí)施例。可以在數(shù)據(jù)處理系統(tǒng)或者平臺(tái)上 (例如但不限于圖l所示的服務(wù)器140)實(shí)現(xiàn)引導(dǎo)鏡像測(cè)試系統(tǒng)300。在所示的實(shí)施例中,引 導(dǎo)鏡像測(cè)試系統(tǒng)300包括一個(gè)或多個(gè)邏輯分區(qū)(LPAR),例如但不限于,LPAR 304,LPAR306, LPAR 308,LPAR 310和LPAR 312,微分區(qū)處理器池320,管理程序302、虛擬I/O服務(wù)器340 和未使用的存儲(chǔ)器空間350。 邏輯分區(qū)是計(jì)算機(jī)硬件資源的子集,被虛擬化為獨(dú)立的計(jì)算機(jī)。例如LPAR 304和 LPAR 306的邏輯分區(qū)可以包括一個(gè)或多個(gè)專用處理器。此外,例如LPAR 310和LPAR 312 的邏輯分區(qū)還可以共享微分區(qū)處理器池(例如,微分區(qū)處理器池320)中的一個(gè)或多個(gè)處理 器(多個(gè))。微分區(qū)處理器池320通過提供虛擬處理器提高了系統(tǒng)利用率并且減少了硬件 /軟件開支。
實(shí)際上,物理機(jī)器可以被分區(qū)為多個(gè)LPAR,其每一個(gè)容納獨(dú)立的操作系統(tǒng)(0S)。 例如,LPAR 304、LPAR 306、LPAR 310禾口 LPAR 312分別包括0S 316、 OS 318、 OS 322禾口 OS 324。在一些實(shí)施例中,OS 316、0S 318、0S 322和OS 324可以是不同類型的操作系統(tǒng)???選地,在一些實(shí)施例中,OS 316、0S 322和0S 324可以是相同類型的操作系統(tǒng),例如但不限 于IBM的Advanced InteractiveeXecutive ( AIX ) UNIX⑧操作系統(tǒng)。
管理程序302也被稱為虛擬機(jī)管理器,其是允許多種操作系統(tǒng)(例如但不限于,OS 316、0S 318、0S 322和OS 324)共享一個(gè)硬件主機(jī)的程序。每個(gè)操作系統(tǒng)對(duì)于其自身好像 具有所有主機(jī)的處理器、存儲(chǔ)器及其他系統(tǒng)資源。然而,管理程序302實(shí)際上控制主處理器 和所述系統(tǒng)資源,并且為每個(gè)操作系統(tǒng)分配必要的資源。 此外,位于LPAR 308中的虛擬I/0服務(wù)器340為虛擬I/0管理提供操作環(huán)境。通 過建立虛擬裝置,虛擬I/0服務(wù)器340促進(jìn)了服務(wù)器內(nèi)的客戶機(jī)邏輯分區(qū)(例如但不限于, LPAR 304、LPAR 306、LPAR 310和LPAR 312)之間的物理I/O資源的共享。例如,虛擬1/0服 務(wù)器340為數(shù)據(jù)處理系統(tǒng)內(nèi)的客戶機(jī)邏輯分區(qū)提供了虛擬的小型計(jì)算機(jī)系統(tǒng)接口 (SCSI) 目標(biāo)和共享以太網(wǎng)適配器的能力,使得客戶機(jī)邏輯分區(qū)能夠共享SCSI設(shè)備和以太網(wǎng)適配 器。在一些實(shí)施例中,虛擬I/O服務(wù)器340可以是管理程序302的一部分。
引導(dǎo)鏡像330包括用于載入程序的引導(dǎo)指令和配置參數(shù),例如但不限于,所述程 序是LPAR 304上的操作系統(tǒng)316。例如,引導(dǎo)鏡像330可以包括用于載入OS 316的常規(guī) 操作所需的設(shè)備驅(qū)動(dòng)程序及其他程序的指令。在一些實(shí)施例中,引導(dǎo)鏡像330位于存儲(chǔ)設(shè) 備(例如但不限于,圖2中示出的永久存儲(chǔ)器208)的引導(dǎo)扇區(qū)301中??蛇x地,在一些實(shí) 施例中,引導(dǎo)鏡像330可以位于其它位置,例如但不限于,可以位于遠(yuǎn)程數(shù)據(jù)存儲(chǔ)位置。在 一些實(shí)施例中,可以通過虛擬1/0服務(wù)器340和/或OS 316訪問引導(dǎo)鏡像330。
在一些實(shí)施例中,在載入OS 316之后,OS 316可以通過管理程序302訪問引導(dǎo)鏡 像330以改變引導(dǎo)鏡像330。例如,可以改變引導(dǎo)鏡像330以更新設(shè)備驅(qū)動(dòng)程序?,F(xiàn)有用于 檢驗(yàn)改變的和/或新的引導(dǎo)鏡像是否正確地工作的方法效率低、費(fèi)時(shí)并且維護(hù)費(fèi)用高。例 如,現(xiàn)有方法包括試圖根據(jù)新的/改變的引導(dǎo)鏡像來引導(dǎo)實(shí)際的系統(tǒng)。然而,如果未能恰當(dāng) 地引導(dǎo)系統(tǒng),則在調(diào)試系統(tǒng)的同時(shí)和/或在從備份恢復(fù)系統(tǒng)的同時(shí),系統(tǒng)可能會(huì)在延長(zhǎng)的 時(shí)間段內(nèi)停機(jī)。另一方法是保存用于測(cè)試目的的獨(dú)立的物理系統(tǒng)復(fù)制。然而,該方法也是 費(fèi)時(shí)且昂貴的,這是由于每次對(duì)主系統(tǒng)做出變化時(shí),也必須利用完全相同的變化來更新該 復(fù)制的系統(tǒng)。 因此,此處公開的實(shí)施例給出了一種克服了上述問題的用于有效地測(cè)試引導(dǎo)鏡像 的系統(tǒng)、方法和計(jì)算機(jī)程序產(chǎn)品。在一些實(shí)施例中,所述方法包括創(chuàng)建邏輯分區(qū),所述邏輯 分區(qū)是其中引導(dǎo)鏡像所用于的邏輯分區(qū)的復(fù)制,利用測(cè)試引導(dǎo)鏡像啟動(dòng)用于該復(fù)制邏輯分 區(qū)的引導(dǎo)序列,并且將引導(dǎo)序列的結(jié)果返回到請(qǐng)求者。 圖4示出了引導(dǎo)鏡像測(cè)試應(yīng)用程序的實(shí)施例。在一些實(shí)施例中,通過0S 316、管理 程序302、虛擬I/0服務(wù)器340或者通過其它某些遠(yuǎn)程數(shù)據(jù)處理系統(tǒng)執(zhí)行引導(dǎo)鏡像測(cè)試應(yīng)用 程序400。引導(dǎo)鏡像測(cè)試應(yīng)用程序400包括用于測(cè)試與LPAR相關(guān)聯(lián)的引導(dǎo)鏡像的指令代 碼。在所示的實(shí)施例中,引導(dǎo)鏡像測(cè)試應(yīng)用程序400包括分區(qū)創(chuàng)建器410、引導(dǎo)鏡像創(chuàng)建器 412、引導(dǎo)鏡像處理器414和引導(dǎo)鏡像測(cè)試器418。 分區(qū)創(chuàng)建器410包括用于創(chuàng)建引導(dǎo)鏡像計(jì)劃用于的邏輯分區(qū)的復(fù)制邏輯分區(qū)的
8指令代碼。例如,如圖3中的LPAR 305所示,分區(qū)創(chuàng)建器410可以在未使用的存儲(chǔ)器空間 350中創(chuàng)建LPAR 304的復(fù)制邏輯分區(qū),用于測(cè)試引導(dǎo)鏡像。LPAR 305包括與LPAR 304相 同的虛擬磁盤和資源。 引導(dǎo)鏡像創(chuàng)建器412包括用于復(fù)制已存在的引導(dǎo)鏡像和/或創(chuàng)建新的引導(dǎo)鏡像的 指令代碼。例如,如果引導(dǎo)鏡像330崩潰,則可以創(chuàng)建新的引導(dǎo)鏡像。例如,對(duì)于AIX⑧操 作系統(tǒng),〃 bosboot〃命令可以用于重新創(chuàng)建引導(dǎo)鏡像。在所示的實(shí)施例中,圖3中的引導(dǎo) 鏡像331是將被測(cè)試的引導(dǎo)鏡像,并且可以是新創(chuàng)建的、與LPAR 304或者引導(dǎo)鏡像330的 改變的拷貝相關(guān)聯(lián)的引導(dǎo)鏡像。在一些實(shí)施例中,引導(dǎo)鏡像創(chuàng)建器412可以是與引導(dǎo)鏡像 測(cè)試應(yīng)用程序400獨(dú)立的組件。 引導(dǎo)鏡像處理器414包括用于存儲(chǔ)和訪問引導(dǎo)鏡像文件的指令代碼。此外,在一 些實(shí)施例中,引導(dǎo)鏡像處理器414可以用于改變引導(dǎo)鏡像,例如但不限于,改變引導(dǎo)鏡像 330以創(chuàng)建引導(dǎo)鏡像331。例如,可以通過添加、刪除和/或改變引導(dǎo)配置文件和/或程序 來改變引導(dǎo)鏡像330。 引導(dǎo)鏡像測(cè)試器418包括用于測(cè)試引導(dǎo)鏡像(例如但不限于,引導(dǎo)鏡像331)的指 令代碼。引導(dǎo)鏡像測(cè)試器418啟動(dòng)用于為測(cè)試一個(gè)引導(dǎo)鏡像而創(chuàng)建的邏輯分區(qū)(例如但不 限于,LPAR 305)的引導(dǎo)序列,以對(duì)引導(dǎo)鏡像331進(jìn)行測(cè)試。在一些實(shí)施例中,LPAR 305可 以包括引導(dǎo)鏡像331??蛇x地,在一些實(shí)施例中,引導(dǎo)鏡像331可以位于其它位置,例如但不 限于,可以位于數(shù)據(jù)存儲(chǔ)器160中。在這些實(shí)施例中,引導(dǎo)鏡像測(cè)試器418可以通過虛擬1/ 0服務(wù)器340訪問存儲(chǔ)在數(shù)據(jù)存儲(chǔ)器160中的引導(dǎo)鏡像331,從而在不需要將引導(dǎo)鏡像331 復(fù)制到LPAR 305的情況下啟動(dòng)所述引導(dǎo)序列。引導(dǎo)鏡像測(cè)試器418監(jiān)控所述引導(dǎo)序列以判 斷所述引導(dǎo)序列是否成功。引導(dǎo)鏡像測(cè)試器418將所述引導(dǎo)嘗試的結(jié)果返回到請(qǐng)求組件。 例如,在一些實(shí)施例中,可以通過引導(dǎo)鏡像計(jì)劃用于的邏輯分區(qū)的操作系統(tǒng)來發(fā)起請(qǐng)求。然 而,在一些實(shí)施例中,數(shù)據(jù)處理系統(tǒng)的管理程序和/或虛擬1/0服務(wù)器可以發(fā)起測(cè)試引導(dǎo)鏡 像的請(qǐng)求。此外,在一些實(shí)施例中,請(qǐng)求者可以是遠(yuǎn)程數(shù)據(jù)處理系統(tǒng)。 圖5示出了用于創(chuàng)建和存儲(chǔ)引導(dǎo)鏡像的方法的實(shí)施例。在塊502處,方法500始于 接收創(chuàng)建用于邏輯分區(qū)的測(cè)試引導(dǎo)鏡像的請(qǐng)求。在塊504處,所述方法創(chuàng)建引導(dǎo)鏡像。在 一些實(shí)施例中,測(cè)試引導(dǎo)鏡像是特定邏輯分區(qū)的已存在的引導(dǎo)鏡像的拷貝??梢噪S后改變 所創(chuàng)建的引導(dǎo)鏡像的拷貝??蛇x地,在一些實(shí)施例中,所創(chuàng)建的測(cè)試引導(dǎo)鏡像可以是新創(chuàng)建 的引導(dǎo)鏡像。在塊506處,所述方法通過管理程序?qū)⑺鶆?chuàng)建的測(cè)試引導(dǎo)鏡像發(fā)送到虛擬1/ 0服務(wù)器。在塊508處,虛擬I/0服務(wù)器將測(cè)試引導(dǎo)鏡像存儲(chǔ)在存儲(chǔ)設(shè)備(例如但不限于, 數(shù)據(jù)存儲(chǔ)器160)中,此后方法500終止。 圖6示出了用于測(cè)試新創(chuàng)建的和/或改變的引導(dǎo)鏡像的方法的實(shí)施例。在塊602 處,方法600始于接收測(cè)試新創(chuàng)建的和/或改變的引導(dǎo)鏡像的請(qǐng)求。在塊604處,所述方法 創(chuàng)建引導(dǎo)鏡像計(jì)劃用于的邏輯分區(qū)的復(fù)制邏輯分區(qū)。在一些實(shí)施例中,在塊606處,所述方 法將測(cè)試引導(dǎo)鏡像拷貝到所述復(fù)制邏輯分區(qū)。可選地,在塊606處,所述方法可以在不將測(cè) 試引導(dǎo)鏡像拷貝到所述復(fù)制邏輯分區(qū)的情況下向所述復(fù)制邏輯分區(qū)呈現(xiàn)測(cè)試引導(dǎo)鏡像。在 塊608處,所述方法利用新創(chuàng)建的和/或改變的引導(dǎo)鏡像啟動(dòng)復(fù)制邏輯分區(qū)的引導(dǎo)序列。在 塊610處,所述方法監(jiān)控所述引導(dǎo)序列以判斷所述引導(dǎo)序列是否成功。如果操作系統(tǒng)及其 他可應(yīng)用的程序(如果有的話)在沒有遇到錯(cuò)誤的情況下和/或在規(guī)定時(shí)間段內(nèi)加載,則引導(dǎo)序列成功。在一些實(shí)施例中,如果引導(dǎo)序列成功,則在塊612處,所述方法刪除所述復(fù) 制邏輯分區(qū)。此外,在一些實(shí)施例中,如果引導(dǎo)序列失敗,則出于進(jìn)一步測(cè)試和/或調(diào)試的 目的,在塊614處,所述方法可以保存所述復(fù)制邏輯分區(qū)。在塊616處,所述方法將引導(dǎo)序 列的結(jié)果返回到請(qǐng)求者,方法600隨后終止。在一些實(shí)施例中,代替所述引導(dǎo)序列的結(jié)果或 者除此以外,所述方法還可以返回其他類型的信息。例如,所述方法可以返回與引導(dǎo)序列失 敗的原因相關(guān)的信息 因此,所公開的實(shí)施例給出了在不需要維護(hù)獨(dú)立的測(cè)試數(shù)據(jù)處理系統(tǒng)的情況下用 于測(cè)試引導(dǎo)鏡像的系統(tǒng)和方法。此外,所公開的實(shí)施例使得能夠測(cè)試新的或者改變的引導(dǎo) 鏡像,而沒有系統(tǒng)將會(huì)停機(jī)一段延長(zhǎng)的時(shí)間的風(fēng)險(xiǎn)。 此處使用的術(shù)語僅僅是為了描述具體實(shí)施例,而并不意圖限制本公開。如此處使 用的,除非上下文清楚地另作說明,否則單數(shù)形式〃 一個(gè)〃 、 〃 一種〃 和〃 所述〃 意圖是也 包括復(fù)數(shù)形式。將進(jìn)一步理解,當(dāng)在本說明書中使用時(shí),術(shù)語〃 包括〃 和/或〃 包含〃 表 明所說明的特征、整體、步驟、操作、部件和/或組件的存在,但不是排除一個(gè)或多個(gè)其他特 征、整體、步驟、操作、部件、組件及其組合的存在或者加入。在以下權(quán)利要求書中的相應(yīng)的 結(jié)構(gòu)、材料、動(dòng)作和所有裝置或步驟加功能性元素的等價(jià)物意圖包括用于執(zhí)行如具體要求
的與其他要求的元素組合的功能的任何結(jié)構(gòu)、材料或者動(dòng)作。已經(jīng)出于示例和說明的目的
給出了本發(fā)明的說明,但是其不是窮舉的或者局限于所公開的形式的公開內(nèi)容。在不背離
本發(fā)明的保護(hù)范圍和精神的情況下,本領(lǐng)域普通技術(shù)人員將明白多種改型和變化。為了最
佳地闡明本發(fā)明的原理和實(shí)際應(yīng)用并且為了能夠使得本領(lǐng)域普通技術(shù)人員理解具有適于
所設(shè)想的特定使用的各種改型的各種實(shí)施例的公開,選擇并且描述了實(shí)施例。 此外,附圖中的流程圖和框圖示出了根據(jù)本發(fā)明各種實(shí)施例的可能的系統(tǒng)、方法
和計(jì)算機(jī)程序產(chǎn)品的體系結(jié)構(gòu)、功能與可能的實(shí)現(xiàn)方式的操作。就此而言,流程圖或者框
圖中的每個(gè)框可以表示代碼的一部分、片段或者模塊,其包括用于實(shí)現(xiàn)所指定的邏輯功能
(多個(gè))的一個(gè)或多個(gè)可執(zhí)行指令。還應(yīng)注意,在某些可選實(shí)現(xiàn)方式中,框中注明的功能可
以不按照?qǐng)D中給出的順序出現(xiàn)。例如,實(shí)際上,取決于所涉及的功能,可以大體上同時(shí)地執(zhí)
行連續(xù)示出的兩個(gè)框,或者有時(shí)可以以相反的順序執(zhí)行所述框。還應(yīng)注意,可以通過執(zhí)行指
定功能或者動(dòng)作的基于專用硬件的系統(tǒng)或者專用硬件和計(jì)算機(jī)指令的組合,來實(shí)現(xiàn)框圖和
/或流程圖的每個(gè)框以及框圖和/或流程圖中的多個(gè)框的組合。
權(quán)利要求
一種測(cè)試計(jì)劃用于數(shù)據(jù)處理系統(tǒng)的第一邏輯分區(qū)的計(jì)算機(jī)實(shí)現(xiàn)的方法,包括在所述數(shù)據(jù)處理系統(tǒng)上創(chuàng)建第二邏輯分區(qū),其中所述第二邏輯分區(qū)是第一邏輯分區(qū)的復(fù)制;利用引導(dǎo)鏡像啟動(dòng)用于第二邏輯分區(qū)的引導(dǎo)序列;以及將所述引導(dǎo)序列的結(jié)果返回給請(qǐng)求者。
2. 如權(quán)利要求1的方法,進(jìn)一步包括將所述引導(dǎo)鏡像拷貝到第二邏輯分區(qū)。
3. 如權(quán)利要求l的方法,進(jìn)一步包括通過拷貝和改變與所述第一邏輯分區(qū)相關(guān)聯(lián)的已 存在的引導(dǎo)鏡像來創(chuàng)建所述弓I導(dǎo)鏡像。
4. 如權(quán)利要求1的方法,進(jìn)一步包括新創(chuàng)建所述引導(dǎo)鏡像。
5. 如權(quán)利要求l的方法,進(jìn)一步包括在返回所述引導(dǎo)序列成功的結(jié)果之后刪除所述第 二邏輯分區(qū)。
6. 如權(quán)利要求l的方法,進(jìn)一步包括響應(yīng)于檢測(cè)到所述引導(dǎo)序列中的錯(cuò)誤而保存所述 第二邏輯分區(qū)。
7. 如權(quán)利要求l的方法,進(jìn)一步包括響應(yīng)于檢測(cè)到所述引導(dǎo)序列中的錯(cuò)誤,返回與所 述錯(cuò)誤的原因相關(guān)的信息。
8. 如權(quán)利要求l的方法,進(jìn)一步包括從第一邏輯分區(qū)的操作系統(tǒng)接收測(cè)試所述引導(dǎo)鏡 像的請(qǐng)求。
9. 如權(quán)利要求1的方法,進(jìn)一步包括從數(shù)據(jù)處理系統(tǒng)的管理程序接收測(cè)試所述引導(dǎo)鏡 像的請(qǐng)求。
10. 如權(quán)利要求1的方法,進(jìn)一步包括從虛擬1/0服務(wù)器接收測(cè)試所述引導(dǎo)鏡像的請(qǐng)求。
11. 如權(quán)利要求l的方法,進(jìn)一步包括從遠(yuǎn)程數(shù)據(jù)處理系統(tǒng)接收測(cè)試所述引導(dǎo)鏡像的 請(qǐng)求。
12. 如權(quán)利要求l的方法,進(jìn)一步包括在外部存儲(chǔ)設(shè)備中存儲(chǔ)所述引導(dǎo)鏡像。
13. —種系統(tǒng),包括 數(shù)據(jù)總線系統(tǒng);耦合到所述數(shù)據(jù)總線系統(tǒng)的存儲(chǔ)器,其中所述存儲(chǔ)器包括計(jì)算機(jī)可用的程序代碼,測(cè) 試計(jì)劃用于數(shù)據(jù)處理系統(tǒng)的第一邏輯分區(qū)的引導(dǎo)鏡像;以及耦合到所述數(shù)據(jù)總線系統(tǒng)的處理單元,其中所述處理單元執(zhí)行所述計(jì)算機(jī)可用的程序 代碼,從而在所述數(shù)據(jù)處理系統(tǒng)上創(chuàng)建第二邏輯分區(qū),其中所述第二邏輯分區(qū)是所述第一邏輯分 區(qū)的復(fù)制;利用所述引導(dǎo)鏡像啟動(dòng)用于所述第二邏輯分區(qū)的引導(dǎo)序列;以及 將所述弓I導(dǎo)序列的結(jié)果返回給請(qǐng)求者。
14. 如權(quán)利要求13的系統(tǒng),其中在返回所述引導(dǎo)序列成功的結(jié)果之后,所述處理單元 執(zhí)行所述計(jì)算機(jī)可用的程序代碼以刪除所述第二邏輯分區(qū)。
15. 如權(quán)利要求13的系統(tǒng),其中響應(yīng)于檢測(cè)到所述引導(dǎo)序列中的錯(cuò)誤,所述處理單元 執(zhí)行所述計(jì)算機(jī)可用的程序代碼以保存所述第二邏輯分區(qū)。
16. 如權(quán)利要求13的系統(tǒng),其中所述處理單元執(zhí)行所述計(jì)算機(jī)可用的程序代碼以將所述弓I導(dǎo)鏡像拷貝到所述第二邏輯分區(qū)。
17. 如權(quán)利要求13的系統(tǒng),其中通過拷貝和改變與所述第一邏輯分區(qū)相關(guān)聯(lián)的引導(dǎo)鏡 像,所述處理單元執(zhí)行所述計(jì)算機(jī)可用的程序代碼以創(chuàng)建所述弓I導(dǎo)鏡像。
18. —種計(jì)算機(jī)程序產(chǎn)品,包括包括計(jì)算機(jī)可用的程序代碼的計(jì)算機(jī)可用介質(zhì),所述計(jì)算機(jī)可用的程序代碼用于測(cè)試 計(jì)劃用于數(shù)據(jù)處理系統(tǒng)的第一邏輯分區(qū)的引導(dǎo)鏡像,所述計(jì)算機(jī)程序產(chǎn)品包括用于實(shí)現(xiàn)權(quán) 利要求1-12中的任意方法的計(jì)算機(jī)可用的程序代碼。
19. 計(jì)算機(jī)系統(tǒng),包括用于實(shí)現(xiàn)權(quán)利要求1-12中的任意方法的裝置。
全文摘要
根據(jù)本發(fā)明的一個(gè)實(shí)施例,公開了一種用于測(cè)試引導(dǎo)鏡像的系統(tǒng)和方法。所述方法包括創(chuàng)建用于第一邏輯分區(qū)的測(cè)試引導(dǎo)鏡像,創(chuàng)建第二邏輯分區(qū),其中第二邏輯分區(qū)是第一邏輯分區(qū)的復(fù)制,利用測(cè)試引導(dǎo)鏡像啟動(dòng)用于第二邏輯分區(qū)的引導(dǎo)序列,并且將引導(dǎo)序列的結(jié)果返回給請(qǐng)求者。
文檔編號(hào)G06F11/28GK101763301SQ20091022200
公開日2010年6月30日 申請(qǐng)日期2009年11月13日 優(yōu)先權(quán)日2008年12月22日
發(fā)明者A·J·塞佩爾, C·N·塞佩爾, R·S·皮格, S·A·哈利 申請(qǐng)人:國(guó)際商業(yè)機(jī)器公司