專利名稱:在引導和關(guān)機期間顯示圖象的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及圖形。更具體地,本發(fā)明涉及圖形顯示。
背景技術(shù):
從基本輸入輸出系統(tǒng)(BIOS)裝載操作系統(tǒng)(OS)的典型過程需要一些時間來完成。在這段時間里,通常顯示屏顯示一個由操作系統(tǒng)選擇的圖象。這個圖象是固定的,而且不能由OS來改變。同樣,當系統(tǒng)關(guān)閉時,OS經(jīng)過一個關(guān)機序列,在關(guān)機過程中在屏幕上顯示圖象。通常由OS顯示的引導和關(guān)機圖象對使用者是無用的,僅僅包含一些常規(guī)消息。
由于引導和關(guān)機時間足夠系統(tǒng)顯示更多的能夠提供信息的圖象,所以希望能夠顯示除了操作系統(tǒng)的標準徽標以外的圖象。
發(fā)明內(nèi)容
因此,需要一種技術(shù)來提供一種在操作系統(tǒng)過渡時顯示圖象的簡單有效的方法。
本發(fā)明是一種在計算機系統(tǒng)中的操作系統(tǒng)過渡期間顯示圖象的方法和裝置。獲得一個具有與操作系統(tǒng)相兼容的圖象格式的圖象。采用系統(tǒng)目錄中的圖象生成對應(yīng)于操作系統(tǒng)過渡的系統(tǒng)文件的內(nèi)容。
根據(jù)本發(fā)明的一種在計算機系統(tǒng)中操作系統(tǒng)過渡時顯示圖象的方法,所述方法包括生成引導圖形文件和關(guān)機圖形文件;將原始圖象文件從系統(tǒng)目錄移至臨時目錄;將已生成的引導和關(guān)機圖形文件存儲在所述系統(tǒng)目錄中;并且,將已生成的引導和關(guān)機圖形文件傳送到圖形引擎。
根據(jù)本發(fā)明的一種系統(tǒng),包括處理器;以及與所述處理器相連的存儲器,所述存儲器包含在操作系統(tǒng)過渡期間可操作地使所述處理器顯示圖象的程序代碼,所述程序代碼在由所述處理器執(zhí)行時會使得所述處理器生成引導圖形文件和關(guān)機圖形文件;將原始圖象文件從系統(tǒng)目錄移至臨時目錄;用已生成的引導和關(guān)機圖形文件代替所述系統(tǒng)目錄中的所述原始圖形文件;并且,將已生成的引導和關(guān)機圖形文件傳送到圖形引擎。
從下面對本發(fā)明的詳細說明中可以明顯地看到本發(fā)明的特征和優(yōu)點,其中圖1是使用本發(fā)明的裝置和方法的信息分配系統(tǒng)的一個實施例的系統(tǒng)方框圖。
圖2顯示了實施本發(fā)明的實施例的例示性處理器系統(tǒng)或用戶計算機系統(tǒng)。
圖3顯示了本發(fā)明的一個實施例的邏輯圖。
圖4A和圖4B顯示了依據(jù)本發(fā)明原理提供的過程流程圖的一個實施例。
圖5是依據(jù)本發(fā)明的一個實施例在操作系統(tǒng)過渡期間顯示圖象的結(jié)構(gòu)的圖。
圖6是依據(jù)本發(fā)明的一個實施例在操作系統(tǒng)過渡期間顯示圖象的進程的流程圖。
圖7是顯示依據(jù)本發(fā)明的一個實施例在操作系統(tǒng)過渡期間顯示圖象的過程700的流程圖。
具體實施例方式
這項發(fā)明是一種用以當操作系統(tǒng)在諸如啟動或關(guān)閉等過渡期間顯示圖象的方法和設(shè)備。引導圖形文件取代系統(tǒng)目錄中的引導系統(tǒng)文件。關(guān)機圖形文件取代系統(tǒng)目錄中的文件。這項技術(shù)允許操作系統(tǒng)顯示標準圖象以外的圖象。
在下面的說明里,為了解釋和讓人更好地了解這項發(fā)明,羅列了大量的細節(jié)。然而,很顯然,對于要熟練掌握這種技術(shù)的人來說,具體的細節(jié)對于這項發(fā)明的實踐并不必要。在其它實例中為了不沖淡本發(fā)明知名的電結(jié)構(gòu)與電路是以框圖形式示出的。
定義此處討論的“計算機系統(tǒng)”是一個包括能夠處理數(shù)據(jù)的電路的產(chǎn)品。計算機系統(tǒng)包括但并不局限于,通用計算機系統(tǒng)(例如,服務(wù)器,膝上電腦,桌面電腦,掌上電腦,個人電子設(shè)備等)、個人電腦(PC)、硬拷貝設(shè)備(例如,打印機,繪圖儀,傳真機等)、銀行設(shè)備(例如,自動柜員機)以及類似的設(shè)備。信息媒介是一個代表商品和服務(wù)生產(chǎn)者提供信息的網(wǎng)址,還向商家提供關(guān)于供應(yīng)商和其他商家提供的產(chǎn)品和/或服務(wù)等的相關(guān)信息。內(nèi)容指的是應(yīng)用程序、驅(qū)動程序、實用程序、有效負荷等及其組合,還包括圖形、信息材料(文章、股票報價等)和類似的內(nèi)容,或者單獨或者任意組合?!坝行ж摵伞笔侵赣脠D形或信息資料(例如文章、股票報價等)表示的消息,包括文件或應(yīng)用程序。在一個實施例中,將其在預定時間傳送到系統(tǒng)的海量存儲介質(zhì)。另外,“通信鏈路”是指通信的媒介或信道。通信鏈路包括電話線、調(diào)制解調(diào)器連接、因特網(wǎng)連接、綜合業(yè)務(wù)數(shù)字網(wǎng)(“ISDN”)連接、異步傳遞模式(ATM)連接、幀中繼連接、以太網(wǎng)連接、同軸連接、光纖連接、衛(wèi)星連接(例如數(shù)字衛(wèi)星服務(wù)等)、無線連接、射頻(RF)鏈接,電磁鏈接、雙向?qū)ず暨B接等及其組合。
另外,操作系統(tǒng)(“OS”)的加載指的是操作系統(tǒng)引導裝入程序的初始布置。在一個實施例中,在OS加載過程中,一般將一個扇區(qū)的信息從硬盤加載進系統(tǒng)存儲器?;蛘?,將引導裝入程序從網(wǎng)絡(luò)加載進系統(tǒng)存儲器。OS“引導”是指引導裝入程序的執(zhí)行。這樣將OS置于系統(tǒng)的控制下。在OS引導期間執(zhí)行的一些動作包括系統(tǒng)配置、設(shè)備檢測、驅(qū)動器加載和用戶登錄。
OS運行時間指的是引導階段的完成和由OS執(zhí)行應(yīng)用程序的開始。在一個實施例中,在OS運行時間期間,OS和用戶交互作用來執(zhí)行和/或運行應(yīng)用程序。
通電自檢(POST)指的是在加載OS前執(zhí)行的用以配置和檢測系統(tǒng)硬件的指令。
下面來介紹體現(xiàn)本發(fā)明實施例的一個例示系統(tǒng)。
圖1是使用本發(fā)明的設(shè)備和方法的信息分布系統(tǒng)10的一個實施例的系統(tǒng)方框圖。系統(tǒng)10涉及到信息媒介的提供。它包含對因特網(wǎng)用戶和系統(tǒng)輪廓文件的安全和私人儲存庫的構(gòu)造和維護,這些主要是從授權(quán)服務(wù)注冊、因特網(wǎng)服務(wù)注冊、系統(tǒng)輪廓文件、用戶偏好中收集的。最初,這些信息用于向所購買的硬件和軟件產(chǎn)品的制造商以及在線或其他服務(wù)的供應(yīng)商注冊用戶。隨著時間的過去,用戶數(shù)據(jù)用于生成一個用戶輪廓文件,并通知用戶相關(guān)軟件的更新和升級,以鼓勵在線購買相關(guān)產(chǎn)品,并允許一對一的定做市場和其他服務(wù)。
在一個實施例中,兩個軟件模塊用來實現(xiàn)本發(fā)明的各個實施例。一個軟件駐留于用戶系統(tǒng)中,用來訪問一個預定網(wǎng)址。例如,在一個實施例中,操作系統(tǒng)和基本輸入輸出系統(tǒng)(BIOS)預先安裝在一個計算機系統(tǒng)中,當計算機系統(tǒng)隨后首次啟動時,一個出于討論的目的被稱為第一軟件模塊(在一個實施例中,第一軟件模塊是將在下文中描述的初始啟動應(yīng)用程序(ISUA))的應(yīng)用程序?qū)⒃试S一個或多個可執(zhí)行程序在引導前的環(huán)境中啟動。在一個實施例中,第一軟件模塊使一個或多個可執(zhí)行程序在OS的加載、引導、執(zhí)行與/或運行之前的啟動變得容易。在一個實施例中,用戶被鼓勵選擇使用像這樣的程序(即,第一軟件模塊的使用),在另一個實施例中,程序是自動啟動的。包含在第一軟件模塊中的程序能夠使工具和實用程序在適當?shù)臅r間以正確的用戶授權(quán)運行,還允許用戶通過PC機上的因特網(wǎng)連接下載一個包括驅(qū)動程序、應(yīng)用程序和附加有效負荷的第二軟件模塊。如果OS不能成功地啟動,程序還可以提供系統(tǒng)的遠程管理。
一旦第二個軟件模塊被傳遞過來,它可成為駐留存儲器的程序,并且禁止第一軟件模塊的傳送的拷貝。仍然駐留在系統(tǒng)的非易失性存儲器中的第一軟件模塊的原始拷貝保持空閑,直到第二軟件模塊不能工作、遭破壞或被刪除為止,此時,又傳送第一軟件模塊的原始拷貝如上所述。第二軟件模塊包括將用戶和因特網(wǎng)上的特定服務(wù)連接起來并指導用戶到預定網(wǎng)址上尋求授權(quán)來下載更多的預約資料的一個應(yīng)用程序。第二軟件模塊還包括和第一軟件模塊的內(nèi)容相同或相近的內(nèi)容。
在一個實施例中,系統(tǒng)還可以包括一個存儲在只讀存儲器BIOS(ROMBIOS)中的初始有效負荷。在一個實施例中,初始有效負荷是第一軟件模塊(例如,ISUA)的一部分。在另一個實施例中,初始有效負荷作為一個模塊存儲在ROM BIOS中,同第一軟件模塊分開。在一個實施例中,初始有效負荷是從ROM BIOS中啟動,并在通電自檢(POST)之后,但在OS引導、加載和/或執(zhí)行之前顯示在屏幕上。這將在預定時間上發(fā)生,例如在系統(tǒng)被制造、裝配和檢測時,或者在終端用戶首次激活系統(tǒng)時。在另一個實施例中,這個初始有效負荷在預定時間被復制到預定位置(比如系統(tǒng)的硬盤中),例如在系統(tǒng)被制造、裝配和檢測時,或者當終端用戶首次激活系統(tǒng)時。一旦被復制,有效負荷在POST之后、OS操作之前執(zhí)行,并在屏幕上顯示圖形、廣告、動畫、聯(lián)合圖象專家組(JPEG)/運動圖象專家組(MPEG)格式的資料。當附加程序和/或有效負荷(通過因特網(wǎng)或其他外部連接)被傳送時,在OS引導前和引導過程中,顯示屏將被用于以消息或圖形的方式提供定制屏幕。另外,除了隨后的從網(wǎng)站上下載的程序(例如第二軟件模塊)之外,在第一軟件模塊中傳送的可執(zhí)行程序可以用來檢測PC以決定所安裝的設(shè)備、驅(qū)動程序和應(yīng)用程序的各種類型。在一個實施例中,如同在題目為“在計算機上自動安裝和配置軟件的方法和設(shè)備”的其內(nèi)容在此作為參考的共同未決的美國專利申請的序列號09/336,289中所描述的,第一軟件模塊用于為用戶識別和自動生成快捷方式和/或書簽。從網(wǎng)站上下載的程序包括基于用戶偏好收集和維護的用戶輪廓文件的軟件。這些信息提供給信息媒體,信息媒體隨后根據(jù)信息將信息和/或所編輯數(shù)據(jù)的一部分提供給供應(yīng)商和其他商家,以便獲得供應(yīng)商和其他商家提供的信息的更新或修訂。
參考圖1,信息分布系統(tǒng)10包括通過一條或者多條通信鏈路301-30N與一臺或多臺用戶計算機系統(tǒng)401-40N(“40”)連接起來的服務(wù)中心20。服務(wù)中心20包括一個或多個服務(wù)器22、一個或多個數(shù)據(jù)庫24以及一個或多個計算機261-26M。一個或多個計算機261-26M可以由多個用戶計算機系統(tǒng)401-40N同時訪問。如果使用了多個計算機,則計算機261-26M可以通過局域網(wǎng)(LAN)或其他相似的連接技術(shù)進行連接。然而,對于服務(wù)中心20來說,也可以有其他配置。例如,較少數(shù)目的大型計算機(比如少數(shù)的主機、小型計算機等),帶有在大型計算機上運行的、能夠與用戶計算機建立通信鏈路的一些內(nèi)部程序和進程。
服務(wù)中心20也可以連接到遠程網(wǎng)絡(luò)50(例如因特網(wǎng))或者遠程位置(例如在附圖1中沒有顯示的衛(wèi)星)。遠程網(wǎng)絡(luò)50或者遠程位置允許服務(wù)中心20提供可能存儲在服務(wù)中心20中的更廣泛的計算機軟件、內(nèi)容等。與服務(wù)中心計算機、例如261相連接的一個或多個數(shù)據(jù)庫24用于存儲包括在計算機26上可用的計算機軟件的數(shù)據(jù)庫項。在一個實施例中,每個用戶計算機401-40N都有自己的不能被其他計算機訪問的安全數(shù)據(jù)庫(未顯示)。通信鏈路301-30N允許一個或多個用戶計算機系統(tǒng)401-40N同時和計算機261-26M連接。連接由服務(wù)器22管理。
在一個用戶計算機系統(tǒng)40與信息服務(wù)計算機26建立雙向通信之后,將內(nèi)容以下述方式傳送到用戶計算機系統(tǒng)40。下載的內(nèi)容包括一個用來檢測用戶和/或用戶計算機系統(tǒng)的硬件和/或軟件以便開發(fā)一個用戶輪廓文件以及用戶系統(tǒng)的輪廓文件的應(yīng)用程序。從用戶和/或用戶計算機系統(tǒng)搜集的信息隨后被提供給服務(wù)中心20,服務(wù)中心20根據(jù)用戶和系統(tǒng)輪廓文件向用戶計算機40提供附加內(nèi)容。與服務(wù)計算機26相連的數(shù)據(jù)庫的數(shù)據(jù)庫項包括關(guān)于計算機軟件、硬件和用戶可以使用的第三方服務(wù)和產(chǎn)品的信息。在用戶和/或系統(tǒng)輪廓文件基礎(chǔ)上,內(nèi)容進一步被傳送給用戶計算機來顯示。該內(nèi)容還包括信息摘要,例如現(xiàn)有計算機軟件的補丁和糾錯的可用性、現(xiàn)有計算機軟件的新版本、全新計算機軟件、新的幫助文件等。該內(nèi)容還包括關(guān)于硬件和用戶感興趣的第三方產(chǎn)品和服務(wù)的可用性的信息。用戶能夠從可用產(chǎn)品和服務(wù)摘要中做出一個或多個選擇,要求將產(chǎn)品從服務(wù)計算機26傳送到用戶計算機?;蛘?,用戶也可以從可用產(chǎn)品和服務(wù)摘要中購買所需的產(chǎn)品或服務(wù)。
圖2顯示了實現(xiàn)本發(fā)明的實施例的一個例示計算機系統(tǒng)100。計算機系統(tǒng)100顯示了用戶計算機系統(tǒng)401-40N和/或計算機261-26M(圖1)的一個實施例,但也可以容易地使用其他的實施例。
參考圖2,計算機系統(tǒng)100包括處理器或中央處理單元(CPU)104。所示的CPU 104包括一個進行計算的算術(shù)邏輯單元(ALU)、一個用于臨時存儲數(shù)據(jù)和指令的寄存器集合和一個控制系統(tǒng)100的操作的控制單元。在一個實施例中,CPU 104包括IntelTM公司出售的X86、PentiumTM、PentiumIITM、Pentium ProTM微處理器、AMDTM出售的K-6微處理器、或者CyrixTM公司出售的6x86MX微處理器中的任意一種。更多的例子還包括DigitalEquipment CorporationTM(數(shù)字設(shè)備公司)出售的AlphaTM處理器、MotorolaTM出售的680X0處理器、或者IBMTM出售的Power PCTM處理器。另外,包括Sun Microsystems、MIPS、IBM、Motorola、NEC、Cyrix、AMD、Nexgen和其他公司出售的其他處理器種類中的任何一種都能用于實現(xiàn)CPU 104。CPU104不僅僅局限于微處理器,還可以有其他形式,如微控制器、數(shù)字信號處理器、精簡指令集計算機(RISC)、應(yīng)用專用集成電路等。盡管只顯示了一個CPU 104,計算機系統(tǒng)100也可以包括多個處理單元。
CPU 104通過CPU總線108與總線控制器112相連。總線控制器112包括集成在其內(nèi)的存儲器控制器116,但存儲器控制器116也可以在總線控制器112外部。存儲器控制器116提供了CPU 104或其他設(shè)備經(jīng)存儲器總線120訪問系統(tǒng)存儲器124的接口。在一個實施例中,系統(tǒng)存儲器124包括同步動態(tài)隨機存取存儲器(SDRAM)。系統(tǒng)存儲器124可以可選地包括附加的或者可替代的高速存儲設(shè)備或存儲電路。總線控制器112與系統(tǒng)總線128相連,系統(tǒng)總線128可以是外設(shè)部件互連(PCI)總線、工業(yè)標準結(jié)構(gòu)(ISA)總線等。同系統(tǒng)總線128相連的是圖形控制器、圖形引擎或視頻控制器132、海量存儲設(shè)備152、通信接口設(shè)備156、一個或多個輸入/輸出(I/O)設(shè)備1681-168N、以及擴展總線控制器172。視頻控制器132與能夠在如數(shù)字144所指示的一單個卡或設(shè)備上集成的視頻存儲器136(例如8兆字節(jié))和視頻BIOS 140相連。視頻存儲器136用于容納在顯示屏148上顯示信息的顯示數(shù)據(jù),視頻BIOS 140包括用于控制視頻控制器132的代碼和視頻服務(wù)。在另一個實施例中,視頻控制器132通過高級圖形端口(AGP)總線和CPU 104相連接。
海量存儲設(shè)備152包括(但不僅僅局限于)硬盤、軟盤、CD-ROM、DVD-ROM、磁帶、高密度軟盤、高容量可拆卸媒體、低容量可拆卸媒體、固態(tài)存儲設(shè)備等及其組合。海量存儲設(shè)備152還可以包括任何其他海量存儲媒體。通信接口設(shè)備156包括網(wǎng)卡、調(diào)制解調(diào)器接口等,用于通過通信鏈路160訪問網(wǎng)絡(luò)164。I/O設(shè)備1681-168N包括鍵盤、鼠標、聲卡、打印機和類似設(shè)備。I/O設(shè)備1681-168N可以是盤驅(qū)動器、例如緊致盤驅(qū)動器、數(shù)字盤驅(qū)動器、磁帶驅(qū)動器、高速驅(qū)動器、強化驅(qū)動器、數(shù)字視盤(DVD)驅(qū)動器、固態(tài)存儲設(shè)備、磁光盤驅(qū)動器、高密度軟盤驅(qū)動器、高容量可拆卸驅(qū)動器、低容量媒體設(shè)備和/或其任何組合。擴展總線控制器172與包括系統(tǒng)固件176的非易失性存儲器175相連。系統(tǒng)固件176包括用來控制計算機系統(tǒng)100中的硬件設(shè)備及其它實體的系統(tǒng)BIOS82。系統(tǒng)固件176還包括ROM180和閃存(或EEPROM)184。擴展總線控制器172還與具有RAM、ROM和/或閃存(未顯示)的擴展存儲器188相連接。系統(tǒng)100另外還包括與總線控制器112相連接的存儲器模塊190。在一個實施例中,存儲器模塊190包括ROM 192和閃存(或EEPROM)194。
對于本領(lǐng)域普通技術(shù)人員來說熟悉的是,計算機系統(tǒng)100還包括一個操作系統(tǒng)(OS)和至少一個應(yīng)用程序,在一個實施例中,將OS與應(yīng)用程序從海量存儲器152載入系統(tǒng)存儲器124并在POST之后啟動。OS包括但并不局限或限制在包括DOS、WindowsTM(例如Windows95TM,Windows98TM,WindowsNTTM等)、Unix、Linux、OS/2、OS/9、Xenix等中的任何一種OS類型。操作系統(tǒng)是控制計算機系統(tǒng)的操作和資源分配的一個或多個程序的集合。應(yīng)用程序是執(zhí)行用戶所要求的任務(wù)的一個或多個軟件程序的集合。
根據(jù)計算機編程領(lǐng)域普通技術(shù)人員的實踐,除非另外指明,在下文中參考由計算機系統(tǒng)100執(zhí)行的操作的符號表示來描述本發(fā)明。這樣的操作有時稱作是由計算機執(zhí)行的。這樣將認識到,以符號表示的操作包括由CPU104對表示數(shù)據(jù)比特的電信號的處理和數(shù)據(jù)比特在系統(tǒng)存儲器124中的存儲單元上的維護,以及其他的信號處理。維護數(shù)據(jù)比特的存儲單元是有與數(shù)據(jù)比特相符合的特定的電、磁、光或有機特性的物理區(qū)域。
當以軟件實施時,本發(fā)明的元素實質(zhì)上是執(zhí)行必要任務(wù)的代碼段。程序或代碼段可以被存儲在處理器可讀媒體中或以包含在載波中的計算機數(shù)據(jù)信號在傳播媒體或通信鏈路上發(fā)送?!疤幚砥骺勺x媒體”包括能夠存儲或傳送信息的任何媒體。處理器可讀媒體的例子包括電子線路、半導體存儲設(shè)備、ROM、閃存、可擦除ROM(EROM)、軟盤、CD-ROM、光盤、硬盤、光纖媒體、射頻(RF)鏈路等。計算機數(shù)據(jù)信號包括能夠在諸如電子網(wǎng)絡(luò)信道、光纖、空中、電磁、射頻鏈路等的傳輸媒體上傳播的任何信號。代碼段可通過因特網(wǎng)、內(nèi)聯(lián)網(wǎng)等計算機網(wǎng)絡(luò)下載。
圖3顯示了計算機系統(tǒng)100的邏輯圖。參考圖2和3,系統(tǒng)固件176包括在POST期間載入系統(tǒng)存儲器124并在隨后由處理器104執(zhí)行的軟件模塊和數(shù)據(jù)。在一個實施例中,系統(tǒng)固件176包括一個具有系統(tǒng)BIOS處理程序、硬件例程等的系統(tǒng)BIOS模塊82、一個ROM應(yīng)用程序接口(RAPI)模塊84、一個初始啟動應(yīng)用程序(ISUA)模塊86、一個初始有效負荷88a、密鑰90、密碼引擎92和顯示引擎94。系統(tǒng)固件176的上述模塊和部分包含于ROM180和/或閃存184中?;蛘撸到y(tǒng)固件176的上述模塊和部分也可以包含于ROM190和/或閃存194中。RAPI 84、ISUA 86和初始有效負荷88a每一個都在最初使用計算機系統(tǒng)100之前單獨地開發(fā)并存諸在系統(tǒng)固件176中。在一個實施例中,RAPI 84、ISUA 86和初始有效負荷88a每一個都包括由Phoenix Technologies,Ltd開發(fā)的專有軟件。RAPI 84提供了ROM應(yīng)用程序和系統(tǒng)固件176之間的安全接口。在轉(zhuǎn)讓給Phoenix Technologies,Ltd的1999年6月18日提交的、題目為“安全使用基本輸入輸出(BIOS)服務(wù)的系統(tǒng)和方法”的共同未決的美國專利申請的序列號09/336,889中描述了RAPI 84的一個實施例,其內(nèi)容在此作為參考。在轉(zhuǎn)讓給PhoenixTechnologies,Ltd的1999年6月18日提交的題目為“在計算機上自動安裝和配置軟件的方法和設(shè)備”的共同未決的美國專利申請的序列號09/336,289中描述了ISUA 86的一個實施例,其內(nèi)容在此作為參考。
如圖3和4A和4B所示的一個實施例中,在最初對一個新的計算機系統(tǒng)100加電之后,系統(tǒng)以POST過程開始。在初始POST期間,ISUA 86被傳送到海量存儲設(shè)備152,如A1所示。在一個實施例中,這樣的傳送是在制造和/或裝配過程中當系統(tǒng)100在操作系統(tǒng)安裝之后(但是在載入和運行操作系統(tǒng)之前)首次加電時進行的。在另一個實施例中,這樣的傳送是在制造和/或裝配過程之后在用戶收到和加電系統(tǒng)100之后進行的。在另一個可代替實施例中,在ISUA 86傳送期間,附加程序、應(yīng)用程序、驅(qū)動程序、數(shù)據(jù)、圖形和其他信息也可以被傳送(例如,從ROM)到海量存儲器152。例如,傳送包括初始有效負荷88a到海量存儲器152的傳送,隨后從海量存儲器152傳遞出初始有效負荷。在1999年6月18日提交的、轉(zhuǎn)讓給PhoenixTechnologies,Ltd的題目為“一種從系統(tǒng)固件向存儲設(shè)備傳送應(yīng)用程序的系統(tǒng)和方法”的共同未決的美國專利申請的序列號09/336,067中描述了用于這種傳送的系統(tǒng)和過程的一個實施例,其內(nèi)容在此作為參考。在1999年3月19日提交的、題目為“一種提供基于存儲器的設(shè)備仿真的方法和設(shè)備”的共同未決的美國專利申請的序列號09/272,859、在1999年6月18日提交的、題目為“提供基于存儲器的設(shè)備仿真的方法和設(shè)備”的共同未決的美國專利部分繼續(xù)申請的序列號09/272,859_、以及1999年6月18日提交的、題目為“在海量存儲器中插入一個或者多個文件的系統(tǒng)和方法”的共同未決的美國專利申請的序列號09/336,281中描述了用于這種傳送的系統(tǒng)和過程的其它實施例,每一個申請都轉(zhuǎn)讓給本發(fā)明的受讓人PhoenixTechnologies,Ltd,其內(nèi)容在此作為參考。
在一個實施例中,ISUA 86是一個確定是否有駐留在終端用戶系統(tǒng)中的預安裝程序的計算機軟件可執(zhí)行程序。如果是,它將識別那些預安裝的程序,并(在Windows操作系統(tǒng)的情況下,在桌面上)生成快捷方式或書簽,來允許用戶自動啟動程序。在這個實施例中,如下所述可執(zhí)行程序也能夠啟動和建立與服務(wù)器22和/或任何一個服務(wù)計算機26(圖1)上的一個或者多個應(yīng)用程序的雙向通信。此外,在一個實施例中,初始有效負荷88a中的圖形內(nèi)容在POST期間通過顯示引擎94顯示在用戶的顯示器上?;蛘撸跏加行ж摵?8a中的圖形內(nèi)容可以在隨后的引導過程之后顯示。例如,作為下述的用戶輪廓文件的一部分,用戶會被詢問他或她是否想獲得關(guān)于一種或多種產(chǎn)品和/或服務(wù)的附加信息。如果用戶這樣要求,所需產(chǎn)品和或服務(wù)的相關(guān)內(nèi)容在隨后的引導過程期間被顯示。
一旦POST完成,OS被加載、執(zhí)行和初始化。然后標準的OS驅(qū)動程序和服務(wù)程序被加載。然后提示用戶輸入包括諸如年齡、性別、愛好等人口統(tǒng)計信息的注冊信息。另外,執(zhí)行ISUA 86,在后臺運行,保持空閑狀態(tài)直到它檢測到通過圖2的網(wǎng)絡(luò)164(例如,因特網(wǎng))在計算機系統(tǒng)100與遠程服務(wù)器(例如圖1中的服務(wù)器22)之間建立的通信鏈路。在一個實施例中,ISUA 86可以通過操作系統(tǒng)查找,以確定是否有已經(jīng)加載和已經(jīng)安裝在系統(tǒng)上的應(yīng)用程序。如果有,一旦通信鏈路建立,ISUA 86能自動為應(yīng)用程序提供快捷方式和/或書簽來發(fā)送進一個預定的服務(wù)器。這個通信鏈路可以通過套接字以一個網(wǎng)絡(luò)協(xié)議堆棧(比如TCP/IP)或任何其他的本領(lǐng)域已知雙向通信技術(shù)來建立。一旦建立了通信鏈路30,ISUA 86向服務(wù)器22(如A2所示)發(fā)出一個請求信號,以便從一個內(nèi)容模塊60下載一個初始內(nèi)容程序包62。響應(yīng)這個請求,服務(wù)器下載這個初始內(nèi)容程序包62(如A3所示),在一個實施例中,該初始內(nèi)容程序包62被存儲在海量存儲器152中。在一個實施例中,初始內(nèi)容62和后續(xù)內(nèi)容64可以單獨開發(fā),在服務(wù)器22上存儲初始內(nèi)容62和后續(xù)內(nèi)容64之前,將每個內(nèi)容都用密鑰進行加密和/或數(shù)字簽名。當初始內(nèi)容62和或/后續(xù)內(nèi)容64隨后被下載進系統(tǒng)100中時,密碼引擎92將使用密鑰90對初始內(nèi)容62和/或后續(xù)內(nèi)容64進行解密。
如上所述,初始內(nèi)容程序包62包括應(yīng)用程序62a、驅(qū)動程序62b和有效負荷62c。在一個實施例中,應(yīng)用程序62a包括一個數(shù)據(jù)加載應(yīng)用程序和一個輪廓文件管理器應(yīng)用程序。數(shù)據(jù)加載應(yīng)用程序以與ISUA 86相同或相似的方式工作,一旦下載,則禁止并替代ISUA 86。更具體地,數(shù)據(jù)加載應(yīng)用程序是一個也能夠啟動、建立和結(jié)束服務(wù)器22和計算機系統(tǒng)100之間的雙向通信的計算機軟件程序。數(shù)據(jù)加載應(yīng)用程序還提供服務(wù)器22和計算機系統(tǒng)100之間的通信控制管理、以及促進終端用戶系統(tǒng)和指定服務(wù)器之間的通信和下載到終端用戶系統(tǒng)的內(nèi)容等其他功能。
輪廓文件管理器根據(jù)用戶偏好、系統(tǒng)硬件和在計算機系統(tǒng)100上安裝的軟件獲得計算機系統(tǒng)100的用戶和系統(tǒng)的輪廓文件。在獲得計算機系統(tǒng)100的用戶和系統(tǒng)輪廓文件基礎(chǔ)上,輪廓文件管理器應(yīng)用程序?qū)⒔Y(jié)果傳送給數(shù)據(jù)加載應(yīng)用程序,數(shù)據(jù)加載應(yīng)用程序隨后將這些信息提供給服務(wù)器22,服務(wù)器22將用戶告訴的偏好與數(shù)據(jù)庫24(圖1)進行匹配。結(jié)果可以在預定的時間間隔或根據(jù)用戶要求被傳送。然后,服務(wù)器22處理用戶輪廓文件或人口統(tǒng)計學數(shù)據(jù),并將內(nèi)容對準有相似輪廓文件的用戶。另外,多個用戶的用戶輪廓文件數(shù)據(jù)在服務(wù)器22中被編譯和集合來生成一個總體用戶輪廓文件模型。然后將內(nèi)容傳送到以用戶輪廓文件數(shù)據(jù)和/或總體用戶輪廓文件模塊為基礎(chǔ)的用戶的計算機系統(tǒng)上(如A4所示)。后續(xù)內(nèi)容64被下載并存儲在系統(tǒng)固件176中,由數(shù)字88b所示。在一個實施例中,后續(xù)內(nèi)容64被保存在非易失性存儲器、例如閃存或EEPROM中,如同本領(lǐng)域普通技術(shù)人員所熟知的,后續(xù)內(nèi)容的加載是通過重新擦寫ROM完成的。后續(xù)內(nèi)容64也可以作為一個或多個文件存儲在海量存儲器152中或被用于修正WindowsTM系統(tǒng)文件(在WindowsTM環(huán)境下)。輪廓文件收集過程在計算機系統(tǒng)100活動期間一直繼續(xù)。在一個實施例中,內(nèi)容可以在服務(wù)器22接收并分析了用戶的輪廓文件之后才下載。
當計算機系統(tǒng)100隨后被加電時(見圖4B),系統(tǒng)再次執(zhí)行POST。然后,在加載和/或執(zhí)行操作系統(tǒng)之前,顯示先前下載和保存在系統(tǒng)固件176中且有關(guān)版權(quán)問題已經(jīng)解決的內(nèi)容。在WindowsTM環(huán)境中,在初始加載操作系統(tǒng)期間顯示的WindowsTM徽標隨后被一個或多個顯示保存在系統(tǒng)固件176中的以前下載的內(nèi)容的屏幕所代替。
在與再閃爍ROM不同將內(nèi)容作為一個或者多個文件存儲在海量存儲器152中的情況下,在引導或關(guān)閉時顯示的WindowsTM徽標可以被改變或替換。將引導Windows顯示文件取名為LOGO.SYS,通常位于Windows目錄中。首先將WindowsTMLOGO.SYS文件從Windows目錄傳送到其他目錄。然后,將內(nèi)容圖形文件重命名為LOGO.SYS并傳送到Windows目錄下。當操作系統(tǒng)初次被運行時,操作系統(tǒng)將恢復這個文件,因此,內(nèi)容在顯示器上顯示。WindowsTM期望LOGO.SYS文件是圖形分辨率為320×400和256色的一個位圖文件,盡管WindowsTM后來為了顯示的目的將圖象分辨率擴展到640×400。因此,內(nèi)容圖形文件要成為同樣的圖形格式(在重命名為LOGO.SYS之前通常以“.BMP”為擴展名進行命名)。
操作系統(tǒng)然后被加載、執(zhí)行和初始化。標準操作系統(tǒng)驅(qū)動程序和應(yīng)用程序也被加載。輪廓文件管理器被執(zhí)行。當已經(jīng)建立與預定網(wǎng)站的鏈接時,附加的內(nèi)容會被下載和隨后被顯示。這樣的附加內(nèi)容既可以任意地被提供,也可以根據(jù)從用戶或用戶系統(tǒng)的調(diào)查中獲得的信息被提供。在一個實施例中,一旦引導過程完成,顯示屏的一部分將被用來提供用于訪問關(guān)于以前顯示過的消息或廣告的詳細信息的圖標和快捷方式。在更進一步的實施例中,消息或廣告在關(guān)閉過程期間可以再次被顯示,例如,用其他的選擇內(nèi)容來替換屏幕顯示的“Windows正在關(guān)機”或“現(xiàn)在可以安全關(guān)閉你的計算機”等消息。
圖5是顯示依據(jù)本發(fā)明的一個實施例在操作系統(tǒng)過渡期間顯示圖象的結(jié)構(gòu)500的圖。結(jié)構(gòu)500包括根目錄510、系統(tǒng)目錄520、臨時目錄530、系統(tǒng)文件522、524和526、引導圖形文件532和關(guān)機圖形文件534。
根目錄510一般是操作系統(tǒng)所在的海量存儲器中的C\驅(qū)動器。系統(tǒng)目錄520一般是存儲操作系統(tǒng)的目錄,這個操作系統(tǒng)在BIOS導入時被加載進系統(tǒng)存儲器。在一個實施例中,操作系統(tǒng)是WINDOWS操作系統(tǒng)并且系統(tǒng)目錄或文件夾的名字是Windows。
當BIOS加載Windows操作系統(tǒng)時,執(zhí)行一個輸入/輸出程序(歷史名是同行人都知道的“輸入/輸出”的IO.SYS),并且IO.SYS試圖在缺省目錄、例如根目錄和Windows中定位并加載系統(tǒng)文件。LOGO.SYS系統(tǒng)文件522在OS引導時使用。LOGO.SYS一般包括一個顯示W(wǎng)indows啟動徽標的圖象文件。
當系統(tǒng)被關(guān)閉時,Windows操作系統(tǒng)檢索LOGOW.SYS系統(tǒng)文件524和LOGOS.SYS系統(tǒng)文件526,并在顯示屏上顯示相應(yīng)的徽標圖象。LOGOW.SYS系統(tǒng)文件524一般包含消息“您的計算機正在關(guān)閉,請等候”。LOGOS.SYS系統(tǒng)文件526一般包含消息“現(xiàn)在您可以安全關(guān)機了”。
引導圖形文件532是包含在OS引導過程中顯示的圖象的代替LOGO.SYS系統(tǒng)文件522的文件。關(guān)機圖形文件534是包含在OS關(guān)機過程中顯示的圖象的代替LOGOW.SYS系統(tǒng)文件524和LOGOS.SYS系統(tǒng)文件526的文件。
圖6是依據(jù)本發(fā)明的一個實施例在操作系統(tǒng)過渡期間顯示圖象的過程600的流程圖。
在啟動時,過程600采用位圖格式創(chuàng)建一個引導圖形文件和一個關(guān)機圖形文件(框610)。然后過程600在系統(tǒng)目錄下定位和檢索初始LOGO.SYS、LOGOW.SYS和LOGOS.SYS系統(tǒng)文件,并將其用不同的擴展名或名字保存在臨時目錄下,以便它們以后能夠被使用(框620)。
然后,該過程將所創(chuàng)建的引導和關(guān)機圖形文件重新命名為用于引導的LOGO.SYS和用于關(guān)機的LOGOW.SYS或LOGOS.SYS(框630)。接下來,將這些重新命名的文件發(fā)送到初始系統(tǒng)文件所處的系統(tǒng)目錄下(框640)。然后過程600結(jié)束。
在另一個實施例中,可以從圖形存儲器獲得要在引導和關(guān)機過程中顯示的圖象。Windows啟動和關(guān)機屏幕的替代在Windows OS啟動和關(guān)機或隨后的PC啟動和關(guān)機過程中顯示有用信息的環(huán)境中是可以應(yīng)用的。
在固件初始化(例如,BIOS POST)過程中,一旦適配器硬件被初始化,圖形引擎立即在標準視頻圖形適配器(VGA)中產(chǎn)生一個圖象。所用的分辨率為320×400,顏色為256色。用于產(chǎn)生圖象的數(shù)據(jù)包含在BIOS閃存內(nèi)。這些數(shù)據(jù)由OS外部的程序定期地更新。
在BIOS將硬盤驅(qū)動器的硬件初始化之后,將圖形數(shù)據(jù)(例如,調(diào)色板和位圖信息)存儲到使用支持文件分配表(FAT)16文件系統(tǒng)格式的代碼的硬盤驅(qū)動器上。這個代碼獨立于OS,但是對于寫硬盤驅(qū)動器提供與OS相同的作用。在寫硬盤驅(qū)動器之前,這個代碼檢查文件系統(tǒng)的兼容性和OS的類型。存儲圖形數(shù)據(jù)的文件系統(tǒng)中文件的位置和名字對應(yīng)于Windows LOGO.SYS文件。這個文件也被存儲到Windows根目錄下。Windows目錄的具體路徑來源于引導驅(qū)動器的根目錄下的MSDOS.SYS文本文件。這個文件其中包括后面緊跟目錄路徑的字符串“WinDir=”及其它信息。在那個目錄下所用的文件名是LOGOW.SYS和LOGOS.SYS。
在Windows 95中,在硬盤驅(qū)動器的引導塊之后裝入的第一個文件是IO.SYS。這個文件在從引導驅(qū)動器的根目錄加載Windows LOGO圖形文件之前搜索一些文件系統(tǒng)壓縮驅(qū)動器。IO.SYS將VGA轉(zhuǎn)換成分辨率為320×400、256色的圖形模式。然后加載包含標準Windows位象的logo.sys文件。當Windows95關(guān)機時,顯示在Windows目錄下找到的在LOGOW.SYS和LOGOS.SYS名下的另外兩個圖象。Windows順序顯示這兩個圖象,而其間沒有可見的中斷。將相同的圖象存儲在這兩個文件中使人感覺只是一個圖象在顯示。
這個過程的偽代碼如下1.調(diào)用圖形引擎來將數(shù)據(jù)繪制進VGA卡存儲器。
2.識別硬盤驅(qū)動器上的文件系統(tǒng)和OS。如果是不支持的類型則轉(zhuǎn)到步驟8。
3.調(diào)用屏幕捕獲例程以從VGA卡提取出圖象并將圖象寫入臨時Windows位圖文件。
4.確定LOGOW.SYS和LOGOS.SYS在文件系統(tǒng)上的位置。
5.將臨時Windows位圖文件拷貝到引導驅(qū)動器的根目錄下的LOGO.SYS中。
6.將臨時Windows位圖文件拷貝到事先定位的目錄下的LOGOW.SYS和LOGOS.SYS中。
7.刪除臨時BMP文件。
8.繼續(xù)機器引導過程(完成硬件初始化和加載OS)。
在此過程中的任何差錯都將導致機器進行到步驟8中的正常引導過程。
圖7是顯示依據(jù)本發(fā)明的一個實施例在操作系統(tǒng)過渡期間顯示圖象的過程700的流程圖。
在開始后,過程700在圖形控制器或視頻顯示適配器中的圖形存儲器中繪制圖形數(shù)據(jù)(框710)。這種繪制可以作為引導前的圖象顯示活動的一部分來執(zhí)行,也可以作為系統(tǒng)引導后的正常圖形繪制過程的一部分來執(zhí)行。過程700識別硬盤驅(qū)動器上的文件系統(tǒng)和操作系統(tǒng)(框715)。然后,過程700確定文件系統(tǒng)或OS是否受技術(shù)支持(框720)。如果否,過程700結(jié)束。
如果支持系統(tǒng)文件或OS,過程700從圖形存儲器中取出圖象(框720)。這可以通過多種技術(shù)獲得。一種簡單的技術(shù)是利用屏幕捕獲程序去捕獲圖形存儲器。然后,過程700將提取的圖象寫入一個具有與操作系統(tǒng)兼容的格式(例如,位圖)的臨時文件中(框730)。在一個實施例中,操作系統(tǒng)是一個與Windows兼容的OS,文件格式是分辨率為320×400的位圖格式。
接著,過程700確定與在引導或關(guān)機過程中顯示的一個圖象或多個圖象對應(yīng)的系統(tǒng)文件的位置。例如,如果OS是一個與Windows兼容的OS,則引導系統(tǒng)文件是LOGO.SYS,關(guān)機系統(tǒng)文件是LOGOW.SYS和LOGOS.SYS。然后,過程700將在框730中生成的臨時位圖文件拷貝到存儲相應(yīng)的引導或關(guān)機系統(tǒng)文件的系統(tǒng)目錄下(框740)。然后,如果必要的話,過程700刪除臨時文件(方框745)。接著,過程700繼續(xù)引導過程和操作系統(tǒng)的加載(框750)。注意,如果在除了引導之外的其他時間執(zhí)行這個過程,則框750中的活動是系統(tǒng)的正?;顒印H缓筮^程700結(jié)束。
因此,本發(fā)明是在操作系統(tǒng)過渡期間顯示圖象的一種有效的技術(shù)。用于引導的LOGO.SYS系統(tǒng)文件由引導圖形文件代替。用于關(guān)機的LOGOS.SYS和/或LOGOW.SYS由關(guān)機圖形文件代替。這種技術(shù)允許顯示W(wǎng)indows徽標之外的圖象。
雖然已經(jīng)參考例示性實施例說明了本發(fā)明,但該說明并不是限定性的。對于本領(lǐng)域普通技術(shù)人員來說顯而易見的例示性實施例以及本發(fā)明的其他實施例的各種修改認為是落入本發(fā)明的精神和范圍之內(nèi)。
權(quán)利要求
1.一種系統(tǒng),包括處理器;以及與所述處理器相連的存儲器,所述存儲器包含在操作系統(tǒng)過渡期間可操作地使所述處理器顯示圖象的指令,所述指令在由所述處理器執(zhí)行時會使得所述處理器生成引導圖形文件和關(guān)機圖形文件;將原始圖象文件從系統(tǒng)目錄移至臨時目錄;用已生成的所述引導和關(guān)機圖形文件代替所述系統(tǒng)目錄中的所述原始圖形文件;并且將已生成的所述引導和關(guān)機圖形文件傳送到圖形引擎。
2.根據(jù)權(quán)利要求1所述的系統(tǒng),其中,所述指令在由所述處理器執(zhí)行時還使得所述處理器將所述引導和關(guān)機圖形文件的延伸改變至所述原始圖象文件的延伸。
3.根據(jù)權(quán)利要求1所述的系統(tǒng),其中,所述操作系統(tǒng)與Windows操作系統(tǒng)兼容。
4.根據(jù)權(quán)利要求3所述的系統(tǒng),其中,所述引導和關(guān)機圖形文件是位圖格式。
5.根據(jù)權(quán)利要求4所述的系統(tǒng),其中,所述圖象具有與相應(yīng)的顯示裝置操作兼容的分辨率。
6.根據(jù)權(quán)利要求1所述的系統(tǒng),其中,所述操作系統(tǒng)過渡是一個引導序列。
7.根據(jù)權(quán)利要求6所述的系統(tǒng),其中,所述原始圖象文件是一個LOGO.SYS文件。
8.根據(jù)權(quán)利要求1所述的系統(tǒng),其中,所述操作系統(tǒng)過渡是一個關(guān)機序列。
9.根據(jù)權(quán)利要求8所述的系統(tǒng),其中,所述原始圖象文件是LOGOW.SYS文件和LOGOS.SYS文件的其中之一。
10.根據(jù)權(quán)利要求2所述的系統(tǒng),其中,所述系統(tǒng)目錄位于與操作系統(tǒng)兼容的存儲介質(zhì)上。
全文摘要
本發(fā)明是一種在計算機系統(tǒng)中的操作系統(tǒng)過渡期間顯示圖象的方法和裝置。獲得一個具有與操作系統(tǒng)兼容的圖象格式的圖象。采用系統(tǒng)目錄中的圖象生成對應(yīng)于操作系統(tǒng)過渡的系統(tǒng)文件的內(nèi)容。
文檔編號G06F9/445GK1866212SQ200610059300
公開日2006年11月22日 申請日期2000年6月18日 優(yōu)先權(quán)日1999年6月18日
發(fā)明者J·-P·阿布格拉爾 申請人:鳳凰技術(shù)有限公司