亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

基于BMC更新及備份系統(tǒng)UEFI固件的設(shè)備和方法與流程

文檔序號(hào):11654041閱讀:807來源:國知局
基于BMC更新及備份系統(tǒng)UEFI固件的設(shè)備和方法與流程

本發(fā)明涉及一種基于bmc固件的服務(wù)器計(jì)算機(jī)uefi固件的更新方法,尤其是在服務(wù)器計(jì)算機(jī)出現(xiàn)其uefi固件被徹底破壞導(dǎo)致的情形下的服務(wù)器計(jì)算機(jī)uefi固件的更新。



背景技術(shù):

統(tǒng)一可擴(kuò)展固件接口(unifiedextensiblefirmwareinterface,uefi)是由intel、amd、microsoft、ami、lenovo及hp等pc廠商為了推動(dòng)計(jì)算機(jī)發(fā)展而取代傳統(tǒng)bios的一種固件接口標(biāo)準(zhǔn)。其目的是為了提供一組在操作系統(tǒng)啟動(dòng)前在所有平臺(tái)上實(shí)現(xiàn)一致的、正確的啟動(dòng)服務(wù),被看做是有近20多年歷史的bios的繼任者。隨著uefi固件接口的發(fā)展,uefi固件在很多方面實(shí)現(xiàn)了傳統(tǒng)bios所無法比擬的優(yōu)勢(shì)及功能,如支持圖形化配置界面、支持鼠標(biāo)操作、強(qiáng)大的跨平臺(tái)特性、良好的兼容性、使用模塊化設(shè)計(jì),降低了開發(fā)和設(shè)計(jì)的難度。uefi固件的這些優(yōu)勢(shì),使其得到了快速發(fā)展,得到了更多pc、服務(wù)器及嵌入式廠商的支持,被應(yīng)用到了越來越多的領(lǐng)域中。

bios是英文"basicinputoutputsystem"的縮略詞,翻譯為中文名稱是"基本輸入輸出系統(tǒng)"。bios是一組固化到計(jì)算機(jī)內(nèi)主板上一個(gè)rom芯片上的程序,它保存著計(jì)算機(jī)最重要的基本輸入輸出的程序、開機(jī)后自檢程序和系統(tǒng)自啟動(dòng)程序,它可從cmos中讀寫系統(tǒng)設(shè)置的具體信息。其主要功能是為計(jì)算機(jī)提供最底層的、最直接的硬件設(shè)置和控制。

bmc,其全稱是baseboardmanagementcontroller,是在服務(wù)器計(jì)算機(jī)平臺(tái)上特有的硬件模塊,該模塊的主要功能是實(shí)時(shí)監(jiān)控服務(wù)器計(jì)算機(jī)的各個(gè)硬件設(shè)備的狀態(tài),如中央處理器的溫度,硬盤和內(nèi)存等外部設(shè)備的信息。該模塊也有其自己的固件系統(tǒng),該系統(tǒng)獨(dú)立于系統(tǒng)uefi固件之外,在服務(wù)器計(jì)算機(jī)主板接入外接電源而沒有開始啟動(dòng)時(shí),該系統(tǒng)便能夠開始運(yùn)行并能夠接受外部指令,如令服務(wù)器主板開機(jī)、關(guān)機(jī)以及獲取系統(tǒng)uefi固件內(nèi)容等工作。

uefi固件更新,是指由于當(dāng)前計(jì)算機(jī)中存儲(chǔ)在eeprom芯片中的uefi固件存在缺陷或者功能缺失等原因,故將由計(jì)算機(jī)廠商發(fā)布的新版本的固件通過軟件更新或者硬件燒錄器寫入eeprom芯片的過程。當(dāng)服務(wù)器計(jì)算機(jī)主板在提供給最終客戶以后,就通常不再具備硬件燒錄器燒寫eeprom的環(huán)境,因此在這樣的條件下,通過軟件的方式確保服務(wù)器計(jì)算機(jī)uefi固件能夠被更新就變得異常迫切。一般情況下的軟件更新方式需要確保存儲(chǔ)在eeprom芯片中的uefi固件的sec和pei模塊需要是完整的,才能保證軟件更新功能可以正常進(jìn)行,但是當(dāng)存儲(chǔ)在eeprom芯片中的sec及pei模塊由于某種原因無法正常執(zhí)行時(shí),軟件更新方法便失去了功能。



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

發(fā)明目的:針對(duì)現(xiàn)有技術(shù)中存在的問題,本發(fā)明提供一種基于bmc更新及備份系統(tǒng)uefi固件的設(shè)備和方法,利用bmc存儲(chǔ)介質(zhì)(如eeprom)中存儲(chǔ)的sec及pei模塊來實(shí)現(xiàn)對(duì)系統(tǒng)uefi固件的更新。

技術(shù)方案:一種基于bmc更新及備份系統(tǒng)uefi固件的設(shè)備,包括:

bmc存儲(chǔ)介質(zhì),用于保存系統(tǒng)uefi固件的sec及pei階段的可執(zhí)行代碼;

bmc應(yīng)用模塊,用于檢查uefi固件是否正常啟動(dòng)及恢復(fù)和備份系統(tǒng)uefi固件的sec及pei模塊;

(1)檢查是否在規(guī)定時(shí)間內(nèi)收到了系統(tǒng)uefi固件完成啟動(dòng)的標(biāo)志;

如果沒收到啟動(dòng)完成標(biāo)志,檢查sec及pei模塊寫入標(biāo)志是否被設(shè)置,

如是,則向服務(wù)器主板發(fā)送重啟命令,服務(wù)器主板收到重啟命令并重新啟動(dòng),中央處理器開始執(zhí)行存儲(chǔ)在eeprom中的sec及pei階段的代碼,中央處理器執(zhí)行完sec及pei階段代碼后,檢查是否需要進(jìn)行uefi固件更新,

如否,系統(tǒng)uefi固件完成啟動(dòng),向bmc發(fā)送啟動(dòng)完成標(biāo)志,bmc設(shè)置系統(tǒng)uefi固件啟動(dòng)完成標(biāo)志;如是,調(diào)用uefi固件更新模塊查找是否存目標(biāo)uefi固件;如是,則進(jìn)行uefi固件更新工作,完成sec及pei等其他所有模塊的更新工作并觸發(fā)重啟命令,如否,將需要更新的目標(biāo)uefi固件拷貝到需要更新的服務(wù)器計(jì)算機(jī);

(2)如sec及pei模塊寫入標(biāo)志沒被設(shè)置,則觸發(fā)uefi固件恢復(fù)標(biāo)志,將存儲(chǔ)在bmc存儲(chǔ)介質(zhì)中的sec及pei模塊寫入系統(tǒng)uefi固件存儲(chǔ)芯片的對(duì)應(yīng)區(qū)域中,并設(shè)置sec及pei模塊寫入完成標(biāo)志;

uefi固件更新模塊,實(shí)現(xiàn)對(duì)系統(tǒng)uefi固件的更新及確認(rèn)工作。

所述服務(wù)器計(jì)算機(jī)系統(tǒng)的bmc存儲(chǔ)介質(zhì)包括:

一種具有bmc固件模塊的服務(wù)器計(jì)算機(jī);

bmc模塊需要被獨(dú)立存儲(chǔ)在存儲(chǔ)介質(zhì)中,通常是spi接口的eeprom芯片;

將系統(tǒng)uefi固件的sec及pei階段的可執(zhí)行代碼存儲(chǔ)在該eeprom芯片中。

所述bmc應(yīng)用模塊包括:

系統(tǒng)uefi固件的sec及pei恢復(fù)模塊;

系統(tǒng)uefi固件的sec及pei備份模塊。

所述uefi固件更新模塊包括:

dxe階段代碼;

bds階段代碼;

pcd管理模塊;

固件文件系統(tǒng)卷服務(wù)模塊;

簡單文本輸出模塊;

unicode字符支持模塊;

fat文件系統(tǒng)模塊。

一種基于bmc更新及備份系統(tǒng)uefi固件的方法,具體步驟如下:

步驟1,將需要更新的目標(biāo)uefi固件拷貝到需要更新的服務(wù)器計(jì)算機(jī);

步驟2,啟動(dòng)服務(wù)器計(jì)算機(jī),然后檢查bmc應(yīng)用模塊是否在規(guī)定時(shí)間內(nèi)收到了系統(tǒng)uefi固件完成啟動(dòng)的標(biāo)志,如果收到啟動(dòng)完成標(biāo)志,則跳轉(zhuǎn)到步驟10;否則進(jìn)入步驟3;

步驟3,檢查sec及pei模塊寫入標(biāo)志是否被設(shè)置,如否,則進(jìn)入步驟4;如是,則觸發(fā)uefi固件恢復(fù)標(biāo)志,調(diào)用bmc應(yīng)用模塊,將存儲(chǔ)在bmc存儲(chǔ)介質(zhì)中的sec及pei模塊寫入系統(tǒng)uefi固件存儲(chǔ)芯片的對(duì)應(yīng)區(qū)域中,并設(shè)置sec及pei模塊的寫入完成標(biāo)志;

步驟4,bmc向服務(wù)器主板發(fā)送重啟命令;

步驟5,服務(wù)器主板收到重啟命令并重新啟動(dòng),中央處理器開始執(zhí)行存儲(chǔ)在eeprom中的sec及pei階段的代碼;

步驟6,中央處理器執(zhí)行完sec及pei階段代碼后,檢查是否需要進(jìn)行uefi固件更新,如否,進(jìn)入步驟9;如是,進(jìn)入步驟7;

步驟7,調(diào)用uefi固件更新模塊查找是否存在步驟1中的目標(biāo)uefi固件;如否,則進(jìn)入步驟8;如否,則回到步驟1。

步驟8,進(jìn)行uefi固件更新工作,完成sec及pei等其他所有模塊的更新工作并觸發(fā)重啟命令,進(jìn)入步驟9。

步驟9,系統(tǒng)uefi固件完成啟動(dòng),向bmc發(fā)送啟動(dòng)完成標(biāo)志,bmc設(shè)置系統(tǒng)uefi固件啟動(dòng)完成標(biāo)志。

步驟10,結(jié)束。

附圖說明

圖1是系統(tǒng)uefi固件布局示意圖;

圖2是bmc固件布局示意圖;

圖3是本發(fā)明利用bmc固件恢復(fù)系統(tǒng)uefi固件的原理框圖;

圖4是本發(fā)明方法的流程圖。

具體實(shí)施方式

下面結(jié)合具體實(shí)施例,進(jìn)一步闡明本發(fā)明,應(yīng)理解這些實(shí)施例僅用于說明本發(fā)明而不用于限制本發(fā)明的范圍,在閱讀了本發(fā)明之后,本領(lǐng)域技術(shù)人員對(duì)本發(fā)明的各種等價(jià)形式的修改均落于本申請(qǐng)所附權(quán)利要求所限定的范圍。

基于bmc更新及備份系統(tǒng)uefi固件的設(shè)備,包括:

bmc存儲(chǔ)介質(zhì),用于保存系統(tǒng)uefi固件的sec及pei階段的可執(zhí)行代碼;

bmc應(yīng)用模塊,用于檢查uefi固件是否正常啟動(dòng)及恢復(fù)和備份系統(tǒng)uefi固件的sec及pei模塊;

(1)檢查是否在規(guī)定時(shí)間內(nèi)收到了系統(tǒng)uefi固件完成啟動(dòng)的標(biāo)志;

如果沒收到啟動(dòng)完成標(biāo)志,檢查sec及pei模塊寫入標(biāo)志是否被設(shè)置,

如是,則向服務(wù)器主板發(fā)送重啟命令,服務(wù)器主板收到重啟命令并重新啟動(dòng),中央處理器開始執(zhí)行存儲(chǔ)在eeprom中的sec及pei階段的代碼,中央處理器執(zhí)行完sec及pei階段代碼后,檢查是否需要進(jìn)行uefi固件更新,

如否,系統(tǒng)uefi固件完成啟動(dòng),向bmc發(fā)送啟動(dòng)完成標(biāo)志,bmc設(shè)置系統(tǒng)uefi固件啟動(dòng)完成標(biāo)志;如是,調(diào)用uefi固件更新模塊查找是否存目標(biāo)uefi固件;如是,則進(jìn)行uefi固件更新工作,完成sec及pei等其他所有模塊的更新工作并觸發(fā)重啟命令,如否,將需要更新的目標(biāo)uefi固件拷貝到需要更新的服務(wù)器計(jì)算機(jī);

(2)如sec及pei模塊寫入標(biāo)志沒被設(shè)置,則觸發(fā)uefi固件恢復(fù)標(biāo)志,將存儲(chǔ)在bmc存儲(chǔ)介質(zhì)中的sec及pei模塊寫入系統(tǒng)uefi固件存儲(chǔ)芯片的對(duì)應(yīng)區(qū)域中,并設(shè)置sec及pei模塊寫入完成標(biāo)志;

uefi固件更新模塊,實(shí)現(xiàn)對(duì)系統(tǒng)uefi固件的更新及確認(rèn)工作。

服務(wù)器計(jì)算機(jī)系統(tǒng)的bmc存儲(chǔ)介質(zhì)包括:

具有bmc固件模塊的服務(wù)器計(jì)算機(jī);

bmc模塊需要被獨(dú)立存儲(chǔ)在存儲(chǔ)介質(zhì)中,通常是spi接口的eeprom芯片;

將系統(tǒng)uefi固件的sec及pei階段的可執(zhí)行代碼存儲(chǔ)在該eeprom芯片中。

bmc應(yīng)用模塊包括:

系統(tǒng)uefi固件的sec及pei恢復(fù)模塊;

系統(tǒng)uefi固件的sec及pei備份模塊。

uefi固件更新模塊包括:

dxe階段代碼;

bds階段代碼;

pcd管理模塊;

固件文件系統(tǒng)卷服務(wù)模塊;

簡單文本輸出模塊;

unicode字符支持模塊;

fat文件系統(tǒng)模塊。

圖1和圖2均表示固件布局的簡略示意圖,其中圖1表示系統(tǒng)固件在存儲(chǔ)芯片上的存儲(chǔ)布局;圖2表示bmc固件在存儲(chǔ)芯片上的存儲(chǔ)布局;

sec模塊作用:完成cpu模式切換,從16位保護(hù)模式切換到實(shí)模式,利用cpu的緩存建立程序調(diào)用的堆棧環(huán)境,當(dāng)前述工作完成后,通過函數(shù)調(diào)用的方式跳轉(zhuǎn)到pei模塊的起始代碼開始執(zhí)行;

pei模塊作用:完成cpu及芯片組(通常是pch橋)的最基本初始化,完成平臺(tái)的內(nèi)存初始化,當(dāng)前述工作完成后,pei模塊會(huì)將系統(tǒng)uefi固件從存儲(chǔ)芯片(通常是eeprom芯片)復(fù)制到內(nèi)存,然后將內(nèi)存中的系統(tǒng)uefi固件解壓縮并跳轉(zhuǎn)到mainfv模塊;

mainfv模塊:對(duì)cpu、芯片組以及各種外部設(shè)備進(jìn)行初始化,準(zhǔn)備操作系統(tǒng)安裝、啟動(dòng)環(huán)境。

bmc應(yīng)用模塊:負(fù)責(zé)將存在bmc存儲(chǔ)芯片中的sec和pei模塊寫入存儲(chǔ)系統(tǒng)uefi固件的存儲(chǔ)芯片中;

pch橋:全稱是platformcontrollerhub,通常用來連接各種外部設(shè)備,如鍵盤,鼠標(biāo),硬盤、光驅(qū)和網(wǎng)卡等;

lpc總線:全稱是lowpincount;是intel發(fā)布的取代傳統(tǒng)isabus的一種新接口規(guī)范,用來連接低速設(shè)備和pch橋.

spi總線:全稱是serialperipheralinterface,是bios存儲(chǔ)芯片與pch橋之間的連接接口;

usb總線:全稱是universalserialbus,是由intel等多家公司提出的一種計(jì)算機(jī)外部接口標(biāo)準(zhǔn);

pcie總線:全稱是peripheralcomponentinterconnectexpress,是一種點(diǎn)對(duì)點(diǎn)串行連接的設(shè)備連接方式,pciexpress是新一代的總線接口。

如圖4所示,基于bmc更新及備份系統(tǒng)uefi固件的方法,具體步驟如下:

步驟1,將需要更新的目標(biāo)uefi固件拷貝到需要更新的服務(wù)器計(jì)算機(jī);

步驟2,啟動(dòng)服務(wù)器計(jì)算機(jī),然后檢查bmc應(yīng)用模塊是否在規(guī)定時(shí)間內(nèi)收到了系統(tǒng)uefi固件完成啟動(dòng)的標(biāo)志,如果收到啟動(dòng)完成標(biāo)志,則跳轉(zhuǎn)到步驟10;否則進(jìn)入步驟3;

步驟3,檢查sec及pei模塊寫入標(biāo)志是否被設(shè)置,如否,則進(jìn)入步驟4;如是,則觸發(fā)uefi固件恢復(fù)標(biāo)志,調(diào)用bmc應(yīng)用模塊,將存儲(chǔ)在bmc存儲(chǔ)介質(zhì)中的sec及pei模塊寫入系統(tǒng)uefi固件存儲(chǔ)芯片的對(duì)應(yīng)區(qū)域中,并設(shè)置sec及pei模塊的寫入完成標(biāo)志;

步驟4,bmc向服務(wù)器主板發(fā)送重啟命令;

步驟5,服務(wù)器主板收到重啟命令并重新啟動(dòng),中央處理器開始執(zhí)行存儲(chǔ)在eeprom中的sec及pei階段的代碼;

步驟6,中央處理器執(zhí)行完sec及pei階段代碼后,檢查是否需要進(jìn)行uefi固件更新,如否,進(jìn)入步驟9;如是,進(jìn)入步驟7;

步驟7,調(diào)用uefi固件更新模塊查找是否存在步驟1中的目標(biāo)uefi固件;如是,則進(jìn)入步驟8;如否,則回到步驟1。

步驟8,進(jìn)行uefi固件更新工作,完成sec及pei等其他所有模塊的更新工作并觸發(fā)重啟命令,進(jìn)入步驟9。

步驟9,系統(tǒng)uefi固件完成啟動(dòng),向bmc發(fā)送啟動(dòng)完成標(biāo)志,bmc設(shè)置系統(tǒng)uefi固件啟動(dòng)完成標(biāo)志。

步驟10,結(jié)束。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1