本發(fā)明涉及固件的存取與管理,特別是涉及動態(tài)地加入與儲存器組的預(yù)設(shè)固件設(shè)定值。
背景技術(shù):
計算機主機板一般包括固件以及一個相應(yīng)的固件接口,諸如基本輸入/輸出系統(tǒng)(basic input/output system,以下簡稱BIOS)或統(tǒng)一可擴展固件接口(unified extensible firmware interface,以下簡稱UEFI)。使用者可以在購買后將固件設(shè)置為預(yù)設(shè)值之外的設(shè)定值。固件也可以自定義各種配置或用途。舉例來說,一個機架伺服器可出售給不同的客戶且不同的客戶可能有他們喜愛的配置設(shè)定。供應(yīng)商可以事先預(yù)載并在固件中儲存不同配置給不同的客戶。然而,供應(yīng)商只能在每個固件上預(yù)先配置一個預(yù)設(shè)值(default setting)給一個客戶。
如果此預(yù)設(shè)值并不是客戶想要的,客戶必須通過多臺機器上執(zhí)行多個步驟來重新配置固件。舉例來說,客戶必須尋找或創(chuàng)造一配置更新檔案并搭配固件操作或更新工具使用。接著,再執(zhí)行該主機板和/或固件安裝配置更新檔案所需的特定程序例如一固件更新以更新BIOS。如此一來,將會有成本與時間部署上的困難,以及一種存在該程序無法正確完成而使得固件不能使用的風(fēng)險。當(dāng)客戶希望在多個裝置上更新或配置新的預(yù)設(shè)固件設(shè)定時,將會使這些風(fēng)險更加劇。
技術(shù)實現(xiàn)要素:
依據(jù)本發(fā)明的各種實施例提供一種主機板,包括:一連接總線,其連接一固件、一儲存裝置以及一基板管理控制器,其中固件具有一第一預(yù)設(shè)配置,其中基板管理控制器還包括一網(wǎng)絡(luò)接口,其中儲存裝置可經(jīng)由固件以及基板管理控制器中的至少一個來進行存取,以修改儲存在儲存裝置中的一附加的預(yù)設(shè)配置,且其中儲存裝置設(shè)置在固件的外部。
附圖說明
為使本發(fā)明的上述和其他目的、特征和優(yōu)點能更明顯易懂,下文特舉出一個或多個優(yōu)選實施例,并配合附圖,作詳細說明如下,其中:
圖1顯示依據(jù)本發(fā)明一實施例的用于儲存多個BIOS預(yù)設(shè)值的示范儲存裝置的示意方塊圖。
圖2顯示依據(jù)本發(fā)明實施例的一BIOS設(shè)定接口示意圖,其具有儲存裝置中附加的預(yù)設(shè)值的選項。
圖3顯示依據(jù)本發(fā)明一實施例的用以將目前設(shè)定儲存至一儲存裝置的示范方法的流程圖。
圖4顯示依據(jù)本發(fā)明一實施例的用以從一儲存裝置中還原BIOS預(yù)設(shè)值的示范方法的流程圖。
圖5顯示依據(jù)本發(fā)明一實施例的用以借助檢查一儲存裝置中的數(shù)據(jù)來載入儲存裝置中的預(yù)設(shè)值的BIOS自我開機測試方法的流程圖。
圖6顯示依據(jù)本發(fā)明一實施例的示范系統(tǒng)的示意圖。
附圖符號說明
100~裝置;
102~主機板;
104~網(wǎng)絡(luò);
106~南橋;
108~集合;
110~基本輸入/輸出系統(tǒng);
112~儲存裝置;
114~集合;
115~預(yù)設(shè)值;
116~基板管理控制器;
118~目前設(shè)定值;
120~第2個預(yù)設(shè)值;
122~第3個預(yù)設(shè)值;
200~屏幕截圖;
202~用戶界面;
204~選項;
300~方法流程圖;
300、302、304、306、308、310~執(zhí)行步驟;
400~方法流程圖;
402、404、406、408、410、412~執(zhí)行步驟;
500~方法流程圖;
502、504、506、508、510、512~執(zhí)行步驟;
600~系統(tǒng);
610~系統(tǒng)總線;
620~處理器;
622~快取存儲器;
630~存儲器;
640~ROM;
650~RAM;
660~儲存裝置;
662~模塊1;
664~模塊2;
666~模塊3;
670~輸出裝置;
680~通訊接口;
690~輸入裝置。
具體實施方式
本發(fā)明實施例提供一種用以提升固件的預(yù)設(shè)配置或設(shè)定的管理與安裝的相關(guān)系統(tǒng)、方法與計算機可讀取儲存裝置。本說明書中,術(shù)語固件和BIOS可互換使用,指的是一硬件裝置及常駐在該硬件裝置上的計算機指令的組合,例如在計算機的主機板上的BIOS或UEFI。此處所揭示的系統(tǒng)包括連接到系統(tǒng)南橋的一個附加的儲存裝置,其可儲存附加的預(yù)設(shè)固件配置設(shè)定的群組。此附加的儲存裝置可直接由固件和基板管理控制器(BMC)來存取,以使遠端實體可以經(jīng)由頻外的網(wǎng)絡(luò)連線來更新固件,而無需使用一個本機操作 系統(tǒng),也不會啟動到一個本機固件更新工具。于一實施例中,附加的儲存裝置仍可經(jīng)由一本機操作系統(tǒng)分開存取。由此,可使配置過程更加具有靈活彈性且方便用于管理多個計算機裝置,諸如可用于管理在數(shù)據(jù)中心的伺服器機架。
圖1顯示一示范的裝置100,具有一主機板102,主機板102具有一附加的儲存裝置112,其用以儲存包括一BIOS 110的主要預(yù)設(shè)值115與多個附加的預(yù)設(shè)值120、122的集合114。附加的儲存裝置112可為一可移除式儲存裝置,例如記憶儲存卡或USB快閃驅(qū)動盤,或者也可為固定的儲存裝置,例如集成在主機板102上的一存儲器芯片。雖然此處只有描述單個附加的儲存裝置112,南橋106可支持多個附加的儲存裝置。另外,一連接總線可連接至各種元件106、110、112以及116。連接總線的例子可包括使用內(nèi)部集成電路(Inter-Integrated Circuit,簡稱I2C)協(xié)議的I2C總線及其他類似此類功能的總線,如多主、多從,單端、串行計算機總線等。其他已存在的連接總線或?qū)黹_發(fā)中的其他類型的連接總線也可適用于本發(fā)明的連接總線。主機板102包括連接至BIOS 110的南橋106、附加的儲存裝置112以及BMC 116。BMC 116包括一個到網(wǎng)絡(luò)104的接口,如經(jīng)由以太網(wǎng)絡(luò)端或無線網(wǎng)絡(luò)調(diào)節(jié)器。BIOS 110包括一組設(shè)定值的集合108,這些設(shè)定值包括BIOS 110的預(yù)設(shè)值115,以及目前設(shè)定118。
在一實施例中,BIOS 110于生產(chǎn)制造時只有一個預(yù)設(shè)值115。使用者或制造商可以修改預(yù)設(shè)值115或者加入其他的預(yù)設(shè)值。如前所述,一種方式是使用在裝置100上的一操作系統(tǒng)中運行的BIOS更新或管理工具,另一種方式是啟動進入至一BIOS更新或管理工具,如用軟盤,開機光盤(CD),或可開機快閃驅(qū)動盤。然而,以此方式進行更新時,若以不正確的參數(shù)更新整個BIOS 110可能會造成裝置100的損壞。
使用本發(fā)明此處所述的原理,將可不需要有操作系統(tǒng)環(huán)境和/或本機BIOS更新或管理工具。經(jīng)由附加的儲存裝置112,可提供一個或多個附加的預(yù)設(shè)值給BIOS 110。除了原有的預(yù)設(shè)值115之外,使用者可以在正常執(zhí)行時建立其他的預(yù)設(shè)值120、122,而無需用到ROM工具的操作,也不用更新BIOS 110本身。在一實施例中,附加儲存裝置112中的預(yù)設(shè)值120與122可以取得高于在BIOS 110中的預(yù)設(shè)值115的優(yōu)先權(quán)。另一方面,遠端使用者可以無需使用本機操作系統(tǒng)、本機的BIOS刷新工具、或進入本機BIOS 用戶界面,經(jīng)由網(wǎng)絡(luò)104與BMC 116存取一接口,以儲存、載入、刪除、設(shè)定優(yōu)先權(quán)、復(fù)制、修改(modify)、和/或以其他方式管理所需的附加的儲存裝置112中的預(yù)設(shè)值120與122。
BMC 116可以從網(wǎng)絡(luò)104接收指令,并直接更新儲存裝置112,而不涉及BIOS 110。在這種情況下,BIOS 110可包括邏輯或功能,以在特定時間例如:在開機自我測試(POST)期間時檢測儲存裝置112中的變化,并決定如何或是否處理在這個時間的變化。在一實施例中,BIOS 110自動處理在儲存裝置112中的任何變化,這可能代表新的預(yù)設(shè)值。另外,BIOS 110可提示使用者來手動選擇要使用的預(yù)設(shè)值,或提供其他有效預(yù)設(shè)的一些指示以供使用者選擇,并允許使用者在繼續(xù)現(xiàn)有的BIOS配置之前的一段有限時間內(nèi)選擇不同的預(yù)設(shè)值。
然而,附加的預(yù)設(shè)值120、122仍可以分別經(jīng)由本機BIOS用戶界面進行管理。圖2顯示依據(jù)本發(fā)明實施例的一BIOS用戶界面202的屏幕截圖200,其具有附加的選項204,用以管理儲存裝置中的附加的預(yù)設(shè)值。用戶界面202顯示將BIOS的目前配置儲存為各種附加的預(yù)設(shè)值的方式。用戶界面202可以表示各種附加的預(yù)設(shè)值被儲存在附加的儲存裝置112上或儲存在BIOS 110本身。本實施例的屏幕截圖200不表示預(yù)設(shè)值儲存在哪里。
舉例來說,使用者可能希望改變CPU的一些設(shè)定,如啟用或禁用CPU是否識別執(zhí)行禁用位或是否啟用此CPU的虛擬指令。使用者可以開機進入BIOS,修改所需的設(shè)定,然后選擇“另存為使用者第n個預(yù)設(shè)值”(“Save as User nth Defaults”)。BIOS的用戶界面可以顯示一個確認視窗或提示。如果使用者選擇“是”,則當(dāng)前設(shè)置將被保存到附加的儲存裝置中作為第n個預(yù)設(shè)值。如果使用者選擇“否”,則系統(tǒng)不會對附加的儲存裝置做任何處理,并返回到上一畫面。圖3摘要總結(jié)出此一過程300。使用者首先對BIOS 302進行所希望的變化。使用者導(dǎo)航至“另存為使用者第n個預(yù)設(shè)值”的選項304。BIOS用戶界面顯示一確認提示306。如果經(jīng)過使用者確認,則系統(tǒng)保存當(dāng)前的設(shè)定至附加的儲存裝置308,并返回到BIOS的用戶界面310。如果使用者未確認時,系統(tǒng)不保存當(dāng)前的設(shè)定,并返回到BIOS的用戶界面310。
要從附加的儲存裝置中還原BIOS預(yù)設(shè)值時,使用者可以選擇“還原使用者第n個預(yù)設(shè)值”。BIOS的用戶界面可以顯示一個確認視窗或提示。如果使用者選擇“是”,則系統(tǒng)將以附加的儲存裝置中所表示的第n個預(yù)設(shè)值覆寫 (overwrite)目前設(shè)定。圖3摘要總結(jié)出此一過程400。使用者選擇“還原使用者第n個預(yù)設(shè)值”的選項402,并且BIOS的用戶界面顯示確認提示404。如果經(jīng)過使用者確認,則系統(tǒng)擷取所表示的預(yù)設(shè)值,并且根據(jù)這些預(yù)設(shè)值406設(shè)置BIOS。接著,使用者可以儲存變化408并且系統(tǒng)可以使用新的設(shè)置重新啟動410。另一方面,如果使用者未確認時,系統(tǒng)返回到BIOS用戶界面412。
BIOS以及附加的儲存裝置中的BIOS預(yù)設(shè)值可以通過BMC,經(jīng)由一個頻外網(wǎng)絡(luò)連線來進行存取、修改、以及管理。在這種方式下,BIOS不會為使用者提供一個可視界面來載入附加的儲存裝置中的預(yù)設(shè)值。圖5顯示依據(jù)本發(fā)明一實施例的用以載入儲存裝置中的預(yù)設(shè)值的BIOS自我開機測試(power-on self-test,簡稱POST)方法的流程圖。如果系統(tǒng)判定在附加的儲存裝置中的BIOS的預(yù)設(shè)值已由BMC從OOB網(wǎng)絡(luò)連線修改時,BIOS可在POST期間從附加的儲存裝置中讀取的數(shù)據(jù),以檢查是否附加的儲存裝置已被修改502。如果在附加的儲存裝置中的數(shù)據(jù)已被更新時,BIOS可以選擇性地檢查在附加的儲存裝置的預(yù)設(shè)值的優(yōu)先權(quán)504。如果這些優(yōu)先權(quán)表示在附加儲存裝置中的預(yù)設(shè)值的優(yōu)先權(quán)比當(dāng)前預(yù)設(shè)值的優(yōu)先權(quán)更高時,則BIOS可從附加的儲存裝置中載入新的預(yù)設(shè)值以覆寫目前預(yù)設(shè)值506,并且更新在儲存裝置中的數(shù)據(jù)以標(biāo)記此數(shù)據(jù)已在POST中被載入508。在下次進行POST時,系統(tǒng)將不會再次重新載入附加的儲存裝置的預(yù)設(shè)值,除非它被例如經(jīng)由OOB網(wǎng)絡(luò)請求修改。接著,BIOS可以注冊一召回(callback)來重置系統(tǒng)510并繼續(xù)以新的預(yù)設(shè)值執(zhí)行POST 512。另一方面,假設(shè)在附加儲存裝置中的預(yù)設(shè)值的優(yōu)先權(quán)表示在附加儲存裝置中的預(yù)設(shè)值的優(yōu)先權(quán)低于當(dāng)前預(yù)設(shè)值的優(yōu)先權(quán)時,BIOS就會繼續(xù)進行POST 512。
在可移除式儲存裝置的情況下,系統(tǒng)可以簡單地判斷可移除式儲存裝置的狀態(tài)是否已改變,例如,表示可移除式儲存裝置已被移除或插入。
可理解的是,此處關(guān)于圖3-5的描述步驟僅用以作為例子說明,并且可以在任何組合中實現(xiàn),包括排除、加入或修改某些步驟的各種組合。此處具體描述本發(fā)明的各種實施例細節(jié)。雖然具體的實施例被描述,然而應(yīng)可理解,這僅用于說明的目的。任何本領(lǐng)域技術(shù)人員在不脫離本發(fā)明的精神和范圍下,可使用其它元件與配置來加以實現(xiàn)。
儲存在附加的儲存裝置的預(yù)設(shè)配置(default configurations)可以包括一個 配置檔案,用以更新一固件ROM、PROM或EPROM或整個的BIOS的映像檔案,和/或表示固件的一個或多個個別設(shè)定的其他數(shù)據(jù)。在這種方式中,系統(tǒng)可以覆寫固件的全部內(nèi)容,或者可以只覆寫固件的一部分。
圖6顯示依據(jù)本發(fā)明一實施例的一般用途系統(tǒng)或運算裝置的簡介描述,其可用以實現(xiàn)本揭露書中所描述的各種概念、方法以及技術(shù)。本發(fā)明實施例的變形于各個實施例中描述。相關(guān)技術(shù)請參考圖6。
參見圖6,一示例性系統(tǒng)和/或運算裝置600包括處理單元(CPU或處理器)620以及系統(tǒng)總線610(使用一個協(xié)議,例如I2C協(xié)議),此系統(tǒng)總線610耦接各種系統(tǒng)元件到處理器620,各種系統(tǒng)元件包括系統(tǒng)存儲器630,例如只讀存儲器(ROM)640和隨機存取存儲器(RAM)650。系統(tǒng)600可包括高速存儲器的快取存儲器622,此高速存儲器直接連接、靠近、或整合為處理器620的一部分。系統(tǒng)600可將數(shù)據(jù)從存儲器630和/或儲存裝置660復(fù)制到快取存儲器622,用于處理器620的快速存取。以此方式快取存儲器可于等待數(shù)據(jù)時提供效能增進,避免處理器620延遲。上述以及其他模塊會控制或用于控制處理器620以此執(zhí)行各種操作或動作。同時也可使用其他系統(tǒng)存儲器630。存儲器630可包括多個具有不同效能特性的不同類型存儲器。可理解的是,本發(fā)明可以運作在具有一個以上的處理器620的計算機裝置600上或運作在以網(wǎng)絡(luò)連接在一起的運算裝置的群集或群組,用以提供更多處理能力。處理器620可包括任意一般用途處理器以及硬件模塊或軟件模塊,例如儲存于儲存裝置660的模塊1662、模塊2664、以及模塊3666,用于控制處理器620以及特殊功用處理器,其中軟件指令結(jié)合入實際處理器設(shè)計。處理器620可實質(zhì)上為完全自給自足的運算系統(tǒng),包括多核心或處理器、總線,存儲器控制器、快取存儲器等等。多核處理器可為對稱或非對稱。處理器620可以包括多個處理器,例如一個具有多個在不同的插槽上實體上分開的處理器的系統(tǒng),或具有單個實體芯片上多個處理器核心的系統(tǒng)。類似地,處理器620可以包括位于多個分散式處理器,這些分散式處理器位于多個個別的運算裝置,但可通過如一通訊網(wǎng)絡(luò)一起工作。多個處理器或處理器核心可以共享資源,例如存儲器630或快取存儲器622,或者可使用獨立的資源進行操作。處理器620可以包括一個或多個狀態(tài)機、特定應(yīng)用集成電路(Application Specific Integrated Circuit,ASIC)或者可編程門陣列(Programmable Gate Array,PGA)包含現(xiàn)場可編程門陣列(FPGA)等等。
系統(tǒng)總線610(或連接總線)可為任何若干類型的總線結(jié)構(gòu),包括使用任何各種總線結(jié)構(gòu)的存儲器總線或存儲器控制器、周邊總線、以及局部總線。儲存在ROM 640的基本輸入/輸出(BIOS)或其類似,可提供基本常式,以幫助在計算機裝置600內(nèi)的元件之間傳送消息,例如在開機或啟動時。運算裝置600還包括儲存裝置660或計算機可讀取儲存媒體,例如硬盤機、磁盤機、光盤機、磁帶機、固態(tài)驅(qū)動器、RAM驅(qū)動器、可移除式儲存裝置、磁盤陣列(RAID)、混合式儲存裝置等等。儲存裝置660可包括軟件模塊662、664、666,用于控制處理器620。系統(tǒng)600也包含其他硬件或軟件模塊。儲存裝置660會通過一驅(qū)動接口連接至系統(tǒng)總線610。驅(qū)動器及其相關(guān)的計算機可讀取儲存裝置為運算裝置600提供了計算機可讀取指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊以及其它數(shù)據(jù)的非易失性儲存。于某個方面,執(zhí)行特定功能的硬件模塊可包括儲存于有形的計算機可讀取儲存裝置的軟件元件,該儲存于有形的計算機可讀取儲存裝置的軟件元件和所需硬件元件有關(guān),該所需硬件元件可例如為用于執(zhí)行功能的處理器620、總線610、顯示器670等等。在另一方面,系統(tǒng)可以使用一個處理器和計算機可讀取儲存裝置來儲存指令,當(dāng)這些指令由處理器執(zhí)行時,使處理器執(zhí)行操作、方法或其他特定的動作?;驹瓦m當(dāng)?shù)淖兓梢愿鶕?jù)裝置的類型,例如裝置600是否是小型、手持計算機裝置,桌上型計算機,或計算機伺服器等進行修改。當(dāng)處理器620執(zhí)行指令以執(zhí)行“操作”時,處理器620可直接地執(zhí)行操作和/或可輔助、直接或與其他裝置或元件合作來執(zhí)行操作。
雖然實施例中所描述的示范性實施例使用的硬盤660為例,其它類型的可用以儲存可由一計算機存取的數(shù)據(jù)的計算機可讀取儲存裝置,例如磁帶、快閃存儲器卡、數(shù)字光盤(digital versatile disk,DVD)、卡匣、隨機存取存儲器(RAM)650、只讀存儲器(ROM)640以及包含一位流的纜線等等,也可被用于實現(xiàn)本發(fā)明各種實施例的操作環(huán)境中。有形的計算機可讀取儲存媒體、計算機可讀取儲存裝置或計算機可讀取存儲器裝置中,明確地排除例如暫態(tài)波、能量、載波信號、電磁波、以及信號本身等等的媒體。
為了使用戶可以和運算裝置600互動,輸入裝置690會代表任意數(shù)量的輸入機制,例如用于演講的麥克風(fēng)、用于手勢或圖形輸入的觸控屏幕、鍵盤、鼠標(biāo)、動作輸入、語音以及其他。輸出裝置670也可為本領(lǐng)域技術(shù)人員所知的一個或多個多個輸出機制。在一些例子中,多模系統(tǒng)會對用戶提供多類型 的輸入以此和運算裝置600通訊。通訊接口680會大致上包含并管理用戶輸入以及系統(tǒng)輸出。任意特定硬件設(shè)置上的各種操作沒有限制,因此這里的基本特征會很容易置入發(fā)展增進中的硬件或固件設(shè)置。
為了清楚解釋,在本發(fā)明一些實施例表示為包括獨自的功能區(qū)塊標(biāo)記為“處理器”或處理器620。這些功能區(qū)塊所代表的功能可以經(jīng)由使用共享或?qū)S糜布硖峁?,包括但不限于,可?zhí)行軟件與硬件的硬件,例如處理器620,專門用于操作為等同于通用處理器上執(zhí)行的軟件。舉例來說,圖6中所示的一個或多個處理器的功能可由單個共享處理器或多個處理器來提供。(術(shù)語“處理器”的使用不應(yīng)當(dāng)被解釋為專指能夠執(zhí)行軟件的硬件)。說明性實施例可以包括微處理器和/或數(shù)字信號處理器(DSP)硬件,用以儲存執(zhí)行下述的操作的軟件的只讀存儲器(ROM)640,以及用于儲存結(jié)果的隨機存取儲存器(RAM)650。超大型集成電路(VLSI)硬件實施例以及與通用DSP電路相結(jié)合的定制VLSI電路也可被提供。
各種實施例的邏輯操作被實現(xiàn)為:(1)在通用計算機內(nèi)的可編程電路上運行的一連串計算機實現(xiàn)步驟、操作或程序;(2)在專用可編程電路上運行的一連串計算機實現(xiàn)步驟、操作或程序;和/或(3)可編程電路內(nèi)的互連機器模塊或程序引擎。圖6中所示的系統(tǒng)600可以實現(xiàn)所有或部分的所列舉方法,可為所列舉的系統(tǒng)的一部分,和/或可以根據(jù)在所列舉的有形計算機可讀取儲存裝置的指令進行操作。這些邏輯操作可被實作為模塊,這些模塊用以控制處理器620來根據(jù)模塊的編程執(zhí)行特定功能。舉例來說,圖6顯示3個模塊MOD1662、MOD2664以及MOD3666,這些模塊用以控制處理器620。這些模塊可被儲存在儲存裝置660上并在執(zhí)行時載入至RAM 650或存儲器630,或者可以儲存在其他的計算機可讀取的存儲器位置。
示例的的運算裝置600中的一個或多個元件,不超過以及包括整個運算裝置600,可以進行虛擬化。例如,虛擬處理器可為根據(jù)一個特定的指令集執(zhí)行的軟件物件,即使當(dāng)與虛擬處理器相同類型的實體處理器是無效時。虛擬化層或一個虛擬“主機”可以經(jīng)由把虛擬化操作轉(zhuǎn)換為實際的操作來啟用一個或多個不同的計算機裝置或裝置類型的虛擬元件。最后,然而,每一種類型的虛擬化硬件經(jīng)由一些底層實體硬件執(zhí)行或?qū)崿F(xiàn)。因此,一個虛擬化計算機層能夠在一個實體計算機層的頂端進行操作。虛擬化計算機層可以包括一個或多個虛擬機、覆蓋網(wǎng)絡(luò)、一管理程序、虛擬交換,和任何其他虛擬化 的應(yīng)用程序。
處理器620可以包括本文所揭示的所有類型的處理器,包括一個虛擬處理器。然而,參照虛擬處理器時,處理器620可包括與在一個虛擬化層執(zhí)行該虛擬處理器相關(guān)的軟件和底層必要的硬件來執(zhí)行虛擬化層。系統(tǒng)600可以包括實體或虛擬處理器620,其接收儲存在計算機可讀取儲存裝置的指令,使述處理器620來執(zhí)行特定操作。當(dāng)提到一個虛擬處理器620時,系統(tǒng)也包括與執(zhí)行虛擬處理器620的相關(guān)實體硬件。
本發(fā)明的范圍內(nèi)的實施例也可包括用于攜帶或具有儲存在其上的計算機可執(zhí)行指令或數(shù)據(jù)結(jié)構(gòu)的有形和/或非暫態(tài)的計算機可讀取儲存裝置。這種有形的計算機可讀取的儲存裝置可以是可以由通用或?qū)S糜嬎銠C,包括如上述任何專用處理器的功能設(shè)計存取的任何可用裝置。舉例來說,但不限于,這類的有形計算機可讀取裝置可以包括RAM、ROM、EEPROM、CD-ROM、或其他光盤儲存、磁盤儲存或任意其他用于攜帶或儲存以計算機可讀取指令、數(shù)據(jù)結(jié)構(gòu)或處理器芯片設(shè)計形式的程序碼的裝置。當(dāng)消息或指令系經(jīng)由網(wǎng)絡(luò)或其他通訊連接方式(例如:有線,無線或其組合)提供至一計算機時,計算機可適當(dāng)?shù)貙⒃撨B接視為計算機可讀取媒體。因此,任何這樣的連接被適當(dāng)?shù)胤Q為計算機可讀取媒體。上述的組合也應(yīng)包括在計算機可讀取儲存裝置的范圍之內(nèi)。
計算機可執(zhí)行指令包括,例如讓通用計算機、特殊功能計算機、或特殊功能處理裝置執(zhí)行一些功能或功能群組的指令和數(shù)據(jù)。計算機可執(zhí)行指令也包括由計算機在單機或網(wǎng)絡(luò)環(huán)境中執(zhí)行的程序模塊。一般而言,程式模塊包括專用處理器的設(shè)計中固有的常式、程序、元件、數(shù)據(jù)結(jié)構(gòu)、物件和功能等,可執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型。計算機可執(zhí)行指令、相關(guān)數(shù)據(jù)結(jié)構(gòu)以及程序模塊代表程式碼裝置的例子,用于執(zhí)行本發(fā)明所述的方法的步驟。前述可執(zhí)行指令或相關(guān)數(shù)據(jù)結(jié)構(gòu)的特定序列表示用于實現(xiàn)前述步驟中描述的功能的相應(yīng)的動作例子。
本發(fā)明其它實施例可以在網(wǎng)絡(luò)運算環(huán)境中實現(xiàn),網(wǎng)絡(luò)運算環(huán)境中具有許多類型的計算機系統(tǒng)配置,包括個人計算機、手持裝置、多處理器系統(tǒng)、以微處理器為基礎(chǔ)的或可編程的消費性電子產(chǎn)品、網(wǎng)絡(luò)個人計算機、小型計算機、大型計算機等等。實施例也可以在分散式運算環(huán)境中實現(xiàn),分散式運算環(huán)境中的任務(wù)被經(jīng)由一通訊網(wǎng)絡(luò)所連結(jié)(以有線連結(jié)、無線連結(jié)或其組合)的 本機和遠端處理裝置所執(zhí)行。在分散式運算環(huán)境中,程序模塊可以同時設(shè)置在本機和遠端儲存器儲存裝置中。
本發(fā)明雖以優(yōu)選實施例揭示如上,然其并非用以限定本發(fā)明。例如,所述原理可適用于任何具有可配置固件且其預(yù)設(shè)配置或預(yù)設(shè)值可被更新或改變的裝置。任何本領(lǐng)域技術(shù)人員在不脫離本發(fā)明的精神和范圍下,可做些許的更動與潤飾,因此本發(fā)明的保護范圍當(dāng)以權(quán)利要求為準(zhǔn)。另外,權(quán)利要求的一組“中的至少一個”表示滿足權(quán)利要求的該組中的一個成員或該組中的多個成員。