寫入基本輸入輸出系統(tǒng)程序代碼的電路與寫入方法
【專利摘要】本發(fā)明公開一種寫入基本輸入輸出系統(tǒng)程序代碼的電路與寫入方法,該電路,連接于主電路及基本輸入輸出系統(tǒng)?;据斎胼敵鱿到y(tǒng)儲(chǔ)存BIOS程序代碼并且具有BIOS標(biāo)識(shí)符。寫入基本輸入輸出系統(tǒng)程序代碼的電路包含數(shù)據(jù)源連接接口、判斷觸發(fā)模塊與寫入模塊。數(shù)據(jù)源連接接口儲(chǔ)存匹配基本輸入輸出系統(tǒng)的可用的BIOS程序代碼。判斷觸發(fā)模塊判斷基本輸入輸出系統(tǒng)是否可以在開機(jī)初始化階段開始之后,于預(yù)定時(shí)間內(nèi)完成加載BIOS程序代碼并進(jìn)行系統(tǒng)初始化。若基本輸入輸出系統(tǒng)無法在預(yù)定時(shí)間內(nèi)完成,判斷觸發(fā)模塊發(fā)出觸發(fā)信號(hào)。寫入模塊接收觸發(fā)信號(hào)后,依據(jù)BIOS標(biāo)識(shí)符下載可用的BIOS程序代碼,且寫入至基本輸入輸出系統(tǒng),以覆寫當(dāng)前數(shù)據(jù)。
【專利說明】寫入基本輸入輸出系統(tǒng)程序代碼的電路與寫入方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明有關(guān)于計(jì)算機(jī)系統(tǒng)的基本輸入輸出系統(tǒng)更新或復(fù)原,特別是一種不需要在 計(jì)算機(jī)系統(tǒng)開機(jī)狀態(tài)下寫入基本輸入輸出系統(tǒng)程序代碼的電路與寫入方法。
【背景技術(shù)】
[0002] 在計(jì)算機(jī)系統(tǒng)中,基本輸入輸出系統(tǒng)(Basic Input/ Output System, BIOS)是不 可或缺的固件(firmware)。由于BIOS儲(chǔ)存計(jì)算機(jī)系統(tǒng)中最基本的軟件程序代碼,因此啟用 任何計(jì)算機(jī)系統(tǒng)的硬件都必須透過基本輸入輸出系統(tǒng)進(jìn)行偵測(cè)和連接。此外,現(xiàn)代的BIOS 程序代碼通常儲(chǔ)存在可擦寫的存儲(chǔ)單元中,例如EEPROM、Flash ROM,存儲(chǔ)單元內(nèi)所儲(chǔ)存的 程序代碼不會(huì)因?yàn)橛?jì)算機(jī)系統(tǒng)關(guān)閉就消失,而且可以透過計(jì)算機(jī)系統(tǒng)執(zhí)行特定刻錄程序, 就可以寫入新的程序代碼以覆寫(override)或復(fù)原舊的程序代碼。但是,這種可擦寫的存 儲(chǔ)單元,發(fā)生數(shù)據(jù)損毀的機(jī)率相對(duì)較高,例如,受到計(jì)算機(jī)病毒破壞,或是在寫入新的程序 代碼時(shí)寫入不完全。若,在BIOS程序代碼受到破壞時(shí)沒有實(shí)時(shí)發(fā)現(xiàn)就進(jìn)行計(jì)算機(jī)系統(tǒng)的關(guān) 機(jī)或重新啟動(dòng),將導(dǎo)致計(jì)算機(jī)系統(tǒng)無法再進(jìn)入開機(jī)狀態(tài),此時(shí)而無法透過計(jì)算機(jī)系統(tǒng)執(zhí)行 特定刻錄程序來寫入新的程序代碼以覆寫或復(fù)原舊的程序代碼。
[0003] 于現(xiàn)有技術(shù)中, 申請(qǐng)人:曾經(jīng)提出一種雙BIOS的架構(gòu),兩個(gè)BIOS都儲(chǔ)存有程序代 碼,而可互相備援。當(dāng)發(fā)現(xiàn)BIOS的程序代碼已經(jīng)損毀的時(shí)候,另一個(gè)備援的BIOS可以用來 復(fù)原主要BIOS的程序代碼。但是,不排除兩個(gè)BIOS同時(shí)損毀而無法修復(fù)的狀態(tài)。同時(shí),雙 BIOS互相備援的機(jī)制仍需要計(jì)算機(jī)系統(tǒng)的介入,亦即計(jì)算機(jī)系統(tǒng)必須維持開機(jī)狀態(tài)。如果 計(jì)算機(jī)系統(tǒng)無法開機(jī),仍無法對(duì)已經(jīng)損毀的BIOS進(jìn)行修復(fù)。在這種情況下,用戶仍然需要 將計(jì)算機(jī)系統(tǒng)運(yùn)送到供貨商處進(jìn)行修復(fù)。
【發(fā)明內(nèi)容】
[0004] 有鑒于此,本發(fā)明的主要目的在于提供一種寫入基本輸入輸出系統(tǒng)程序代碼的電 路與寫入方法,可以在計(jì)算機(jī)系統(tǒng)無法完成開機(jī)作業(yè)的情況下進(jìn)行BIOS的復(fù)原。
[0005] 為達(dá)到上述目的,本發(fā)明的技術(shù)方案是這樣實(shí)現(xiàn)的: 一種寫入基本輸入輸出系統(tǒng)程序代碼的電路,連接于一計(jì)算機(jī)系統(tǒng)的主電路及基本輸 入輸出系統(tǒng)?;据斎胼敵鱿到y(tǒng)儲(chǔ)存基本輸入輸出系統(tǒng)(BIOS)程序代碼,以使基本輸入輸 出系統(tǒng)執(zhí)行功能,且基本輸入輸出系統(tǒng)具有一 BIOS標(biāo)識(shí)符。寫入基本輸入輸出系統(tǒng)程序代 碼的電路包含一數(shù)據(jù)源連接接口、一判斷觸發(fā)模塊及一寫入模塊。
[0006] 數(shù)據(jù)源連接接口用以取得一對(duì)應(yīng)于BIOS標(biāo)識(shí)符的可用的BIOS程序代碼。判斷觸 發(fā)模塊連接于主電路,用以判斷基本輸入輸出系統(tǒng)是否可以在開機(jī)初始化階段開始后,于 一預(yù)定時(shí)間內(nèi)完成加載BIOS程序代碼并進(jìn)行系統(tǒng)初始化;若基本輸入輸出系統(tǒng)無法在預(yù) 定時(shí)間內(nèi)完成加載BIOS程序代碼并進(jìn)行系統(tǒng)初始化,判斷觸發(fā)模塊發(fā)出一觸發(fā)信號(hào)。寫入 模塊電性連接于判斷觸發(fā)模塊、基本輸入輸出系統(tǒng)以及數(shù)據(jù)源連接接口;其中,當(dāng)寫入模塊 接收觸發(fā)信號(hào),寫入模塊與基本輸入輸出系統(tǒng)建立聯(lián)機(jī),以取得BIOS標(biāo)識(shí)符,寫入模塊與 數(shù)據(jù)源連接接口建立聯(lián)機(jī),并依據(jù)BIOS標(biāo)識(shí)符,下載可用的BIOS程序代碼,且寫入模塊寫 入可用的BIOS程序代碼至基本輸入輸出系統(tǒng),以覆寫基本輸入輸出系統(tǒng)中的當(dāng)前數(shù)據(jù)。
[0007] 于一具體實(shí)施例中,數(shù)據(jù)源連接接口更連接于主電路,用以作為主電路的數(shù)據(jù)傳 輸接口。
[0008] 于一具體實(shí)施例中,寫入模塊于覆寫基本輸入輸出系統(tǒng)中的當(dāng)前數(shù)據(jù)之后,比對(duì) 由數(shù)據(jù)源連接接口下載的可用的BIOS程序代碼與基本輸入輸出系統(tǒng)的數(shù)據(jù)是否符合;若 符合,貝 1J輸出一更新成功的信息。
[0009] 于一具體實(shí)施例中,寫入基本輸入輸出系統(tǒng)程序代碼的電路更包含一 BIOS控制 電路與一 BIOS切換電路。BIOS控制電路連接于判斷觸發(fā)模塊以及主電路。BIOS切換電 路連接于基本輸入輸出系統(tǒng),且寫入模塊經(jīng)由BIOS切換電路連接于基本輸入輸出系統(tǒng);其 中,當(dāng)判斷觸發(fā)模塊發(fā)出觸發(fā)信號(hào)時(shí),BIOS控制電路發(fā)出一切換信號(hào)至BIOS切換電路,使 BIOS切換電路進(jìn)行切換以達(dá)成寫入模塊與基本輸入輸出系統(tǒng)建立鏈接。
[0010] 于一具體實(shí)施例中,寫入基本輸入輸出系統(tǒng)程序代碼的電路更包含一總線切換電 路,寫入模塊透過總線切換電路連接于基本輸入輸出系統(tǒng),其中當(dāng)寫入模塊被觸發(fā)信號(hào)所 啟用,總線切換電路進(jìn)行切換,使得寫入模塊連接于基本輸入輸出系統(tǒng)。
[0011] 本發(fā)明還提出一種基本輸入輸出系統(tǒng)程序代碼的寫入方法,用以于一計(jì)算機(jī)系統(tǒng) 進(jìn)入開機(jī)階段時(shí),寫入一可用的BIOS程序代碼至計(jì)算機(jī)系統(tǒng)的基本輸出系統(tǒng)。方法包含: 以一判斷觸發(fā)模塊監(jiān)視計(jì)算機(jī)系統(tǒng)的開機(jī)狀態(tài),判斷基本輸入輸出系統(tǒng)是否可以在一 預(yù)定時(shí)間內(nèi)完成一加載BIOS程序代碼并進(jìn)行系統(tǒng)初始化;若基本輸入輸出系統(tǒng)無法在預(yù) 定時(shí)間內(nèi)加載BIOS程序代碼并進(jìn)行系統(tǒng)初始化,發(fā)出一觸發(fā)信號(hào); 以觸發(fā)信號(hào)啟用一寫入模塊,并以寫入模塊與基本輸入輸出系統(tǒng)建立聯(lián)機(jī),以取得基 本輸入輸出系統(tǒng)的BIOS標(biāo)識(shí)符; 以寫入模塊與一數(shù)據(jù)源連接接口建立聯(lián)機(jī),并透過數(shù)據(jù)源連接接口找出符合BIOS標(biāo) 識(shí)符的一可用的BIOS程序代碼; 以寫入模塊將可用的BIOS程序代碼寫入基本輸入輸出系統(tǒng)中,覆寫基本輸入輸出系 統(tǒng)的當(dāng)前數(shù)據(jù)。
[0012] 于一具體實(shí)施例中,于覆寫基本輸入輸出系統(tǒng)的當(dāng)前數(shù)據(jù)之后,更包含一步驟,t匕 對(duì)可用的程序代碼與基本輸入輸出系統(tǒng)的當(dāng)前數(shù)據(jù)是否符合。
[0013] 本發(fā)明的寫入基本輸入輸出系統(tǒng)程序代碼的電路及其寫入方法,主要可以在BIOS 失效而無法使得計(jì)算機(jī)系統(tǒng)完成開機(jī)的情況下,由寫入模塊取得主控權(quán),驅(qū)動(dòng)必要的裝置 取得BIOS程序代碼,從而覆寫B(tài)IOS的數(shù)據(jù),以降低BIOS失效而需要運(yùn)送計(jì)算機(jī)系統(tǒng)至供 貨商處維修的頻率。
【專利附圖】
【附圖說明】
[0014] 圖1為本發(fā)明實(shí)施例中,寫入基本輸入輸出系統(tǒng)程序代碼的電路的系統(tǒng)方塊圖。
[0015] 圖2為本發(fā)明實(shí)施例中,基本輸入輸出系統(tǒng)程序代碼的寫入方法的流程圖。
[0016] 圖3為本發(fā)明實(shí)施例中,寫入基本輸入輸出系統(tǒng)程序代碼的電路的電路方塊圖。
[0017] 圖4為本發(fā)明實(shí)施例中,寫入基本輸入輸出系統(tǒng)程序代碼的電路的電路方塊圖。
[0018]【主要組件符號(hào)說明】 100寫入基本輸入輸出系統(tǒng)程序代碼的電路 110判斷觸發(fā)模塊 120 寫入模塊 130數(shù)據(jù)源連接接口 140 BIOS控制電路 150B10S切換電路 160 總線切換電路 200 主電路 300 BIOS。
【具體實(shí)施方式】
[0019] 下面結(jié)合附圖及本發(fā)明的實(shí)施例對(duì)本發(fā)明的寫入基本輸入輸出系統(tǒng)程序代碼的 電路與寫入方法作進(jìn)一步詳細(xì)的說明。
[0020] 圖1為本發(fā)明實(shí)施例的寫入基本輸入輸出系統(tǒng)程序代碼的電路100,連接于計(jì)算 機(jī)系統(tǒng)的主電路200以及計(jì)算機(jī)系統(tǒng)的基本輸入輸出系統(tǒng)300 (BIOS 300)。所述主電路 200大致上是計(jì)算機(jī)系統(tǒng)的主板的電路架構(gòu),但不包含主板的BIOS 300。BIOS 300中用以 儲(chǔ)存BIOS程序代碼,以使BIOS 300可執(zhí)行其功能。換句話說,主電路200與其所連接的 BIOS 300,構(gòu)成主板的電路架構(gòu)。
[0021] 寫入基本輸入輸出系統(tǒng)程序代碼的電路100包含一判斷觸發(fā)模塊110、一寫入模 塊120以及一數(shù)據(jù)源連接接口 130。數(shù)據(jù)源連接接口 130電性連接于主電路200,而構(gòu)成前 述主板的一部分,以作為主電路200的傳輸接口。數(shù)據(jù)源連接接口 130可用于取得一可用的 BIOS程序代碼,可用的BIOS程序代碼匹配BIOS 300的BIOS標(biāo)識(shí)符,而可被用于覆寫B(tài)IOS 300的數(shù)據(jù),并使BIOS 300可執(zhí)行其功能。
[0022] 數(shù)據(jù)源連接接口 130可以是本地端的傳輸接口,例如USB端口、IEEE 1394端口、 eSATA端口、藍(lán)牙無線通信界面。也就是說,數(shù)據(jù)源連接接口 130可用于連接一數(shù)據(jù)源,例 如閃存盤、硬盤、NAS或另一藍(lán)牙裝置,以取得儲(chǔ)存于數(shù)據(jù)源中的可用的BIOS程序代碼。數(shù) 據(jù)源連接接口 130也可以是連接遠(yuǎn)程服務(wù)器的網(wǎng)絡(luò)接口,包含有線網(wǎng)絡(luò)接口及無線網(wǎng)絡(luò)接 口,例如WIFI、網(wǎng)絡(luò)卡,可以聯(lián)機(jī)并登入遠(yuǎn)程服務(wù)器,以將遠(yuǎn)程服務(wù)器作為數(shù)據(jù)源。
[0023] 如圖1所示,判斷觸發(fā)模塊110連接于主電路200,用以監(jiān)控BIOS 300在計(jì)算機(jī)系 統(tǒng)的開機(jī)初始化階段的狀態(tài)。判斷觸發(fā)模塊110判斷BIOS 300是否可以在開機(jī)初始化階 段開始后,于一預(yù)定時(shí)間內(nèi)完成加載BIOS程序代碼并進(jìn)行系統(tǒng)初始化。
[0024] 若BIOS 300無法在預(yù)定時(shí)間內(nèi)完成加載BIOS程序代碼并進(jìn)行系統(tǒng)初始化,判斷 觸發(fā)模塊110判定BIOS 300無法正常工作(可能是硬件損毀,也有可能是程序代碼損毀), 并且觸發(fā)模塊110發(fā)出一觸發(fā)信號(hào)。
[0025] 如圖1所示,寫入模塊120電性連接于判斷觸發(fā)模塊110、BI0S 300以及數(shù)據(jù)源連 接接口 130。當(dāng)寫入模塊120接收到判斷觸發(fā)模塊110發(fā)出的觸發(fā)信號(hào),則寫入模塊120被 啟用。此時(shí),寫入模塊120與BIOS 300建立聯(lián)機(jī),以取得BIOS標(biāo)識(shí)符。接著,寫入模塊120 與數(shù)據(jù)源連接接口 130建立聯(lián)機(jī),依據(jù)BIOS標(biāo)識(shí)符,檢查數(shù)據(jù)源連接接口 130所連接的數(shù) 據(jù)源是否儲(chǔ)存符合BIOS標(biāo)識(shí)符的可用的BIOS程序代碼。若有符合BIOS標(biāo)識(shí)符的可用的 BIOS程序代碼,則寫入模塊120執(zhí)行BIOS程序代碼寫入作業(yè),下載可用的BIOS程序代碼, 并將BIOS程序代碼寫入BIOS 300中,以覆寫B(tài)IOS 300中的當(dāng)前資料。
[0026] 最后,寫入模塊120比對(duì)由數(shù)據(jù)源連接接口 130下載的可用的BIOS程序代碼與 BIOS 300中的數(shù)據(jù)是否符合。若符合,則輸出一更新成功的信息,并重啟計(jì)算機(jī)系統(tǒng),以使 計(jì)算機(jī)系統(tǒng)夠正常開機(jī)。若不符合,則寫入模塊120輸出更新失敗信息,并重啟計(jì)算機(jī)系統(tǒng) 或關(guān)閉計(jì)算機(jī)系統(tǒng)。一般而言,若更新失敗,通常可能是BIOS 300的硬件已經(jīng)損毀,此時(shí)失 敗信息及計(jì)算機(jī)關(guān)機(jī),可以提醒用戶必須將計(jì)算機(jī)系統(tǒng)送到供貨商處進(jìn)行維修。
[0027] 如圖1與圖2所示,本發(fā)明具體的基本輸入輸出系統(tǒng)程序代碼的寫入方法的流程 說明如下。
[0028] 如圖1與圖2所示,當(dāng)計(jì)算機(jī)系統(tǒng)進(jìn)入開機(jī)階段時(shí),本發(fā)明的寫入基本輸入輸出系 統(tǒng)程序代碼的電路100也同時(shí)啟動(dòng)。此時(shí),BIOS 300執(zhí)行開機(jī)自我檢測(cè)(Power-On Self Test,POST),以進(jìn)行計(jì)算機(jī)系統(tǒng)各項(xiàng)硬件的初始化作業(yè),并引導(dǎo)計(jì)算機(jī)系統(tǒng)加載操作系統(tǒng)。
[0029] 如步驟Step 110,寫入基本輸入輸出系統(tǒng)程序代碼的電路100啟動(dòng)后,判斷觸發(fā) 模塊110對(duì)其內(nèi)部的計(jì)時(shí)機(jī)制進(jìn)行歸零,并開始計(jì)時(shí)。此一計(jì)時(shí)機(jī)制可以是看門狗定時(shí)器 (WatchDog Timer,WDT),WDT內(nèi)部設(shè)定一預(yù)定時(shí)間,用以判斷計(jì)算機(jī)系統(tǒng)的BIOS 300是否 可以于預(yù)定時(shí)間內(nèi)完成加載BIOS 300程序代碼。
[0030] 如步驟Step 120,判斷觸發(fā)模塊110監(jiān)視計(jì)算機(jī)系統(tǒng)的開機(jī)狀態(tài),并比對(duì)計(jì)時(shí)機(jī) 制的經(jīng)過時(shí)間與BIOS程序代碼的加載狀態(tài)。若,計(jì)時(shí)機(jī)制的經(jīng)過時(shí)間已經(jīng)到達(dá)所述預(yù)定時(shí) 間,且BIOS 300無法成功加載并啟動(dòng)BIOS程序代碼,則判斷觸發(fā)模塊110判定BIOS 300無 法在預(yù)定時(shí)間內(nèi)完成加載BIOS程序代碼并進(jìn)行系統(tǒng)初始化,亦即BIOS 300對(duì)于加載BIOS 程序代碼與執(zhí)行POST作業(yè)失敗。
[0031] 如步驟St印130,當(dāng)判定加載BIOS程序代碼與執(zhí)行POST作業(yè)失敗之后,判斷觸發(fā) 模塊110發(fā)出觸發(fā)信號(hào)至寫入模塊120,以啟用寫入模塊120。
[0032] 如步驟St印140,寫入模塊120與BIOS 300建立聯(lián)機(jī),以取得BIOS標(biāo)識(shí)符。此一 BIOS標(biāo)識(shí)符可以包含BIOS 300系統(tǒng)的硬件型號(hào)、主電路200的硬件型號(hào),這項(xiàng)信息用以下 載正確的BIOS程序代碼。寫入模塊120先檢查BIOS標(biāo)識(shí)符是否存在,若存在,則讀取BIOS 標(biāo)識(shí)符,并執(zhí)行下一步驟。
[0033] 如步驟St印150,接著,寫入模塊120與數(shù)據(jù)源連接接口 130建立聯(lián)機(jī),并透過 數(shù)據(jù)源連接接口 130找出符合BIOS標(biāo)識(shí)符的BIOS程序代碼,以判斷是否可以取得可用的 BIOS程序代碼。
[0034] 如步驟Step 160,寫入模塊120執(zhí)行BIOS程序代碼寫入作業(yè),將可用的BIOS程序 代碼寫入BIOS 300中,覆寫B(tài)IOS 300中的當(dāng)前資料。
[0035] 如步驟Step 170,寫入模塊120比對(duì)可用的程序代碼與BIOS 300中的當(dāng)前資料是 否符合,若符合,則執(zhí)行步驟St印180,否則,執(zhí)行步驟St印190。
[0036] 如步驟Step 180,若符合,貝U輸出一更新成功的信息,并重啟計(jì)算機(jī)系統(tǒng),以使計(jì) 算機(jī)系統(tǒng)夠正常開機(jī)。
[0037] 如步驟St印190,若不符合,則寫入模塊120輸出更新失敗信息,并重啟計(jì)算機(jī)系 統(tǒng)或關(guān)閉計(jì)算機(jī)系統(tǒng)。
[0038] 如前所述,若更新失敗,通常可能是BIOS 300的硬件已經(jīng)損毀,或是數(shù)據(jù)源連接 接口 130的數(shù)據(jù)錯(cuò)誤,此時(shí)失敗信息及計(jì)算機(jī)關(guān)機(jī),可以提醒用戶必須將計(jì)算機(jī)系統(tǒng)送到 供貨商處進(jìn)行維修。
[0039] 圖3為本發(fā)明實(shí)施例所揭露的寫入基本輸入輸出系統(tǒng)程序代碼的電路100的具體 實(shí)施態(tài)樣,連接于計(jì)算機(jī)系統(tǒng)的主電路200,主電路200連接于BIOS 300。BIOS 300中儲(chǔ)存 BIOS程序代碼,以使BIOS 300可執(zhí)行其功能,以對(duì)主電路200執(zhí)行POST作業(yè)。
[0040] 如圖3所示,寫入基本輸入輸出系統(tǒng)程序代碼的電路100進(jìn)一步包含BIOS控制電 路140、BIOS切換電路150。
[0041] BIOS控制電路140連接于判斷觸發(fā)模塊110以及主電路200,并且經(jīng)由BIOS切換 電路150連接BIOS 300,以改變BIOS 300的聯(lián)機(jī)狀態(tài)。
[0042] BIOS切換電路150連接于BIOS 300,且寫入模塊120經(jīng)由BIOS切換電路150連 接于 BIOS 300。
[0043] 在正常的開機(jī)狀態(tài)下,判斷觸發(fā)模塊110不會(huì)被發(fā)出觸發(fā)信號(hào),而由主電路200維 持與BIOS 300的聯(lián)機(jī)。若BIOS 300并沒有驅(qū)動(dòng)主電路200進(jìn)行POST,而使得判斷觸發(fā)模 塊110發(fā)出觸發(fā)信號(hào)時(shí),則BIOS控制電路140發(fā)出切換信號(hào)至BIOS切換電路150, BIOS切 換電路150進(jìn)行切換以達(dá)成寫入模塊120與BIOS 300建立連結(jié)。
[0044] 圖4為寫入基本輸入輸出系統(tǒng)程序代碼的電路100的另一具體實(shí)施例,寫入基本 輸入輸出系統(tǒng)程序代碼的電路1〇〇進(jìn)一步包含總線切換電路160。寫入模塊120透過總線 切換電路160連接于BIOS 300。當(dāng)寫入模塊120被觸發(fā)信號(hào)所啟用,總線切換電路160使 得寫入模塊120連接于BIOS 300 ;在BIOS 300正常作業(yè)的情況下,總線切換電路160維持 寫入模塊120于脫機(jī)狀態(tài)。
[0045] 本發(fā)明的寫入基本輸入輸出系統(tǒng)程序代碼的電路100及其寫入方法,主要可在 BIOS 300失效而無法使得計(jì)算機(jī)系統(tǒng)完成開機(jī)的情況下,由寫入模塊120取得主控權(quán),驅(qū) 動(dòng)必要的裝置取得BIOS程序代碼,從而覆寫B(tài)IOS 300的數(shù)據(jù),以降低BIOS 300失效而需 要運(yùn)送計(jì)算機(jī)系統(tǒng)至供貨商處維修的頻率。
[0046] 以上所述,僅為本發(fā)明的較佳實(shí)施例而已,并非用于限定本發(fā)明的保護(hù)范圍。
【權(quán)利要求】
1. 一種寫入基本輸入輸出系統(tǒng)程序代碼的電路,連接于一計(jì)算機(jī)系統(tǒng)的主電路與基本 輸入輸出系統(tǒng),所述基本輸入輸出系統(tǒng)儲(chǔ)存基本輸入輸出系統(tǒng)BIOS程序代碼,以使所述基 本輸入輸出系統(tǒng)執(zhí)行功能,且所述基本輸入輸出系統(tǒng)具有一 BIOS標(biāo)識(shí)符;其特征在于,所 述寫入基本輸入輸出系統(tǒng)程序代碼的電路包含: 一數(shù)據(jù)源連接接口,用以取得一對(duì)應(yīng)于所述BIOS標(biāo)識(shí)符的可用的BIOS程序代碼; 一判斷觸發(fā)模塊,連接于所述主電路,用以判斷所述基本輸入輸出系統(tǒng)是否可以在開 機(jī)初始化階段開始后,于一預(yù)定時(shí)間內(nèi)完成加載BIOS程序代碼并進(jìn)行系統(tǒng)初始化;若所述 基本輸入輸出系統(tǒng)無法在所述預(yù)定時(shí)間內(nèi)完成加載BIOS程序代碼并進(jìn)行系統(tǒng)初始化,所 述判斷觸發(fā)模塊發(fā)出一觸發(fā)信號(hào); 一寫入模塊,電性連接于所述判斷觸發(fā)模塊、所述基本輸入輸出系統(tǒng)以及所述數(shù)據(jù)源 連接接口; 其中,當(dāng)所述寫入模塊接收所述觸發(fā)信號(hào),所述寫入模塊與所述基本輸入輸出系統(tǒng)建 立聯(lián)機(jī),以取得所述BIOS標(biāo)識(shí)符,所述寫入模塊與所述數(shù)據(jù)源連接接口建立聯(lián)機(jī),并依據(jù) 所述BIOS標(biāo)識(shí)符,下載所述可用的BIOS程序代碼,且所述寫入模塊寫入所述可用的BIOS 程序代碼至所述基本輸入輸出系統(tǒng),以覆寫所述基本輸入輸出系統(tǒng)中的當(dāng)前數(shù)據(jù)。
2. 根據(jù)權(quán)利要求1所述的寫入基本輸入輸出系統(tǒng)程序代碼的電路,其特征在于,所述 數(shù)據(jù)源連接接口更連接于所述主電路。
3. 根據(jù)權(quán)利要求1所述的寫入基本輸入輸出系統(tǒng)程序代碼的電路,其特征在于,所述 寫入模塊于覆寫所述基本輸入輸出系統(tǒng)中的當(dāng)前數(shù)據(jù)之后,所述寫入模塊比對(duì)由數(shù)據(jù)源連 接接口下載的可用的BIOS程序代碼與所述基本輸入輸出系統(tǒng)的數(shù)據(jù)是否符合;若符合,則 輸出一更新成功的信息。
4. 根據(jù)權(quán)利要求1所述的寫入基本輸入輸出系統(tǒng)程序代碼的電路,其特征在于,還包 含: 一 BIOS控制電路,連接于所述判斷觸發(fā)模塊與所述主電路; 一 BIOS切換電路,連接于所述基本輸入輸出系統(tǒng),且所述寫入模塊經(jīng)由所述BIOS切換 電路連接于所述基本輸入輸出系統(tǒng); 其中,當(dāng)所述判斷觸發(fā)模塊發(fā)出所述觸發(fā)信號(hào)時(shí),所述BIOS控制電路發(fā)出一切換信號(hào) 至所述BIOS切換電路,使所述BIOS切換電路進(jìn)行切換以達(dá)成所述寫入模塊與所述基本輸 入輸出系統(tǒng)建立鏈接。
5. 根據(jù)權(quán)利要求1所述的寫入基本輸入輸出系統(tǒng)程序代碼的電路,其特征在于,還包 含: 一總線切換電路,所述寫入模塊透過總線切換電路連接于所述基本輸入輸出系統(tǒng),當(dāng) 所述寫入模塊被所述觸發(fā)信號(hào)所啟用,所述總線切換電路進(jìn)行切換使得所述寫入模塊連接 于所述基本輸入輸出系統(tǒng)。
6. -種基本輸入輸出系統(tǒng)程序代碼的寫入方法,用以于一計(jì)算機(jī)系統(tǒng)進(jìn)入開機(jī)階段 時(shí),寫入一可用的BIOS程序代碼至所述計(jì)算機(jī)系統(tǒng)的基本輸出系統(tǒng),其特征在于,所述方 法包含: 以一判斷觸發(fā)模塊監(jiān)視所述計(jì)算機(jī)系統(tǒng)的開機(jī)狀態(tài),判斷所述基本輸入輸出系統(tǒng)是否 可以在一預(yù)定時(shí)間內(nèi)完成一加載BIOS程序代碼并進(jìn)行系統(tǒng)初始化;若所述基本輸入輸出 系統(tǒng)無法在所述預(yù)定時(shí)間內(nèi)加載所述BIOS程序代碼并進(jìn)行系統(tǒng)初始化,發(fā)出一觸發(fā)信號(hào); 以所述觸發(fā)信號(hào)啟用一寫入模塊,并以所述寫入模塊與所述基本輸入輸出系統(tǒng)建立聯(lián) 機(jī),以取得所述基本輸入輸出系統(tǒng)的BIOS標(biāo)識(shí)符; 以所述寫入模塊與一數(shù)據(jù)源連接接口建立聯(lián)機(jī),并透過所述數(shù)據(jù)源連接接口找出符合 BIOS標(biāo)識(shí)符的一可用的BIOS程序代碼;以及 以所述寫入模塊將所述可用的BIOS程序代碼寫入所述基本輸入輸出系統(tǒng)中,覆寫所 述基本輸入輸出系統(tǒng)的當(dāng)前數(shù)據(jù)。
7.根據(jù)權(quán)利要求6所述的基本輸入輸出系統(tǒng)程序代碼的寫入方法,其特征在于,還包 含一步驟,于覆寫所述基本輸入輸出系統(tǒng)的當(dāng)前數(shù)據(jù)之后,比對(duì)可用的BIOS程序代碼與所 述基本輸入輸出系統(tǒng)的當(dāng)前數(shù)據(jù)是否符合。
【文檔編號(hào)】G06F9/445GK104102517SQ201410349394
【公開日】2014年10月15日 申請(qǐng)日期:2014年7月22日 優(yōu)先權(quán)日:2014年7月22日
【發(fā)明者】林火元, 廖哲賢, 黃稚惟 申請(qǐng)人:技嘉科技股份有限公司