本發(fā)明屬于數(shù)據(jù)管理領(lǐng)域,尤其涉及一種數(shù)據(jù)讀寫管理方法及系統(tǒng)。
背景技術(shù):
隨著用戶對計(jì)算機(jī)的性能和可靠性,可管理性要求的提高,cpu的功能越來越復(fù)雜,不同的cpu寄存器也劃分為在不同模式下才能被讀寫。
cpu內(nèi)部寄存器可分為配置空間寄存器csr和模式相關(guān)寄存器msr,同時cpu運(yùn)行模式又分為系統(tǒng)管理模式smm和非系統(tǒng)管理模式non-smm。csr和部分msr可在non-smm模式下由應(yīng)用程序讀寫,部分msr關(guān)乎cpu重要功能,因此只能在smm模式下讀寫。
cpu對外提供平臺環(huán)境式控制接口即peci接口,bmc通過該接口可以讀寫cpu的csr寄存器,但無法讀寫msr寄存器,因此也無法獲取系統(tǒng)的關(guān)鍵狀態(tài),也無法控制cpu的部分功能,無法實(shí)現(xiàn)對系統(tǒng)的有效管理和監(jiān)控。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明提供一種數(shù)據(jù)讀寫管理方法及系統(tǒng),以解決上述問題。
本發(fā)明實(shí)施例提供一種數(shù)據(jù)讀寫管理方法。上述方法包括以下步驟:
通過在基本輸入輸出系統(tǒng)即bios中注冊的系統(tǒng)管理模式即smm下的定時輪詢函數(shù),獲取基板管理器即bmc發(fā)送的讀寫請求;
將所述讀寫請求轉(zhuǎn)化為所述smm下處理器即cpu上對應(yīng)的讀寫指令;
通過所述讀寫指令,讀寫所述處理器中模式相關(guān)寄存器即msr。
本發(fā)明實(shí)施例還提供一種數(shù)據(jù)讀寫管理系統(tǒng),包括基本輸入輸出系統(tǒng)即bios、基板管理器即bmc、處理器即cpu;所述bios、所述bmc、所述cpu相互連接;
通過在所述bios中注冊的系統(tǒng)管理模式即smm下的定時輪詢函數(shù),獲取所述bmc發(fā)送的讀寫請求;
將所述讀寫請求轉(zhuǎn)化為所述smm下所述cpu上對應(yīng)的讀寫指令;
通過所述讀寫指令,讀寫所述cpu中模式相關(guān)寄存器即msr。
通過以下方案:通過在基本輸入輸出系統(tǒng)即bios中注冊的系統(tǒng)管理模式即smm下的定時輪詢函數(shù),獲取基板管理器即bmc發(fā)送的讀寫請求;將所述讀寫請求轉(zhuǎn)化為所述smm下處理器即cpu上對應(yīng)的讀寫指令;通過所述讀寫指令,讀寫所述處理器中模式相關(guān)寄存器即msr,實(shí)現(xiàn)可讀寫msr寄存器,獲取系統(tǒng)的關(guān)鍵狀態(tài),控制cpu的部分功能,實(shí)現(xiàn)對系統(tǒng)的有效管理和監(jiān)控。
附圖說明
此處所說明的附圖用來提供對本發(fā)明的進(jìn)一步理解,構(gòu)成本申請的一部分,本發(fā)明的示意性實(shí)施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當(dāng)限定。在附圖中:
圖1所示為根據(jù)本發(fā)明實(shí)施例1提供的數(shù)據(jù)讀寫管理方法的流程圖;
圖2所示為根據(jù)本發(fā)明實(shí)施例2提供的定時輪詢函數(shù)注冊流程圖;
圖3所示為根據(jù)本發(fā)明實(shí)施例3提供的定時輪詢函數(shù)運(yùn)行流程圖;
圖4所示為根據(jù)本發(fā)明實(shí)施例4提供的數(shù)據(jù)讀寫管理系統(tǒng)的示意圖。
具體實(shí)施方式
下文中將參考附圖并結(jié)合實(shí)施例來詳細(xì)說明本發(fā)明。需要說明的是,在不沖突的情況下,本申請中的實(shí)施例及實(shí)施例中的特征可以相互組合。
圖1所示為根據(jù)本發(fā)明實(shí)施例1提供的數(shù)據(jù)讀寫管理方法的流程圖,包括以下步驟:
步驟101:通過在基本輸入輸出系統(tǒng)即bios中注冊的系統(tǒng)管理模式即smm下的定時輪詢函數(shù),獲取基板管理器即bmc發(fā)送的讀寫請求;
進(jìn)一步地,系統(tǒng)啟動階段,在所述bios中注冊所述smm下的定時輪詢函數(shù)iagentfun。
進(jìn)一步地,所述定時輪詢函數(shù)在所述bios啟動到操作系統(tǒng)即os后,保持在所述smm模式下運(yùn)行。
進(jìn)一步地,所述bios通過設(shè)置通用輸入輸出接口即gpio的輸出電平,向所述bmc發(fā)送通知消息;其中,所述通知消息中攜帶了定時輪詢函數(shù)注冊信息、定時輪詢函數(shù)運(yùn)行信息。
進(jìn)一步地,通過在所述處理器中選擇的標(biāo)記寄存器作為所述定時輪詢函數(shù)與所述bmc交互的接口。
當(dāng)前cpu上提供一定數(shù)量與cpu功能無關(guān)的csr寄存器,稱為標(biāo)記寄存器scratchpad,指定選擇某幾個scratchpad寄存器(iscratchregister)以作為定時輪詢函數(shù)與bmc溝通的接口。
進(jìn)一步地,所述bmc接收所述通知消息后,通過標(biāo)記寄存器發(fā)送讀寫請求。
其中,通過南橋即pch,指定所述gpio與所述bmc連接。
bios設(shè)置南橋(pch)上指定一通用輸入輸出接口(gpio),與bmc連接,當(dāng)定時輪詢函數(shù)iagentfun準(zhǔn)備好可以接受bmc發(fā)送的讀寫請求時,bios設(shè)置該gpio的輸出電平,用于通知bmc定時輪詢函數(shù)是否已經(jīng)注冊開始在cpu后臺運(yùn)行,bmc接收到該gpio電平變化后可通過iscratchregister寄存器發(fā)送讀寫msr寄存器請求。
步驟102:將所述讀寫請求轉(zhuǎn)化為所述smm下處理器即cpu上對應(yīng)的讀寫指令;
步驟103:通過所述讀寫指令,讀寫所述處理器中模式相關(guān)寄存器即msr。
進(jìn)一步地,將讀寫所述msr的結(jié)果反饋至所述標(biāo)記寄存器;
所述bmc從所述標(biāo)記寄存器中獲取讀寫所述msr的結(jié)果。
圖2所示為根據(jù)本發(fā)明實(shí)施例2提供的定時輪詢函數(shù)注冊流程圖,包括以下步驟:
步驟201:系統(tǒng)通電開始運(yùn)行;
步驟202:bios注冊smm模式下iagentfun函數(shù),并設(shè)置指定gpio通知bmc;
步驟203:啟動操作系統(tǒng);
步驟204:操作系統(tǒng)運(yùn)行時,iagentfun函數(shù)在smm下運(yùn)行。
圖3所示為根據(jù)本發(fā)明實(shí)施例3提供的定時輪詢函數(shù)運(yùn)行流程圖,包括以下步驟:
步驟301:iagentfun函數(shù)開始運(yùn)行;
步驟302:查詢iscratchregister中有無bmc讀寫請求,若無,則繼續(xù)查詢;若有,則轉(zhuǎn)步驟303;
步驟303:轉(zhuǎn)化為對應(yīng)的讀寫指令并實(shí)現(xiàn)讀寫動作;
步驟304:結(jié)果更新到iscratchregister以供bmc查詢。
圖4所示為根據(jù)本發(fā)明實(shí)施例4提供的數(shù)據(jù)讀寫管理系統(tǒng)的示意圖,包括基本輸入輸出系統(tǒng)即bios、基板管理器即bmc、處理器即cpu;所述bios、所述bmc、所述cpu相互連接;
通過在所述bios中注冊的系統(tǒng)管理模式即smm下的定時輪詢函數(shù),獲取所述bmc發(fā)送的讀寫請求;
將所述讀寫請求轉(zhuǎn)化為所述smm下所述cpu上對應(yīng)的讀寫指令;
通過所述讀寫指令,讀寫所述cpu中模式相關(guān)寄存器即msr。
進(jìn)一步地,統(tǒng)啟動階段,在所述bios中注冊所述smm下的定時輪詢函數(shù);
所述bios通過設(shè)置通用輸入輸出接口即gpio的輸出電平,向所述bmc發(fā)送通知消息;其中,所述通知消息中攜帶了定時輪詢函數(shù)注冊信息、定時輪詢函數(shù)運(yùn)行信息。
進(jìn)一步地,通過南橋即pch,指定所述gpio與所述bmc連接。
通過以下方案:通過在基本輸入輸出系統(tǒng)即bios中注冊的系統(tǒng)管理模式即smm下的定時輪詢函數(shù),獲取基板管理器即bmc發(fā)送的讀寫請求;將所述讀寫請求轉(zhuǎn)化為所述smm下處理器即cpu上對應(yīng)的讀寫指令;通過所述讀寫指令,讀寫所述處理器中模式相關(guān)寄存器即msr,實(shí)現(xiàn)可讀寫msr寄存器,獲取系統(tǒng)的關(guān)鍵狀態(tài),控制cpu的部分功能,實(shí)現(xiàn)對系統(tǒng)的有效管理和監(jiān)控。
通過以下方案:在所述處理器中選擇的標(biāo)記寄存器作為所述定時輪詢函數(shù)與所述bmc交互的接口,便于信息交互。
以上所述僅為本發(fā)明的優(yōu)選實(shí)施例而已,并不用于限制本發(fā)明,對于本領(lǐng)域的技術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。