專利名稱:自我驗(yàn)證選擇只讀存儲(chǔ)器的基本輸出入系統(tǒng)及其驗(yàn)證方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種自我驗(yàn)證選擇只讀存儲(chǔ)器的基本輸出入系統(tǒng)及其驗(yàn)證方法,特別 是涉及一種檢查選擇只讀存儲(chǔ)器的數(shù)據(jù)完整性的基本輸出入系統(tǒng)及其驗(yàn)證方法。
背景技術(shù):
一直以來(lái),基本輸出入系統(tǒng)負(fù)責(zé)在計(jì)算機(jī)系統(tǒng)開機(jī)過程中,進(jìn)行開機(jī)自我測(cè)試 (POST)、初始化基本硬件設(shè)備及加載操作系統(tǒng)等準(zhǔn)備工作,然而隨著基本輸出入系統(tǒng)制 造商與各項(xiàng)硬件設(shè)備芯片制造商的分工越來(lái)越精細(xì),主機(jī)板上的基本輸出入系統(tǒng)制造商 經(jīng)常接收由不同的硬件設(shè)備制造商所提供的特定硬件設(shè)備的固件,也就是開機(jī)時(shí)映射 (Mapping)在主存儲(chǔ)器中的選擇只讀存儲(chǔ)器(Option R0M,0PR0M)的數(shù)據(jù),一并嵌入在基本 輸出入系統(tǒng)內(nèi),使得基本輸出入系統(tǒng)在計(jì)算機(jī)系統(tǒng)進(jìn)入操作系統(tǒng)之前,能進(jìn)行更多的前置 偵測(cè)、設(shè)定工作,對(duì)于整個(gè)計(jì)算機(jī)系統(tǒng)的研發(fā)提供了實(shí)質(zhì)的幫助。但由于各制造商的開發(fā)進(jìn)程快慢不一,基本輸出入系統(tǒng)制造商經(jīng)常會(huì)接收到太多 不同設(shè)備、不同版本的硬件設(shè)備固件數(shù)據(jù),版本管理不易,可能發(fā)生記錄上為第一版本固件 與基本輸出入系統(tǒng)整合,但實(shí)際上卻是第二版本固件與基本輸出入系統(tǒng)整合,產(chǎn)生不一致, 造成開機(jī)時(shí)無(wú)法順利加載或讀取正確的固件對(duì)硬件設(shè)備進(jìn)行設(shè)置。此外,由于制造商經(jīng)常將所開發(fā)的固件更新檔案放置在公開的網(wǎng)頁(yè)上供使用者下 載,也經(jīng)常發(fā)生有使用者下載并修改檔案內(nèi)容后,再度放置在公開網(wǎng)頁(yè)上,讓其它使用者下 載被篡改過后的錯(cuò)誤檔案,將錯(cuò)誤檔案安裝到計(jì)算機(jī)系統(tǒng)后,不但不能提升硬件設(shè)備的運(yùn) 作性能,反而造成無(wú)法開機(jī)、甚至硬件損毀的情形。為了避免產(chǎn)生上述版本不一致或固件檔案被更改,而造成的無(wú)法順利開機(jī)、降低 系統(tǒng)穩(wěn)定性的問題,需要設(shè)計(jì)一種可認(rèn)證選擇只讀存儲(chǔ)器正確性的手段,確保計(jì)算機(jī)系統(tǒng) 開機(jī)時(shí)能夠與正確的硬件設(shè)備固件運(yùn)作。
發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問題是為了克服現(xiàn)有技術(shù)會(huì)因版本不一致或固件檔案被更改而造成無(wú)法順利開機(jī)、降低系統(tǒng)穩(wěn)定性的缺陷,提供一種自我驗(yàn)證選擇只讀存儲(chǔ)器的基本輸出入系統(tǒng)及其驗(yàn)證方法,解決選擇只讀存儲(chǔ)器的數(shù)據(jù)與基本輸出入系統(tǒng)整合時(shí)管理不易的問題,使選擇只讀存儲(chǔ)器的數(shù)據(jù)在開機(jī)時(shí)即可經(jīng)過驗(yàn)證,以確認(rèn)其完整性。本發(fā)明是通過下述技術(shù)方案來(lái)解決上述技術(shù)問題的一種自我驗(yàn)證選擇只讀存儲(chǔ) 器的基本輸出入系統(tǒng),該基本輸出入系統(tǒng)加載到一主存儲(chǔ)器以執(zhí)行開機(jī),其特點(diǎn)在于,該基 本輸出入系統(tǒng)包括一裝置固件區(qū)塊,記錄一應(yīng)用裝置固件,該應(yīng)用裝置固件于開機(jī)時(shí)加載 到該主存儲(chǔ)器中的一選擇只讀存儲(chǔ)區(qū)塊;一驗(yàn)證碼區(qū)塊,記錄一驗(yàn)證碼;及一開機(jī)管理區(qū) 塊,利用一開機(jī)程序以一算法對(duì)映射到該選擇只讀存儲(chǔ)區(qū)塊的該應(yīng)用裝置固件進(jìn)行計(jì)算, 以產(chǎn)生一校驗(yàn)值,并讀取該驗(yàn)證碼與該校驗(yàn)值進(jìn)行對(duì)比,于該校驗(yàn)值與該驗(yàn)證碼相同時(shí),繼續(xù)執(zhí)行開機(jī)程序。其中,該驗(yàn)證碼為以該算法計(jì)算一初始裝置固件而產(chǎn)生。其中,該開機(jī)管理區(qū)塊于該校驗(yàn)值與該驗(yàn)證碼不相同時(shí),發(fā)出一警示通知,用以提示該應(yīng)用裝置固件異于該初始裝置固件。其中,該開機(jī)管理區(qū)塊于該校驗(yàn)值與該驗(yàn)證碼不相同時(shí),停止執(zhí)行開機(jī)。其中,該驗(yàn)證碼區(qū)塊為只讀區(qū)塊。其中,該算法為計(jì)算校驗(yàn)和的算法。其中,該應(yīng)用裝置固件及該初始裝置固件均為影像控制裝置固件、網(wǎng)絡(luò)裝置固件 或外圍控制接口裝置固件。本發(fā)明的另一技術(shù)方案為一種基本輸出入系統(tǒng)自我驗(yàn)證選擇只讀存儲(chǔ)器的方 法,該基本輸出入系統(tǒng)加載到一主存儲(chǔ)器以執(zhí)行開機(jī),其特點(diǎn)在于,該方法包括該基本輸 出入系統(tǒng)開始執(zhí)行開機(jī)程序;讀取記錄在該基本輸出入系統(tǒng)的一驗(yàn)證碼;根據(jù)一算法,計(jì) 算映射到該主存儲(chǔ)器中的一選擇只讀存儲(chǔ)區(qū)塊的一應(yīng)用裝置固件,產(chǎn)生一校驗(yàn)值;及判斷 該驗(yàn)證碼與該校驗(yàn)值是否相同,若相同則繼續(xù)執(zhí)行開機(jī)程序。其中,該驗(yàn)證碼為以該算法計(jì)算一初始裝置固件而產(chǎn)生。其中,該算法為計(jì)算校驗(yàn)和算法。其中,根據(jù)該算法計(jì)算映射到該主存儲(chǔ)器的該應(yīng)用裝置固件的步驟中,包括下列 步驟根據(jù)該應(yīng)用裝置固件的數(shù)據(jù)長(zhǎng)度,自該應(yīng)用裝置固件在該選擇只讀存儲(chǔ)區(qū)塊中的起 始地址讀取該應(yīng)用裝置固件;及計(jì)算所讀取的該應(yīng)用裝置固件的校驗(yàn)和,以產(chǎn)生該校驗(yàn)值。其中,該基本輸出入系統(tǒng)開始執(zhí)行開機(jī)程序的步驟中,包括下述步驟該基本輸出 入系統(tǒng)開始執(zhí)行開機(jī)自我檢測(cè)程序。其中,判斷該驗(yàn)證碼與該校驗(yàn)值是否相同的步驟中,包括下述步驟若該驗(yàn)證碼與 該校驗(yàn)值不相同,則發(fā)出一警示通知,用以提示該應(yīng)用裝置固件異于該初始裝置固件。其中,判斷該驗(yàn)證碼與該校驗(yàn)值不相同的步驟后,還包括下述步驟停止執(zhí)行開機(jī) 程序。其中,該應(yīng)用裝置固件及該初始裝置固件均為影像控制裝置固件、網(wǎng)絡(luò)裝置固件 或外圍控制接口裝置固件。本發(fā)明的積極進(jìn)步效果在于本發(fā)明可提供一種簡(jiǎn)易而有效的方式,管理基本輸 出入系統(tǒng)中所整合的各種裝置固件版本,并且避免固件中的參數(shù)遭篡改后造成硬件設(shè)備損 壞的風(fēng)險(xiǎn),有利于維護(hù)整合性基本輸出入系統(tǒng)的穩(wěn)定性。
圖1為本發(fā)明的自我驗(yàn)證選擇只讀存儲(chǔ)器的基本輸出入系統(tǒng)的實(shí)施例的存儲(chǔ)結(jié) 構(gòu)示意圖。圖2為本發(fā)明的基本輸出入系統(tǒng)自我驗(yàn)證選擇只讀存儲(chǔ)器方法的實(shí)施例的簡(jiǎn)要 流程圖。圖3為本發(fā)明的基本輸出入系統(tǒng)自我驗(yàn)證選擇只讀存儲(chǔ)器方法的實(shí)施例的詳細(xì) 流程圖。附圖標(biāo)記說(shuō)明
10基本輸出入系統(tǒng)102開機(jī)管理區(qū)塊104驗(yàn)證碼區(qū)塊106裝置固件區(qū)塊20主存儲(chǔ)器202選擇只讀存儲(chǔ)區(qū)塊S301 S307流程步驟S401 S415流程步驟
具體實(shí)施例方式本發(fā)明提供了一種自我驗(yàn)證選擇只讀存儲(chǔ)器的基本輸出入系統(tǒng)及其驗(yàn)證方法,在 基本輸出入系統(tǒng)執(zhí)行開機(jī)作業(yè)時(shí)驗(yàn)證選擇只讀存儲(chǔ)器的數(shù)據(jù)完整性,以達(dá)到管理固件數(shù) 據(jù),防止系統(tǒng)無(wú)法開機(jī)或硬件損毀的效果。為了提供更詳盡的說(shuō)明與解釋,以下將配合示意 圖及流程圖進(jìn)行解說(shuō),以便更為明確而清楚地說(shuō)明本發(fā)明所使用的技術(shù)及手段。圖1為本發(fā)明所提供的一種自我驗(yàn)證選擇只讀存儲(chǔ)器的基本輸出入系統(tǒng)的實(shí)施 例的存儲(chǔ)結(jié)構(gòu)示意圖,本實(shí)施例以計(jì)算機(jī)系統(tǒng)啟動(dòng)時(shí)的驗(yàn)證為例,其中,基本輸出入系統(tǒng)10 中包括一開機(jī)管理區(qū)塊102、一驗(yàn)證碼區(qū)塊104及一裝置固件區(qū)塊106 ;主存儲(chǔ)器20中包括 一選擇只讀存儲(chǔ)區(qū)塊202。開機(jī)管理區(qū)塊102用于執(zhí)行從開機(jī)到加載操作系統(tǒng)之間的各項(xiàng)前置作業(yè);驗(yàn)證碼 區(qū)塊104中記錄一驗(yàn)證碼;裝置固件區(qū)塊106中記錄一應(yīng)用裝置固件。當(dāng)計(jì)算機(jī)系統(tǒng)電源 啟動(dòng)后,基本輸出入系統(tǒng)10會(huì)解壓縮到主存儲(chǔ)器20上執(zhí)行開機(jī)作業(yè),而其中的應(yīng)用裝置固 件則映射到主存儲(chǔ)器20中專用于存放各種裝置的固件的選擇只讀存儲(chǔ)區(qū)塊202當(dāng)中。為了在應(yīng)用裝置固件開始執(zhí)行與對(duì)應(yīng)裝置的溝通作業(yè)之前,先行驗(yàn)證應(yīng)用裝置固 件數(shù)據(jù)的正確性和完整性,以避免在基本輸出入系統(tǒng)10的制造商的研發(fā)、整合過程中,嵌 入錯(cuò)誤的應(yīng)用裝置固件版本,或使用者下載被修改后的應(yīng)用裝置固件檔案進(jìn)行更新,而使 計(jì)算機(jī)系統(tǒng)無(wú)法順利運(yùn)作或使硬件損壞,因此,開機(jī)管理區(qū)塊102會(huì)在開機(jī)自我測(cè)試程序 完成前,執(zhí)行對(duì)映射到選擇只讀存儲(chǔ)區(qū)塊202中的應(yīng)用裝置固件的驗(yàn)證。開機(jī)管理區(qū)塊102中的開機(jī)程序會(huì)讀取驗(yàn)證碼區(qū)塊104中所記錄的一驗(yàn)證碼,此 驗(yàn)證碼可由制造商在制作基本輸出入系統(tǒng)10時(shí),即一并嵌入在一個(gè)屬于只讀區(qū)塊的驗(yàn)證 碼區(qū)塊104中,用來(lái)驗(yàn)證應(yīng)用裝置固件數(shù)據(jù)的正確性和完整性。開機(jī)管理區(qū)塊102的開機(jī)程序前往主存儲(chǔ)器20的選擇只讀存儲(chǔ)區(qū)塊202,根據(jù)應(yīng) 用裝置固件的數(shù)據(jù)長(zhǎng)度,從應(yīng)用裝置固件在選擇只讀存儲(chǔ)區(qū)塊202中的起始地址開始讀取 該應(yīng)用裝置固件的數(shù)據(jù),并且以一校驗(yàn)和算法(Checksum Algorithm)計(jì)算應(yīng)用裝置固件 數(shù)據(jù),產(chǎn)生一校驗(yàn)值。以影像控制裝置的固件(Video BIOS)數(shù)據(jù),例如顯示卡的固件(VGA Option ROM)為例,由于其發(fā)展時(shí)間較早,各制造商開發(fā)的標(biāo)準(zhǔn)較為統(tǒng)一,因此大部分顯示 卡固件在選擇只讀存儲(chǔ)區(qū)塊202的位置都從存儲(chǔ)區(qū)段C000 0000開始(同時(shí)也是主存儲(chǔ)器 20保留給選擇只讀存儲(chǔ)區(qū)塊202的起始位置),固件數(shù)據(jù)長(zhǎng)度為65536字節(jié)(bytes)。開機(jī) 管理區(qū)塊102的開機(jī)程序即從C000:0000處開始讀取65536字節(jié)長(zhǎng)度的顯示卡固件數(shù)據(jù), 根據(jù)一種校驗(yàn)和演算方法,計(jì)算出此固件數(shù)據(jù)的校驗(yàn)值。
驗(yàn)證碼區(qū)塊104所記錄的驗(yàn)證碼,為以同一種校驗(yàn)和算法,對(duì)制造商想要整合在 基本輸出入系統(tǒng)10中的初始裝置固件進(jìn)行計(jì)算所得,可由初始裝置固件的制造商提供給 基本輸出入系統(tǒng)10的制造商,或由基本輸出入系統(tǒng)10的制造商在整合初始裝置固件之前 運(yùn)用校驗(yàn)軟件進(jìn)行計(jì)算,并且將所得到的驗(yàn)證碼,例如5F64,記錄到一個(gè)只讀的驗(yàn)證碼區(qū) 塊104當(dāng)中,作為對(duì)比的基準(zhǔn),并且避免被修改。將計(jì)算所產(chǎn)生的校驗(yàn)值與讀取的驗(yàn)證碼互相對(duì)比,判斷校驗(yàn)值是否與驗(yàn)證碼相 同,若兩者相同,即代表加載到選擇只讀存儲(chǔ)區(qū)塊202的應(yīng)用裝置固件,與原本應(yīng)與基本輸 出入系統(tǒng)102整合的初始裝置固件版本相同、內(nèi)容也相同。開機(jī)程序確認(rèn)之后,即可繼續(xù)進(jìn) 行開機(jī)的程序,例如繼續(xù)完成其它的開機(jī)自我測(cè)試,而不需再擔(dān)心接下來(lái)的程序中,交由應(yīng) 用裝置固件對(duì)該裝置進(jìn)行初始化時(shí),會(huì)產(chǎn)生版本或內(nèi)容不符而無(wú)法開機(jī)的問題。
但若校驗(yàn)值與驗(yàn)證碼對(duì)比之后,判斷兩者并不相同,就基本輸出入系統(tǒng)10的制造 商的在測(cè)試線的角度而言,意味著其想要整合的初始裝置固件版本與實(shí)際上嵌入基本輸出 入系統(tǒng)10的應(yīng)用裝置固件版本不一致;就使用者的角度而言,意味著其下載安裝的更新檔 案內(nèi)容可能是經(jīng)過黑客篡改的版本,造成無(wú)法通過驗(yàn)證。此時(shí)若繼續(xù)允許計(jì)算機(jī)系統(tǒng)開機(jī), 極有可能產(chǎn)生錯(cuò)誤,例如應(yīng)用裝置固件無(wú)法正常與裝置聯(lián)機(jī)運(yùn)作,甚至造成硬件裝置的損 壞,因此開機(jī)管理區(qū)塊102的開機(jī)程序即發(fā)出一警示通知,通知制造商或使用者處理裝置 固件不一致的問題,或是發(fā)出警示通知后直接停止開機(jī),將產(chǎn)生錯(cuò)誤和損壞的風(fēng)險(xiǎn)降到最 低。上述的初始裝置固件,以及映射到選擇只讀存儲(chǔ)區(qū)塊202中的應(yīng)用裝置固件,除 了影像控制裝置的固件以外,也可以為網(wǎng)絡(luò)裝置固件(LAN OptionROM)、外圍控制接口裝置 固件(PCI Option ROM)等。想要整合于基本輸出入系統(tǒng)10中的裝置固件也可以同時(shí)包括 兩種以上,此時(shí),則在驗(yàn)證碼區(qū)塊104中分別記錄不同初始裝置固件的驗(yàn)證碼,裝置固件區(qū) 塊106中分別記錄不同的應(yīng)用裝置固件,待加載選擇只讀存儲(chǔ)區(qū)塊202后,開機(jī)管理區(qū)塊 102的開機(jī)程序再分別根據(jù)計(jì)算出驗(yàn)證碼的相同算法計(jì)算出校驗(yàn)值,分別進(jìn)行對(duì)比和判斷, 以確保各種整合在基本輸出入系統(tǒng)10的應(yīng)用裝置固件數(shù)據(jù)均可正常提供服務(wù)。圖2為本發(fā)明所提供一種基本輸出入系統(tǒng)自我驗(yàn)證選擇只讀存儲(chǔ)器方法的實(shí)施 例的簡(jiǎn)要流程圖,本實(shí)施例的基本輸出入系統(tǒng)10會(huì)在計(jì)算機(jī)系統(tǒng)開機(jī)時(shí)解壓縮加載到主 存儲(chǔ)器20執(zhí)行開機(jī)程序。首先,當(dāng)計(jì)算機(jī)系統(tǒng)開啟電源后,基本輸出入系統(tǒng)10開始執(zhí)行開 機(jī)程序(S301),而基本輸出入系統(tǒng)10中的開機(jī)管理區(qū)塊102的開機(jī)程序會(huì)讀取驗(yàn)證碼區(qū)塊 104中的驗(yàn)證碼(S303);接著前往主存儲(chǔ)器20中的選擇只讀存儲(chǔ)區(qū)塊202讀取應(yīng)用裝置固 件的數(shù)據(jù),并以一算法計(jì)算該應(yīng)用裝置固件數(shù)據(jù),產(chǎn)生一校驗(yàn)值(S305);最后,當(dāng)對(duì)比出該 校驗(yàn)值與該驗(yàn)證碼相同時(shí),開機(jī)管理區(qū)塊102的程序即判定應(yīng)用裝置固件的版本及內(nèi)容無(wú) 誤,而繼續(xù)執(zhí)行開機(jī)程序(S307)。本實(shí)施例中所述的驗(yàn)證碼,為采用與計(jì)算校驗(yàn)值相同的算 法,對(duì)想要整合在基本輸出入系統(tǒng)10中的初始裝置固件計(jì)算而得,并在基本輸出入系統(tǒng)10 整合各項(xiàng)裝置固件時(shí),一并記錄在一只讀的驗(yàn)證碼區(qū)塊104中,以避免該驗(yàn)證碼被修改。雖然圖2僅以對(duì)一種應(yīng)用裝置固件的驗(yàn)證為例,但如同圖1所示實(shí)施例的說(shuō)明中 所述,初始裝置固件和可映射到選擇只讀存儲(chǔ)區(qū)塊202的應(yīng)用裝置固件不只一種,更可包 括網(wǎng)絡(luò)裝置或外圍控制接口裝置等固件,若有兩種以上的裝置固件需經(jīng)過驗(yàn)證,則可重復(fù) 執(zhí)行步驟S303到S305,依序?qū)⒄显诨据敵鋈胂到y(tǒng)10中的應(yīng)用裝置固件一一驗(yàn)證對(duì)比,直到從裝置固件區(qū)塊106加載到選擇只讀存儲(chǔ)區(qū)塊202中的所有應(yīng)用裝置固件都經(jīng)過驗(yàn)證 無(wú)誤后,再繼續(xù)執(zhí)行開機(jī)程序(S307)。為了更具體地說(shuō)明上述的驗(yàn)證流程,接下來(lái)參考圖3所示的實(shí)施例加以說(shuō)明,圖3 為本發(fā)明所提供一種基本輸出入系統(tǒng)自我驗(yàn)證選擇只讀存儲(chǔ)器方法的實(shí)施例的詳細(xì)流程 圖,本實(shí)施例以基本輸出入系統(tǒng)10中整合的影像控制裝置固件為例進(jìn)行說(shuō)明首先,啟動(dòng) 電源以驅(qū)動(dòng)基本輸出入系統(tǒng)10 (S401),基本輸出入系統(tǒng)10自行解壓縮并加載主存儲(chǔ)器20 以便執(zhí)行開機(jī)程序(S403);接著,基本輸出入系統(tǒng)10開始執(zhí)行開機(jī)自我測(cè)試(S405),并在 自我測(cè)試程序中,先讀取驗(yàn)證碼區(qū)塊104所記錄的影像控制裝置固件的驗(yàn)證碼(S407);再 前 往主存儲(chǔ)器20中的選擇只讀存儲(chǔ)區(qū)塊202,開始從影像控制裝置固件的起始位置讀取固 件內(nèi)容,并以一校驗(yàn)和算法計(jì)算全部共65536字節(jié)的固件數(shù)據(jù),產(chǎn)生一校驗(yàn)值(S409)。開機(jī)程序接著即以計(jì)算出來(lái)的校驗(yàn)值與驗(yàn)證碼進(jìn)行對(duì)比,判斷兩者是否相同 (S411)若兩者相異,表示整合在基本輸出入系統(tǒng)10中的影像控制裝置固件數(shù)據(jù)與預(yù)設(shè)應(yīng) 整合的固件數(shù)據(jù)版本不符,或固件內(nèi)的參數(shù)已被修改,此時(shí)即發(fā)出一警示通知給制造商或 使用者,提示實(shí)際使用的裝置固件與應(yīng)使用的裝置固件不同,或立即停止接下來(lái)的開機(jī)程 序,以保護(hù)影像控制裝置及計(jì)算機(jī)系統(tǒng)(S413);反之,若兩者經(jīng)比較后相同,代表影像控制 裝置固件的正確性和完整性得到驗(yàn)證,開機(jī)程序即可繼續(xù)執(zhí)行后續(xù)的開機(jī)程序(S415),例 如將主控權(quán)轉(zhuǎn)移到選擇只讀存儲(chǔ)區(qū)塊202中的影像控制裝置固件,讓使用者可以開始在顯 示屏幕上看到基本輸出入系統(tǒng)10進(jìn)行硬件測(cè)試的影像畫面。經(jīng)由上述實(shí)施例的說(shuō)明,本發(fā)明已提供一種簡(jiǎn)單而有效地控制被加載選擇只讀存 儲(chǔ)區(qū)塊的應(yīng)用裝置固件版本及數(shù)據(jù)的手段,可幫助基本輸出入系統(tǒng)與裝置固件的制造商減 少整合版本不一致的錯(cuò)誤,同時(shí)也可避免黑客下載初始裝置固件、篡改初始裝置固件的參 數(shù)內(nèi)容后,讓使用者不慎采用被修改過的固件檔案而破壞基本輸出入系統(tǒng)的運(yùn)作,或產(chǎn)生 硬件損壞的風(fēng)險(xiǎn)。雖然以上描述了本發(fā)明的具體實(shí)施方式
,但是本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,這些 僅是舉例說(shuō)明,在不背離本發(fā)明的原理和實(shí)質(zhì)的前提下,可以對(duì)這些實(shí)施方式做出多種變 更或修改。因此,本發(fā)明的保護(hù)范圍由所附權(quán)利要求書限定。
權(quán)利要求
一種自我驗(yàn)證選擇只讀存儲(chǔ)器的基本輸出入系統(tǒng),該基本輸出入系統(tǒng)加載到一主存儲(chǔ)器以執(zhí)行開機(jī),其特征在于,該基本輸出入系統(tǒng)包括一裝置固件區(qū)塊,記錄一應(yīng)用裝置固件,該應(yīng)用裝置固件于開機(jī)時(shí)加載到該主存儲(chǔ)器中的一選擇只讀存儲(chǔ)區(qū)塊;一驗(yàn)證碼區(qū)塊,記錄一驗(yàn)證碼;及一開機(jī)管理區(qū)塊,利用一開機(jī)程序以一算法對(duì)映射到該選擇只讀存儲(chǔ)區(qū)塊的該應(yīng)用裝置固件進(jìn)行計(jì)算,以產(chǎn)生一校驗(yàn)值,并讀取該驗(yàn)證碼與該校驗(yàn)值進(jìn)行對(duì)比,于該校驗(yàn)值與該驗(yàn)證碼相同時(shí),繼續(xù)執(zhí)行開機(jī)程序。
2.如權(quán)利要求1所述的自我驗(yàn)證選擇只讀存儲(chǔ)器的基本輸出入系統(tǒng),其特征在于,該 驗(yàn)證碼為以該算法計(jì)算一初始裝置固件而產(chǎn)生。
3.如權(quán)利要求2所述的自我驗(yàn)證選擇只讀存儲(chǔ)器的基本輸出入系統(tǒng),其特征在于,該 開機(jī)管理區(qū)塊于該校驗(yàn)值與該驗(yàn)證碼不相同時(shí),發(fā)出一警示通知,用以提示該應(yīng)用裝置固 件異于該初始裝置固件。
4.如權(quán)利要求3所述的自我驗(yàn)證選擇只讀存儲(chǔ)器的基本輸出入系統(tǒng),其特征在于,該 開機(jī)管理區(qū)塊于該校驗(yàn)值與該驗(yàn)證碼不相同時(shí),停止執(zhí)行開機(jī)。
5.如權(quán)利要求1所述的自我驗(yàn)證選擇只讀存儲(chǔ)器的基本輸出入系統(tǒng),其特征在于,該 驗(yàn)證碼區(qū)塊為只讀區(qū)塊。
6.如權(quán)利要求1所述的自我驗(yàn)證選擇只讀存儲(chǔ)器的基本輸出入系統(tǒng),其特征在于,該 算法為計(jì)算校驗(yàn)和的算法。
7.如權(quán)利要求2所述的自我驗(yàn)證選擇只讀存儲(chǔ)器的基本輸出入系統(tǒng),其特征在于,該 應(yīng)用裝置固件及該初始裝置固件均為影像控制裝置固件、網(wǎng)絡(luò)裝置固件或外圍控制接口裝 置固件。
8.—種基本輸出入系統(tǒng)自我驗(yàn)證選擇只讀存儲(chǔ)器的方法,該基本輸出入系統(tǒng)加載到一 主存儲(chǔ)器以執(zhí)行開機(jī),其特征在于,該方法包括該基本輸出入系統(tǒng)開始執(zhí)行開機(jī)程序;讀取記錄在該基本輸出入系統(tǒng)的一驗(yàn)證碼;根據(jù)一算法,計(jì)算映射到該主存儲(chǔ)器中的一選擇只讀存儲(chǔ)區(qū)塊的一應(yīng)用裝置固件,產(chǎn) 生一校驗(yàn)值;及判斷該驗(yàn)證碼與該校驗(yàn)值是否相同,若相同則繼續(xù)執(zhí)行開機(jī)程序。
9.如權(quán)利要求8所述的基本輸出入系統(tǒng)自我驗(yàn)證選擇只讀存儲(chǔ)器的方法,其特征在 于,該驗(yàn)證碼為以該算法計(jì)算一初始裝置固件而產(chǎn)生。
10.如權(quán)利要求8所述的基本輸出入系統(tǒng)自我驗(yàn)證選擇只讀存儲(chǔ)器的方法,其特征在 于,該算法為計(jì)算校驗(yàn)和算法。
11.如權(quán)利要求10所述的基本輸出入系統(tǒng)自我驗(yàn)證選擇只讀存儲(chǔ)器的方法,其特征在 于,根據(jù)該算法計(jì)算映射到該主存儲(chǔ)器的該應(yīng)用裝置固件的步驟中,包括下列步驟根據(jù)該應(yīng)用裝置固件的數(shù)據(jù)長(zhǎng)度,自該應(yīng)用裝置固件在該選擇只讀存儲(chǔ)區(qū)塊中的起始 地址讀取該應(yīng)用裝置固件;及計(jì)算所讀取的該應(yīng)用裝置固件的校驗(yàn)和,以產(chǎn)生該校驗(yàn)值。
12.如權(quán)利要求8所述的基本輸出入系統(tǒng)自我驗(yàn)證選擇只讀存儲(chǔ)器的方法,其特征在于,該基本輸出入系統(tǒng)開始執(zhí)行開機(jī)程序的步驟中,包括下述步驟 該基本輸出入系統(tǒng)開始執(zhí)行開機(jī)自我檢測(cè)程序。
13.如權(quán)利要求9所述的基本輸出入系統(tǒng)自我驗(yàn)證選擇只讀存儲(chǔ)器的方法,其特征在 于,判斷該驗(yàn)證碼與該校驗(yàn)值是否相同的步驟中,包括下述步驟若該驗(yàn)證碼與該校驗(yàn)值不相同,則發(fā)出一警示通知,用以提示該應(yīng)用裝置固件異于該 初始裝置固件。
14.如權(quán)利要求13所述的基本輸出入系統(tǒng)自我驗(yàn)證選擇只讀存儲(chǔ)器的方法,其特征在 于,判斷該驗(yàn)證碼與該校驗(yàn)值不相同的步驟后,還包括下述步驟停止執(zhí)行開機(jī)程序。
15.如權(quán)利要求9所述的基本輸出入系統(tǒng)自我驗(yàn)證選擇只讀存儲(chǔ)器的方法,其特征在 于,該應(yīng)用裝置固件及該初始裝置固件均為影像控制裝置固件、網(wǎng)絡(luò)裝置固件或外圍控制 接口裝置固件。
全文摘要
本發(fā)明公開了一種自我驗(yàn)證選擇只讀存儲(chǔ)器的基本輸出入系統(tǒng)及其驗(yàn)證方法。該基本輸出入系統(tǒng)加載到一主存儲(chǔ)器以執(zhí)行開機(jī),其包括一裝置固件區(qū)塊記錄一應(yīng)用裝置固件、一驗(yàn)證碼區(qū)塊記錄一驗(yàn)證碼,及一開機(jī)管理區(qū)塊執(zhí)行驗(yàn)證的作業(yè)。其方法包括基本輸出入系統(tǒng)開始執(zhí)行開機(jī)程序;讀取記錄在基本輸出入系統(tǒng)的驗(yàn)證碼;根據(jù)一算法,計(jì)算映像到主存儲(chǔ)器的選擇只讀存儲(chǔ)區(qū)塊中的應(yīng)用裝置固件,產(chǎn)生一校驗(yàn)值;判斷所讀取的驗(yàn)證碼與計(jì)算出的校驗(yàn)值是否相同,若相同則繼續(xù)執(zhí)行開機(jī)程序。本發(fā)明可簡(jiǎn)易有效地管理基本輸出入系統(tǒng)中所整合的各種裝置固件版本,避免固件中的參數(shù)遭篡改后造成硬件設(shè)備損壞的風(fēng)險(xiǎn),有利于維護(hù)整合性基本輸出入系統(tǒng)的穩(wěn)定性。
文檔編號(hào)G06F11/14GK101807152SQ20091004616
公開日2010年8月18日 申請(qǐng)日期2009年2月13日 優(yōu)先權(quán)日2009年2月13日
發(fā)明者紀(jì)文偉 申請(qǐng)人:環(huán)旭電子股份有限公司