專(zhuān)利名稱(chēng)::基板管理控制器的固件自動(dòng)配置系統(tǒng)及方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及一種固件自動(dòng)配置的系統(tǒng)及方法,尤其是涉及一種符合IPMI(IntelligentPlatformManagementInterface,智能化平臺(tái)管理接口)規(guī)范的基板管理控制器固件自動(dòng)配置系統(tǒng)及方法。
背景技術(shù):
:新經(jīng)濟(jì)時(shí)代企業(yè)面臨的一個(gè)主要問(wèn)題是既要保證應(yīng)用系統(tǒng)不間斷運(yùn)行,又要不斷降低運(yùn)行成本。誰(shuí)能更好地控制網(wǎng)絡(luò)管理成本,誰(shuí)就有可能在競(jìng)爭(zhēng)中站在前列。市場(chǎng)的需求決定著技術(shù)與產(chǎn)業(yè)的發(fā)展方向。業(yè)界的一些主要廠商從1997年開(kāi)始聯(lián)手,步入服務(wù)器管理智能化的研發(fā)之路。它們的出發(fā)點(diǎn)是解決服務(wù)器硬件管理能力低的問(wèn)題。經(jīng)過(guò)數(shù)年努力,于2001年推出了IPMI(IntelligentPlatformManagementInterface,智能化平臺(tái)管理接口)標(biāo)準(zhǔn)。IPMI是使硬件管理具備智能化的新一代通用接口標(biāo)準(zhǔn)。用戶可以利用IPMI監(jiān)視服務(wù)器的物理健康特征,如溫度、電壓、電扇工作狀態(tài)、電源供應(yīng)以及機(jī)箱入侵等,為系統(tǒng)管理、恢復(fù)以及資產(chǎn)管理提供信息。IPMI技術(shù)的“智能化”來(lái)自于一個(gè)管理微控制器。在一個(gè)主機(jī)系統(tǒng)里,這個(gè)控制器被稱(chēng)為BMC(BaseboardManagementController,基板管理控制器)。BMC可以用來(lái)提供智能平臺(tái)管理的智能,控制系統(tǒng)的管理軟件和平臺(tái)管理硬件之間的接口,提供自主監(jiān)視、事件記錄和恢復(fù)控制功能,并可作為系統(tǒng)管理軟件和IPMB(智能平臺(tái)管理總線)與ICMB(智能機(jī)箱管理總線)接口間的網(wǎng)關(guān)使用。BMC自備電源,并自動(dòng)地監(jiān)控系統(tǒng)健康狀況。如果發(fā)現(xiàn)任何被控單元異常,它能立即采取行動(dòng),例如記錄事件、報(bào)警、自動(dòng)關(guān)機(jī)或重啟動(dòng)。與BMC相關(guān)聯(lián)的是一組無(wú)源內(nèi)存,用來(lái)存儲(chǔ)傳感器的數(shù)據(jù)(SensorDataRecords,SDR)、系統(tǒng)事件記錄文件,以及一些單元信息如序列號(hào)和部件號(hào)信息等。IPMI通過(guò)指定通用、精簡(jiǎn)、基于消息的接口,將信息傳輸?shù)焦芾砦⒖刂破鳎瑢?shí)現(xiàn)軟件與硬件信息的分離。平時(shí)BMC會(huì)收集有關(guān)系統(tǒng)健康和系統(tǒng)狀態(tài)信息,當(dāng)有嚴(yán)重事件發(fā)生時(shí)可以執(zhí)行糾正動(dòng)作。通常,系統(tǒng)健康監(jiān)視功能是利用菲利浦的I2C數(shù)字傳感器(如LM75、LM85、LM84、LM86)實(shí)現(xiàn)的,它能監(jiān)視不同的系統(tǒng)電壓、溫度和風(fēng)扇速度。BMC采用主動(dòng)輪詢的方式來(lái)發(fā)現(xiàn)是否存在超出范圍的傳感器。為了使監(jiān)視工作切實(shí)有效,BMC可以根據(jù)不同的門(mén)限值進(jìn)行配置。例如,當(dāng)BMC檢測(cè)到溫度超過(guò)某個(gè)告警門(mén)限時(shí)它就提高風(fēng)扇速度,如果糾正不夠,溫度就會(huì)超過(guò)另一個(gè)緊急門(mén)限,此時(shí)BMC會(huì)切斷系統(tǒng)電源、記錄事件過(guò)程并通過(guò)LAN或串行調(diào)制解調(diào)器向遠(yuǎn)程終端發(fā)告警。BMC由許多模塊組成,與硬件密切相關(guān),并且其模塊之間具有千絲萬(wàn)縷的聯(lián)系。在BMC配置過(guò)程中,需要選擇主板硬件芯片,然后選擇相應(yīng)的驅(qū)動(dòng)模塊,選擇需要的接口,命令,SDR,OEM命令,將各個(gè)模塊組合起來(lái),編譯出BMC的固件(固件firmware,也被稱(chēng)為分位、韌體,是儲(chǔ)存于機(jī)臺(tái)中的控制機(jī)臺(tái)做讀盤(pán)等動(dòng)作的硬件與軟件的結(jié)合,界于硬件與軟件之間)。目前,沒(méi)有一個(gè)合適的配置工具,BMC的配置過(guò)程只能依靠手工完成,由于完全依賴人腦,容易出錯(cuò),效率低下,并且一些隱含的錯(cuò)誤無(wú)法得到及時(shí)發(fā)現(xiàn),品質(zhì)無(wú)法得到保證。因此,如何提供一種BMC固件的自動(dòng)配置系統(tǒng)已經(jīng)成為業(yè)界亟待解決的問(wèn)題。
發(fā)明內(nèi)容本發(fā)明所要解決的技術(shù)問(wèn)題是提供一種基板管理控制器的固件自動(dòng)配置系統(tǒng)及方法,解決現(xiàn)有技術(shù)沒(méi)有一個(gè)合適的BMC配置工具,BMC的配置過(guò)程只能依靠手工完成,由于完全依賴人腦,容易出錯(cuò),效率低下,并且一些隱含的錯(cuò)誤無(wú)法得到及時(shí)發(fā)現(xiàn),品質(zhì)無(wú)法得到保證的問(wèn)題。為達(dá)到上述目的,本發(fā)明提供了一種基板管理控制器的固件自動(dòng)配置系統(tǒng),用以靈活管理硬件信息,自動(dòng)完成基板管理控制器固件的合理配置,其特點(diǎn)在于,包括一硬件選項(xiàng)模塊,儲(chǔ)存有可供選擇的硬件選項(xiàng),用以針對(duì)不同的硬件環(huán)境的支持管理,使用者可以根據(jù)實(shí)際需要選擇相應(yīng)的硬件;一接口選項(xiàng)模塊,儲(chǔ)存有可供選擇的通訊接口選項(xiàng),用以針對(duì)不同的通訊接口支持,使用者可以根據(jù)實(shí)際需要選擇相應(yīng)的通訊接口;一命令選項(xiàng)模塊,儲(chǔ)存有可供選擇的命令選項(xiàng),用以支持智能化平臺(tái)管理接口規(guī)范的命令集合,使用者可以根據(jù)實(shí)際需要選擇相應(yīng)的命令;一傳感器數(shù)據(jù)記錄模塊,用以配置傳感器數(shù)據(jù)記錄的各個(gè)類(lèi)型,用戶可以根據(jù)實(shí)際需要自行輸入或選擇;一原始設(shè)備制造商模塊,用以對(duì)原始設(shè)備制造商的命令和接口進(jìn)行配置;一配置文件,記錄有每一模塊的每一選項(xiàng)的關(guān)聯(lián)與限制;一Makefile文件生成模塊,用以根據(jù)使用者的選擇通過(guò)該配置文件而生成Makefile文件;及一基板管理控制器固件生成模塊,用以根據(jù)使用者的選擇以及Makefile文件在編譯環(huán)境中生成基板管理控制器固件數(shù)據(jù)。上述的系統(tǒng),其特點(diǎn)在于,該硬件選項(xiàng)模塊、接口選項(xiàng)模塊、命令選項(xiàng)模塊、傳感器數(shù)據(jù)記錄模塊以及原始設(shè)備制造商模塊被分別分成單獨(dú)的目錄。上述的系統(tǒng),其特點(diǎn)在于,該配置文件相對(duì)該硬件選項(xiàng)模塊、接口選項(xiàng)模塊、命令選項(xiàng)模塊、傳感器數(shù)據(jù)記錄模塊以及原始設(shè)備制造商模塊而分別設(shè)置。上述的系統(tǒng),其特點(diǎn)在于,該配置文件中包含的信息包括當(dāng)前模塊名、依賴的模塊位置及模塊名、關(guān)聯(lián)的模塊位置及模塊名,限制條件。為了更好地實(shí)現(xiàn)本發(fā)明的目的,本發(fā)明還提供了一種基板管理控制器的固件自動(dòng)配置方法,用以靈活管理硬件信息,自動(dòng)完成基板管理控制器固件的合理配置,其特點(diǎn)在于,包括如下步驟將基板管理控制器需要使用的硬件、接口、命令、傳感器數(shù)據(jù)記錄以及原始設(shè)備制造商數(shù)據(jù)按類(lèi)分為硬件模塊、接口模塊、命令模塊、傳感器數(shù)據(jù)記錄模塊以及原始設(shè)備制造商模塊;根據(jù)該模塊之間的關(guān)聯(lián)與限制生成一配置文件并將每一模塊分別分成單獨(dú)的目錄;初始化并生成一空的Makefile文件;讀取配置文件內(nèi)容,列出樹(shù)型列表;當(dāng)用戶選中一模塊中的選項(xiàng)時(shí),檢查該配置文件中的關(guān)聯(lián)與限制內(nèi)容;根據(jù)該配置文件在接口上動(dòng)態(tài)顯示關(guān)聯(lián)模塊的選項(xiàng),并在該Makefile文件上記錄相關(guān)聯(lián)的選項(xiàng);及根據(jù)使用者的選擇及當(dāng)前Makefile文件在編譯環(huán)境下生成基板管理控制器固件數(shù)據(jù)。上述的方法,其特點(diǎn)在于,該配置文件中包含的信息包括當(dāng)前模塊名、依賴的模塊位置及模塊名、關(guān)聯(lián)的模塊位置及模塊名,限制條件。上述的方法,其特點(diǎn)在于,還包括當(dāng)使用者刪除一模塊選項(xiàng)時(shí),從Makefile文件中刪除相應(yīng)的內(nèi)容的步驟。上述的方法,其特點(diǎn)在于,該配置文件相對(duì)該硬件選項(xiàng)模塊、接口選項(xiàng)模塊、命令選項(xiàng)模塊、傳感器數(shù)據(jù)記錄模塊以及原始設(shè)備制造商模塊而分別設(shè)置。本發(fā)明的技術(shù)效果在于本發(fā)明通過(guò)將BMC需要的硬件、接口、命令、SDR以及OEM數(shù)據(jù)分類(lèi)封裝并設(shè)置關(guān)聯(lián),可以靈活的管理各個(gè)硬件模塊,適應(yīng)各種需求,為各個(gè)模塊提供統(tǒng)一的調(diào)用接口,靈活的替換硬件,甚至可以導(dǎo)入標(biāo)準(zhǔn)配置模板,在其基礎(chǔ)上進(jìn)行修改配置,從而提高了生產(chǎn)率。下面結(jié)合附圖進(jìn)一步詳細(xì)說(shuō)明本發(fā)明的具體實(shí)施例。圖1為本發(fā)明的BMC固件自動(dòng)配置系統(tǒng)示意圖;圖2為本發(fā)明的基板管理控制器固件自動(dòng)配置方法流程圖;圖3為本發(fā)明的硬件選項(xiàng)模塊的結(jié)構(gòu)示意圖;圖4為本發(fā)明中的接口選項(xiàng)模塊結(jié)構(gòu)示意圖;圖5為本發(fā)明中的命令選項(xiàng)模塊結(jié)構(gòu)示意圖;圖6為本發(fā)明中的SDR模塊結(jié)構(gòu)示意圖;圖7為本發(fā)明的配置接口示意圖;及圖8A、8B為本發(fā)明的SDR配置向?qū)疽鈭D。其中,附圖標(biāo)記說(shuō)明如下101硬件選項(xiàng)模塊102接口選項(xiàng)模塊103命令選項(xiàng)模塊104傳感器數(shù)據(jù)記錄模塊105OEM模塊106配置文件107Makefile文件生成模塊108BMC固件生成模塊步驟201將BMC需要使用的硬件、接口、命令、SDR以及OEM數(shù)據(jù)按類(lèi)分為硬件模塊、接口模塊、命令模塊、SDR模塊以及OEM模塊步驟202根據(jù)該模塊之間的關(guān)聯(lián)與限制生成一配置文件并將每一模塊分別分成單獨(dú)的目錄步驟203初始化并生成一空的Makefile文件步驟204讀取配置文件內(nèi)容,列出樹(shù)型列表步驟205當(dāng)用戶選中一模塊中的選項(xiàng)時(shí),檢查該配置文件中的關(guān)聯(lián)與限制內(nèi)容步驟206根據(jù)該配置文件在接口上動(dòng)態(tài)顯示關(guān)聯(lián)模塊的選項(xiàng),并在該Makefile文件上記錄相關(guān)聯(lián)的選項(xiàng)步驟207根據(jù)使用者的選擇及當(dāng)前Makefile文件在編譯環(huán)境下生成BMC固件數(shù)據(jù)具體實(shí)施方式本發(fā)明提供了一種基板管理控制器的固件自動(dòng)配置系統(tǒng),用以靈活管理硬件信息,自動(dòng)完成BMC固件的合理配置,如圖1所示,為本發(fā)明BMC固件自動(dòng)配置系統(tǒng)示意圖,該系統(tǒng)包括一硬件選項(xiàng)模塊101、一接口選項(xiàng)模塊102、一命令選項(xiàng)模塊103、一傳感器數(shù)據(jù)記錄(SensorDataRecord,SDR)模塊104、一OEM(OriginalEquipmentManufacturer)模塊105、一配置文件106、一Makefile文件生成模塊107、一BMC固件生成模塊108。其中,該硬件選項(xiàng)模塊101儲(chǔ)存有可供選擇的硬件選項(xiàng),用以針對(duì)不同的硬件環(huán)境的支持管理,使用者可以根據(jù)實(shí)際需要選擇相應(yīng)的硬件;接口選項(xiàng)模塊102儲(chǔ)存有可供選擇的通訊接口選項(xiàng),用以針對(duì)不同的通訊接口支持,使用者可以根據(jù)實(shí)際需要選擇相應(yīng)的通訊接口;命令選項(xiàng)模塊103儲(chǔ)存有可供選擇的命令選項(xiàng),用以支持IPMI規(guī)范的命令集合,使用者可以根據(jù)實(shí)際需要選擇相應(yīng)的命令;傳感器數(shù)據(jù)記錄模塊104用以配置SDR的各個(gè)類(lèi)型,用戶可以根據(jù)實(shí)際需要自行輸入或選擇;OEM模塊105用以對(duì)OEM的命令和接口進(jìn)行配置;配置文件106記錄有每一模塊的每一選項(xiàng)的關(guān)聯(lián)與限制;Makefile文件生成模塊107用以根據(jù)使用者的選擇通過(guò)該配置文件而生成Makefile文件;BMC固件生成模塊108用以根據(jù)使用者的選擇以及Makefile文件在編譯環(huán)境中生成BMC固件數(shù)據(jù)。請(qǐng)參閱圖2,為本發(fā)明的基板管理控制器固件自動(dòng)配置方法流程圖,首先將BMC需要使用的硬件、接口、命令、SDR以及OEM數(shù)據(jù)按類(lèi)分為硬件模塊、接口模塊、命令模塊、SDR模塊以及OEM模塊(步驟201);然后根據(jù)該模塊之間的關(guān)聯(lián)與限制生成一配置文件并將每一模塊分別分成單獨(dú)的目錄(步驟202);初始化并生成一空的Makefile文件(步驟203);讀取配置文件內(nèi)容,列出樹(shù)型列表(步驟204);當(dāng)用戶選中一模塊中的選項(xiàng)時(shí),檢查該配置文件中的關(guān)聯(lián)與限制內(nèi)容(步驟205);根據(jù)該配置文件在接口上動(dòng)態(tài)顯示關(guān)聯(lián)模塊的選項(xiàng),并在該Makefile文件上記錄相關(guān)聯(lián)的選項(xiàng)(步驟206);最后根據(jù)使用者的選擇及當(dāng)前Makefile文件在編譯環(huán)境下生成BMC固件數(shù)據(jù)(步驟207)。本發(fā)明的配置文件106可以是統(tǒng)一為所有模塊而創(chuàng)建的一個(gè)單一文件,也可以是分開(kāi)為硬件選項(xiàng)模塊101、接口選項(xiàng)模塊102、命令選項(xiàng)模塊103、SDR模塊104以及OEM模塊105而分別設(shè)置。本方法的實(shí)施例是以分別設(shè)置來(lái)說(shuō)明的。其中該配置文件中包含的信息包括當(dāng)前模塊名、依賴的模塊位置及模塊名、關(guān)聯(lián)的模塊位置及模塊名,限制條件。依據(jù)本發(fā)明,可以事先對(duì)各種支持的硬件、接口、命令等以統(tǒng)一的形式進(jìn)行封裝,保證不沖突、不遺漏。如圖3所示,為本發(fā)明中的硬件選項(xiàng)模塊的結(jié)構(gòu)示意圖。圖4所示為本發(fā)明中的接口選項(xiàng)模塊結(jié)構(gòu)示意圖。圖5所示為本發(fā)明所中的命令選項(xiàng)模塊結(jié)構(gòu)示意圖。圖6所示為本發(fā)明中的SDR模塊結(jié)構(gòu)示意圖。本發(fā)明的實(shí)施例將各個(gè)模塊分成單獨(dú)的一個(gè)目錄,比如硬件型號(hào)目錄2168,接口目錄kcs,lan,命令目錄command,SDR目錄sdr,OEM目錄oem。在每個(gè)目錄中設(shè)置一個(gè)配置文件Config,其內(nèi)容是當(dāng)前模塊名,依賴的模塊位置,模塊名,關(guān)聯(lián)的模塊位置,模塊名,限制條件等。本發(fā)明的配置系統(tǒng)啟動(dòng)之后,生成一個(gè)空的Makefile文件,然后去讀取每個(gè)目錄的Config文件,列出樹(shù)形列表。當(dāng)用戶選中其中一項(xiàng)時(shí),本發(fā)明會(huì)去檢查該項(xiàng)的Config文件,查找出其依賴,關(guān)聯(lián)模塊,并在顯示接口上動(dòng)態(tài)的體現(xiàn)出來(lái)。同時(shí),在Makefile文件上記錄相關(guān)聯(lián)的項(xiàng)。每個(gè)配置文件至少包含當(dāng)前模塊名,依賴模塊名和位置,關(guān)聯(lián)模塊名和位置。還有各自特殊的字段,例如,SDR配置文件的形式如下//通用字段[ModuleName]“Name”=strsdr.c[DepModule]“Name”=strxxxx“Position”=strxxxx....“Name”=strxxxx“Posititon”=strxxxx....//以下是對(duì)SDR表的具體描述....″ByteNumber″=dword12″BitLength″=dword8″FieldName″=strSensorCapabilities″Description″=str[7]1b=IgnoresensorifEntityisnotpresentordisabled[6]1b=AutoRe-armSupport[5:4]00b=Nohysteresis01b=hysteresisisreadable10b=readableandsettable11b=Fixed,unreadable,hysteresis[3:2]00b=nothresholds01b=thresholdsarereadable10b=readableandsettable11b=Fixedandunreadable[1:0]00b=perthreshold/discrete-stateeventenable/disablecontrol01b=entiresensoronly10b=globaldisableonly11b=noevents″ReferTable″=strNULL″DetailNumber″=dword5<Detail1>″Detail″=dword1″DetailDes″=strIgnoresensor″From″=dword7″Length″=dword1″0″=strignoresensorifEntityisnotpresentordisabled″1″=strdon′tignoresensor[Realation]″RByteNumber″=dword34″RFrom″=dword7″RLength″=dword3″RValue″=string010<Detail2>″Detail″=dword2″DetailDes″=strSensorAutoRe-armSupport″From″=dword6″Length″=dword1″0″=strno(manual)″1″=stryes(auto)<Detail3>″Detail″=dword3″DetailDes″=strSensorHysteresisSupport″From″=dword5″Length″=dword2″00″=strNohysteresis″01″=strhysteresisisreadable″10″=strhysteresisisreadableandsettable″11″=strFixed,unreadable,hysteresis<Detail4>″Detail″=dword4″DetailDes″=strSensorThresholdAccessSupport″From″=dword3″Length″=dword2″00″=strnothresholds″01″=strthresholdsarereadable″10″=strreserved″11″=strFixed,unreaadble,thresholds.<Detail5>″Detail″=dword5″DetailDes″=strSensorEventMessageControlSupport″From″=dword1″Length″=dword2″00″=strperthreshold/discrete-stateeventenable/disablecontrol″01″=strentiresensoronly″10″=strglobaldisableonly″11″=strnoevnetsfromsensor....這樣,當(dāng)使用者填寫(xiě)完SDR的一個(gè)字段之后,本發(fā)明就會(huì)根據(jù)SDR的Config文件,將填寫(xiě)的值的具體含義告知用戶,并且將在Config文件中指定的相關(guān)聯(lián)的字段賦值,這樣,就能保證SDR表的內(nèi)在邏輯的正確性。同時(shí),將這一操作告知使用者。makefile文件是許多編譯器,包括WindowsNT下的編譯器,維護(hù)編譯信息的常用方法。Make工具最主要也是最基本的功能就是通過(guò)makefile文件來(lái)描述源程序之間的相互關(guān)系并自動(dòng)維護(hù)編譯工作。而makefile文件需要按照某種語(yǔ)法進(jìn)行編寫(xiě),文件中需要說(shuō)明如何編譯各個(gè)源文件并連接生成可執(zhí)行文件,并要求定義源文件之間的依賴關(guān)系。本發(fā)明的Makefile文件在系統(tǒng)啟動(dòng)的時(shí)候自動(dòng)建立,并且在選擇具體模塊的時(shí)候進(jìn)行修改,例如,選擇i2c之后,會(huì)在Makefile文件中添加....\OBJ=obj/di2c.o\obj/EEProm.o\obj/IPMB.o\obj/ADM1029.o\obj/LanSmb.o當(dāng)然,這些內(nèi)容,是在i2c的Config文件里指定的。在選中一個(gè)模塊時(shí),將其本身的模塊,依賴的模塊,關(guān)聯(lián)的模塊同時(shí)從相應(yīng)Config文件里讀出,寫(xiě)入Makefile。同樣,刪除一個(gè)模塊時(shí),刪除相關(guān)內(nèi)容。應(yīng)用本發(fā)明所提供的自動(dòng)配置系統(tǒng)可以方便、靈活、快捷的進(jìn)行BMC配置,如圖7所示,為本發(fā)明的配置接口示意圖。只需直觀的選擇一種硬件,比如直接選擇Hitachi2186芯片(在一個(gè)列表中選定一種硬件后,和該硬件相關(guān)聯(lián)的接口就會(huì)出現(xiàn)在下一級(jí)列表中),類(lèi)似的,接下來(lái)只需直觀的選擇一個(gè)接口,比如選擇Kcs接口,只需直觀的選擇所需命令,比如需要Global,Event,Sel,Watchdog命令等。對(duì)于SDR表,如果不使用本發(fā)明,要填寫(xiě)一個(gè)SDRTypel的傳感器,需要手工填寫(xiě)64字節(jié)的十六進(jìn)制數(shù),對(duì)程序員來(lái)說(shuō),不易理解,也就容易出錯(cuò),遺漏,而且,由于其中一些字節(jié)的一些位互相關(guān)聯(lián)著,比如前面選擇了不支持eentityinstance,那么后面關(guān)于entityinstance的字節(jié)都必須作相應(yīng)得調(diào)整,非常繁瑣。而通過(guò)利用本發(fā)明,請(qǐng)參閱圖8A、圖8B,為SDR配置向?qū)疽鈭D,只需填寫(xiě)關(guān)鍵部分的SDR表的內(nèi)容即可,并且全過(guò)程都有智能在線幫助,不用再另行查閱規(guī)范,并且保證所生成的SDR表的內(nèi)在邏輯聯(lián)系沒(méi)有錯(cuò)誤,可以很直觀的完成這64字節(jié)的填充,并且好多字節(jié)能夠根據(jù)前面的設(shè)置自動(dòng)完成,保證配置的快捷,正確性。以上所述,僅為本發(fā)明中的較佳實(shí)施例而已,并非用來(lái)限定本發(fā)明的實(shí)施范圍;即凡依本發(fā)明的內(nèi)容和精神所作的均等變化與修飾,皆為本發(fā)明的范圍所涵蓋。權(quán)利要求1.一種基板管理控制器的固件自動(dòng)配置系統(tǒng),用以靈活管理硬件信息,自動(dòng)完成基板管理控制器固件的合理配置,其特征在于,包括一硬件選項(xiàng)模塊,儲(chǔ)存有可供選擇的硬件選項(xiàng),用以針對(duì)不同的硬件環(huán)境的支持管理,使用者可以根據(jù)實(shí)際需要選擇相應(yīng)的硬件;一接口選項(xiàng)模塊,儲(chǔ)存有可供選擇的通訊接口選項(xiàng),用以針對(duì)不同的通訊接口支持,使用者可以根據(jù)實(shí)際需要選擇相應(yīng)的通訊接口;一命令選項(xiàng)模塊,儲(chǔ)存有可供選擇的命令選項(xiàng),用以支持智能化平臺(tái)管理接口規(guī)范的命令集合,使用者可以根據(jù)實(shí)際需要選擇相應(yīng)的命令;一傳感器數(shù)據(jù)記錄模塊,用以配置傳感器數(shù)據(jù)記錄的各個(gè)類(lèi)型,用戶可以根據(jù)實(shí)際需要自行輸入或選擇;一原始設(shè)備制造商模塊,用以對(duì)原始設(shè)備制造商的命令和接口進(jìn)行配置;一配置文件,記錄有每一模塊的每一選項(xiàng)的關(guān)聯(lián)與限制;一Makefile文件生成模塊,用以根據(jù)使用者的選擇通過(guò)該配置文件而生成Makefile文件;及一基板管理控制器固件生成模塊,用以根據(jù)使用者的選擇以及Makefile文件在編譯環(huán)境中生成基板管理控制器固件數(shù)據(jù)。2.根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于,該硬件選項(xiàng)模塊、接口選項(xiàng)模塊、命令選項(xiàng)模塊、傳感器數(shù)據(jù)記錄模塊以及原始設(shè)備制造商模塊被分別分成單獨(dú)的目錄。3.根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于,該配置文件相對(duì)該硬件選項(xiàng)模塊、接口選項(xiàng)模塊、命令選項(xiàng)模塊、傳感器數(shù)據(jù)記錄模塊以及原始設(shè)備制造商模塊而分別設(shè)置。4.根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于,該配置文件中包含的信息包括當(dāng)前模塊名、依賴的模塊位置及模塊名、關(guān)聯(lián)的模塊位置及模塊名,限制條件。5.一種基板管理控制器的固件自動(dòng)配置方法,用以靈活管理硬件信息,自動(dòng)完成基板管理控制器固件的合理配置,其特征在于,包括如下步驟將基板管理控制器需要使用的硬件、接口、命令、傳感器數(shù)據(jù)記錄以及原始設(shè)備制造商數(shù)據(jù)按類(lèi)分為硬件模塊、接口模塊、命令模塊、傳感器數(shù)據(jù)記錄模塊以及原始設(shè)備制造商模塊;根據(jù)該模塊之間的關(guān)聯(lián)與限制生成一配置文件并將每一模塊分別分成單獨(dú)的目錄;初始化并生成一空的Makefile文件;讀取配置文件內(nèi)容,列出樹(shù)型列表;當(dāng)用戶選中一模塊中的選項(xiàng)時(shí),檢查該配置文件中的關(guān)聯(lián)與限制內(nèi)容;根據(jù)該配置文件在接口上動(dòng)態(tài)顯示關(guān)聯(lián)模塊的選項(xiàng),并在該Makefile文件上記錄相關(guān)聯(lián)的選項(xiàng);及根據(jù)使用者的選擇及當(dāng)前Makefile文件在編譯環(huán)境下生成基板管理控制器固件數(shù)據(jù)。6.根據(jù)權(quán)利要求5所述的方法,其特征在于,該配置文件中包含的信息包括當(dāng)前模塊名、依賴的模塊位置及模塊名、關(guān)聯(lián)的模塊位置及模塊名,限制條件。7.根據(jù)權(quán)利要求5所述的方法,其特征在于,還包括當(dāng)使用者刪除一模塊選項(xiàng)時(shí),從Makefile文件中刪除相應(yīng)的內(nèi)容的步驟。8.根據(jù)權(quán)利要求5所述的方法,其特征在于,該配置文件相對(duì)該硬件選項(xiàng)模塊、接口選項(xiàng)模塊、命令選項(xiàng)模塊、傳感器數(shù)據(jù)記錄模塊以及原始設(shè)備制造商模塊而分別設(shè)置。全文摘要本發(fā)明公開(kāi)了一種基板管理控制器的固件自動(dòng)配置系統(tǒng)及方法,首先按類(lèi)封裝硬件模塊、接口模塊、命令模塊、SDR模塊以及OEM模塊,再生成一配置文件并將每一模塊分別分成單獨(dú)的目錄,初始化并生成一空的Makefile文件,讀取配置文件內(nèi)容,當(dāng)用戶選中一模塊中的選項(xiàng)時(shí),檢查該配置文件并在接口上動(dòng)態(tài)顯示關(guān)聯(lián)模塊的選項(xiàng),并在Makefile文件上記錄相關(guān)聯(lián)的選項(xiàng),最后生成BMC固件數(shù)據(jù),根據(jù)本發(fā)明可靈活管理硬件信息,自動(dòng)完成BMC固件的配置。文檔編號(hào)G06F9/44GK1641568SQ20041000063公開(kāi)日2005年7月20日申請(qǐng)日期2004年1月13日優(yōu)先權(quán)日2004年1月13日發(fā)明者劉文涵,陳玄同,岑駕科申請(qǐng)人:英業(yè)達(dá)股份有限公司