專利名稱:初始化和重新啟動操作系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明總體涉及操作系統(tǒng),特別是涉及例如在一開始打開電源之后或在發(fā)生系統(tǒng)崩潰之后初始化和重新啟動這些操作系統(tǒng)。
當計算機系統(tǒng)一開始被通電時,基本輸入/輸出系統(tǒng)即“BIOS”開始運行。BIOS控制個人電腦的許多重要功能,諸如它如何解釋按鍵,如何在屏幕上顯示字符,如何與其它設(shè)備通信。用戶每次打開計算機時,BIOS一般指示計算機進行自檢。為此,BIOS采用一個通電自檢即“POST”。
當個人電腦啟動時,它一般首先進入所謂的“實模式”。計算機訪問保存著包括一個指向BIOS代碼的跳轉(zhuǎn)指令的程序指令的特殊存儲單元。BIOS一開始指令系統(tǒng)微處理器運行整個系統(tǒng)的各部件,以確定它們是否操作正常。然后,檢查所有安裝的擴展板,之后,微處理器開始實際的自引導(dǎo)過程。在自引導(dǎo)過程中,BIOS代碼可以指示微處理器跳轉(zhuǎn)到指令微處理器如何讀取系統(tǒng)軟盤、硬盤或CD-ROM驅(qū)動器的首扇區(qū)的一段代碼。微處理器然后加載操作系統(tǒng)并開始實際的計算機操作。
Windows操作系統(tǒng)可能是個人電腦中最常用的操作系統(tǒng)。它是一種“開放的”系統(tǒng),因為它適合不同的計算機系統(tǒng)并且適合在任何給定計算機系統(tǒng)上改變硬件。至少部分因為這種開放性,Windows操作系統(tǒng)的啟動要占用較長的時間。對有些用戶來說,這種延遲可能是件煩人的事,在有些情形中,啟動過程可能會干擾系統(tǒng)操作的方式。
例如,機頂個人電腦是與綜合了模擬和數(shù)字電視的功能與諸如因特網(wǎng)接入的計算機功能的電視系統(tǒng)相關(guān)聯(lián)的個人電腦。預(yù)期機頂個人電腦的用戶會把這些電腦看得類似于普通家用電器。所以用戶可能不會愿意適應(yīng)起動中的延遲或在他們電視屏幕上出現(xiàn)的出錯信息。例如,在畫中畫系統(tǒng)中,用戶可能會在進行Windows操作系統(tǒng)上運行的游戲的同時還觀看電視。假設(shè)游戲發(fā)生故障,屏幕上會出現(xiàn)出錯信息,這會干擾正常觀看電視至少一段時間,電視畫面會受到計算機崩潰的影響。
在幾乎所有情況下,用戶會因更快速地起動程序的運行而受益。這至少會發(fā)生在三個方面。第一,當計算機打開時,用戶希望它盡可能快地開始運行。第二,當程序發(fā)生錯誤或崩潰時,用戶希望盡可能快地重新啟動計算機。類似地,當計算機運行過程中發(fā)生各種問題時,有些用戶希望能簡單地重新啟動計算機,而不要處理和識別問題的根源。
當前的計算機系統(tǒng)具有一些提高計算機系統(tǒng)的起動速度的功能。例如,使用省略所有或部分POST例程的“快啟動”(faston)功能是已知的。類似地,有些膝上型計算機有一種暫停/恢復(fù)操作。需要的話,用戶按下暫停按鈕,計算機上的所有設(shè)置就被存儲起來。在此之后當計算機通電時,計算機識別出發(fā)生過暫停,于是就立即準確地恢復(fù)到計算機暫停前的操作。此外,有些計算機系統(tǒng)在一種“永遠開啟”(always on)模式中工作,在這種模式中,在沒有問題的情況下從不需要重新啟動計算機系統(tǒng)。例如Windows98將具有一種類似于永不關(guān)閉的計算機系統(tǒng)的高級配置和電源接口(ACPI)功能。有些簡單的計算機系統(tǒng),諸如個人數(shù)字助理(PDA),用所謂的實時操作系統(tǒng)(RTOS)來使計算機能快速啟動。
當程序發(fā)生崩潰后,上述各種技術(shù)都無能為力。在這些情況中,在崩潰后至少必須重新進行相當一部分的啟動操作。這會導(dǎo)致實質(zhì)性的延遲,這妨礙產(chǎn)生在系統(tǒng)用戶看來是連續(xù)的表象。所以,特別是對于開放式操作系統(tǒng)來說,繼續(xù)需要能使操作系統(tǒng)在例如發(fā)生崩潰或初始通電后能更迅速地起動和重新啟動的方法。類似地,就諸如機頂個人電腦這樣的專用計算機系統(tǒng)來說,希望使普通的計算機操作對用戶來說是隱蔽的。
按照本發(fā)明的一個方面,一種防止系統(tǒng)故障的方法包括為適合特定配置的操作系統(tǒng)生成一個映象。然后存儲該映象。當檢測到程序故障時,將該映象裝入計算機內(nèi)存。
圖1是本發(fā)明一個實施例的示意圖;圖2是快速起動程序的流程圖;圖3是表示能實現(xiàn)圖1所示的本發(fā)明實施例的計算機系統(tǒng)的框圖;圖4是圖1所示的基準操作系統(tǒng)映象的更詳細的示意圖;圖5是防止系統(tǒng)故障的程序的流程圖;圖6是表示如何創(chuàng)建和使用該基準映象的示意圖7是表示按照本發(fā)明一個實施例的操作系統(tǒng)的起動的流程圖;圖8是對應(yīng)圖2的另一個實施例的流程圖;圖9是在程序崩潰后本發(fā)明的一個實施例的操作的流程圖。
參看圖1,硬盤驅(qū)動器10可為諸如Windows操作系統(tǒng)的操作系統(tǒng)存儲許多文件。一般的文件12可能是用戶文件、注冊表文件和其它操作系統(tǒng)文件。一個專用磁盤分區(qū)14為新基準映象16和基準操作系統(tǒng)映象18提供一個區(qū)域。
基準操作系統(tǒng)映象18可以是個存儲的虛擬映象,可能已經(jīng)在某個最初計算機制造廠被預(yù)先裝入。該映象捕獲具有預(yù)先定義的硬件和軟件配置參數(shù)集的基準計算機系統(tǒng)的系統(tǒng)配置。這些參數(shù)可能適用于初始配置的特定計算機,或者可以是一個假設(shè)的配置集合,可能準確對應(yīng)于計算機的配置,也可能不是。基準操作系統(tǒng)映象18例如包括初始寄存器設(shè)置、設(shè)備設(shè)置、基存儲器頁文件等等。簡而言之,它包括在運行時被裝入內(nèi)存的所有東西,包括專用應(yīng)用程序和用戶命令解釋程序(user shell)。
該映象基本上包括諸如Windows操作系統(tǒng)這樣的操作系統(tǒng)操作實際的或假想的計算機配置所必需的所有參數(shù)。它對應(yīng)于在預(yù)定的基準計算機配置的操作系統(tǒng)引導(dǎo)序列期間形成的關(guān)于寄存器和內(nèi)存的信息。所以,該映象實際上是具有預(yù)定特征的引導(dǎo)之后操作系統(tǒng)的虛擬映象,類似于一個配置快照。該映象18包括關(guān)于在引導(dǎo)之后的實際或假想基準機器的內(nèi)存和寄存器的信息。
啟動時,如方框20所示,特殊磁盤分區(qū)14中含有的信息被傳送到系統(tǒng)內(nèi)存22中。這樣,就無需進行普通的操作系統(tǒng)引導(dǎo)操作,因為該功能實際上已經(jīng)為該基準配置預(yù)先完成。結(jié)果,就有可能更快速地開始操作系統(tǒng)操作。
特別是對于諸如Windows操作系統(tǒng)這樣的開放式操作系統(tǒng)來說,引導(dǎo)時間會相當長,因為必須調(diào)查和記錄的配置的數(shù)目較多。在一個示例性實施例中,與虛擬映象相關(guān)聯(lián)的文件可能是個較大的文件。例如,在一個有大量不同的硬件和軟件配置設(shè)置的系統(tǒng)中,該映象可能有較大量的數(shù)據(jù)。因此,可能希望用非常低級的功能(function)來編碼能被很快讀取的文件。所以,對于諸如Windows操作系統(tǒng)這樣的操作系統(tǒng)來說,以當前的從硬盤傳輸數(shù)據(jù)的速率,起動時間可以從一分鐘左右的數(shù)量級的時間減少到數(shù)秒的數(shù)量級的時間。
一個示意性實施例的操作的一個例子就是運行屏幕顯示內(nèi)的電視調(diào)諧器和視頻游戲的機頂個人電腦。如果有必要重新啟動系統(tǒng),用戶會希望轉(zhuǎn)換無縫地發(fā)生。就是說,希望系統(tǒng)重新啟動時用戶察覺不到視頻游戲或電視圖像中有顯著變化。
由于快速地向系統(tǒng)內(nèi)存?zhèn)鬏敳僮飨到y(tǒng)的映象,并獲得當前的設(shè)置,兩個顯示都能被保持。當前設(shè)置信息可包括各應(yīng)用(例如視頻游戲、游戲中的得分、電視調(diào)諧器和頻道設(shè)置)這個映象能比以重新啟動計算機的開放式操作系統(tǒng)所要求的快得多的速度被加載。通過傳輸映象和軟件來實現(xiàn)映象,系統(tǒng)能在不顯著影響用戶的預(yù)期的情況下被快速地啟動。
再次參看圖1,專用磁盤分區(qū)14也包括一個新的基準映象16。可以在計算機系統(tǒng)軟件或硬件的配置改變后記錄該映象16??梢允褂嬎銠C系統(tǒng)適合自動地將這些改變存儲在內(nèi)存空間16中,以便每當有必要重新啟動或初始化操作系統(tǒng)時,能在考慮到新的軟件和硬件配置的條件下,快速地重新初始化操作系統(tǒng)。
這個方法與當前的開放式操作系統(tǒng)中所使用的有本質(zhì)上的區(qū)別。因為這些系統(tǒng)是開放的系統(tǒng),每當系統(tǒng)被重新啟動或重新起動時,系統(tǒng)一開始要查詢所有設(shè)置和配置。這耗費時間,但卻能保證在不需要對不同情況使用不同操作系統(tǒng)的條件下考慮到大量的變化。圖1所示的方法的工作方式實際上相反。它記錄初始的虛擬映象,之后按需要再調(diào)整該映象。實際上,它對基準配置進行假設(shè),為避免需要復(fù)雜的引導(dǎo)序列而記錄該映象,然后隨著計算機系統(tǒng)的變化對該映象作出必要的修改。
圖2所示的快速起動程序的示例性流程,一開始提供一個開放式操作系統(tǒng),如方框120所示。之后,按本文描述的那樣生成一個基準映象,并存儲該基準映象,如方框122和124所示。在系統(tǒng)自引導(dǎo)(方框126)后,該映象被裝入內(nèi)存(方框128)。然后將控制轉(zhuǎn)移到操作系統(tǒng),如方框130所示。
圖3所示的示例性計算機系統(tǒng)23,包括與系統(tǒng)內(nèi)存22相連的處理器24。該處理器24和系統(tǒng)內(nèi)存22可以通過橋26連接到總線28。該總線28可以是計算機系統(tǒng)中使用的任何常規(guī)總線,包括外圍部件互連(PCI)總線。在所示實施例中,可以將諸如TV調(diào)諧器或監(jiān)視器的視頻設(shè)備30連接到總線28。第二個橋32也連接在總線28與另一個總線34之間??偩€34可以是常規(guī)的擴展的工業(yè)系統(tǒng)體系結(jié)構(gòu)總線(EISA)總線或任何其它常規(guī)總線。在所示實施例中,輸入/輸出接口36連接到總線34,并且連接到鼠標40和鍵盤28。類似電,接口42連接前文所述的含有文件12、16和18的硬盤驅(qū)動器10。
用映象16和18可以起動或重新啟動其它計算機系統(tǒng),包括用作機頂個人電腦的那些計算機系統(tǒng)。這些設(shè)備可以有上述的一般配置,但例如可能有提供更多視頻功能30的設(shè)備。機頂個人電腦包括一個用于因特網(wǎng)連接的調(diào)制解調(diào)器,并且接受諸如通用串行總線(USB)的總線,用于連接所需的外設(shè),諸如鍵盤、軟盤或CD-ROM驅(qū)動器等等。它們通常用電視機作為監(jiān)視器。
現(xiàn)在參看圖4,基準映象18包括虛擬設(shè)備驅(qū)動程序(VxD)102、應(yīng)用程序接口(API)100和VxD與執(zhí)行程序102。VxD API 100例如可以是配備Windows32位操作系統(tǒng)的設(shè)備I/O控制API。API 100啟動VxD 102,使VxD 102創(chuàng)建基準映象18或新映象16。
專用應(yīng)用程序106是即使在發(fā)生崩潰后也有利地以無縫方式運行的關(guān)鍵的程序應(yīng)用。例如,在機頂個人電腦中,希望負責數(shù)字電視功能的應(yīng)用程序以無縫的方式運行,這樣,即使在諸如游戲等Windows應(yīng)用程序上發(fā)生崩潰,用戶也不會在其數(shù)字電視畫面上察覺到該崩潰。這些專用應(yīng)用程序106可以與映象16或18、API 100和VxD與執(zhí)行程序102一起加載。
虛擬機管理程序(VMM)104是32位Windows操作系統(tǒng)上可用的一個管理程序。VxD 102能向VMM 104查詢應(yīng)用程序的狀態(tài)信息。例如,VxD 102能用VMM 104來確定是否有崩潰??梢赃B接一個VMM命令來確定是否有普通保護破壞或程序錯誤的指示被發(fā)出,指示檢測到崩潰。
注冊表112是個狀態(tài)數(shù)據(jù)庫,諸如Windows注冊表。注冊表112不是映象16或18的一部分,但是它提供關(guān)于硬件和軟件配置的最新信息。它被映象18用來(在崩潰之后)將系統(tǒng)恢復(fù)得具有發(fā)生崩潰前存在的所有設(shè)置。換言之,當系統(tǒng)被恢復(fù)時,可以用由專用應(yīng)用程序106從注冊表112獲得的信息再調(diào)用這些最新設(shè)置。例如,在機頂個人電腦應(yīng)用中,可以從注冊表112獲得當發(fā)生崩潰時正在被觀看的電視頻道。
共享存儲器110使基準映象18能與系統(tǒng)管理模式(SMM)存儲器108通信。如圖4所示,SMM在有保護的系統(tǒng)管理存儲器空間中運行。這個空間存在于環(huán)0(ring 0),是受到非常保護的。因此,VxD與執(zhí)行程序102不能直接訪問SMM存儲器108。共享存儲器110被VxD 102訪問。有益的是,共享存儲器110對諸如Windows操作系統(tǒng)的操作系統(tǒng)來說可能是未知的。當該共享存儲器110不被映射到操作系統(tǒng)時,操作系統(tǒng)就不能訪問它。然而,VxD 102能訪問存儲器110,以便于在系統(tǒng)管理模式存儲器108與VxD與執(zhí)行程序102之間通信。
圖5所示的一個用于防止系統(tǒng)故障的程序,開始時生成基準配置的一個映象,如方框132所示。該映象被存儲起來(方框134)。當檢測到程序故障時(菱形框136),裝入該映象(方框138)。
現(xiàn)在參看圖6,映象16或18由執(zhí)行程序102創(chuàng)建。VxD與執(zhí)行程序102在專用應(yīng)用程序和用戶命令解釋程序被裝入并準備好向VxD API100查詢喚醒信號的地方被調(diào)用。該映象可包含包括處理器的硬件寄存器和設(shè)備在內(nèi)的機器的整個存儲器狀態(tài)以及一些系統(tǒng)文件。該映象可以在計算機制造工廠創(chuàng)建,但是在例如系統(tǒng)配置變化時通過進行相同的VxD調(diào)用能創(chuàng)建新的映象。
如果在例如系統(tǒng)崩潰后希望恢復(fù)映象,SMM就將映象裝入系統(tǒng)內(nèi)存22并將控制轉(zhuǎn)移給VxD 102,如方框108所示。VxD 102完成該恢復(fù)后,從它被調(diào)用時所處的API 100中的入口返回。專用應(yīng)用程序106然后準備就緒,被允許繼續(xù)運行。如箭頭“A”指示的那樣,它們每個通過API 100查詢VxD與執(zhí)行程序102,得知它們是被喚醒的,于是就檢索它們的配置狀態(tài)。這樣,對用戶來說,各專用應(yīng)用程序看起來在無縫地運行,幾乎不中斷它們在崩潰之前所處的狀態(tài)。
實際上,VxD能補充或擴展Windows操作系統(tǒng)的內(nèi)核級的功能。當然,如果能訪問操作系統(tǒng)內(nèi)核的話,也能將這個相同的功能寫入操作系統(tǒng)內(nèi)核。通過使用VxD,能向現(xiàn)有的操作系統(tǒng)內(nèi)核添加希望的功能。
圖7中所示的虛擬映象在操作系統(tǒng)起動方面的使用,在有些實施例中可以在DOS(磁盤操作系統(tǒng))引導(dǎo)已經(jīng)完成后開始。需要的話,可通過去除各種并非必要的操作而啟動一個縮減的DOS引導(dǎo)序列。例如,可以將POST例程全部或部分去除。如方框50所示,初始序列開始于實模式中的快速DOS引導(dǎo)。如方框52所示,該引導(dǎo)序列切換到保護模式,DOS引導(dǎo)序列被繼續(xù)進行。
在方框54,操作系統(tǒng)起動序列開始。如步驟56所示,一開始,該序列可切換到系統(tǒng)管理模式(SMM)。系統(tǒng)管理模式的使用可能是有益的,因為它是在受非常保護的地址空間中運行的。此外,即使發(fā)生一些相對嚴重的系統(tǒng)錯誤時SMM也繼續(xù)運行。
下一步,操作系統(tǒng)起動序列進行檢查,判斷是否這是操作系統(tǒng)初次被起動,如菱形框58所示。如果是,就改變一個初次加載標志,以便下一次系統(tǒng)將知道操作系統(tǒng)已經(jīng)不是初次被起動(見方框60)。
如果操作系統(tǒng)不是被初次加載,則在菱形框62在配置數(shù)據(jù)庫進行檢查,判斷是否計算機配置已經(jīng)有與基準配置不同的變化。實現(xiàn)這個功能的一個方法是每當系統(tǒng)再引導(dǎo)時設(shè)置一個標志。方框62處的檢查于是就能判定是否該標志指示已經(jīng)發(fā)生了一次再引導(dǎo),表明應(yīng)當生成新的基準映象。如果該標志沒有置位,該流程就向下跳轉(zhuǎn),運行執(zhí)行程序102(方框68)。如果作過改變,新的基準映象就在64處被創(chuàng)建并在66處被存儲。然后將存儲的映象發(fā)送到系統(tǒng)內(nèi)存(方框67),然后運行執(zhí)行程序102(方框68)。
實時執(zhí)行程序102進行調(diào)度,加載程序,并將這些程序在一起運行。它包括實時操作系統(tǒng)(RTOS)的功能的一部分,但不是全部。RTOS也能例如管理外部設(shè)備。所以,RTOS包括一個執(zhí)行程序。
實時執(zhí)行程序102在其它更可見的操作之下的環(huán)0(ring 0)運行。它被用來允許擴展操作系統(tǒng)內(nèi)核一操作系統(tǒng)內(nèi)核由于是預(yù)編程的,可能不適合本文所述的功能(事后)。然而,在開發(fā)新的操作系統(tǒng)時可以將該執(zhí)行程序功能合并到內(nèi)核中。該執(zhí)行程序然后用專用磁盤分區(qū)14來實現(xiàn)操作系統(tǒng)功能。
虛擬映象的提供,不僅在起動時是有用的,在可能要求重新起動操作系統(tǒng)的各種情況中也是有用的。最重要的是程序錯誤或崩潰。崩潰是由硬件或軟件問題引起的程序錯誤。程序可能會因例外、無限循環(huán)、競爭條件、資源短缺或內(nèi)存擾亂而發(fā)生故障。
一般來說,當應(yīng)用程序發(fā)生崩潰時,用戶會關(guān)掉系統(tǒng)的電源,然后重新啟動系統(tǒng),希望能由此解決問題。類似地,當用戶沒有能力處理一定的情況時,用戶會簡單地重新啟動計算機系統(tǒng),看看是否這會解決問題。無論哪一種情況,通過使用虛擬映象,就有可能以無縫的方式快速而有效地解決這些問題。它之所以是個無縫的解決方案,是因為用戶較少覺察到或根本覺察不到實際發(fā)生了什么,實際上可能根本不必采取任何更正行動。
圖8中所示的用于實現(xiàn)上述程序的一個示例性軟件程序,包括生成基準系統(tǒng)配置的映象的步驟(方框140)。下一步,生成一個虛擬設(shè)備驅(qū)動程序,如方框142所示。然后,如方框144所示,將方框140中生成的映象和方框142中生成的虛擬設(shè)備驅(qū)動程序存儲起來。如果要求快速激活,就裝載該映象和該虛擬設(shè)備驅(qū)動程序,如方框146和148所示。
參看圖9,在菱形框70,內(nèi)核判定是否有崩潰。如果內(nèi)核正在運行并且判定已經(jīng)發(fā)生崩潰,內(nèi)核就能采取更正行動,如方框72所示。如果內(nèi)核不在運行,或者未檢測到崩潰,就在菱形框74處進行檢查,判定系統(tǒng)管理模式是否檢測到崩潰。
系統(tǒng)管理模式監(jiān)測許多不同的崩潰情況并例行地檢測各種不同的故障。也可以采用其它的系統(tǒng)故障檢測器,包括那些各種各樣的被稱為心跳監(jiān)視器(heart beat monitors)、監(jiān)視定時程序(watch dogtimers)、崩潰檢測器的檢測程序。在每一情況下,該系統(tǒng)監(jiān)視故障的一些征兆,諸如掛起,缺少總線操作或其它與崩潰有關(guān)的一些其它系統(tǒng)。
如果在菱形框74由系統(tǒng)管理模式或其它某種方法檢測到崩潰,就在菱形框76處進行檢查,判斷是否僅通過關(guān)閉應(yīng)用程序就能解決這個問題。如果是,就在方框72處關(guān)閉應(yīng)用程序。系統(tǒng)管理模式或其它崩潰檢測器可以有一個提供關(guān)于可能會發(fā)生的不同故障的信息的超高速緩存。該超高速緩存可以被存儲在硬盤驅(qū)動器10上,它提供關(guān)于處理這些故障的最佳方式的信息。如果該故障是僅通過關(guān)閉應(yīng)用程序就能解決問題的故障,一般就需要采取該方法。
如果所記錄的超高速緩存的信息認為僅通過關(guān)閉應(yīng)用程序是不能解決問題的,就在菱形框78處判斷是否應(yīng)當運行執(zhí)行程序。再次檢查超高速緩存,判定用虛擬映象是否將解決問題。如果不是,流程就轉(zhuǎn)移到復(fù)位80,系統(tǒng)以常規(guī)方式被復(fù)位。如果超高速緩存的信息指出可以用虛擬映象來解決問題,就起動VxD,如方框82所示。之后,在方框84處調(diào)用虛擬映象,執(zhí)行程序在86處接管控制。執(zhí)行程序用預(yù)定的虛擬映象-原先裝入系統(tǒng)中的或者是如前文所述那樣修改過的-啟動系統(tǒng),以適應(yīng)變化了的系統(tǒng)配置。
所以,基準映象或新基準映象的虛擬映象不但能加快操作系統(tǒng)起動的速度,也能為崩潰處理提供一個有用的工具。此外,在包括機頂個人電腦的許多應(yīng)用中,虛擬映象能以向用戶產(chǎn)生無縫印象的方式適應(yīng)普通的計算機操作。就是說,用戶可能永遠不會察覺起動時或大多數(shù)崩潰情況后具有的時間延遲,可以有效地保護用戶不受崩潰的一些負面后果的影響。例如,在機頂個人電腦中,故障發(fā)生時,由于得到迅速處理,可能不會影響正常的電視畫面。
盡管參照有限數(shù)量的實施例說明了本發(fā)明,本領(lǐng)域的熟練人員將明白有許多的修改和改變。后附的權(quán)利要求旨在包括所有這些在本發(fā)明的精神和范圍內(nèi)的修改和改變。
權(quán)利要求
1.一種防止系統(tǒng)故障的方法,包含生成一個適合特定配置的操作系統(tǒng)的映象;存儲該映象;檢測程序故障;檢測到程序故障時,將該映象裝入系統(tǒng)內(nèi)存。
2.權(quán)利要求1的方法,包括自動地更新該映象,以考慮對系統(tǒng)配置的修改。
3.權(quán)利要求1的方法,包括在一個保護模式中加載所述映象。
4.權(quán)利要求3的方法,包括在系統(tǒng)管理模式中加載所述映象。
5.權(quán)利要求1的方法,包括提供關(guān)于如何處理各種程序故障的信息,并在檢測到程序故障時檢查所述信息。
6.權(quán)利要求1的方法,包括在程序故障后運行一個虛擬設(shè)備驅(qū)動程序,將所述映象傳輸給系統(tǒng)內(nèi)存,并運行一個執(zhí)行程序來從內(nèi)核接管控制。
7.權(quán)利要求1的方法,包括在計算機系統(tǒng)的制造過程中存儲該操作系統(tǒng)的映象。
8.權(quán)利要求1的方法,包括與所述映象一起存儲一個虛擬設(shè)備驅(qū)動程序。
9.一種使操作系統(tǒng)能被快速啟動的方法,包含生成一個適合特定配置的操作系統(tǒng)的映象;生成一個用于運行該映象的虛擬設(shè)備驅(qū)動程序;存儲該映象和虛擬設(shè)備驅(qū)動程序;在需要快速啟動該操作系統(tǒng)時,將該虛擬設(shè)備驅(qū)動程序和該映象裝入系統(tǒng)內(nèi)存。
10.權(quán)利要求9的方法,包括運行一個執(zhí)行程序。
11.權(quán)利要求9的方法,包括在系統(tǒng)管理模式中運行所述虛擬設(shè)備驅(qū)動程序。
12.權(quán)利要求9的方法,包括檢查對系統(tǒng)配置的修改并用所述映象存儲所述修改。
13.權(quán)利要求12的方法,包括用所述虛擬設(shè)備驅(qū)動程序檢查系統(tǒng)配置中的變化并存儲所述系統(tǒng)配置的變化。
14.一種能快速啟動操作系統(tǒng)的方法,包含生成操作系統(tǒng)的一個第一配置集合;存儲該第一配置集合;自動地識別一個不同于該第一集合的第二配置集合;自動地存儲有關(guān)該第二配置集合的信息;在需要啟動該操作系統(tǒng)時,將該有關(guān)該第二配置集合的信息傳輸?shù)较到y(tǒng)內(nèi)存。
15.權(quán)利要求14的方法,包括在一個保護模式中傳輸該有關(guān)該第二配置集合的信息。
16.權(quán)利要求15的方法,包括在系統(tǒng)管理模式中傳輸。
17.權(quán)利要求14的方法,包括用一個執(zhí)行程序在現(xiàn)有操作系統(tǒng)中實現(xiàn)新的功能。
18.權(quán)利要求17的方法,包括用一個虛擬識別驅(qū)動程序來檢查系統(tǒng)配置中的變化,尋找配置設(shè)置并存儲這些設(shè)置。
19.一種包含一個存儲引起計算機進行下列操作的指令的計算機可讀的存儲介質(zhì)的產(chǎn)品生成一個適合特定配置的操作系統(tǒng)的映象;生成一個用于運行該映象的虛擬設(shè)備驅(qū)動程序;存儲該映象和虛擬設(shè)備驅(qū)動程序;在需要快速啟動該操作系統(tǒng)時,將該虛擬設(shè)備驅(qū)動程序和該映象裝入系統(tǒng)內(nèi)存。
20.一種包含一個存儲引起計算機進行下列操作的指令的計算機可讀的存儲介質(zhì)的產(chǎn)品生成操作系統(tǒng)的一個第一配置集合;存儲該第一配置集合;自動地識別一個不同于該第一集合的第二配置集合;自動地存儲有關(guān)該第二配置集合的信息;在需要啟動該操作系統(tǒng)時,將該有關(guān)該第二配置集合的信息傳輸?shù)较到y(tǒng)內(nèi)存。
21.一種包含一個存儲引起計算機進行下列操作的指令的計算機可讀的存儲介質(zhì)的產(chǎn)品生成一個適合特定配置的操作系統(tǒng)的映象;存儲該映象;檢測程序故障;檢測到程序故障時,將該映象裝入系統(tǒng)內(nèi)存。
全文摘要
通過生成基準系統(tǒng)配置的配置設(shè)置的虛擬映象可以更有效地起動和重新啟動操作系統(tǒng)。例如用一個執(zhí)行程序,可以將這些設(shè)置存儲起來并用來快速地按系統(tǒng)的基準配置起動系統(tǒng)。基準配置可以根據(jù)系統(tǒng)硬件或軟件配置的變化而自動修改。這些改變可以與基準配置信息一起存儲。當發(fā)生崩潰時,能用該虛擬映象來迅速地恢復(fù)系統(tǒng),而不需要再引導(dǎo)操作系統(tǒng)。
文檔編號G06F11/14GK1299483SQ99805640
公開日2001年6月13日 申請日期1999年4月13日 優(yōu)先權(quán)日1998年4月30日
發(fā)明者J·默里爾 申請人:英特爾公司