專利名稱:故障防護(hù)計(jì)算機(jī)支持助理的制作方法
技術(shù)領(lǐng)域:
本發(fā)明通常涉及向計(jì)算機(jī)用戶提供支持。
技術(shù)背景支持助理(support assistant)可以為計(jì)算機(jī)用戶提供綜合的以及 全面的輔助,并且可受用戶信賴以在出現(xiàn)問題時(shí)獲知如何使用計(jì)算 機(jī)或者修理計(jì)算機(jī),包括軟件。支持助理通常包括運(yùn)行在計(jì)算機(jī)和 可能的外部部件上的支持軟件,諸如由支持技術(shù)人員充當(dāng)職員的在 線幫助中心,支持技術(shù)人員通過支持軟件在因特網(wǎng)上與用戶通信。計(jì)算機(jī)支持軟件執(zhí)行各種有用的任務(wù)。它可以執(zhí)行診斷測(cè)試, 以確定計(jì)算機(jī)的硬件和軟件是否正在正確地工作。支持軟件可以修 復(fù)損壞的軟件。支持軟件可以提供幫助屏幕或者以其他方式輔助用 戶執(zhí)行各種任務(wù)。例如,可以通過因特網(wǎng)提供這種輔助。支持軟件 還可以包括實(shí)用工具,諸如文件備份軟件或者系統(tǒng)配置軟件。典型地,支持軟件在用戶所使用的同 一操作系統(tǒng)下運(yùn)行在用戶 計(jì)算機(jī)上。結(jié)果,如果操作系統(tǒng)或者操作系統(tǒng)上的某個(gè)應(yīng)用出現(xiàn)問 題,則支持軟件可能就不能夠正確地運(yùn)行。因此,在本領(lǐng)域中需要 具有支持軟件的支持助理,該支持軟件能夠在操作系統(tǒng)或者應(yīng)用發(fā) 生故障時(shí)運(yùn)行。發(fā)明內(nèi)容可以通過一種在支持操作系統(tǒng)中運(yùn)行的支持模塊來滿足上述需 要,其中支持模塊識(shí)別和修復(fù)與主機(jī)操作系統(tǒng)關(guān)聯(lián)的缺陷。一種具有能夠執(zhí)行多個(gè)虛擬機(jī)的處理器并且運(yùn)行主機(jī)虛擬機(jī)中的主機(jī)操作系統(tǒng)的計(jì)算機(jī),包括運(yùn)行于支持虛擬機(jī)中的支持操作系統(tǒng),該支持虛擬機(jī)不同于主機(jī)虛擬機(jī)。運(yùn)行于支持操作系統(tǒng)中的支 持模塊識(shí)別和修復(fù)與主機(jī)操作系統(tǒng)關(guān)聯(lián)的缺陷。運(yùn)行于支持操作系 統(tǒng)中的監(jiān)視模塊識(shí)別與主機(jī)操作系統(tǒng)關(guān)聯(lián)的缺陷,并響應(yīng)于缺陷的 識(shí)別而通知支持模塊。為支持模塊提供用戶接口 ??梢酝ㄟ^運(yùn)行于支持操作系統(tǒng)中的Web服務(wù)器模塊或者與計(jì)算機(jī)的輸入設(shè)備關(guān)聯(lián)的支持按鈕來支持該 用戶接口 。可以通過計(jì)算機(jī)的輸入/輸出虛擬化硬件來支持用戶接口 。在主機(jī)操作系統(tǒng)中執(zhí)行的主機(jī)代理模塊可以與支持模塊交互, 以修復(fù)與主機(jī)操作系統(tǒng)關(guān)聯(lián)的缺陷。
圖1是示出了根據(jù)一個(gè)實(shí)施例的運(yùn)行故障防護(hù)計(jì)算機(jī)支持助理 的計(jì)算機(jī)的高級(jí)框圖。圖2示出了根據(jù)一個(gè)實(shí)施例由處理器和軟件提供的計(jì)算環(huán)境的 邏輯視圖。圖3是示出了根據(jù)一個(gè)實(shí)施例的設(shè)置模塊、監(jiān)視模塊和支持模 塊的操作的流程圖。附圖僅僅出于說明的目的而描繪了實(shí)施例。從下面的描述中, 本領(lǐng)域技術(shù)人員將容易地認(rèn)識(shí)到,在并不偏離在此描述的原理的情 況下,可以使用此處示出的結(jié)構(gòu)和方法的可替代實(shí)施例。
具體實(shí)施方式
圖1是示出了根據(jù)一個(gè)實(shí)施例的運(yùn)行故障防護(hù)計(jì)算機(jī)支持助理 的計(jì)算機(jī)100的高級(jí)框圖。示出的是耦合至總線104的至少一個(gè)處 理器102。處理器102包括虛擬化技術(shù),該虛擬化技術(shù)允許處理器 102支持一個(gè)或多個(gè)虛擬機(jī)。處理器虛擬化技術(shù)的例子是用于x86 處理器架構(gòu)的AMD虛擬化(AMD-V )和英特爾虛擬化沖支術(shù)(IVT)。同樣耦合至總線104的還有存儲(chǔ)器106、存儲(chǔ)設(shè)備108、鍵盤110、 圖形適配器112、指示設(shè)備114以及網(wǎng)絡(luò)適配器116。顯示器118耦合至圖形適配器112。鍵盤110可以包括特別提供的、供用戶按壓的 支持按鈕128,以啟動(dòng)計(jì)算機(jī)支持軟件。還可以使用開關(guān),并且該按 鈕或者開關(guān)還可以位于計(jì)算機(jī)100上的其他位置。存儲(chǔ)設(shè)備108是 諸如硬盤驅(qū)動(dòng)器、CD或DVD驅(qū)動(dòng)器或者閃存設(shè)備的設(shè)備,并且其 保持了包含可執(zhí)行代碼的文件和/或在計(jì)算機(jī)100的操作期間利用的 數(shù)據(jù)。主機(jī)操作系統(tǒng)存儲(chǔ)的映像(image) 120、主機(jī)代理安裝映像 122以及支持操作系統(tǒng)存儲(chǔ)的映像124是下面描述的三種文件。在一 個(gè)實(shí)施例中,存儲(chǔ)器106是隨機(jī)存取存儲(chǔ)器(RAM),并且保持從 存儲(chǔ)設(shè)備108加載的、在處理期間產(chǎn)生的、和/或來自其他源的指令 和數(shù)據(jù)。在一個(gè)實(shí)施例中,輸入/輸出(I/O)虛擬化硬件126還耦合至總 線104。該硬件支持諸如圖形適配器112、鍵盤110和指示設(shè)備114 的輸入和輸出設(shè)備的虛擬化。利用1/0虛擬化,可以如下所述在運(yùn)行 于處理器102上的操作系統(tǒng)和多個(gè)虛擬機(jī)之間協(xié)調(diào)對(duì)這些設(shè)備的訪問。與圖1所示的計(jì)算機(jī)相比,扮演不同角色的計(jì)算機(jī)可以具有不 同元件和/或附加元件。例如,充當(dāng)服務(wù)器的計(jì)算機(jī)100可以比充當(dāng) 客戶機(jī)的計(jì)算機(jī)具有更大的處理能力和更大的存儲(chǔ)設(shè)備。同樣,充 當(dāng)服務(wù)器的計(jì)算機(jī)100也可以缺少對(duì)其進(jìn)行操作并非必定需要的設(shè) 備,諸如顯示器118和/或鍵盤110。計(jì)算機(jī)100執(zhí)行一個(gè)或多個(gè)操作系統(tǒng),諸如MICROSOFT WINDOWS或者LINUX的變型。通常,操作系統(tǒng)執(zhí)行一個(gè)或多個(gè)應(yīng) 用程序。由計(jì)算機(jī)執(zhí)行的應(yīng)用程序以及操作系統(tǒng)由 一個(gè)或多個(gè)進(jìn)程 構(gòu)成。這種描述利用術(shù)語"模塊"來指代用于提供特定功能性的計(jì) 算機(jī)程序邏輯。模塊可以以硬件、固件和/或軟件來實(shí)現(xiàn)。模塊被典 型地存儲(chǔ)在存儲(chǔ)設(shè)備108上,加載至存儲(chǔ)器106中并且由處理器102 執(zhí)行。模塊可以包括一個(gè)或多個(gè)進(jìn)程,和/或僅由進(jìn)程的一部分來提 供。主機(jī)操作系統(tǒng)(主機(jī)OS)存儲(chǔ)的映像120、主機(jī)代理安裝映像122以及支持操作系統(tǒng)(支持OS)存儲(chǔ)的映像124是存儲(chǔ)在存儲(chǔ)設(shè) 備108上的三個(gè)模塊,這三個(gè)模塊由處理器102加載并執(zhí)行。支持 主機(jī)OS內(nèi)的用戶工作的軟件分布在支持OS和主機(jī)代理(運(yùn)行在主 機(jī)OS中)之間。通過在支持OS中設(shè)置特定的支持軟件,即使主機(jī) OS嚴(yán)重?fù)p壞或者不穩(wěn)定,支持助理仍可以繼續(xù)起作用。圖2示出了根據(jù)一個(gè)實(shí)施例由處理器102和軟件提供的計(jì)算環(huán) 境200的邏輯視圖。環(huán)境200包括管理器(hypervisor) 202,其監(jiān)督 虛擬機(jī)210A和210B的操作。其他實(shí)施例可以具有不同的實(shí)體和/ 或附加的實(shí)體。此外,還可以以與上述方式不同的方式在實(shí)體之間 分配這些功能性。管理器202是硬件輔助的虛擬機(jī)仿真器。管理器202運(yùn)行在比 虛擬機(jī)210更高的特權(quán)級(jí)上,并且通常能夠創(chuàng)建虛擬機(jī)、調(diào)度其執(zhí) 行以及將執(zhí)行從一個(gè)虛擬機(jī)切換到另一虛擬機(jī)或者切換到管理器本 身。管理器202由上述的處理器102中的虛擬化技術(shù)支持。管理器 還能夠配置1/0虛擬化硬件126,以按期望的那樣在虛擬機(jī)210之間 切換I/0設(shè)備的控制。在一個(gè)實(shí)施例中,管理器202在該情況下可以 運(yùn)行對(duì)虛擬機(jī)210的操作進(jìn)行初始化的設(shè)置模塊204,以提供故障防 護(hù)支持助理。在一個(gè)實(shí)施例中,設(shè)置模塊204啟動(dòng)虛擬機(jī)210A和210B、主 機(jī)OS 214和支持OS 216。設(shè)置模塊204在啟動(dòng)操作系統(tǒng)214和216 之前對(duì)計(jì)算機(jī)100執(zhí)行初始檢查,以確保計(jì)算機(jī)處于正確的狀態(tài)。 主機(jī)OS存儲(chǔ)的映像120和支持OS存儲(chǔ)的映像124可以存儲(chǔ)在存儲(chǔ) 設(shè)備108的各個(gè)位置,并且設(shè)置模塊204可以與計(jì)算機(jī)的基本輸入/ 輸出系統(tǒng)(BIOS)協(xié)作來單獨(dú)加載這些操作系統(tǒng)。在另一個(gè)實(shí)施例 中,計(jì)算機(jī)100可以支持存儲(chǔ)設(shè)備虛擬化以便加載主機(jī)OS和支持 OS。設(shè)置模塊204還可以設(shè)置主機(jī)OS和支持OS的執(zhí)行的調(diào)度。虛擬機(jī)210是用于在管理器202下運(yùn)行軟件的自主式 (self-contained)環(huán)境。作為硬件輔助的模擬環(huán)境,虛擬機(jī)210為運(yùn) 行于其上的軟件提供了完整的地址空間和完整的處理器寄存器集合。該軟件包括由處理器102執(zhí)行的機(jī)器指令。當(dāng)管理器202掛起 在虛擬機(jī)210中的執(zhí)行時(shí),管理器202保持該虛擬機(jī)的狀態(tài),包括 該虛擬機(jī)的存儲(chǔ)器和寄存器。主機(jī)OS 214可以運(yùn)行在主機(jī)虛擬機(jī)210A上。主機(jī)OS 214可以 是諸如WINDOWS VISTA的操作系統(tǒng)。主機(jī)OS 214是計(jì)算機(jī)100 上的主要操作系統(tǒng),并通常通過運(yùn)行進(jìn)程230來執(zhí)行有用的任務(wù)。 主機(jī)OS 214可以通過顯示器118、鍵盤110以及指示設(shè)備114與用 戶進(jìn)4亍交互。主機(jī)OS 214包含描述主機(jī)OS在給定時(shí)間的運(yùn)行狀態(tài)的狀態(tài)信 息220。狀態(tài)信息220包括操作系統(tǒng)內(nèi)核、其他操作系統(tǒng)代碼和數(shù)據(jù) (諸如設(shè)備驅(qū)動(dòng)器和網(wǎng)絡(luò)協(xié)議棧)以及處理器寄存器。狀態(tài)信息220 的部分位于存儲(chǔ)器106和/或存儲(chǔ)設(shè)備108之中。管理器202可以讀 取和修改才喿作系統(tǒng)狀態(tài)信息220。此外,其他虛擬才幾210可以通過與 管理器202通信來讀取和修改該信息。例如,另一虛擬機(jī)210B中的 軟件可以向管理器202發(fā)送命令以從主機(jī)OS 214讀取特定的數(shù)據(jù), 管理器可以讀取數(shù)據(jù)并將數(shù)據(jù)發(fā)送到其他虛擬機(jī)中的請(qǐng)求軟件。通 過讀取和修改主機(jī)OS狀態(tài)信息220,管理器202或另 一虛擬機(jī)210B 可以監(jiān)^L主機(jī)OS 214并向主機(jī)OS 214提供支持功能性。主機(jī)OS 214包含有運(yùn)行進(jìn)程230,該運(yùn)行進(jìn)程230還具有類似 于上述的OS狀態(tài)信息220的狀態(tài)信息,該狀態(tài)信息可以出于支持目 的而被讀取和修改。主機(jī)OS 214還包含主機(jī)代理222以及Web瀏 覽器234,它們是包括一個(gè)或多個(gè)運(yùn)行進(jìn)程的應(yīng)用。將在下面進(jìn)一步 描述主一幾代理222。支持OS還可以運(yùn)行于支持虛擬機(jī)210B上。支持OS 216可以 是諸如WINDOWS CE或者LINUX的操作系統(tǒng)。支持OS 216被設(shè) 計(jì)成為運(yùn)行進(jìn)程230和主機(jī)OS 214的優(yōu)化操作提供支持功能性。支 持OS 216通過諸如Web服務(wù)器224、監(jiān)視模塊226和支持模塊228 的模塊來執(zhí)行與支持相關(guān)的功能。這些模塊可以是運(yùn)行在支持OS 216內(nèi)或者使用支持OS 216的服務(wù)的進(jìn)程、應(yīng)用或者其他代碼。由于支持OS 216在與主機(jī)OS 214分離的虛擬機(jī)210B內(nèi)操作,因此即 使當(dāng)主機(jī)OS嚴(yán)重?fù)p壞或者不穩(wěn)定時(shí),支持OS 216仍然能夠?yàn)橹鳈C(jī) OS提供支持。
在一個(gè)實(shí)施例中,監(jiān)視模塊226監(jiān)視主機(jī)OS 214的狀態(tài)。監(jiān)視 模塊226還可以通過周期性地檢查OS狀態(tài)信息220或者運(yùn)行進(jìn)程 230的狀態(tài)信息來進(jìn)行監(jiān)視。監(jiān)視模塊226可以在主機(jī)OS 214上運(yùn) 行各種診斷測(cè)試。如果監(jiān)視模塊226檢測(cè)到需要支持,諸如系統(tǒng)不 穩(wěn)定或者主機(jī)OS214內(nèi)的其他缺陷,則監(jiān)視模塊可以調(diào)用支持模塊 228。可以通過如上所述的管理器202來實(shí)現(xiàn)監(jiān)視模塊226和主機(jī) OS 214之間的通信。
支持模塊228可以通過修復(fù)主機(jī)OS 214中的缺陷來提供支持。 支持模塊228例如通過對(duì)OS狀態(tài)信息220或者運(yùn)行進(jìn)程230的狀態(tài) 進(jìn)行分析和修改來提供支持。在一個(gè)實(shí)施例中,在支持模塊228修 改狀態(tài)信息220或者運(yùn)行進(jìn)程230的狀態(tài)的同時(shí),主4幾虛擬才幾210A 和主機(jī)OS214掛起。另一個(gè)實(shí)施例中,當(dāng)支持才莫塊進(jìn)行修改時(shí)主枳』 虛擬機(jī)210A和主機(jī)OS 214繼續(xù)運(yùn)行。在這種情況下,支持模塊228 可以基于在主機(jī)OS中觀察的結(jié)果隨著時(shí)間對(duì)主機(jī)OS 214進(jìn)行改變。 在另一實(shí)施例中,支持模塊228修改存儲(chǔ)設(shè)備108上的主機(jī)OS存儲(chǔ) 的映像120。然后可以從進(jìn)行了期望改變的映像重新加載主機(jī)OS 214。
支持模塊228可以重新安裝不起作用的應(yīng)用或者甚至主機(jī)OS 214自身。例如,如果需要重新安裝主機(jī)代理222,則支持模塊可以 觸發(fā)主機(jī)OS 214,以便實(shí)際裝配包含有主機(jī)代理安裝映像122的安 裝介質(zhì)(諸如CD-ROM驅(qū)動(dòng)器)。主機(jī)OS 214然后可以從虛擬介 質(zhì)重新安裝主機(jī)代理222。在某些情況下,支持模塊228將需要重新 安裝主才幾OS 214本身。例如可以通過將標(biāo)準(zhǔn)主才幾OS映^象復(fù)制到當(dāng) 前的主機(jī)OS存儲(chǔ)的映像120上來進(jìn)行重新安裝。標(biāo)準(zhǔn)主機(jī)OS映像 可以存儲(chǔ)在存儲(chǔ)設(shè)備108上,或者可以經(jīng)過網(wǎng)絡(luò)適配器116從遠(yuǎn)程 位置得到。監(jiān)視模塊226和支持模塊228可以通過網(wǎng)絡(luò)適配器116訪問諸 如因特網(wǎng)的外部網(wǎng)絡(luò)。這些模塊可以通過網(wǎng)絡(luò)發(fā)送數(shù)據(jù)并從網(wǎng)絡(luò)接 收命令。例如,遠(yuǎn)程服務(wù)臺(tái)(helpdesk)可以通過在互聯(lián)網(wǎng)上與監(jiān)一見 模塊226和支持模塊228進(jìn)行通信為計(jì)算機(jī)100提供支持。在一個(gè) 實(shí)施例中,在計(jì)算機(jī)100中可以存在用以虛擬化網(wǎng)絡(luò)適配器116并 使得主機(jī)OS 214和支持OS 216兩者都能夠訪問因特網(wǎng)的硬件或者 軟件。
在一個(gè)實(shí)施例中,支持OS216通過用戶接口才莫塊232與用戶進(jìn) 行交互。該模塊經(jīng)由圖形適配器112、顯示器118、鍵盤110和指示 設(shè)備114為用戶呈現(xiàn)文本或者圖形界面。如上所述,1/0虛擬化硬件 126可以在主機(jī)OS 214與支持OS 216之間協(xié)調(diào)對(duì)這些I/O設(shè)備的訪 問。在一個(gè)實(shí)施例中,支持OS216具有對(duì)于I/0設(shè)備的主要控制, 在需要時(shí)用戶接口 232授權(quán)主機(jī)OS214對(duì)I/0設(shè)備的訪問。例如, 用戶接口模塊232通常可以授權(quán)對(duì)主機(jī)OS 214的I/O訪問,但是如 果主機(jī)代理222故障和不能從主機(jī)OS內(nèi)部提供用戶接口 ,則用戶接 口模塊232能夠?qū)⒃L問切換到支持OS 216。用戶接口模塊232可以 將來自用戶的命令發(fā)送給監(jiān)視模塊226和支持模塊228。用戶接口模 塊232還可以從監(jiān)視模塊226和支持模塊228接收將要呈現(xiàn)給用戶 的數(shù)據(jù)。
可以由Web服務(wù)器224來提供可作為替換的用戶接口。在該實(shí) 施例中,用戶打開運(yùn)行在主機(jī)OS 214中的Web瀏覽器234并使用 特定的統(tǒng)一資源定位器(URL)連接到Web服務(wù)器224。 Web瀏覽 器234和Web服務(wù)器224可以通過如上所述的管理器202進(jìn)行通信。 與用戶接口模塊232類似,Web服務(wù)器224可以將來自用戶的命令 提供給支持模塊228,并可以將來自支持模塊228的數(shù)據(jù)呈現(xiàn)給用 戶。
支持模塊228可以基于若干可能的觸發(fā)器而啟動(dòng)。如果監(jiān)視模 塊226如上所述檢測(cè)到需要支持,則它可以啟動(dòng)支持模塊228。還可 以經(jīng)過用戶接口 232或者Web服務(wù)器224基于用戶命令來啟動(dòng)支持模塊228。在一個(gè)實(shí)施例中,用戶可以在鍵盤110上按壓特定鍵組合 或者按壓特別提供的支持按鈕來使得支持模塊228運(yùn)行。如上所述, 可以提供I/0虛擬化硬件126,以使得支持OS 216能夠接收鍵盤輸 入。在一個(gè)實(shí)施例中,當(dāng)經(jīng)過網(wǎng)絡(luò)適配器116遠(yuǎn)程地接收到命令時(shí), 支持模塊228運(yùn)行。
主機(jī)代理222是運(yùn)行在主機(jī)OS 214中的應(yīng)用,主機(jī)代理222可 以從主機(jī)OS 214內(nèi)部執(zhí)行監(jiān)視才莫塊226、支持才莫塊228和用戶接口 232的某些支持相關(guān)功能。主機(jī)代理222還可以與支持OS中的這些 模塊通信,以使得一些功能可以在主機(jī)代理222中執(zhí)行,而其他功 能在支持OS 216中執(zhí)行。例如,主機(jī)代理222可以執(zhí)行監(jiān)視、用戶 接口和某些支持功能,并與執(zhí)行剩余支持功能的支持OS 216通信。 由于主機(jī)代理222運(yùn)行在主機(jī)OS 214中,所以主機(jī)代理222可以方 便地收集關(guān)于主機(jī)OS的動(dòng)態(tài)信息,并在主機(jī)OS中進(jìn)行改變,諸如 啟動(dòng)新的進(jìn)程或者改變系統(tǒng)設(shè)置。如果直接由支持OS 216來執(zhí)行, 則這些改變可能更加復(fù)雜。
圖3是示出了根據(jù)一個(gè)實(shí)施例的設(shè)置模塊204、監(jiān)視模塊226和 支持模塊228的操作的流程圖。設(shè)置模塊204運(yùn)行302虛擬機(jī)210 內(nèi)的主機(jī)OS214和支持OS 216。 一旦操作系統(tǒng)正在運(yùn)行,諸如按鍵: 按壓的用戶輸入或者監(jiān)視模塊226觸發(fā)304對(duì)于支持的需要。響應(yīng) 于該需要,支持模塊228對(duì)包括OS狀態(tài)信息220的主機(jī)OS 214進(jìn) 行分析以及可能的修改306。
包括上述描述是為了示出優(yōu)選實(shí)施例的操作,并非意在限制本 發(fā)明的范圍。本發(fā)明的范圍僅僅由下面的權(quán)利要求書來限制。從上 述討論中,許多變型對(duì)于相關(guān)領(lǐng)域的技術(shù)人員來講都是顯而易見的, 這些變型仍然包括在本發(fā)明的精神和范圍內(nèi)。
權(quán)利要求
1.一種具有能夠執(zhí)行多個(gè)虛擬機(jī)的處理器的計(jì)算機(jī),所述計(jì)算機(jī)適合于執(zhí)行主機(jī)虛擬機(jī)內(nèi)的主機(jī)操作系統(tǒng),所述計(jì)算機(jī)包括支持操作系統(tǒng)模塊,用于在支持虛擬機(jī)中執(zhí)行,所述支持虛擬機(jī)不同于所述主機(jī)虛擬機(jī);以及支持模塊,用于在所述支持操作系統(tǒng)模塊的控制下在所述支持虛擬機(jī)中執(zhí)行,以便識(shí)別和修復(fù)所述主機(jī)虛擬機(jī)中與所述主機(jī)操作系統(tǒng)關(guān)聯(lián)的缺陷。
2. 根據(jù)權(quán)利要求1所述的計(jì)算機(jī),進(jìn)一步包括監(jiān)視模塊,用于在所述支持操作系統(tǒng)模塊的控制下在所述支持虛 擬機(jī)中執(zhí)行,以便監(jiān)視所述主機(jī)操作系統(tǒng)以識(shí)別與所述主機(jī)操作系 統(tǒng)關(guān)聯(lián)的缺陷,以及以便響應(yīng)于所述缺陷的識(shí)別而通知所述支持模 塊。
3. 根據(jù)權(quán)利要求1所述的計(jì)算機(jī),進(jìn)一步包括Web服務(wù)器模塊,用于在所述支持操作系統(tǒng)模塊的控制下在所 述支持虛擬機(jī)中執(zhí)行,以便經(jīng)由在所述主機(jī)操作系統(tǒng)模塊的控制下 在所述主機(jī)虛擬機(jī)中執(zhí)行的Web瀏覽器為所述支持模塊提供用戶接 o 。
4. 根據(jù)權(quán)利要求1所述的計(jì)算機(jī),進(jìn)一步包括輸入/輸出虛擬化硬件,適用于虛擬化所述計(jì)算機(jī)的輸入和/或輸 出設(shè)備,以在所述主機(jī)虛擬機(jī)與所述支持虛擬機(jī)之間協(xié)調(diào)對(duì)輸入和/ 或輸出數(shù)據(jù)的訪問。
5. 根據(jù)權(quán)利要求1所述的計(jì)算機(jī),進(jìn)一步包括支持按鈕,與所述計(jì)算機(jī)的輸入設(shè)備關(guān)聯(lián),其中所述支持按鈕的 激活對(duì)所述支持模塊進(jìn)行激活。
6. 根據(jù)權(quán)利要求1所述的計(jì)算機(jī),進(jìn)一步包括主機(jī)代理模塊,用于在所述主機(jī)操作系統(tǒng)的控制下在所述主機(jī)虛 擬機(jī)中執(zhí)行,并且適合于與所述支持模塊交互以修復(fù)與所述主機(jī)操作系統(tǒng)關(guān)聯(lián)的缺陷。
7. 根據(jù)權(quán)利要求6所述的計(jì)算機(jī),其中修復(fù)缺陷進(jìn)一步包括 響應(yīng)于所述主機(jī)代理模塊的故障,在所述主機(jī)操作系統(tǒng)中重新安裝所述主機(jī)代理模塊。
8. 根據(jù)權(quán)利要求1所述的計(jì)算機(jī),其中所述支持操作系統(tǒng)模塊 適用于控制所述主機(jī)操作系統(tǒng)對(duì)所述計(jì)算機(jī)的輸入和/或輸出設(shè)備的 訪問。
9. 根據(jù)權(quán)利要求1所述的計(jì)算機(jī),其中修復(fù)缺陷進(jìn)一步包括 修改在所述虛擬機(jī)上運(yùn)行的主機(jī)操作系統(tǒng)的狀態(tài)信息。
10. —種用于支持計(jì)算機(jī)上主機(jī)虛擬機(jī)中的主機(jī)操作系統(tǒng)的計(jì) 算機(jī)實(shí)現(xiàn)的方法,所述計(jì)算機(jī)具有能夠執(zhí)行多個(gè)虛擬機(jī)的處理器, 所述方法包括在支持虛擬機(jī)中執(zhí)行支持操作系統(tǒng),所述支持虛擬機(jī)不同于所述 主才幾虛擬才幾;以及識(shí)別和修復(fù)所述主機(jī)虛擬機(jī)中與所述主機(jī)操作系統(tǒng)關(guān)聯(lián)的缺陷, 所述識(shí)別和修復(fù)至少部分地從所述支持虛擬機(jī)中的所述支持操作系 統(tǒng)執(zhí)行。
11. 根據(jù)權(quán)利要求IO所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,進(jìn)一步包括 監(jiān)視所述主機(jī)操作系統(tǒng),以識(shí)別與所述主機(jī)操作系統(tǒng)關(guān)聯(lián)的缺陷,所述監(jiān)視至少部分地從所述支持虛擬機(jī)中的所述支持操作系統(tǒng) 執(zhí)行。
12. 根據(jù)權(quán)利要求10所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,進(jìn)一步包括 提供基于Web的用戶接口,以控制對(duì)與所述主機(jī)操作系統(tǒng)關(guān)聯(lián)的缺陷的識(shí)別和修復(fù)。
13. 根據(jù)權(quán)利要求10所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,進(jìn)一步包括 虛擬化所述計(jì)算機(jī)的輸入和/或輸出設(shè)備,以在所述主機(jī)虛擬機(jī)與支持虛擬機(jī)之間協(xié)調(diào)對(duì)輸入和/或輸出數(shù)據(jù)的訪問。
14. 根據(jù)權(quán)利要求10所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其中當(dāng)按壓與 所述計(jì)算機(jī)的輸入設(shè)備關(guān)聯(lián)的支持按鈕時(shí),激活對(duì)與所述主機(jī)操作系統(tǒng)關(guān)聯(lián)的缺陷的識(shí)別和修復(fù)。
15. 根據(jù)權(quán)利要求10所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其中主機(jī)代理 在所述主機(jī)操作系統(tǒng)中執(zhí)行,并且其中識(shí)別和修復(fù)與所述主機(jī)操作 系統(tǒng)關(guān)聯(lián)的缺陷進(jìn)一步包括從所述支持操作系統(tǒng)與所述主機(jī)代理交互。
16. —種具有計(jì)算機(jī)可讀介質(zhì)的計(jì)算機(jī)程序產(chǎn)品,所述計(jì)算機(jī)可 讀介質(zhì)具有記錄于其上的用于為主機(jī)虛擬機(jī)中的主機(jī)操作系統(tǒng)提供 支持的計(jì)算機(jī)程序指令,所述計(jì)算機(jī)程序產(chǎn)品包括支持操作系統(tǒng)模塊,用于在支持虛擬機(jī)中執(zhí)行,所述支持虛擬機(jī) 不同于所述主才幾虛擬才幾;和支持模塊,用于在所述支持操作系統(tǒng)模塊的控制下在所述支持虛 擬機(jī)中執(zhí)行,以便識(shí)別和修復(fù)所述主機(jī)虛擬機(jī)中與所述主機(jī)操作系 統(tǒng)關(guān)聯(lián)的缺陷。
17. 根據(jù)權(quán)利要求16所述的計(jì)算機(jī)程序產(chǎn)品,進(jìn)一步包括 監(jiān)視模塊,用于在所述支持操作系統(tǒng)模塊的控制下在所述支持虛擬機(jī)中執(zhí)行,以便監(jiān)視所述主機(jī)操作系統(tǒng)以識(shí)別與所述主機(jī)操作系 統(tǒng)關(guān)聯(lián)的缺陷,以及以便響應(yīng)于所述缺陷的識(shí)別而通知所述支持模 塊。
18. 根據(jù)權(quán)利要求16所述的計(jì)算機(jī)程序產(chǎn)品,進(jìn)一步包括 Web服務(wù)器模塊,用于在所述支持操作系統(tǒng)模塊的控制下在所述支持虛擬機(jī)中執(zhí)行,以便經(jīng)由在所述主機(jī)操作系統(tǒng)模塊的控制下 在所述主機(jī)虛擬機(jī)中執(zhí)行的Web瀏覽器為所述支持模塊提供用戶接 cr 。
19. 根據(jù)權(quán)利要求16所述的計(jì)算機(jī)程序產(chǎn)品,進(jìn)一步包括 主機(jī)代理模塊,用于在所述主機(jī)操作系統(tǒng)的控制下在所述主機(jī)虛擬機(jī)中執(zhí)行,并且適合于與所述支持模塊交互以修復(fù)與所述主機(jī)操 作系統(tǒng)關(guān)聯(lián)的缺陷。
全文摘要
一種運(yùn)行主機(jī)虛擬機(jī)中的主機(jī)操作系統(tǒng)的計(jì)算機(jī),包括運(yùn)行于支持虛擬機(jī)中的支持操作系統(tǒng)。運(yùn)行于支持操作系統(tǒng)中的支持模塊識(shí)別和修復(fù)與主機(jī)操作系統(tǒng)關(guān)聯(lián)的缺陷。運(yùn)行于支持操作系統(tǒng)中的監(jiān)視模塊識(shí)別與主機(jī)操作系統(tǒng)關(guān)聯(lián)的缺陷,并響應(yīng)于缺陷的識(shí)別而通知支持模塊。為支持模塊提供用戶接口??梢酝ㄟ^Web服務(wù)器或者與計(jì)算機(jī)的輸入設(shè)備關(guān)聯(lián)的支持按鈕來支持用戶接口。可以通過計(jì)算機(jī)的輸入/輸出虛擬化硬件來支持用戶接口。在主機(jī)操作系統(tǒng)中執(zhí)行的主機(jī)代理模塊可以與支持模塊交互,以修復(fù)與主機(jī)操作系統(tǒng)關(guān)聯(lián)的缺陷。
文檔編號(hào)G06F11/00GK101266563SQ200810086039
公開日2008年9月17日 申請(qǐng)日期2008年3月14日 優(yōu)先權(quán)日2007年3月16日
發(fā)明者P·維爾喬恩 申請(qǐng)人:賽門鐵克公司