本發明涉及通信
技術領域:
,尤其涉及一種硬件設備管理方法,同時還涉及基于該方法的硬件設備管理。
背景技術:
:傳統的硬件設備上模塊部署關系如圖1所示,硬件設備上安裝操作系統,根據硬件特性進行單板驅動開發。軟件平臺通過驅動模塊提供的接口進行功能開發。應用模塊使用軟件平臺提供的服務進行業務處理,也可以調用驅動的接口進行業務處理。參見圖2和圖3,驅動模塊基于硬件特性(處理器、芯片等)進行驅動功能。軟件平臺中的支撐模塊根據硬件特性(CPU類型)進行差異化處理。例如,CPU提取堆棧方式的不同、運算能力不同、操作系統函數差異以及硬件提供的功能差異等都需要在支撐模塊中進行處理。支撐模塊通常采用CPU編譯宏屏蔽CPU差異,或者根據單板類型不同進行處理。在實現本發明的過程中,發明人發現現有技術中至少存在如下技術問題:支撐模塊雖然屏蔽了硬件功能的差異,但是根據這些差異進行代碼開發、調試開發困難、周期長。每一種新單板的出現會導致平臺代碼改變一次,導致軟件平臺不能穩定。另外,軟件平臺和驅動結合緊密,層次劃分上也不清晰,不利于分層隔離。技術實現要素:針對現有技術的不足,本發明所要解決的技術問題在于提供一種硬件設備管理方法。本發明所要解決的又一技術問題在于提供一種實現上述方法的硬件設備管理裝置。為實現上述發明目的,本發明采用下述的技術方案:一方面,本發明提供了一種硬件設備管理方法,包括:按照不同硬件設備的功能特性,劃分為多種硬件資源;根據每類硬件設備的功能特性,配置相應的硬件資源集;當硬件設備初始化時,自檢獲取可提供的驅動資源集;將所述驅動資源集與所述硬件資源集中的硬件資源進行匹配,并根據匹配結果確定可使用的硬件資源。優選地,所述硬件資源集是所述硬件設備初始化后,根據所述硬件設備類型獲取的。優選地,所述驅動資源集與所述硬件資源集根據預先定義的硬件資源ID進行匹配。優選地,根據所述匹配結果確定可使用的硬件資源,包括:若所述匹配結果一致,記錄所述驅動資源集中硬件資源,并使用相應的硬件功能;若所述匹配結果不一致,上報相應的告警或事件進行通知。優選地,所述匹配結果不一致,上報相應的告警或事件進行通知,具體包括:若所述驅動資源集中的硬件資源沒有在所述硬件資源集中找到,上報數據配置錯誤通知;若所述硬件資源集中的資源沒有所述驅動資源集中找到,上報驅動資源故障通知。優選地,所述硬件設備包括硬件單板、服務器、工控機、機框以及單板子卡。優選地,所述硬件設備為外圍板時,所述硬件資源集需從全局板數據庫中獲取。另一方面,本發明還提供了一種硬件設備管理裝置,包括:資源配置單元,用于按照不同硬件設備的功能特性,劃分為多種 硬件資源,并根據每類硬件設備的功能特性,配置相應的硬件資源集;驅動資源獲取單元,當硬件設備初始化時,自檢獲取可提供的驅動資源集;控制單元,用于將所述驅動資源集與所述硬件資源集中的硬件資源進行匹配,并根據匹配結果確定可使用的硬件資源。優選地,所述硬件管理裝置還包括硬件資源獲取單元,具體用于,所述硬件設備初始化后,根據所述硬件設備類型獲取所述硬件資源集。優選地,所述控制單元,具體用于:若所述匹配結果一致,記錄所述驅動資源集中硬件資源,并使用相應的硬件功能;若所述匹配結果不一致,上報相應的告警或事件進行通知。優選地,所述硬件管理裝置還包括告警單元,具體用于,若所述驅動資源集中的硬件資源沒有在所述硬件資源集中找到,上報數據配置錯誤通知;若所述硬件資源集中的資源沒有所述驅動資源集中找到,上報驅動資源故障通知。優選地,所述硬件管理裝置還包括存儲單元,用于存儲所述硬件資源集。本發明提供的硬件設備管理方法將硬件設備的管理進行虛擬化,根據硬件設備的功能特性劃分為多種硬件資源,并根據每類硬件設備可提供的資源,配置相應的硬件資源集;當硬件設備初始化時,驅動自檢獲取可提供的資源;將驅動獲取的資源與硬件資源集中配置的資源進行匹配,并根據匹配結果執行相應地操作。通過本發明所提供的硬件設備管理方法,使得軟件平臺能快速部署到此硬件設備上,減少軟件平臺和應用產品的修改,快速適應各種硬件設備,加快開發進度,減少開發成本。附圖說明為了更清楚地說明本發明實施例中的技術方案,下面將對實施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其它的附圖。圖1為現有技術中硬件設備模塊部署的關系圖;圖2為支撐模塊與驅動模塊的關系圖;圖3為支撐模塊根據硬件特性差異化處理的流程圖;圖4為本發明所提供的硬件設備管理方法的流程圖;圖5為本發明所提出的虛擬層在圖1的位置示意圖;圖6為本發明中虛擬層與驅動層的關系圖;圖7為本發明所提供的硬件設備管理裝置的原理框圖。具體實施方式下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基于本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其它實施例,都屬于本發明保護的范圍。如圖4所示,本發明所提供一種硬件設備管理方法,包括:按照不同硬件設備的功能特性,劃分為多種硬件資源;根據每類硬件設備的功能特性,配置相應的硬件資源集;當硬件設備初始化時,自檢獲取可提供的驅動資源集;將驅動資源集與硬件資源集中的硬件資源進行匹配,并根據匹配結果確定可使用的硬件資源。本發明所提供的硬件設備管理方法將硬件設備的管理進行虛擬化,根據硬件設備的功能特性劃分為多種硬件資源,并為每類硬件設備配置相應的硬件資源集;在部署軟件平臺到硬件設備時,只需將驅動提供的資源集與配置的硬件資源集進行匹配,便可使用相應的功能 服務。因此本發明與現有技術相比,在軟件平臺部署新的硬件設備上時,避免了差異進行代碼開發、調試開發困難、周期長以及軟件平臺不穩定的問題,使得軟件平臺快速適應各種硬件設備,減少軟件平臺和應用產品的修改,加快開發進度,減少開發成本。下面對本發明的具體實施過程進行詳細介紹。首先步驟S101,根據不同硬件設備的功能劃分為多種硬件資源。本發明中所涉及的硬件設備包括但不限于單板、服務器、工控機,機框,單板子卡等。本發明中以單板為具體實施例進行說明。不同的硬件單板包括不同的內存、I/O設備、存儲、計算能力等,這些功能統稱為硬件資源(簡稱資源)。如對于內存資源,提供單板的總內存、可用內存、已用內存。存儲資源包括存儲設備的描述,如硬盤、電子盤、內存卡以及各個存儲介質的使用情況。I/O設備資源包括網口、光口的配置和使用情況。參見圖5,本發明在現有的硬件設備模塊部署結構中提出一個虛擬層概念。虛擬層屬于軟件平臺,通過虛擬層屏蔽硬件、CPU、單板差異,使上層軟件保持穩定,有利于產品快速開發,節約成本。虛擬層對不同硬件單板提供的功能進行抽象,劃分為多種硬件資源,并提供一個虛擬的資源池供上層使用。參見圖6,本發明中虛擬層配置的資源與驅動層的資源是相對的。資源配置的函數功能集和驅動層的函數功能集也相對應。軟件平臺通過函數功能集可以查詢單板溫度、電壓,發送消息,或者通過函數獲知狀態變化通知。其次步驟S102,根據每類硬件設備的功能特性,配置相應的硬件資源集。根據每類硬件單板提供的功能不同,歸納其可提供的資源,建立相應的硬件資源模型,包含相應的硬件資源集。硬件資源集相應的資源以資源表的形式保存至數據庫中,具體參見下表。硬件單板單板具備的資源特性Board1res1Board1res2Board1res3Board2res1Board2res2Board2res5…...資源表包括單板類型以及資源ID。其中,Board1和Board2為硬件單板的類型;res1、res2……resN為根據單板可提供的功能特性預先定義的資源ID。res1、res2……resN構成了該硬件設備的硬件資源集。從表中可以看出,硬件單板之間可以具備相同的資源特性,硬件單板也有區別于別的單板的資源特性。每一個硬件資源是一個API功能集,通過這個API功能集完成相應硬件資源提供的功能,上層調用此API進行功能設置或查詢。API功能集結構體定義如下:接著步驟S103,當硬件設備初始化時,自檢獲取可提供的驅動資源集。單板初始化啟動中,驅動層進行自檢獲取可以提供的資源。其中驅動獲取的資源同樣采用與硬件資源集中相一致的資源ID,資源ID的集合為驅動資源集。驅動獲取可提供資源的情況(包括內存、硬盤、網口等),使用RES_API_T結構體的形式體現。最后步驟S104,將驅動資源集與硬件資源集中的硬件資源進行匹配,并根據匹配結果確定可使用的硬件資源。單板在驅動初始化完成后,支持模塊獲取硬件單板類型,根據硬件單板類型從數據庫中獲取該單板的硬件資源集(資源ID的集合)。根據數據庫中配置的硬件資源集中的資源和驅動層上報的資源集進行匹配,獲取目前可以使用的資源集。因此,在獲取可使用的資源集時,只需將硬件資源集的資源ID和驅動資源集中的資源ID進行匹配即可,并根據匹配結果確定可使用的硬件資源,具體包括如下情況:若匹配結果一致,軟件平臺記錄驅動資源集中的資源ID和相關的API功能集,并根據相應的資源使用硬件的功能;若匹配結果不一致,上報相應的告警或事件進行通知,具體包括如下情況:若驅動資源集中的資源沒有在配置的硬件資源集中找到,說明數據庫中的資源配置錯誤,上報數據配置錯誤的告警或事件進行通知。若硬件資源集的資源沒有在驅動資源集中找到,表示驅動提供的某個資源故障,硬件單板的功能受限支持,并上報資源故障的告警或事件進行通知。需要進一步說明的是,在網元中進行配置時,硬件單板包括全局板和外圍板。通常全局板進行全局管理,外圍板從全局板獲取數據進行業務處理。本發明中,在虛擬層在資源配置時,全局板數據庫中保 存所有單板硬件資源信息,外圍板啟動時,需要從全局板中獲取配置的資源信息為了保證外圍板能正常啟動,單板初始化時,驅動層首先初始化網口和底層鏈路,保證和全局板通信正常。參見圖7,本發明還提供了一種硬件設備管理裝置,用于實現上述的硬件設備管理方法,包括:一種硬件設備管理裝置,包括:資源配置單元,用于按照不同硬件設備的功能特性,劃分為多種硬件資源,并根據每類硬件設備的功能特性,配置相應的硬件資源集;驅動資源獲取單元,當硬件設備初始化時,自檢獲取可提供的驅動資源集;控制單元,用于將驅動資源集與硬件資源集中的硬件資源進行匹配,并根據匹配結果執行相應地操作。進一步地,控制單元具體用于,若匹配結果一致,記錄驅動資源集中硬件資源,并使用相應的硬件功能;若匹配結果不一致,上報相應的告警或事件進行通知。進一步地,硬件管理裝置還包括硬件資源獲取單元,用于硬件設備初始化后,根據硬件設備類型獲取硬件資源集。進一步地,硬件管理裝置還包括告警單元,具體用于,若驅動資源集中的硬件資源沒有在硬件資源集中找到,上報數據配置錯誤通知;若硬件資源集中的資源沒有驅動資源集中找到,上報驅動資源故障通知。進一步地,硬件管理裝置還包括存儲單元,用于存儲硬件資源集。本領域普通技術人員可以理解實現上述實施例方法中的全部或部分流程,是可以通過計算機程序來指令相關的硬件來完成,程序可存儲于計算機可讀取存儲介質中,該程序在執行時,可包括如上述各 方法的實施例的流程。以上,僅為本發明的具體實施方式,但本發明的保護范圍并不局限于此,任何熟悉本
技術領域:
的技術人員在本發明揭露的技術范圍內,可輕易想到的變化或替換,都應涵蓋在本發明的保護范圍之內。因此,本發明的保護范圍應該以權利要求的保護范圍為準。當前第1頁1 2 3