本技術(shù)涉及計算機,尤其涉及一種基本輸入輸出系統(tǒng)(basic?inputoutput?system,bios)燒錄方法、裝置、設(shè)備及介質(zhì)。
背景技術(shù):
1、隨著云計算和大數(shù)據(jù)技術(shù)的普及,設(shè)備(如服務(wù)器)的數(shù)量和規(guī)模也在不斷增加。對設(shè)備進行定期的維護和升級能優(yōu)化設(shè)備的性能,提高設(shè)備的穩(wěn)定性,避免災(zāi)難性問題的發(fā)生。設(shè)備的維護升級常常伴隨著bios的更新升級。這也使得bios燒錄的工作量變得越來越大。bios作為系統(tǒng)的引導(dǎo)程序,硬件設(shè)備系統(tǒng)通常對其可靠性和穩(wěn)定性要求較高,一旦bios的程序出現(xiàn)異常,那么設(shè)備系統(tǒng)將無法正常開機使用,因此bios更新升級(即bios版本刷新)的可靠性越來越被重視。
2、由于在操作系統(tǒng)下(即開機狀態(tài)下)使用刷新工具對bios進行刷新是被廣泛應(yīng)用的刷新方法,且若在操作系統(tǒng)下強制刷新,則可能會造成bios程序所在的非易失隨機訪問存儲器(flash)區(qū)域中數(shù)據(jù)變化,導(dǎo)致設(shè)備可靠性降低。
技術(shù)實現(xiàn)思路
1、本技術(shù)實施例提供了一種bios燒錄方法、裝置、設(shè)備及介質(zhì),用以解決現(xiàn)有技術(shù)中在操作系統(tǒng)下強制刷新,造成bios程序所在的flash區(qū)域中數(shù)據(jù)變化,設(shè)備可靠性降低的問題。
2、第一方面,本技術(shù)實施例提供了一種bios燒錄方法,該方法應(yīng)用于電子設(shè)備,該方法包括:
3、若接收到燒錄腳本,則獲取待升級bios文件;
4、將所述待升級bios文件寫入基本輸入輸出系統(tǒng)的非易失隨機訪問存儲器biosflash中的bios待升級區(qū)域,以使在下一次開機時,基于所述bios待升級區(qū)域中存放的第一bios文件對bios進行更新升級。
5、通過上述方式,由于在開機狀態(tài)下將待升級bios文件寫入到bios?flash中的bios待升級區(qū)域中,不破壞操作系統(tǒng)運行中所需要的bios的數(shù)據(jù),確保存放在bios待升級區(qū)域中的第一bios文件中的數(shù)據(jù)不會被改變,從而在下一次開機時基于bios待升級區(qū)域中的第一bios文件中的數(shù)據(jù)對bios進行更新升級,減少bios更新升級對設(shè)備的影響,提高設(shè)備可靠性,保障bios燒錄安全。
6、在一種可能的實施方式中,所述在下一次開機時,基于所述bios待升級區(qū)域中存放的第一bios文件對bios進行更新升級,包括:
7、若接收到開機指令,識別所述bios待升級區(qū)域中是否存在第一bios文件;
8、若是,將所述第一bios文件寫入所述bios?flash中的bios區(qū)域,完成對所述bios的更新升級。
9、通過上述方式,將bios刷新分為預(yù)燒錄和燒錄過程,電子設(shè)備在識別到bios待升級區(qū)域中存在第一bios文件,即確定預(yù)燒錄過程完成后,執(zhí)行后續(xù)的燒錄過程,即完成后續(xù)將第一bios文件中的數(shù)據(jù)寫入到bios區(qū)域,完成對bios的更新升級的過程,保障了燒錄的安全,進一步減少bios燒錄對設(shè)備的影響。
10、在一種可能的實施方式中,所述將所述待升級bios文件寫入bios?flash中的bios待升級區(qū)域之后,所述方法還包括:
11、判斷所述bios待升級區(qū)域中存放的第一bios文件中的數(shù)據(jù)與所述待升級bios文件中的數(shù)據(jù)是否一致,若是,則確定燒錄執(zhí)行標(biāo)志位為有效狀態(tài);
12、所述識別所述bios待升級區(qū)域中是否存在第一bios文件,包括:
13、識別所述燒錄執(zhí)行標(biāo)志位是否為有效狀態(tài),若是,則確定所述bios待升級區(qū)域中是否存在第一bios文件。
14、通過上述方式,通過判斷bios待升級區(qū)域中存放的第一bios文件中的數(shù)據(jù)與待升級bios文件中的數(shù)據(jù)是否一致,來確定預(yù)燒錄過程是否執(zhí)行成功,以及是否存在新的bios固件需要燒錄,在確定預(yù)燒錄執(zhí)行成功后,才能繼續(xù)后續(xù)的燒錄過程,進一步保障bios燒錄安全,減少bios燒錄對設(shè)備的影響。
15、在一種可能的實施方式中,所述基于所述完成對所述bios的更新升級之前,所述方法還包括:
16、判斷所述bios區(qū)域中存放的第二bios文件中的數(shù)據(jù)與所述第一bios文件中的數(shù)據(jù)是否一致,若是,則確定對所述bios更新升級成功。
17、通過上述方式,在將bios待升級區(qū)域中存放的第一bios文件中的數(shù)據(jù)寫入到bios區(qū)域中后,判斷bios區(qū)域中存放的第二bios文件中的數(shù)據(jù)與第一bios文件中的數(shù)據(jù)是否一致,即確定對bios進行更新時使用的數(shù)據(jù)是否無誤,在確定對bios進行更新時使用的數(shù)據(jù)無誤后,才確定對bios更新升級成功,并繼續(xù)后續(xù)開機過程,進一步減少bios燒錄對設(shè)備的影響。
18、在一種可能的實施方式中,所述接收到燒錄腳本之后,所述方法還包括:
19、屏蔽電源鍵功能,使電源鍵的關(guān)機功能失效;
20、所述確定燒錄執(zhí)行標(biāo)志位為有效狀態(tài)之后,所述方法還包括:
21、恢復(fù)所述電源鍵功能。
22、通過上述方式,在接收到燒錄腳本后,在執(zhí)行預(yù)燒錄過程之前,屏蔽電源鍵功能,避免由于使用電源鍵執(zhí)行關(guān)機操作導(dǎo)致bios刷新失敗的問題,進一步保障bios燒錄安全,減少bios燒錄對設(shè)備的影響。
23、在一種可能的實施方式中,所述將所述待升級bios文件寫入bios?flash中的bios待升級區(qū)域之前,所述方法還包括:
24、通過解鎖碼,開啟所述bios?flash的寫入權(quán)限;
25、所述確定燒錄執(zhí)行標(biāo)志位為有效狀態(tài)之后,所述方法還包括:
26、基于加密密鑰對所述bios?flash的寫入權(quán)限上鎖。
27、通過上述方式,若確定需要執(zhí)行預(yù)燒錄過程,通過解鎖碼開啟bios?flash的寫入權(quán)限,確保能將待升級bios文件中的數(shù)據(jù)寫入到bios待升級區(qū)域中,在確定預(yù)燒錄過程執(zhí)行完成,可以基于加密密鑰對bios?flash的寫入權(quán)限上鎖,確保不改變bios?flash中bios待升級區(qū)域中存放的第一bios文件中的數(shù)據(jù),進一步保證bios燒錄安全,減少bios燒錄對設(shè)備的影響。
28、第二方面,本技術(shù)實施例還提供了一種bios燒錄裝置,該bios燒錄裝置具有實現(xiàn)上述第一方面的方法實施例中設(shè)備的行為的功能,有益效果可以參見第一方面的描述此處不再贅述。bios燒錄裝置包括:
29、獲取模塊,用于若接收到燒錄腳本,則獲取待升級bios文件;
30、預(yù)燒錄模塊,用于將所述待升級bios文件寫入基本輸入輸出系統(tǒng)的非易失隨機訪問存儲器bios?flash中的bios待升級區(qū)域,以使在下一次開機時,基于所述bios待升級區(qū)域中存放的第一bios文件對bios進行更新升級。
31、第三方面,本技術(shù)實施例還提供了一種電子設(shè)備,所述電子設(shè)備至少包括處理器和存儲器,所述處理器用于執(zhí)行存儲器中存儲的計算機程序時實現(xiàn)如上述任一項所述bios燒錄方法的步驟。
32、第四方面,本技術(shù)實施例還提供了一種計算機可讀存儲介質(zhì),其存儲有計算機程序,所述計算機程序被處理器執(zhí)行時實現(xiàn)如上述任一項所述bios燒錄方法的步驟。
33、第五方面,本技術(shù)實施例提供了一種計算機程序產(chǎn)品,所述計算機程序產(chǎn)品包括:計算機程序代碼,當(dāng)所述計算機程序代碼在計算機上運行時,使得計算機執(zhí)行上述如第一方面中任一項所述的bios燒錄方法的步驟。