欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

還原固件信息的方法及裝置與流程

文檔序號:12887058閱讀:371來源:國知局
還原固件信息的方法及裝置與流程

本發(fā)明涉及固件安全技術領域,特別涉及一種還原固件信息的方法及裝置。



背景技術:

固件是一種嵌入在硬件裝置中的軟件,是指設備內(nèi)部保存的設備“驅動程序”,通過固件,操作系統(tǒng)才能按照標準的設備驅動實現(xiàn)特定機器的運行動作。一般來說,擔任著電子設備最基礎、最底層工作的軟件才可以稱之為固件,比如計算機主板上的基本輸入/輸出系統(tǒng)(basicinput/outputsystem,bios)。

當bios信息異常時,可能會導致無法進入操作系統(tǒng),甚至還可能導致無法正常開機,更嚴重的情況下無法更新bios,則只能拆開電子設備更換只讀存儲器(readonlymemory,rom)?,F(xiàn)有技術中可以通過將bios信息備份到硬盤中。當bios信息異常導致無法正常開機時,可以通過自動恢復技術,將硬盤中備份的bios信息恢復到rom中,從而解決系統(tǒng)無法正常開機的問題?,F(xiàn)有技術備份的過程如下:(1)開機時,檢測硬盤中是否已經(jīng)備份有bios信息;(2)若硬盤中存在bios信息,則直接運行引導程序進入操作系統(tǒng);(3)若引導成功,則檢測bios信息是否存在升級標志,若存在,則重新備份硬盤中的bios信息,并在bios信息中建立升級標志;(4)若引導失敗,則當不存在升極標志時,調(diào)用硬盤中備份的bios信息進行恢復,當存在升級標志時,用原來的bios信息進行恢復。

現(xiàn)有技術的備份方法只有當bios信息存在較新版本時才進行備份,當進行bios信息的恢復操作時,只能恢復到初始狀態(tài),中間的所有設置將無法恢復。



技術實現(xiàn)要素:

有鑒于此,本發(fā)明實施例的目的是提供一種能夠對bios信息實時備份的還原固件信息的方法及裝置。

為了實現(xiàn)上述目的,本發(fā)明實施例提供了一種還原固件信息的方法,包括:

當啟動電子設備時,運行所述電子設備的bios程序,以進入操作系統(tǒng);

若運行所述bios程序進入系統(tǒng)失敗,則當存在bios備份程序時,使用所述bios備份程序還原固件信息;

若運行所述bios程序進入系統(tǒng)成功,則當進入操作系統(tǒng)后,且當存在bios備份程序時,則根據(jù)所述bios程序更新所述bios備份程序。

作為優(yōu)選,若運行所述bios程序進入系統(tǒng)成功,所述方法還包括:

驗證運行的所述bios程序的信息與預先存儲的所述bios程序的信息是否相一致;

若不一致,則根據(jù)所述bios程序的信息更新預先存儲的所述bios程序的信息。

作為優(yōu)選,若運行所述bios程序進入系統(tǒng)成功,所述方法還包括:

驗證備份區(qū)是否存在bios備份程序;

若存在,則驗證所述bios備份程序與rom存儲器中存儲的bios程序版本是否一致,若不一致,則根據(jù)rom存儲器所存儲的bios程序版本更新備份區(qū)的所述bios備份程序;

若不存在,則根據(jù)運行的所述bios程序備份所述bios程序。

作為優(yōu)選,若運行所述bios程序進入系統(tǒng)失敗,所述方法還包括:

檢測備份區(qū)中是否存儲有bios備份程序;

若存在,檢測所述bios備份程序是否為更新后的版本;

若是,則對所述bios程序進行還原固件信息的操作。

作為優(yōu)選,檢測所述bios備份程序是否為更新后的版本,包括:

獲取所述備份區(qū)存儲的bios備份程序的校驗信息;

驗證所述bios備份程序的信息與rom存儲器中存儲的bios程序的信息是否一致,若一致則為更新后的版本。

作為優(yōu)選,所述bios程序的信息包括所述bios程序的校驗值;所述bios備份程序的信息包括所述bios備份程序的校驗值。

作為優(yōu)選,所述校驗值可由循環(huán)冗余算法獲得。

根據(jù)本發(fā)明實施的另一方面,本發(fā)明還提供一種還原固件信息的裝置,包括:

啟動模塊,配置為當啟動電子設備時,運行所述電子設備的bios程序,以進入操作系統(tǒng);

固件恢復模塊,配置為當運行所述bios程序失敗時,且當存在bios備份程序時,使用所述bios備份程序進行固件恢復;

第一更新模塊,配置為當運行所述bios程序成功時,且當進入操作系統(tǒng)后,且當存在bios備份程序時,則根據(jù)所述bios程序更新所述bios備份程序。

作為優(yōu)選,所述裝置還包括:

驗證模塊,配置為當運行所述bios程序成功時,驗證運行的所述bios程序的信息與預先存儲的所述bios程序的信息是否相一致;

第二更新模塊,配置為當運行的所述bios程序的信息與預先存儲的所述bios程序的信息不一致時,根據(jù)所述bios程序的信息更新預先存儲的所述bios程序的信息。

作為優(yōu)選,所述驗證模塊具體配置為:

驗證備份區(qū)是否存在bios備份程序;

若存在,則驗證所述bios備份程序與rom存儲器中存儲的bios程序版本是否一致,若不一致,則根據(jù)rom存儲器所存儲的bios程序版本更新備份區(qū)的所述bios備份程序;

若不存在,則根據(jù)運行的所述bios程序備份所述bios程序。

與現(xiàn)有技術相比,本發(fā)明實施例具有以下有益效果:本發(fā)明實施例的技術方案當運行bios程序失敗時,且當存在bios備份程序時,使用所述bios備份程序進行固件恢復;當運行所述bios程序成功,且當進入操作系統(tǒng)后,且當存在bios備份程序時,則根據(jù)所述bios程序更新所述bios備份程序,這樣能夠保證所備份的bios程序是最新的bios程序,并且在還原固件信息時,也能夠恢復中間的所有設置而且還可以避免在進入操作系統(tǒng)之前bios備份程序導致的被更新的bios備份程序不能引導操作系統(tǒng)的問題。

附圖說明

圖1為本發(fā)明的還原固件信息的方法的實施例一的流程圖;

圖2為本發(fā)明的還原固件信息的方法的實施例二的流程圖;

圖3為本發(fā)明的還原固件信息的方法的存儲bios程序的區(qū)域的示意圖;

圖4為本發(fā)明的還原固件信息的裝置的實施例一的示意圖;

圖5為本發(fā)明的還原固件信息的裝置的實施例二的示意圖。

具體實施方式

下面結合附圖和實施例,對本發(fā)明的具體實施方式作進一步詳細描述。以下實施例用于說明本發(fā)明,但不用來限制本發(fā)明的范圍。

圖1為本發(fā)明的還原固件信息的方法的實施例一的流程圖,如圖1所示,本實施例的還原固件信息的方法,具體可以包括如下步驟:

s101,當啟動電子設備時,運行所述電子設備的bios程序,以進入操作系統(tǒng)。

其中,電子設備可以包括臺式計算機、筆記本電腦、平板電腦、手機和pda等電子設備。

在電子設備的開機過程中,可以執(zhí)行bios程序以引導進入操作系統(tǒng)。

s102,若運行所述bios程序進入系統(tǒng)失敗,則當存在bios備份程序時,使用所述bios備份程序還原固件信息。

具體的,在實際使用電子設備的過程中,經(jīng)常會由于種種原因,例如,用戶使用不當、病毒入侵等,而使bios程序出現(xiàn)異常。導致無法開機或進入操作系統(tǒng)。這時,可以檢測是否存在bios備份程序,如果存在,則使用所述bios備份程序還原固件信息。

s103,若運行所述bios程序進入系統(tǒng)成功,則當進入操作系統(tǒng)后,且當存在bios備份程序時,則根據(jù)所述bios程序更新所述bios備份程序。

具體地,現(xiàn)有技術中有的bios備份是在未進入操作系統(tǒng)之前,剛開始啟動電子設備,檢測運行的bios程序版本為更新的版本,就對bios程序進行備份的,這種情況下,當bios程序無法引導操作系統(tǒng),則備份沒有任何意義;而且當引導失敗后,即使進行還原固件信息的操作,仍然是無法引導操作系統(tǒng)。

本實施例,當成功進入操作系統(tǒng)后,再備份所運行的bios程序,可以保證,所備份的bios程序一定是能夠成功運行的,一定能夠引導操作系統(tǒng)的。如果當前的bios出現(xiàn)異常,或者更新后的bios程序無法引導操作系統(tǒng)等情況發(fā)生,這時只要還原固件信息,即可以實現(xiàn)引導系統(tǒng)。

另外,存儲bios備份程序的備份區(qū)可以為硬盤的hpa區(qū)域。hpa是ata與s-ata規(guī)范中規(guī)定的硬盤的一種特性。支持該特性的硬盤,可以通過一些指令,將硬盤的最后一段空間設置成保護空間,設置后保護空間的數(shù)據(jù)不能被訪問。如果需要訪問保護空間,需要同樣用ata指令打開硬盤保護空間。因此可以利用硬盤的這種特性來保證保存的用于自動恢復bios模塊的bios數(shù)據(jù)的安全性。

本發(fā)明實施例的技術方案當運行bios程序失敗時,且當存在bios備份程序時,使用所述bios備份程序進行固件恢復;當運行所述bios程序成功,且當進入操作系統(tǒng)后,且當存在bios備份程序時,則根據(jù)所述bios程序更新所述bios備份程序,這樣能夠保證所備份的bios程序是最新的bios程序,并且在還原固件信息時,也能夠恢復中間的所有設置而且還可以避免在進入操作系統(tǒng)之前bios備份程序導致的被更新的bios備份程序不能引導操作系統(tǒng)的問題。

圖2為本發(fā)明的還原固件信息的方法的實施例二的流程圖,本實施例的還原固件信息的方法在上述實施例一的基礎上,進一步更加詳細地介紹本發(fā)明的技術方案。如圖2所示,本實施例的還原固件信息的方法,具體可以包括如下步驟:

s201,當啟動電子設備時,運行所述電子設備的bios程序,以進入操作系統(tǒng)。

其中,電子設備可以包括臺式計算機、筆記本電腦、平板電腦、手機和pda等電子設備。

在電子設備的開機過程中,可以執(zhí)行bios程序以引導進入操作系統(tǒng)。

s202,若運行所述bios程序進入系統(tǒng)成功,驗證運行的所述bios程序的信息與只讀存儲器(readonlymemory,rom)中存儲的所述bios程序信息是否相一致;若不一致,則執(zhí)行步驟s203;否則,則執(zhí)行步驟s204。

具體地,本實施例在biosrom存儲器中存儲有bios程序信息。為驗證當前運行的bios程序是否是更新過的bios程序,需要將當前運行的bios程序的信息與預先存儲的bios程序的信息進行比較,然后根據(jù)比較結果進行相應的操作。

s203,根據(jù)所述bios程序的信息更新rom存儲器存儲的所述bios程序信息。

具體地,若當前運行的bios程序與rom中存儲的bios程序的信息不一致,則說明當前運行的程序被更新過,然后將rom中存儲的bios程序的信息替換為當前運行的bios程序的信息。

s204,驗證備份區(qū)是否存在bios備份程序;若存在,則執(zhí)行步驟s205;否則,則執(zhí)行步驟s207。

具體地,若當前運行的bios程序與rom中存儲的bios程序的信息一致,則說明當前運行的程序可能沒有被更新,則可以正常運行bios程序,然后根據(jù)實際情況進行備份。在根據(jù)實際情況進行備份時,首先驗證備份區(qū)中是否存在bios備份程序,根據(jù)bios備份程序的情況進行相應的操作。

s205,驗證所述bios備份程序與rom存儲器中存儲的bios程序信息是否一致;若不一致,則執(zhí)行步驟s206,若一致,則執(zhí)行s211。

具體地,步驟s205包括:a,驗證所述bios備份程序的信息是否與預先存儲的所述bios程序的信息一致;b,若不一致,則根據(jù)所述bios程序更新所述bios備份程序。

如果所述bios備份程序的信息是否與預先存儲的所述bios程序的信息一致,則說明bios備份程序已經(jīng)是最新的bios備份程序了,無需再進行更新;如果不一致,則說明運行的bios程序是更新過的bios程序,需要對其進行重新備份,即更新所述bios備份程序。

s206,根據(jù)rom存儲器所存儲的bios程序更新備份區(qū)的所述bios備份程序。

具體地,可以對當前所運行的bios程序進行重新備份。

s207,根據(jù)運行的所述bios程序備份所述bios程序。

s208,若運行所述bios程序失敗,檢測備份區(qū)中是否存儲有bios備份程序;若存在,則執(zhí)行步驟s209;否則,則執(zhí)行步驟s210。

具體地,當運行所述bios程序失敗時,說明當前運行的bios程序存在異常,這時應該檢測備份區(qū)中是否存儲有bios備份程序,以便于進行還原固件信息的操作。

s209,檢測所述bios備份程序是否為更新后的版本;若是,則執(zhí)行步驟s210;否則,執(zhí)行步驟s211。

步驟s209包括:c,驗證所述bios備份程序的信息與預先存儲的bios程序的信息是否一致,若一致則為更新后的版本。

具體地,如果備份區(qū)中存在bios備份程序,則檢測該bios備份程序的信息,以確定bios備份程序是否為最新的bios程序。驗證的方法可以包括:驗證bios備份程序的信息與當前想要運行的bios程序的信息是否一致。

s210,對所述bios程序進行還原固件信息的操作。

具體地,可以將bios備份程序復制到biosrom中,然后運行biosrom中的bios程序,以引導操作系統(tǒng)。

其中,上述bios程序的信息包括所述bios程序的校驗值;所述bios備份程序的信息包括所述bios備份程序的校驗值。如果二者版本一致,bios程序的校驗值與bios備份程序的校驗值也應當是一致的。

其中,校驗值可由循環(huán)冗余校驗算法(cyclicredundancycheck,crc)獲得。循環(huán)冗余校驗是一種根據(jù)網(wǎng)絡數(shù)據(jù)包或電腦文件等數(shù)據(jù)產(chǎn)生簡短固定位數(shù)校驗碼的一種散列函數(shù)。因此,可根據(jù)bios程序計算出其crc值,根據(jù)bios備份程序計算出其crc值,然后進行比較。

另外,如圖3所示,biosrom存儲bios程序的區(qū)域可分為程序區(qū)、數(shù)據(jù)區(qū)和校驗區(qū)。其中,程序區(qū)用于存儲引導部分和其他代碼,數(shù)據(jù)區(qū)用于存儲數(shù)據(jù),校驗區(qū)用于存儲校驗值,在本實施例中可以為crc值。在具體實施時,不論程序區(qū)中存儲的引導部分和其他代碼有變化,還是數(shù)據(jù)區(qū)中存儲的數(shù)據(jù)發(fā)生變化,均會使得crc值發(fā)生變化,需要重新進行計算。在驗證過程中,只需要將校驗區(qū)中的crc值與bios備份程序的crc值進行比較,以確定是否需要重新備份。

本實施例在備份區(qū)僅保留一個最新的且可正常運行的bios程序,避免在備份區(qū)存儲多個版本的bios程序時,在還原固件信息時無法確定采用哪一bios程序的問題。同時,對于存儲bios備份程序的存儲介質(zhì)也沒有限制,既可以用普通硬盤存儲,也可以采用其他非易失性存儲設備存儲。

s211,結束運行bios程序。

本發(fā)明實施例的技術方案在引導進入操作系統(tǒng)后才進行備份,確保bios備份程序可以引導操作系統(tǒng);同時,本實施對存儲bios備份程序的存儲介紹類型也沒有限制。

圖4為本發(fā)明的還原固件信息的裝置的實施例一的示意圖,如圖4所示,本實施例的還原固件信息的裝置,具體可以包括啟動模塊41、固件恢復模塊42和第一更新模塊43。

啟動模塊41,配置為當啟動電子設備時,運行所述電子設備的bios程序,以進入操作系統(tǒng);

固件恢復模塊42,配置為當運行所述bios程序失敗時,且當存在bios備份程序時,使用所述bios備份程序進行固件恢復;

第一更新模塊43,配置為當運行所述bios程序成功時,且當進入操作系統(tǒng)后,且當存在bios備份程序時,則根據(jù)所述bios程序更新所述bios備份程序。

本實施例的還原固件信息的裝置,通過采用上述模塊還原固件信息的實現(xiàn)機制與上述圖1所示實施例的還原固件信息的方法的實現(xiàn)機制相同,詳細可以參考上述圖1所示實施例的記載,在此不再贅述。

圖5為本發(fā)明的還原固件信息的裝置的實施例二的示意圖,本實施例的還原固件信息的裝置在如圖4所示的實施例一的基礎上,進一步更加詳細地介紹本發(fā)明的技術方案。如圖5所示,本實施例的還原固件信息的裝置,進一步可以包括:

驗證模塊51,配置為當運行所述bios程序成功時,驗證運行的所述bios程序的信息與預先存儲的所述bios程序的信息是否相一致;

第二更新模塊52,配置為當運行的所述bios程序的信息與預先存儲的所述bios程序的信息不一致時,根據(jù)所述bios程序的信息更新預先存儲的所述bios程序的信息。

所述驗證模塊51具體配置為:

驗證備份區(qū)是否存在bios備份程序;

若存在,則驗證所述bios備份程序與rom存儲器中存儲的bios程序版本是否一致,若不一致,則根據(jù)rom存儲器所存儲的bios程序版本更新備份區(qū)的所述bios備份程序;

若不存在,則根據(jù)運行的所述bios程序備份所述bios程序。

本實施例的還原固件信息的裝置,通過采用上述模塊還原固件信息的實現(xiàn)機制與上述圖2所示實施例的還原固件信息的方法的實現(xiàn)機制相同,詳細可以參考上述圖2所示實施例的記載,在此不再贅述。

以上實施例僅為本發(fā)明的示例性實施例,不用于限制本發(fā)明,本發(fā)明的保護范圍由權利要求書限定。本領域技術人員可以在本發(fā)明的實質(zhì)和保護范圍內(nèi),對本發(fā)明做出各種修改或等同替換,這種修改或等同替換也應視為落在本發(fā)明的保護范圍內(nèi)。

當前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
西宁市| 平江县| 灵山县| 黄山市| 壶关县| 当涂县| 禄劝| 桂林市| 霍林郭勒市| 宁南县| 昌平区| 石门县| 玉环县| 繁昌县| 上思县| 佛冈县| 长武县| 陈巴尔虎旗| 博野县| 车致| 河西区| 宁明县| 穆棱市| 金塔县| 大竹县| 天等县| 石楼县| 日土县| 夏河县| 甘孜县| 广河县| 无极县| 湘乡市| 泽州县| 友谊县| 沙河市| 泗洪县| 孟连| 河北区| 交口县| 光山县|