一種智能設備重啟的管理方法及裝置與流程
2023-05-01 06:15:41
本發明涉及智能設備啟動過程中的數據處理領域,特別涉及一種智能設備重啟的管理方法及裝置。
背景技術:
目前伺服器等智能設備的bios在系統引導過程中,會觸發多個部件,例如會觸發伺服器的管理引擎固件,bmc(基板管理控制器)固件或者pcioptionrom等。在此過程中由於諸如無授權的內存類型,管理引擎初始化,bios的配置變化等原因,使得bios在運行這些設備的相應驅動程序時,驅動程序均可能會要求伺服器等智能設備重啟,甚至多次重啟,才能保證bios做出正確係統引導,而這樣會大幅增加bios的啟動時間,進而拖慢伺服器等智能設備的啟動效率。
技術實現要素:
本發明實施例的目的在於提供一種智能設備重啟的管理方法及裝置,該方法能夠有效減少伺服器等智能設備的重啟次數,降低bios的啟動時間。
為了解決上述技術問題,本發明的實施例採用了如下技術方案:一種智能設備重啟的管理方法,應用在所述智能設備的bios的系統引導過程中,所述方法包括:
在所述bios的系統引導過程中預設至少一個檢測點,所述檢測點用於檢測重啟請求;
當所述檢測點檢測到所述重啟請求時,暫停對所述智能設備的重啟操作;
獲取所述重啟請求的相應信息,並根據所述重啟請求的相應信息對所述智能設備進行重啟操作。
作為優選,所述的獲取所述重啟請求的相應信息包括:
將所述重啟請求的權重信息及發起端的信息存儲在預設的資料庫中;
當重啟操作暫停時,報告所述重啟請求,並根據所述重啟請求從所述資料庫中獲取相應的所述權重信息及發起端的信息;
顯示所述權重信息及發起端的信息。
作為優選,所述的根據所述重啟請求的相應信息對所述智能設備進行重啟操作包括:根據所述權重信息及發起端的信息,對至少一個所述重啟請求以所述智能設備的一次重啟操作來響應。
作為優選,所述的在所述bios的系統引導過程中預設至少一個檢測點具體為:在所述bios的不同啟動階段分別預設檢測點。
作為優選,所述方法還包括:當所述檢測點沒有檢測到重啟請求時,所述bios繼續進行系統引導操作。
本發明實施例還提供了一種智能設備重啟的管理裝置,應用在所述智能設備的bios的系統引導過程中,所述裝置包括設置模塊,暫停模塊和系統引導管理器:
所述設置模塊配置為在所述bios的系統引導過程中預設至少一個檢測點,所述檢測點用於檢測重啟請求;
所述暫停模塊配置為當所述檢測點檢測到所述重啟請求時,暫停對所述智能設備的重啟操作;
所述系統引導管理器與所述暫停模塊連接,所述系統引導管理器配置為當所述暫停模塊暫停所述智能設備重啟時,獲取所述重啟請求的相應信息,並根據所述重啟請求的相應信息對所述智能設備進行重啟操作。
作為優選,所述管理裝置還包括資料庫和顯示端,所述資料庫中存儲有所述重啟請求的權重信息及發起端的信息;
所述系統引導管理器包括獲取單元,所述獲取單元分別與所述資料庫和顯示端連接,所述獲取單元配置為當重啟操作暫停時,根據所述重啟請求從所述資料庫中獲取相應的所述權重信息及發起端的信息,並使所述顯示端顯示所述權重信息及發起端的信息。
作為優選,所述系統引導管理器包括重啟單元,所述重啟單元配置為根據所述權重信息及發起端的信息,對至少一個所述重啟請求以所述智能設備的一次重啟操作來響應。
作為優選,所述設置模塊具體配置為在所述bios的不同啟動階段分別預設檢測點。
作為優選,所述暫停模塊與所述bios連接,所述暫停模塊進一步配置為當所述檢測點沒有檢測到重啟請求時向所述bios發送相應信息,以使所述bios繼續進行系統引導操作。
本發明實施例的有益效果在於:能夠對不同的重啟請求進行分析處理,並能夠將多個重啟請求以伺服器等智能設備的一次重啟操作來響應,有效減少了伺服器等智能設備的重啟次數,降低了bios的系統引導時間,提高了智能設備的啟動效率。
附圖說明
圖1為本發明實施例的智能設備重啟的管理方法的流程圖;
圖2為本發明實施例的獲取重啟請求的相應信息的流程圖;
圖3為本發明實施例的智能設備重啟的管理裝置的結構框圖;
圖4為本發明實施例的智能設備重啟的管理裝置的一種具體連接關係示意圖。
附圖標記說明
1-管理裝置2-設置模塊3-暫停模塊
4-系統引導管理器5-資料庫6-顯示端
7-bios8-驅動程序
具體實施方式
此處參考附圖描述本發明的各種方案以及特徵。
應理解的是,可以對此處發明的實施例做出各種修改。因此,上述說明書不應該視為限制,而僅是作為實施例的範例。本領域的技術人員將想到在本發明的範圍和精神內的其他修改。
包含在說明書中並構成說明書的一部分的附圖示出了本發明的實施例,並且與上面給出的對本發明的大致描述以及下面給出的對實施例的詳細描述一起用於解釋本發明的原理。
通過下面參照附圖對給定為非限制性實例的實施例的優選形式的描述,本發明的這些和其它特性將會變得顯而易見。
還應當理解,儘管已經參照一些具體實例對本發明進行了描述,但本領域技術人員能夠確定地實現本發明的很多其它等效形式,它們具有如權利要求所述的特徵並因此都位於藉此所限定的保護範圍內。
當結合附圖時,鑑於以下詳細說明,本發明的上述和其他方面、特徵和優勢將變得更為顯而易見。
此後參照附圖描述本發明的具體實施例;然而,應當理解,所發明的實施例僅僅是本發明的實例,其可採用多種方式實施。熟知和/或重複的功能和結構並未詳細描述以避免不必要或多餘的細節使得本發明模糊不清。因此,本文所發明的具體的結構性和功能性細節並非意在限定,而是僅僅作為權利要求的基礎和代表性基礎用於教導本領域技術人員以實質上任意合適的詳細結構多樣地使用本發明。
本說明書可使用詞組「在一種實施例中」、「在另一個實施例中」、「在又一實施例中」或「在其他實施例中」,其均可指代根據本發明的相同或不同實施例中的一個或多個。
本發明實施例的一種智能設備重啟的管理方法,應用在伺服器等智能設備的bios7的系統引導過程中,能夠有效降低伺服器等智能設備的重啟次數,提高bios7進行系統引導時的效率,如圖1所示,該管理方法包括:
s1,在bios7的系統引導過程中預設至少一個檢測點,檢測點用於檢測重啟請求。該重啟請求可以由加載到伺服器等智能設備上的驅動程序8發出,也可以由其他硬體設備發出,還可以是出現錯誤時產生的等等,在此不做限定。在一個實施例中,對於檢測點來說可以設置多個檢測點以在bios7的系統引導過程中分別針對不同類型的重啟請求,或者針對不同驅動程序8等發起端發送的重啟請求進行檢測。在另一個實施例中,在bios7的系統引導過程中預設兩個檢測點,分別為point1和point2,按照預設規則相互配合來檢測重啟請求,而預設規則可以根據實際使用情況進行更改,以滿足不同的檢測需要。
s2,當檢測點檢測到重啟請求時,暫停對智能設備的重啟操作。由於bios7的系統引導過程中伺服器等智能設備需要加載的驅動程序8通常較多,在此過程中可能會生成多次的重啟請求,而且通常可能會出現較多次的錯誤,從而導致重啟請求的生成,但是在本實施例中一旦檢測點檢測到重啟請求時,不論是哪個發起端發出的(如哪個驅動程序8發出或出現的錯誤導致的)均暫停對智能設備的重啟操作,但是該暫停的時間是極為短暫的,伺服器等智能設備會在隨後的過程中再進行重啟。
s3,獲取重啟請求的相應信息,並根據重啟請求的相應信息對智能設備進行重啟操作。重啟請求的相應信息可以包括該重啟請求的發出時間,發起端的名稱,發起端的類型,還可以包括重啟請求的個數,權重信息等,獲取重啟請求的這些信息後,可以根據這些信息進行分析,總結並綜合判斷,例如將權重(優先級)高的重啟請求進行優先處理(如對cpu在安裝相應的驅動程序8過程中發出的重啟請求進行優先處理),並且使得伺服器等智能設備可以在一次重啟過程中解決多個重啟請求,從而有效減少重啟次數,提高bios7的系統引導的效率。此外在根據重啟請求的相應信息對智能設備進行重啟操作時,還可以將重啟請求的相應信息進行輸出,如發送至遠程端,以使用戶可以及時獲知重啟請求的相關情況,如是哪個驅動程序8發出的重啟請求或者出現了什麼錯誤導致重啟請求的產生,以便做出及時調整,完善bios7的系統引導過程。
在本發明的一個實施例中,如圖2所示,獲取重啟請求的相應信息包括:
s31,將重啟請求的權重信息及發起端的信息存儲在預設的資料庫5中。在接受多個發起端發出的重啟請求時通常是不分先後的,在接收到這些重啟請求時便能夠將對應的重啟請求,以及發起端的名稱等信息存儲在預設的資料庫5中以備隨後的整理和綜合的判斷,此外資料庫5中的數據是可以被隨時更新的,例如伺服器的一個硬體設備的驅動程序8在註冊時,由於該驅動程序8為更新後的較新的驅動,其發出的重啟請求可以將其存儲在資料庫5中的舊的重啟請求覆蓋掉。此外資料庫5規模較小,其可以設置在多處,在一個實施例中,可以將該資料庫5預設在bios7的存儲設備中(如設置在bios7內部的存儲介質中),這樣在調用資料庫5的過程中效率會明顯提高。
s32,當重啟操作暫停時,報告重啟請求,並根據重啟請求從資料庫5中獲取相應的權重信息及發起端的信息。當重啟操作暫停時意味著檢測點檢測到了重啟請求並進行了暫停處理,而對於報告重啟請求來說可以向預設的部件報告如向預設的系統引導管理器4報告重啟請求,並由伺服器的bmc記錄報告重啟請求的相應信息,用戶可以通過bmc對重啟請求的相應信息進行調閱,並且相應的部件也可以根據報告獲取關於重啟請求的各項信息,如獲知產生重啟請求的發起端的相應信息或重啟請求的優先級等信息,以便對伺服器等智能設備進行重啟操作。在本實施例中根據重啟請求從資料庫5中獲取相應的權重信息及發起端的信息,以便隨後對這些信息進行利用,如權重大的重啟請求可以優先滿足,而重要的發起端也可以優先滿足(如cpu的重啟請求)。
s33,顯示權重信息及發起端的信息。該步驟可以通過相應的顯示部件來實施,顯示權重信息及發起端的信息可以使用戶及時獲知相關情況,如是哪個驅動程序8發出的重啟請求或者出現了什麼錯誤導致重啟請求的產生,以便及時做出調整。
在本發明的一個實施例中,根據重啟請求的相應信息對智能設備進行重啟操作包括:根據權重信息及發起端的信息,對至少一個重啟請求以智能設備的一次重啟操作來響應。具體來說,在一個實施例中,根據權重信息及發起端的信息可以將多個重啟請求均歸為一類,並且能夠通過將伺服器等智能設備重啟一次來對上述多個重啟請求進行響應;在另一個實施例中,將多個重啟請求分為多個類型,如將重啟請求分為權重高類,權重一般類和權重第類等,通過將伺服器等智能設備重啟一次來對一個類型進行響應,分別進行三次重啟來解決所有的重啟請求。這樣便能夠有效減少伺服器等智能設備的重啟次數,提高bios7進行系統引導的效率。
在bios7的系統引導過程中預設至少一個檢測點具體為:在bios7的不同啟動階段分別預設檢測點。bios7在啟動過程中會經過多個階段,如sec,pei,dxe,bsd階段等,bios7在每個不同的階段進行不同的系統引導工作,例如,在pei階段是為dxe準備執行環境,將需要傳遞給dxe的信息組成hob(handoffblock)列表;在dxe階段可執行大部分系統的初始化工作,此階段內存已經可以被完全使用,因而此階段可以進行大量的其他複雜工作。在一個實施例中,在bios7的不同啟動階段分別預設檢測點,從而更加方便的對重啟請求進行歸類或判斷優先級等操作;在另一個實施例中,分別在bios7的系統引導的關鍵階段,即在pei階段和dxe階段分別設置檢測點(point1和point2),將檢測點也進行合理的控制從而提高檢測效率。
在本發明的一個實施例中,上述方法還包括:當檢測點沒有檢測到重啟請求時,bios7繼續進行系統引導操作。具體來說,加載的驅動程序8可能均為正確,而不需進行伺服器等智能設備的重啟操作便能夠完成bios7的系統引導,此時檢測點便檢測不到重啟請求;或者在經過至少一次的重啟操作後,再也沒有新的重啟請求生成,從而使得bios7可以繼續進行系統引導操作,並最終完成該操作。上述步驟保證bios7能夠進行正確而及時的系統引導,使得所述的智能設備重啟的管理方法更加完善。
本發明實施例還提供了一種智能設備重啟的管理裝置1,應用在智能設備的bios7的系統引導過程中,如圖3所示,裝置包括設置模塊2,暫停模塊3和系統引導管理器4:
設置模塊2配置為在bios7的系統引導過程中預設至少一個檢測點,檢測點用於檢測重啟請求。該重啟請求可以由加載到伺服器等智能設備上的驅動程序8發出,也可以由其他硬體設備發出,還可以是出現錯誤時產生的等等,在此不做限定。在一個實施例中,對於檢測點來說設置模塊2可以設置多個檢測點,檢測點可以在bios7的系統引導過程中分別針對不同類型的重啟請求,或者針對不同驅動程序8等發起端發送的重啟請求進行檢測。在另一個實施例中,設置模塊2在bios7的系統引導過程中預設兩個檢測點,分別為point1和point2,按照預設規則相互配合來檢測重啟請求,而預設規則可以根據實際使用情況進行更改,以滿足不同的檢測需要。
暫停模塊3配置為當檢測點檢測到重啟請求時,暫停對智能設備的重啟操作。由於bios7的系統引導過程中伺服器等智能設備需要加載的驅動程序8通常較多,在此過程中可能會生成多次的重啟請求,而且通常可能會出現較多次的錯誤,從而導致重啟請求的生成,但是在本實施例中一旦檢測點檢測到重啟請求時,不論是哪個發起端發出的(如哪個驅動程序8發出或出現的錯誤導致的)暫停模塊3均暫停對智能設備的重啟操作,但是該暫停的時間是極為短暫的,伺服器等智能設備會在隨後的過程中再進行重啟。
系統引導管理器4與暫停模塊3連接,系統引導管理器4配置為當暫停模塊3暫停智能設備重啟時,獲取重啟請求的相應信息,並根據重啟請求的相應信息對智能設備進行重啟操作。重啟請求的相應信息可以包括該重啟請求的發出時間,發起端的名稱,發起端的類型,還可以包括重啟請求的個數,權重信息等,系統引導管理器4獲取重啟請求的這些信息,並可以根據這些信息進行分析,總結並綜合判斷,例如系統引導管理器4可以將權重(優先級)高的重啟請求進行優先處理(如對cpu在安裝相應的驅動程序8過程中發出的重啟請求進行優先處理),並且使得伺服器等智能設備可以在一次重啟過程中解決多個重啟請求,從而有效減少重啟次數,提高bios7的系統引導的效率。此外系統引導管理器4在根據重啟請求的相應信息對智能設備進行重啟操作時,還可以將重啟請求的相應信息進行輸出,如發送至遠程端,以使用戶可以及時獲知重啟請求的相關情況,如是哪個驅動程序8發出的重啟請求或者出現了什麼錯誤導致重啟請求的產生,以便做出及時調整,完善bios7的系統引導過程。
在本發明的一個實施例中,如圖4所示,管理裝置1還包括資料庫5和顯示端6,資料庫5中存儲有重啟請求的權重信息及發起端的信息。管理裝置1在接受多個發起端發出的重啟請求時通常是不分先後的,管理裝置1在接收到這些重啟請求時便能夠將對應的重啟請求,以及發起端的名稱等信息存儲在預設的資料庫5中以備隨後的整理和綜合的判斷,此外資料庫5中的數據是可以被隨時更新的,例如伺服器的一個硬體設備的驅動程序8在註冊時,由於該驅動程序8為更新後的較新的驅動,其發出的重啟請求可以將其存儲在資料庫5中的舊的重啟請求覆蓋掉。此外資料庫5規模較小,其可以設置在多處,在一個實施例中,可以將該資料庫5預設在bios7的存儲設備中(如設置在bios7內部的存儲介質中),這樣在調用資料庫5的過程中效率會明顯提高。
系統引導管理器4包括獲取單元,獲取單元分別與資料庫5和顯示端6連接,獲取單元配置為當重啟操作暫停時,根據重啟請求從資料庫5中獲取相應的權重信息及發起端的信息,並使顯示端6顯示權重信息及發起端的信息。當重啟操作暫停時意味著檢測點檢測到了重啟請求並進行了暫停處理,此時可以向預設的系統引導管理器4報告重啟請求,並由伺服器的bmc記錄報告重啟請求的相應信息,用戶可以通過bmc對重啟請求的相應信息進行調閱,並且系統引導管理器4也可以根據報告獲取關於重啟請求的各項信息,如獲知產生重啟請求的發起端的相應信息或重啟請求的優先級等信息,以便對伺服器等智能設備進行重啟操作。在本實施例中獲取單元根據重啟請求從資料庫5中獲取相應的權重信息及發起端的信息,以便系統引導管理器4隨後對這些信息進行利用,如權重大的重啟請求可以優先滿足,而重要的發起端也可以優先滿足(如cpu的重啟請求)。顯示端6顯示權重信息及發起端的信息可以使用戶及時獲知相關情況,如是哪個驅動程序8發出的重啟請求或者出現了什麼錯誤導致重啟請求的產生,以便及時做出調整。
在本發明的一個實施例中,系統引導管理器4包括重啟單元,重啟單元配置為根據權重信息及發起端的信息,對至少一個重啟請求以智能設備的一次重啟操作來響應。具體來說,在一個實施例中,重啟單元根據權重信息及發起端的信息可以將多個重啟請求均歸為一類,並且重啟單元能夠通過將伺服器等智能設備重啟一次來對上述多個重啟請求進行響應;在另一個實施例中,重啟單元將多個重啟請求分為多個類型,如將重啟請求分為權重高類,權重一般類和權重第類等,並且重啟單元通過將伺服器等智能設備重啟一次來對一個類型進行響應,分別進行三次重啟來解決所有的重啟請求。這樣便能夠有效減少伺服器等智能設備的重啟次數,提高bios7進行系統引導的效率。
設置模塊2具體配置為在bios7的不同啟動階段分別預設檢測點。bios7在啟動過程中會經過多個階段,如sec,pei,dxe,bsd階段等,bios7在每個不同的階段進行不同的系統引導工作,例如,在pei階段是為dxe準備執行環境,將需要傳遞給dxe的信息組成hob(handoffblock)列表;在dxe階段可執行大部分系統的初始化工作,此階段內存已經可以被完全使用,因而此階段可以進行大量的其他複雜工作。在一個實施例中,設置模塊2在bios7的不同啟動階段分別預設檢測點,從而更加方便的對重啟請求進行歸類或判斷優先級等操作;在另一個實施例中,設置模塊2分別在bios7的系統引導的關鍵階段,即在pei階段和dxe階段分別設置檢測點(point1和point2),將檢測點也進行合理的控制從而提高檢測效率。
暫停模塊3與bios7連接,暫停模塊3進一步配置為當檢測點沒有檢測到重啟請求時向bios7發送相應信息,以使bios7繼續進行系統引導操作。具體來說,加載的驅動程序8可能均為正確,而不需進行伺服器等智能設備的重啟操作便能夠完成bios7的系統引導,此時檢測點便檢測不到重啟請求;或者在經過至少一次的重啟操作後,再也沒有新的重啟請求生成,暫停模塊3可以從檢測點獲知沒有檢測到重啟請求的相應信息,從而向bios7發送信號以使bios7可以繼續進行系統引導操作,或者不幹預bios7進行的系統引導操作,最終bios7完成該操作。暫停模塊3的該作用保證bios7能夠進行正確而及時的系統引導,使得所述的智能設備重啟的管理方法更加完善。
以上實施例僅為本發明的示例性實施例,不用於限制本發明,本發明的保護範圍由權利要求書限定。本領域技術人員可以在本發明的實質和保護範圍內,對本發明做出各種修改或等同替換,這種修改或等同替換也應視為落在本發明的保護範圍內。