本發(fā)明涉及服務(wù)器領(lǐng)域,具體地說是一種bios設(shè)置bmcsol波特率立即生效的方法。
背景技術(shù):
bios(basicinputoutputsystem)基本輸入輸出系統(tǒng),作為服務(wù)器主板最底層的、最直接的硬件設(shè)置和控制的管理者,能為服務(wù)器提供更多簡單的易用性功能。
sol(serialoverlan)是指通過基于ip的ipmi會(huì)話來重新定向系統(tǒng)中串口i/o的一種機(jī)制。為了幫助用戶通過串口來訪問這些計(jì)算機(jī)上的應(yīng)用,串口的i/o需要對(duì)網(wǎng)絡(luò)進(jìn)行重新指向。
針對(duì)一些客戶定制化服務(wù)器主板bios,需求串口重定向功能使能,即將consoleredirection選項(xiàng)設(shè)置是enabled,并期望波特率按照其需求設(shè)置,如果bmcsol默認(rèn)的波特率與客戶需求不一致,就會(huì)導(dǎo)致串口數(shù)據(jù)出現(xiàn)亂碼錯(cuò)誤。這時(shí)候需要發(fā)送ipmi命令再去設(shè)置一下bmcsol波特率,給客戶應(yīng)用帶來不便。
公開的相關(guān)專利文件:名稱為“串行通信的波特率識(shí)別方法、裝置、微控制器及系統(tǒng)”,該文件公開了“一種串行通信的波特率識(shí)別方法、裝置、微控制器及系統(tǒng),方法包括:獲取脈沖寬度數(shù)據(jù),脈沖寬度數(shù)據(jù)包括八個(gè)脈沖寬度時(shí)間;確定脈沖寬度數(shù)據(jù)是否滿足第一預(yù)設(shè)條件;當(dāng)脈沖寬度數(shù)據(jù)滿足第一預(yù)設(shè)條件時(shí),從脈沖寬度數(shù)據(jù)中確定出最大的脈沖寬度時(shí)間和最小的脈沖寬度時(shí)間;計(jì)算除最大的脈沖寬度時(shí)間和最小的脈沖寬度時(shí)間外的其它脈沖寬度時(shí)間的平均脈沖寬度時(shí)間;基于平均脈沖寬度時(shí)間確定脈沖寬度數(shù)據(jù)是否滿足第二預(yù)設(shè)條件;當(dāng)脈沖寬度數(shù)據(jù)滿足第二預(yù)設(shè)條件時(shí),通過平均脈沖寬度時(shí)間確定串行通信的波特率。
本技術(shù):
提供方法、裝置、微控制器及系統(tǒng),可解決由干擾造成的波特率計(jì)算錯(cuò)誤的問題,能夠提高串行通信的可靠性”。
名稱為“電力監(jiān)控領(lǐng)域?qū)崿F(xiàn)波特率自適應(yīng)的方法及裝置”,該文件公開了“一種電力監(jiān)控領(lǐng)域?qū)崿F(xiàn)波特率自適應(yīng)的方法及裝置,包括選定通信協(xié)議;設(shè)定波特率序列;設(shè)定波特率序列序號(hào);使用波特率序列中對(duì)應(yīng)序號(hào)的波特率打開串口;發(fā)送協(xié)議數(shù)據(jù)到監(jiān)控設(shè)備;接收監(jiān)控設(shè)備返回的協(xié)議數(shù)據(jù);分析判斷數(shù)據(jù)的識(shí)別性;接收數(shù)據(jù)不可識(shí)別,則關(guān)閉串口,然后波特率序列序號(hào)加一;接收數(shù)據(jù)與預(yù)期一致,保存該波特率作為通信波特率。本發(fā)明有益效果:該方法可以實(shí)現(xiàn)監(jiān)控領(lǐng)域控制設(shè)備與監(jiān)控設(shè)備之間的波特率自適應(yīng),本發(fā)明的電力監(jiān)控領(lǐng)域?qū)崿F(xiàn)波特率自適應(yīng)的裝置結(jié)構(gòu)簡單,提高了用戶體驗(yàn)舒適度”。
上述公開文件與本
技術(shù)實(shí)現(xiàn)要素:
要解決的技術(shù)問題,采用的技術(shù)手段都不相同。
發(fā)明內(nèi)容
本發(fā)明的技術(shù)任務(wù)是提供一種bios設(shè)置bmcsol波特率立即生效的方法。
本發(fā)明的技術(shù)任務(wù)是按以下方式實(shí)現(xiàn)的,該方法如下:
biossetup界面設(shè)置consoleredirection選項(xiàng)為enabled時(shí),進(jìn)入consoleredirectionsettings界面去設(shè)置波特率,bios此時(shí)借助于callback函數(shù),通過kcs接口發(fā)送ipmi命令讀取當(dāng)前bmcsol的波特率,如果跟bios設(shè)置的不一致,bios發(fā)送ipmi命令修改bmcsol的波特率與bios設(shè)置保持一致,并使bmcsol的波特率立即生效。
所述的bios啟動(dòng)過程中,bios判斷consoleredirection選項(xiàng)是否被開啟,如果開啟,通過kcs接口發(fā)送ipmi命令讀取當(dāng)前bmcsol的波特率;如果跟bios設(shè)置的不一致,bios發(fā)送ipmi命令修改bmcsol的波特率與bios設(shè)置保持一致。
該方法的步驟如下:
步驟1)bios串口重定向功能使能;
步驟11)biossetup界面下設(shè)置串口波特率;
步驟12)bios借助callback函數(shù),通過kcs接口發(fā)送ipmi命令讀取當(dāng)前bmcsol的波特率;
步驟13)bios設(shè)置波特率與bmc設(shè)置是否相同;
步驟14)bios設(shè)置波特率與bmc設(shè)置不同時(shí),發(fā)送ipmi命令修改bmcsol的波特率與bios設(shè)置保持一致,使bmcsol的波特率立即生效;
步驟21)bios啟動(dòng)過程中,bios判斷consoleredirection選項(xiàng)是否被開啟;
步驟22)如果開啟,通過kcs接口發(fā)送ipmi命令讀取當(dāng)前bmcsol的波特率;
步驟23)如果跟bios設(shè)置的不一致,bios發(fā)送ipmi命令修改bmcsol的波特率與bios設(shè)置保持一致。
本發(fā)明的一種bios設(shè)置bmcsol波特率立即生效的方法和現(xiàn)有技術(shù)相比,可以靈活適應(yīng)客戶的需求設(shè)置波特率,方便客戶的使用,提高了工作效率。
附圖說明
附圖1為一種bios設(shè)置bmcsol波特率立即生效的方法的流程示意圖。
具體實(shí)施方式
實(shí)施例1:
該bios設(shè)置bmcsol波特率立即生效的方法如下:
biossetup界面設(shè)置consoleredirection選項(xiàng)為enabled時(shí),進(jìn)入consoleredirectionsettings界面去設(shè)置波特率,bios此時(shí)借助于callback函數(shù),通過kcs接口發(fā)送ipmi命令讀取當(dāng)前bmcsol的波特率,如果跟bios設(shè)置的不一致,bios發(fā)送ipmi命令修改bmcsol的波特率與bios設(shè)置保持一致,并使bmcsol的波特率立即生效。
bios啟動(dòng)過程中,bios判斷consoleredirection選項(xiàng)是否被開啟,如果開啟,通過kcs接口發(fā)送ipmi命令讀取當(dāng)前bmcsol的波特率;如果跟bios設(shè)置的不一致,bios發(fā)送ipmi命令修改bmcsol的波特率與bios設(shè)置保持一致。
實(shí)施例2:
該bios設(shè)置bmcsol波特率立即生效的方法的步驟如下:
步驟1)bios串口重定向功能使能;
步驟11)biossetup界面下設(shè)置串口波特率;
步驟12)bios借助callback函數(shù),通過kcs接口發(fā)送ipmi命令讀取當(dāng)前bmcsol的波特率;
步驟13)bios設(shè)置波特率與bmc設(shè)置是否相同;
步驟14)bios設(shè)置波特率與bmc設(shè)置不同時(shí),發(fā)送ipmi命令修改bmcsol的波特率與bios設(shè)置保持一致,使bmcsol的波特率立即生效;
步驟21)bios啟動(dòng)過程中,bios判斷consoleredirection選項(xiàng)是否被開啟;
步驟22)如果開啟,通過kcs接口發(fā)送ipmi命令讀取當(dāng)前bmcsol的波特率;
步驟23)如果跟bios設(shè)置的不一致,bios發(fā)送ipmi命令修改bmcsol的波特率與bios設(shè)置保持一致。
通過上面具體實(shí)施方式,所述技術(shù)領(lǐng)域的技術(shù)人員可容易的實(shí)現(xiàn)本發(fā)明。但是應(yīng)當(dāng)理解,本發(fā)明并不限于上述的幾種具體實(shí)施方式。在公開的實(shí)施方式的基礎(chǔ)上,所述技術(shù)領(lǐng)域的技術(shù)人員可任意組合不同的技術(shù)特征,從而實(shí)現(xiàn)不同的技術(shù)方案。