用於作業系統部署的高效方法
2023-04-22 17:58:16 1
專利名稱:用於作業系統部署的高效方法
用於作業系統部署的高效方法背景一般而言,作業系統是全都一起工作以便為計算設備提供操作環境的各個文件的 大型集合。構成作業系統的各個文件通常在計算設備中的複雜的目錄和文件夾安排中維 護。另外,作業系統或作業系統的一部分到遠程節點或計算設備的部署和分發可能由於每 一個遠程計算設備處的作業系統的大小和複雜性而成為難題。概述本發明的各實施例涉及用於高效地部署作業系統的方法和計算機存儲介質。將至 少包含作業系統指令的混合虛擬硬碟驅動器文件分發給計算設備。在接收到虛擬硬碟驅 動器文件後,計算設備得以增強以允許該虛擬硬碟驅動器文件成為引導選項和可掛載驅動 器。計算設備然後可將該虛擬硬碟驅動器文件用作以初始引導序列開頭的驅動器。提供本概述是為了以簡化的形式介紹將在以下詳細描述中進一步描述的一些概 念。本概述不旨在標識所要求保護的主題的關鍵特徵或必要特徵,也不旨在用於幫助確定 所要求保護的主題的範圍。附圖簡述以下參考附圖詳細描述各實施例,附圖中
圖1是適用於實現本發明的各實施方式的示例性計算環境的框圖;圖2是根據本發明的一實施例的用於在計算設備上部署作業系統的示例性方法 的流程圖;圖3是根據本發明的一實施例的用於高效地部署作業系統的方法的一實施例的 流程圖;圖4是根據本發明的一實施例的用於高效地部署作業系統的另一示例性方法的 流程圖;以及圖5是示出被配置成用於實現本發明的各實施例的示例性計算系統體系結構的 框圖。詳細描述此處用細節來描述本發明的各實施例的主題以滿足法定要求。然而,描述本身並 非旨在限制本專利的範圍。相反,發明人設想所要求保護的主題還可結合其他當前或未來 技術按照其他方式來具體化,以包括不同的步驟或類似於本文中所描述的步驟的步驟組 合。此外,儘管術語「步驟」和/或「框」可在此處用於指示所採用的方法的不同元素,但除 非而且僅當明確描述了各個步驟的順序時,該術語不應被解釋為意味著此處公開的各個步 驟之中或之間的任何特定順序。本發明的各實施例涉及用於高效地部署作業系統的方法和計算機存儲介質。將包 含作業系統指令的混合虛擬硬碟驅動器文件分發給計算設備。在接收到虛擬硬碟驅動器文 件後,計算設備得以增強以允許該虛擬硬碟驅動器文件成為引導選項和可掛載驅動器。該 混合虛擬硬碟驅動器文件可包含附加數據和信息,這些附加數據和信息將允許展示該虛擬 硬碟驅動器文件作為引導選項並掛載該虛擬硬碟驅動器文件作為計算設備中的驅動器。計算設備然後可將虛擬硬碟驅動器文件用作以初始引導序列開頭的物理驅動器。因此,在一方面,本發明提供其上包含計算機可執行指令的一個或多個計算機存 儲介質,該計算機可執行指令在被執行時執行一種用於在計算設備上部署作業系統的方 法。該方法包括接收與一個或多個作業系統指令相關聯的虛擬硬碟驅動器文件。該虛擬硬 盤驅動器文件還與引導管理器增強器和轉換器相關聯。該方法還包括利用引導管理器增強 器來增強引導管理器,確定虛擬硬碟驅動器文件位置,存儲該虛擬硬碟驅動器文件位置,實 現轉換器以便對讀/寫請求應用該虛擬硬碟驅動器文件位置,以及從虛擬硬碟驅動器文件 開始初始引導序列。在另一方面,本發明提供一種用於高效地部署作業系統的方法。該方法包括混合 虛擬硬碟驅動器文件、引導管理器增強器、和轉換器;以及將該虛擬硬碟驅動器文件、引導 管理器增強器、和轉換器傳遞給計算設備,其中該虛擬硬碟驅動器文件能夠執行該計算設 備上的初始引導序列。本發明的第三方面提供其上包含計算機可執行指令的計算機存儲介質,該計算機 可執行指令在被執行時執行一種用於將作業系統部署到計算設備的方法。該方法包括接收 虛擬硬碟驅動器文件,其中該虛擬硬碟驅動器文件包括作業系統指令。虛擬硬碟驅動器文 件可作為SCSI盤來展示和掛載並且與引導管理器增強器和轉換器相關聯。該方法還包括 利用引導管理器增強器來增強引導管理器,其中該引導管理器增強器提供引導入口以便將 虛擬硬碟驅動器文件作為引導選項來展示給計算設備;確定虛擬硬碟驅動器位置;存儲虛 擬硬碟驅動器位置以供轉換器利用;實現針對讀/寫請求的轉換器,其中該轉換器基於虛 擬硬碟驅動器文件位置在邏輯偏移量和物理偏移量之間轉換讀/寫請求;實現SCSI驅動 器,其中虛擬硬碟驅動器文件可作為SCSI盤來掛載;以及從虛擬硬碟驅動器文件開始計算 設備的初始引導序列。在簡要描述了本發明的各實施例的概覽後,以下描述適於實現本發明的各實施例 的示例性操作環境。大體上參考附圖,並且首先具體參考圖1,示出了適用於實現本發明的各實施例的 示例性操作環境,並將其概括指定為計算設備100。計算設備100隻是合適的計算環境的一 個示例,並且不旨在對本發明的使用範圍或功能提出任何限制。也不應將計算環境100解 釋為對所示出的任一模塊/組件或其組合有任何依賴性或要求。各實施例可以在計算機代碼或機器可使用指令的一般上下文中描述,機器可使用 指令包括由計算機或諸如個人數據助理或其他手持式設備等其他機器執行的諸如程序模 塊等的計算機可執行指令。一般而言,包括例程、程序、對象、模塊、數據結構等的程序模塊 指的是執行特定任務或實現特定抽象數據類型的代碼。各實施例可以在各種系統配置中實 施,這些系統配置包括手持式設備、消費電子產品、通用計算機、專用計算設備等等。各實施 例也可以在其中任務由通過通信網絡連結的遠程處理設備執行的分布式計算環境中實施。繼續參考圖1,計算設備100包括直接或間接耦合以下設備的總線110 存儲器 112、一個或多個處理器114、一個或多個呈現模塊116、輸入/輸出(I/O)埠 118、I/O模 塊120、和說明性電源122。總線110可以是一條或多條總線(諸如地址總線、數據總線、或 其組合)。儘管為了清楚起見用線條示出了圖1的各框,但是在實際上,各模塊的輪廓並不 是那樣清楚,並且比喻性地來說,線條更精確地將是灰色的和模糊的。例如,可以將諸如顯示設備等的呈現模塊認為是I/O模塊。而且,處理器具有存儲器。發明人關於此點認識到, 這是本領域的特性,並且重申,圖1的圖示只是例示可結合一個或多個實施例來使用的示 例性計算設備。諸如「工作站」、「伺服器」、「膝上型計算機」、「手持式設備」等分類之間沒有 區別,它們全部都被認為是在圖1的範圍之內的並且被稱為「計算機」或「計算設備」。計算設備100通常包括各種計算機可讀介質。作為示例而非限制,計算機可讀 介質可以包括隨機存取存儲器(RAM);只讀存儲器(ROM);電可擦除可編程只讀存儲器 (EEPROM);快閃記憶體或其它存儲器技術;CDR0M、數字多功能盤(DVD)或其它光或全息介質;磁帶 盒、磁帶、磁碟存儲或其它磁存儲設備;載波或可用於對所需信息進行編碼並且可由計算設 備100訪問的任何其它介質。存儲器112包括易失性和/或非易失性存儲器形式的計算機存儲介質。存儲器可 以是可移動的、不可移動的或其組合。示例性硬體設備包括固態存儲器、硬碟驅動器、光碟 驅動器等。計算設備100包括從諸如存儲器112或I/O模塊120等各種實體讀取數據的一 個或多個處理器。呈現模塊116向用戶或其他設備呈現數據指示。示例性呈現模塊包括顯 示設備、揚聲器、列印模塊、振動模塊等等。I/O埠 118允許計算設備100在邏輯上耦合 至包括I/O模塊120的其他設備,其中某些設備可以是內置的。說明性模塊包括話筒、操縱 杆、遊戲手柄、圓盤式衛星天線、掃描儀、印表機、無線設備等等。參考圖2,示出了例示根據本發明的一實施例的用於在計算設備上部署作業系統 的示例性方法200的流程圖。最初,如框210所示,接收虛擬硬碟驅動器文件。除了接收虛 擬硬碟驅動器文件之外,還至少接收引導管理器增強器和轉換器。可將虛擬硬碟驅動器文 件、引導管理器增強器、以及轉換器可作為單個文件來接收或者它們可作為兩個或更多文 件來接收。在各實施例中,虛擬硬碟驅動器文件、引導管理器增強器、以及轉換器結合一個 或多個計算機可讀介質來接收。在框210處接收到的虛擬硬碟驅動器文件通常包括諸如圖1的計算設備100等計 算設備的作業系統指令。可以與虛擬硬碟驅動器文件包括在一起或包括在虛擬硬碟驅動器 文件中的作業系統或作業系統指令包括管理計算機系統資源的共享並提供訪問這些資源 的接口的軟體。虛擬硬碟驅動器文件還可包括以下組件中的一個或多個驅動器、作業系統 加載器、引導加載器、附加階段引導加載器、程序模塊、以及本領域的技術人員已知的用於 方便計算設備的初始引導序列的其它組件。虛擬硬碟驅動器文件是允許操縱其中所包含的 數據和信息的動態文件。該虛擬硬碟驅動器文件的動態特性允許與虛擬硬碟驅動器文件相 關聯地和/或在虛擬硬碟驅動器文件上維護持久數據。這是有利的,因為如果數據和信息 無法持久存儲,靜態格式則不允許傳統的作業系統體驗。隨後,如框220所示,增強引導管理器。引導管理器可由引導管理器增強器來增 強,其中該增強可包括在引導管理器中添加將虛擬硬碟驅動器文件作為計算設備的引導選 項展示的引導入口。引導管理器通常包括可引導指令的可用源的引導入口。增強引導管理 器以包括虛擬硬碟驅動器的引導入口允許將該虛擬硬碟驅動器作為計算設備的可引導選 項來包括。為了使得能夠將虛擬硬碟驅動器文件作為引導選項展示給計算設備,引導管理 器增強器向該計算設備提供通常由物理驅動器提供的信息。物理驅動器傳統上包括硬碟驅 動器、軟盤驅動器、磁帶驅動器、CDROM、DVD或類似的媒體驅動器。通常由物理盤提供並因 此可由引導管理器增強器提供的信息包括詳述相關聯的驅動器的規格的標題(header)和
6腳註(footer)信息。引導管理器增強器提供的標題和腳註信息補充虛擬硬碟驅動器文件 以使其變成可以展示和掛載的驅動器。引導管理器增強器對引導管理器的增強可能需要計算設備或計算設備的用戶的 額外幹預。該額外幹預可包括操縱與作業系統包含在一起的計算指令或者更改作業系統的 組件。另外,引導管理器增強器還可增強作業系統加載器和計算設備的內核以允許作為計 算設備中的驅動器展示和掛載虛擬硬碟驅動器文件。參考框230,然後確定虛擬硬碟驅動器文件的位置。一旦接收到虛擬硬碟驅動器, 就可將其與計算設備相關聯地存儲。在一示例性實施例中,一旦計算設備接收到虛擬硬碟 驅動器文件,就將其存儲在與該計算設備相關聯的硬碟上。本領域的技術人員可以理解和 明白,虛擬硬碟驅動器文件可以被存儲、保持、或位於計算機可讀介質、設備、或先前與計算 設備100相關聯地討論的組件中的任一個上。虛擬硬碟驅動器文件的位置可以按各種方式來指示。例如,虛擬硬碟驅動器文件 位置可由硬碟中存儲虛擬硬碟驅動器文件的驅動器標識符、目錄、磁軌、扇區、範圍、或分區 位置中的一個或多個來指示。作為對虛擬硬碟驅動器的位置的示例性判定,該位置可由其 中虛擬硬碟驅動器文件駐留在計算設備的物理硬碟驅動器上的分區位置來標識。如可以在框240處看到的,隨後存儲虛擬硬碟驅動器位置。虛擬硬碟驅動器的位 置可以存儲在計算設備中,例如存儲在先前參考圖1的計算設備100討論的存儲器112中。 除了本地存儲虛擬硬碟驅動器位置之外,如在框230處確定的虛擬硬碟驅動器位置還可以 存儲在網絡或其它遠程位置上。在框250,然後實現針對讀/寫請求的轉換器。框250處的轉換可轉換一個或多個 讀和寫(讀/寫)請求,這些讀/寫請求由計算設備傳遞至與這些請求相關聯地利用的存 儲器、驅動器、卷驅動器、以及盤驅動器。讀/寫請求可由例如圖1的處理器114的處理器 生成並定向到存儲器,例如圖1的存儲器112。轉換讀/寫請求的示例包括將讀/寫請求從 在框210處接收到虛擬硬碟驅動器文件的計算設備的處理器轉換到如框240所示地利用存 儲的位置的虛擬硬碟驅動器。在該示例中,處理器生成讀/寫請求,該請求被定向到與其中 已存儲虛擬硬碟驅動器的計算設備相關聯的物理硬碟。轉換器應用虛擬硬碟驅動器文件的 位置以創建所請求的物理偏移量和虛擬硬碟驅動器文件的邏輯偏移量之間轉換。邏輯偏移 量被稱為如分別在框230和240處示出的虛擬硬碟驅動器文件的所確定和所存儲的位置的 結果。在該示例中,處理器生成被定向到包含虛擬硬碟驅動器文件的物理盤的物理偏移量 的讀/寫請求。然後基於驅動器的物理偏移量和虛擬硬碟驅動器文件的邏輯偏移量來轉換 讀/寫請求。本領域的技術人員可以理解和明白,物理偏移量和邏輯偏移量之間的轉換不 限於一個轉換方向。轉換也可以在邏輯偏移量和物理偏移量之間發生。另外,轉換可以在 由計算設備及其相關聯的處理器發出的其它命令和請求之間發生。轉換器既不限於讀/寫 請求,也不限於基於虛擬硬碟驅動器文件、物理驅動器或請求的偏移位置的轉換。任何及所 有這樣的實施例及其任何組合都被構想為落在本發明的各實施例的範圍內。框250處所表示的轉換允許不僅基於虛擬硬碟驅動器文件相關聯地駐留的物理 驅動器來轉換由計算設備生成的讀/寫請求,而且轉換器還可轉換至與虛擬硬碟驅動器相 關聯的其它標識位置以及從這些標識位置轉換。例如,先前提到的邏輯偏移量可包括虛擬 硬碟驅動器文件中的塊。因為虛擬硬碟驅動器文件可能不是物理盤,所以虛擬硬碟驅動器可能無法利用先前提到的位置標識符中的全部,但轉換器可改為轉換至虛擬硬碟驅動器文 件中的塊位置。該轉換允許將作為物理偏移量生成的讀/寫請求轉換至可包括虛擬硬碟驅 動器文件中的塊位置引用的邏輯偏移量。如框260所示,隨後開始初始引導序列。計算設備可以在引導處理器並且處理器 必須搜索BIOS ROM以啟動BIOS引導程序的任何時刻執行初始引導序列。這在處理器未在 其相關聯的易失性存儲器中存儲指令時發生。通常,初始引導序列將在計算設備已經斷電 或關閉時發生。這些初始引導序列有時可被稱為冷引導。初始引導可與「熱」引導形成對 照。熱引導是其中計算設備從其中數據存儲在處理器的相關聯的存儲器中的情況開始引導 的引導序列。熱引導的示例是當計算設備用戶在可從華盛頓州雷蒙德市的微軟公司購買的 基於WINDOWS XP的作業系統中提供輸入ALT+CTRL+DELETE時。在這種情況下,計算設備已 經運行並且數據被存儲在處理器的存儲器中。WINDOWS XP作業系統環境中的初始引導或冷 引導的示例是在計算設備在開始引導序列之前已經完全斷電(通常被稱為關機)的情況。在當前正在利用第一作業系統的計算設備開始仿真第二作業系統時,所仿真的操 作系統的引導不是初始引導。在這種情況下,計算設備在引導其它作業系統之前以第一操 作系統運作。因為第一作業系統在計算設備上運作,所以在引導開始時處理器在其相關聯 的存儲器中存儲了數據並因此所仿真的作業系統的引導不是初始引導。虛擬硬碟驅動器、引導管理器增強器、以及轉換器中的一個或多個可包含允許掛 載虛擬硬碟驅動器文件作為計算設備中的盤的盤驅動器。在計算設備中掛載盤允許該計算 設備訪問包含在該盤上的數據。為了掛載盤,通常存在便於掛載以及所得到的對其中所包 含的數據的訪問的盤驅動器。驅動器可允許任何公知格式下的訪問,諸如但不限於,並行 ΑΤΑ、集成驅動器電子技術、EIDE、串行ATA、SATA, SCSI、串行附連SCSI、SAS、增強小型盤接 口、光纖通道、光纖通道仲裁循環、以及火線接口。本領域的技術人員將會認識到,可以使用 各種接口來在計算設備中掛載盤。在本發明的各實施例中,接口包括SCSI驅動器,該驅動 器允許作為計算設備中的驅動器展示和掛載虛擬驅動器文件。另外,在各實施例中,接口包 含方便展示和掛載虛擬硬碟驅動器文件的SCSI小型埠驅動器。SCSI小型埠驅動器利 用所提供的擔當SCSI小型埠驅動器和作業系統之間的接口的埠驅動器。SCSI小型端 口驅動器因此由於相關聯的埠驅動器而可以是較小的驅動器。SCSI驅動器或SCSI小型 埠驅動器可用於展示和掛載虛擬硬碟驅動器文件並且所得到的所掛載的虛擬硬碟驅動 器文件可作為SCSI驅動器由計算設備識別為並使用。現在轉向圖3,示出了例示根據本發明的一實施例的用於高效地部署作業系統的 方法300的示例性實施例的流程圖。最初,如框310所示,混合虛擬硬碟驅動器文件、弓I導管 理器增強器、以及轉換器中的一個或多個。如此處所使用的,混合可包括打包或組合一個或 多個文件、指令、或編碼以使得可從所得整個混合物中單獨地標識、提取、或操縱所混合的 每一個個別元素。混合允許聚合多個元素以使得所得混合物是原始元素的聚集。在本發明 的一實施例中,所得混合物包括兩個或更多文件,其中構成該混合物的元素中的一個仍舊 作為與其餘混合物分開的單獨元素。本領域的技術人員可以理解和明白,虛擬硬碟驅動器 文件、引導管理器增強器、以及轉換器在框310的混合之前可以是一個文件或若干文件。在 另一實施例中,將引導管理器增強器和轉換器結合到包含在虛擬硬碟驅動器文件中的其它 程序模塊、代碼、或指令中。在框310處混合的引導管理器增強器用將虛擬硬碟驅動器文件
8作為可引導驅動器選項展示給計算設備的引導入口來增強計算設備的引導管理器。另外, 在框310處混合的轉換器執行讀/寫請求在物理偏移量和邏輯偏移量之間的轉換。也在框 310處存儲所得的一個或多個混合物以供稍後傳遞。現在參考框320,隨後傳遞虛擬硬碟驅動器文件、引導管理器增強器、以及轉換器。 一旦混合了這些元素中的一個或多個,就將所得的混合物傳遞給計算設備,例如圖1的計 算設備100。混合物的傳遞可通過多種方法進行。可通過USB驅動器、磁碟、硬碟驅動器、 CD-ROM、DVD、計算機磁帶、或其它公知計數據存儲介質來將混合物傳遞給計算設備。另外, 可通過各種類型的傳輸或廣播來將混合物傳遞給計算設備。這可包括通過有線或無線連 接、網際網路連接、紅外連接、藍牙連接、衛星連接、無線電連接或本領域內已知的其它通信方 法傳遞。申請人構想任何及所有這樣的通信設備和方法、及其任何組合都落在本發明的各 實施例的範圍內。框320處的虛擬硬碟驅動器、引導管理器增強器、以及轉換器的傳遞可以是單個 傳遞或者可以分布在各種通信方法和通信時間上。在一個示例性實施例中,這種傳遞通過 連接多個計算設備的網絡連接發生。示例是維護連接與該組織相關聯的許多計算設備的網 絡的大型公司。虛擬硬碟驅動器、引導管理器增強器、以及轉換器被混合成通過公司網絡傳 遞的單個文件。該公司然後將該混合文件傳遞至與該網絡相關聯的一個、某些、或所有計算 設備。混合文件的傳遞便於以高效且可靠的方式部署作業系統。該高效部署是通過使用虛 擬引導管理器增強器、轉換器、以及SCSI小型埠驅動器中的一個或多個來實現的。現在轉向圖4,示出了例示根據本發明的一實施例的用於部署作業系統的高效方 法400的另一實施例的流程圖。最初,在框410處,接收虛擬硬碟驅動器文件。該虛擬硬碟 驅動器文件與引導管理器增強器和轉換器中的一個或多個混合。框410的一實施例包括接 收已經與引導管理器增強器和轉換器兩者混合的虛擬硬碟驅動器文件。該虛擬硬碟驅動器 文件包含用於允許接收該虛擬硬碟驅動器文件的計算設備用該虛擬硬碟驅動器文件來執 行初始引導序列的一個或多個作業系統指令和計算機模塊。接著,如框420所示,增強引導管理器。用引導管理器增強器來實現引導管理器的 增強。引導管理器由引導管理器增強器通過對於引導管理器包括引導入口來增強。該引導 入口被定向到虛擬硬碟驅動器文件,這因此將該該虛擬硬碟驅動器文件作為可引導選項展 示給計算設備。本發明的一實施例允許引導管理器由引導管理器增強器來增強以使得將展 示虛擬硬碟驅動器文件的引導入口包括在引導管理器中,如框430所示。接著,如框440所示,確定虛擬硬碟驅動器的位置,即虛擬硬碟驅動器文件相對於 該虛擬硬碟驅動器與其相關聯地存儲的物理驅動器的位置。在一示例性實施例中,該位置 作為物理盤的扇區和偏移量來提供。如框450所示,然後由計算設備存儲虛擬硬碟驅動器 的位置。存儲該位置以供稍後由轉換器用來確定讀/寫請求在物理偏移量和邏輯偏移量之 間的轉換。接著,如框460所示,掛載虛擬硬碟驅動器。如上所述,當掛載了驅動器時,與所掛 載的驅動器相關聯的計算設備能夠訪問包含在該驅動器內的數據。本發明的一實施例包括 使用SCSI小型埠驅動器來方便將虛擬硬碟驅動器文件作為SCSI驅動器來掛載。作為該 實施例的結果,虛擬硬碟驅動器文件可作為用於讀取和寫入數據的驅動器來由計算設備訪 問。
9
隨後,如框470所示,實現針對讀/寫請求的轉換器。如上所述,轉換器在讀/寫 請求的物理偏移量和邏輯偏移量之間轉換。在一個示例性實施例中,轉換基於在框440處 確定並在框450處存儲的虛擬硬碟驅動器文件的位置。位置信息便於物理偏移量和邏輯偏 移量之間的轉換。如框480所示,然後開始初始引導序列。來自虛擬硬碟驅動器文件的初始引導序 列要求展示虛擬硬碟驅動器作為可引導選項,確定虛擬硬碟驅動器文件的位置,將虛擬硬 盤驅動器文件作為驅動器來掛載,轉換器提供物理偏移量和邏輯偏移量之間的轉換,以及 虛擬硬碟驅動器文件包含作業系統指令或其它程序模塊。參考圖5,示出了顯示被配置成用於實現本發明的各實施例的示例性計算系統體 繫結構500的框圖。本領域的技術人員將理解和明白,圖5所示的計算系統體系結構500僅 僅是一個合適的計算系統的示例,並且不旨在對本發明的使用範圍或功能提出任何限制。 也不應該將計算系統體系結構500解釋為對其中所示出的任何單個模塊/組件或各模塊/ 組件的組合有任何依賴性或要求。計算系統體系結構500包括經由網絡506彼此通信的伺服器502和計算設備504。 網絡506可以包括但不限於,一個或多個區域網(LAN)和/或廣域網(WAN)。這樣的聯網環 境在辦公室、企業範圍計算機網絡、內聯網和網際網路中是常見的。因此,網絡506不在此進
一步描述。圖2所示的伺服器502和計算設備504中的每一個都可以是任何類型的計算設 備,諸如例如以上參考圖1描述的計算設備100。僅作為示例而非限制,伺服器502和計算 設備504中的每一個可以是個人計算機、臺式計算機、膝上型計算機、手持式設備、移動手 機、消費電子設備等。另外,計算設備504還可包括鍵盤、鍵區、指示筆、操縱杆以及允許用 戶向網絡506提供有線和無線數據的任何其他輸入發起組件。然而,應當注意,本發明不限 於在這些計算設備上實現,而是可在處於其各實施例的範圍內的各種不同類型的計算設備 的任一種上實現。伺服器502可以包括可配置來執行此處所描述的方法的任何類型的應用伺服器、 資料庫伺服器、或文件伺服器。另外,伺服器502可以是專用或共享伺服器。伺服器502的 各組件(為清楚起見未示出)可以包括,但不限於,處理單元、內部系統存儲器、和用於耦合 包括用於存儲信息(例如文件和與其相關聯的元數據)的一個或多個資料庫在內的各系統 組件的合適的系統總線。每一伺服器通常包括或可以訪問各種計算機可讀介質。伺服器502包括虛擬硬碟驅動器508、引導管理器增強器510以及轉換器512。在 某些實施例中,所示組件508、510、和512中的一個或多個可被實現為獨立應用程式。在其 它實施例中,所示組件508、510、和512中的一個或多個可以直接集成到伺服器502和/或 計算設備504的作業系統中。本領域普通技術人員可以理解,圖5所示的組件508、510、和 512在本質和數量上是示例性的,並且不應被解釋為限制。可以採用任何數量的組件來實現 本發明的各實施例的範圍內的所需功能。虛擬硬碟驅動器508可包括方便部署和引導作業系統的作業系統指令和其它計 算機模塊。另外,虛擬硬碟驅動器508可包括作為諸如計算設備504等計算設備中的驅動 器展示和掛載虛擬硬碟驅動器508所需的驅動器或其它接口。引導管理器增強器510提供允許增強引導管理器以使得虛擬硬碟驅動器508可被識別為對於計算設備504的可引導選項的信息、數據、或指令。在一個示例性實施例中,引 導管理器增強器510更改與虛擬硬碟驅動器文件相關聯的計算系統的引導管理器以包括 引導入口。在引導管理器中添加引導入口允許作為計算設備的驅動器展示和掛載虛擬硬碟 驅動器文件。轉換器512包括用於轉換讀/寫請求的信息、數據、或指令。由轉換器512完成的 轉換在物理偏移量和邏輯偏移量之間以允許虛擬硬碟驅動器508作為驅動器由計算設備 504來訪問。在一替換實施例中,轉換器512的轉換在存儲虛擬硬碟驅動器文件的物理驅動 器的位置和虛擬硬碟驅動器文件的塊位置之間轉換。轉換器512允許將由計算設備生成的 讀/寫請求轉換成可訪問和操縱虛擬硬碟驅動器508的數據的請求。本領域的普通技術人員將會理解,計算系統體系結構500僅是示例性的。儘管服 務器502和計算設備506被示為單個單元,但本領域的技術人員將理解,伺服器502和計算 設備504都是可伸縮的。例如,伺服器502實際上可包括彼此通信的多個伺服器並且計算 設備504可包括彼此通信並且與伺服器502進行通信的多個計算設備。單個單元描繪是為 了清楚起見,而不意味著以任何形式限制各實施例的範圍。可以理解,本發明的各實施例涉及用於高效地部署作業系統的方法和計算機存儲 介質。將包含作業系統指令的混合虛擬硬碟驅動器文件分發給計算設備。在接收到虛擬硬 盤驅動器文件後,計算設備得以增強以允許該虛擬硬碟驅動器文件成為弓I導選項和可掛載 驅動器。該混合虛擬硬碟驅動器文件可包含附加數據和信息,該附加數據和信息將允許展 示該虛擬硬碟驅動器文件作為引導選項並掛載該虛擬硬碟驅動器文件作為計算設備中的 驅動器。計算設備然後可將虛擬硬碟驅動器文件用作以初始引導序列開頭的虛擬驅動器。參考各具體實施方式
描述了本發明,各具體實施方式
在所有方面都旨在是說明性 的而非限制性的。在不背離本發明範圍的情況下各替換實施方式對本發明所屬領域的普通 技術人員將變得顯而易見。從前述內容可知,本發明很好地適用於實現前述的所有目的和目標,並且具有對 於該系統和方式是顯而易見且固有的其他優點。可以理解,特定的特徵和子組合是有用的, 並且可以在不參考其它特徵和子組合的情況下使用。這由權利要求書所構想並在其範圍之 內。
權利要求
一種或多種其上包含計算機可執行指令的計算機存儲介質,所述指令在被執行時執行一種用於在計算設備上部署作業系統的方法,所述方法包括接收具有一個或多個作業系統指令的虛擬硬碟驅動器(VHD)文件(210),所述VHD文件與引導管理器增強器和轉換器相關聯;利用所述引導管理器增強器來增強引導管理器(220);確定VHD文件位置(230);存儲所述VHD文件位置(240);實現所述轉換器以便對讀/寫請求應用所述VHD文件位置(250);以及從所述VHD文件開始初始引導序列(260)。
2.如權利要求1所述的計算機存儲介質,其特徵在於,所述方法還包括將所述VHD文 件、所述引導管理器增強器、以及所述轉換器作為單個文件來接收。
3.如權利要求1所述的計算機存儲介質,其特徵在於,所述方法還包括將所述VHD文 件、所述引導管理器增強器、以及所述轉換器作為兩個或更多文件來接收。
4.如權利要求1所述的計算機存儲介質,其特徵在於,利用所述引導管理器增強器來 增強引導管理器包括利用所述引導管理器增強器來用展示所述VHD文件的引導入口來增 強所述引導管理器。
5.如權利要求1所述的計算機存儲介質,其特徵在於,實現所述轉換器以便對讀/寫請 求應用所述VHD文件位置還包括利用所述轉換器來在邏輯偏移量和物理偏移量之間轉換 請求。
6.如權利要求1所述的計算機存儲介質,其特徵在於,所述VHD文件與作業系統加載器 和內核相關聯,並且其中所述方法還包括對所述引導管理器、所述作業系統加載器、以及所 述內核中的一個或多個應用所述轉換器。
7.如權利要求1所述的計算機存儲介質,其特徵在於,所述方法還包括掛載所述VHD文 件以創建所掛載的VHD文件(460)。
8.如權利要求1所述的計算機存儲介質,其特徵在於,所述方法還包括加載SCSI驅動 器以便於在所述VHD文件和所述計算設備之間進行通信。
9.如權利要求8所述的計算機存儲介質,其特徵在於,所掛載的VHD文件被表示為所述 計算設備的SCSI盤。
10.一種用於高效地部署計算設備作業系統的方法,所述方法包括混合虛擬硬碟驅動器(VHD)文件、引導管理器增強器、以及轉換器(310);以及將所述VHD文件、所述引導管理器增強器、以及所述轉換器傳遞至所述計算設備,其中 所述VHD文件能夠在所述計算設備上執行初始引導序列(320)。
11.如權利要求10所述的方法,其特徵在於,所述VHD文件、所述引導管理器增強器以 及所述轉換器被混合成一個文件。
12.如權利要求10所述的方法,其特徵在於,混合所述VHD文件、所述引導管理器增強 器、以及所述轉換器以使得所述VHD文件、所述引導管理器增強器、或者所述轉換器中的至 少一個仍舊作為獨立文件。
13.如權利要求10所述的方法,其特徵在於,所述方法還包括將所述引導管理器增強 器與允許將所述VHD文件作為引導選項展示給所述計算設備的VHD文件引導入口相關聯。
14.如權利要求10所述的方法,其特徵在於,所述方法還包括利用所述轉換器來在邏 輯偏移量和物理偏移量之間進行轉換。
15.如權利要求10所述的方法,其特徵在於,所述VHD文件包含一個或多個作業系統指令。
16.如權利要求10所述的方法,其特徵在於,所述VHD文件、所述引導管理器增強器、或 者所述轉換器中的一個或多個包含SCSI驅動器。
17.如權利要求10所述的方法,其特徵在於,所述VHD文件或所述轉換器中的任一個包 含方便在所述VHD文件和所述計算設備之間進行通信的SCSI驅動器。
18.如權利要求10所述的方法,其特徵在於,還包括掛載所述VDH文件以創建所掛載的 VHD文件,其中所掛載的VHD文件作為邏輯盤展示給所述計算設備。
19.如權利要求18所述的方法,其特徵在於,所掛載的VHD文件由所述計算設備識別為 SCSI ο
20.一種或多種其上包含計算機可執行指令的計算機存儲介質,所述指令在被執行時 執行一種用於將作業系統部署到計算設備上的方法,所述方法包括接收虛擬硬碟驅動器(VHD)文件(410),其中所述VHD文件包括一個或多個作業系統指 令,其中所述VHD文件可作為SCSI盤來展示和掛載,並且其中所述VHD文件與引導管理器 增強器和轉換器相關聯;利用所述引導管理器增強器來增強引導管理器(420),其中所述引導管理器增強器提 供將所述VHD文件作為弓I導選項展示給所述計算設備的引導入口; 確定VHD文件位置(440);存儲所述VHD文件位置以供所述轉換器利用(450);實現針對讀/寫請求的轉換器,其中所述轉換器基於所述VHD文件位置來在邏輯偏移 量和物理偏移量之間轉換讀/寫請求(470);實現SCSI驅動器(460),其中所述VHD文件可作為SCSI盤來掛載;以及 利用所述VHD文件來開始所述計算設備的初始引導序列(480)。
全文摘要
提供了用於高效地部署作業系統的方法和計算機存儲介質。虛擬硬碟驅動器文件由計算設備接收。在接收到虛擬驅動器硬碟文件後,該計算設備得以增強並且作為該計算設備的驅動器和引導選項展示並掛載虛擬硬碟驅動器。此後,可以利用虛擬硬碟驅動器文件作為引導源來開始初始引導序列。在某些實施例中,利用引導管理器增強器和轉換器來進行對虛擬硬碟驅動器文件的展示、掛載和轉換中的一個或多個。在某些實施例中,利用虛擬SCSI小型埠驅動器來進行對虛擬硬碟驅動器文件的展示、掛載和轉換中的一個或多個。
文檔編號G06F9/445GK101884037SQ200880119972
公開日2010年11月10日 申請日期2008年11月21日 優先權日2007年12月3日
發明者S·N·阿拉法 申請人:微軟公司