專利名稱:一種嵌入式分布系統(tǒng)的版本信息處理方法
技術領域:
本發(fā)明涉及一種通訊系統(tǒng)中的版本信息的處理方法,特別是涉及基站子系統(tǒng)中的軟件版本信息的處理方法。
背景技術:
在通訊系統(tǒng)中版本管理通常包括版本軟件的添加,分發(fā),激活和加載等過程。版本的添加,指的是OMC(Operation Maintenance Center操作維護中心)將軟件版本存放在集中存儲點上。版本分發(fā),是指將軟件版本由集中存儲點分發(fā)到目標單板。版本激活,是指把指定版本設定為下次啟動時加載的版本。版本加載,是指單板上電后,啟用軟件版本的過程。
由于基站系統(tǒng)中基站控制器側和基站收發(fā)信機側硬件單板眾多,隨之而來所對應的單板軟件版本也眾多。對于同一種單板軟件版本又有許多類型CPU版本,F(xiàn)PGA(Field Programmable Gate Array現(xiàn)場可編程邏輯門陣列)版本,MCU(Microprogrammed Control Unit)版本,BOOT(啟動、引導)版本等等。隨著現(xiàn)代通信業(yè)的發(fā)展,基站系統(tǒng)的升級換代越來越頻繁,每個基站控制器下面可以帶若干個基站收發(fā)信機,而每個基站收發(fā)信機子系統(tǒng)下面一般下掛幾十塊單板。因此,操作維護系統(tǒng)需要管理大量單板的軟件版本,確保大量軟件版本的順利升級。面對如此眾多的單板軟件,建立一套高效的版本管理體系和方法,對于基站系統(tǒng)的升級、維護顯得十分重要。同時,為了節(jié)約成本,很多的受控單板上沒有存儲設備,如何規(guī)劃和正確合理描述這些軟件是通訊系統(tǒng)的一項重要工作。
以往的一些廠家做法是將各個單板的軟件版本與控制信息放在同一數(shù)據(jù)庫或文件中,通過讀取版本軟件中的控制信息來進行版本的管理。使用這種方法的弊端是是可靠性不強1)配置控制信息和版本自身信息存放在同一數(shù)據(jù)庫或文件中,由于對配置信息的操作相對頻繁,一旦導致異常,版本自身信息也無法正確識別,系統(tǒng)無法進行異常處理加載默認版本,增加了系統(tǒng)風險。2)將兩者放在一起擴展性不好,一旦產(chǎn)生新的配置信息則對原來的配置信息結構產(chǎn)生影響,則必須更改數(shù)據(jù)庫表結構或版本文件結構。而如果將兩者分開可以采取增加新的配置文件的方式。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術問題是提供一種嵌入式分布系統(tǒng)的版本信息處理方法,解決現(xiàn)有技術將軟件版本信息與控制信息放在同一數(shù)據(jù)庫或文件中,可靠性不強和擴展性不好的技術問題。
為達到上述目的,本發(fā)明提供了一種嵌入式分布系統(tǒng)的版本信息處理方法,其特點在于,將控制單板和受控單板的版本控制信息及版本描述信息存儲到所述控制單板的存儲介質(zhì)上,并通過將所述版本控制信息和所述版本描述信息分別存儲,從而在版本升級中只需維護所述版本控制信息,在版本發(fā)布中發(fā)布的軟件版本只需帶有所述版本描述信息。
上述的方法,其特點在于,所述版本控制信息記錄有軟件版本和物理單板的對應關系以及啟動參數(shù)信息;所述版本描述信息,是軟件版本自身屬性的說明,用來確定各個軟件類型的版本文件的信息。
上述的方法,其特點在于,進一步包括如下步驟步驟一、將形成的所述版本控制信息和所述版本描述信息分別存儲到所述控制單板的存儲介質(zhì)上;步驟二、根據(jù)所述版本控制信息和所述版本描述信息,進行軟件版本的分發(fā)配置;步驟三、進行軟件版本的激活;步驟四、在單板復位后,根據(jù)所述版本控制信息和所述版本描述信息,進行版本的加載處理。
上述的方法,其特點在于,在所述步驟一中,所述版本控制信息在單板出廠首次下載軟件版本時,由引導程序創(chuàng)建,并存儲在所述主控單板的所述存儲介質(zhì)上;所述版本描述信息由所述主控單板上的版本管理進程根據(jù)接收到的軟件版本創(chuàng)建。
上述的方法,其特點在于,所述步驟二包括在所述軟件版本分發(fā)完成后,根據(jù)所述版本控制信息,讀出單板正在運行版本的版本標志,取得該單板的備用版本號;查找該備用版本號在所述版本描述信息中對應的記錄,修改該記錄從而將已分發(fā)的所述軟件版本作為備用版本。
上述的方法,其特點在于,所述步驟三包括操作維護中心向所述主控單板發(fā)送激活命令,所述主控單板根據(jù)所述激活命令中的板類型、版本號來查找到對應的版本控制信息,并將所述版本控制信息中的備用版本項設置為激活,同時在所述版本描述信息中將備用版本的信息和主用版本的信息進行交換。
上述的方法,其特點在于,所述步驟四中具有一主控單板加載流程,包括主控單板引導程序讀取本板的版本控制信息,根據(jù)所述版本控制信息中的激活標志,在所述版本描述信息中查找到對應的軟件版本的名稱,從所述存儲介質(zhì)上讀取對應的版本文件,加載所述軟件版本,在完成引導后將控制權交給加載的所述軟件版本,主控單板運行正常后修改相應的版本控制信息,將當前加載的版本設置為運行版本。
上述的方法,其特點在于,所述步驟四中具有一受控單板加載流程,包括受控單板復位后,受控單板引導程序向主控單板請求版本;主控單板收到請求后,查找對應所述受控單板的版本控制信息的配置記錄;根據(jù)該記錄在對應的版本描述信息中找到軟件版本的文件名,向所述受控單板發(fā)送所述軟件版本;受控單板引導程序收到所述軟件版本后,運行所述軟件版本,然后將控制權交給加載的所述軟件版本。
上述的方法,其特點在于,所述版本控制信息包括有單板正在運行版本標志和激活標志。
上述的方法,其特點在于,所述版本描述信息包括有版本文件的類型、文件名、文件大小、軟件版本號、是否主用版本標志和/或創(chuàng)建的時間。
本發(fā)明的技術效果在于本發(fā)明根據(jù)通訊系統(tǒng)的單板軟件眾多,類型復雜的狀況,采取將版本的控制信息與版本軟件自身的描述信息進行分離的方法,在進行版本管理時,只需要維護控制信息即可方便實現(xiàn)高效可靠的版本管理。并具有如下效果1)升級版本,只需要維護版本控制信息即可;2)版本軟件的發(fā)布更為方便,不需要在版本軟件中增加控制信息。本發(fā)明的方法采用版本控制信息與軟件版本信息相分離的方法,實現(xiàn)了高效可靠的系統(tǒng)軟件版本升級與維護。
下面結合附圖進一步詳細說明本發(fā)明的具體實施例。
圖1是本發(fā)明方法主控板上的版本信息目錄結構圖;圖2是本發(fā)明中的版本分發(fā)配置流程;圖3是本發(fā)明中的主控單板版本軟件加載流程;圖4是本發(fā)明中的被控單板版本軟件加載流程;圖5是本發(fā)明方法的步驟流程圖。
具體實施例方式
圖5是本發(fā)明方法的步驟流程圖,本發(fā)明提出的版本控制信息與版本信息分離的方法主要包括以下步驟步驟501、形成版本控制信息和版本自身描述信息放到控制單板存儲介質(zhì)上;其中所述版本控制信息用于記錄存儲軟件版本和物理單板的對應關系以及啟動參數(shù)信息。如單板正在運行版本標志,激活標志等等。
所述版本自身描述信息,即版本信息,是軟件版本自身屬性的說明,用來確定各個軟件類型的版本文件的信息。如類型,文件名,文件大小,軟件版本號,創(chuàng)建的時間,是否主用版本標志等等。
所述控制單板,即主控單板,為某個子系統(tǒng)下的通信控制單板,一般有存儲介質(zhì)。受控單板,指的是在某個子系統(tǒng)下的非控制單板,其單板軟件版本存放在主控單板上。
版本控制信息在單板出廠首次下載軟件版本時,由BOOT引導程序創(chuàng)建,并存儲在主控單板存儲器下。
版本信息則由主控單板上的版本管理的代理創(chuàng)建??刂茊伟灏姹竟芾磉M程根據(jù)接收到的軟件版本,形成版本信息。
步驟502、根據(jù)版本信息和版本控制信息,進行軟件版本的分發(fā)配置。具體包括版本分發(fā)完成后,根據(jù)版本控制信息,讀出正在運行版本標志,取得備用版本號;查找其在版本信息中對應的記錄,將新的版本信息填入該記錄項,并設置為備用版本,同時刪除原有的備用軟件版本;最后更新控制信息的備用版本記錄。
步驟503、進行軟件版本的激活;具體包括OMC(操作維護中心)向主控單板發(fā)送激活命令,主控單板根據(jù)板類型,版本號查找到對應板類型的版本控制信息,將備用版本項設置為激活,同時在版本信息中將備用版本和主用版本信息交換。
步驟504、單板復位后,根據(jù)版本信息和版本控制信息,進行版本的加載處理;具體包括主控單板加載流程單板BOOT引導程序讀取本板的版本控制信息,根據(jù)激活標志,在版本信息中查找到對應軟件名稱,從存儲器上讀取版本文件,加載相應的軟件版本。在完成引導后將控制權交給加載的軟件版本,單板運行正常后修改相應的控制信息,將當前加載的版本設置為運行版本。
受控單板加載流程受控單板復位后,BOOT引導程序向主控單板請求版本;主控單板收到請求后,查找相應的受控板類型的受控配置信息的配置記錄;根據(jù)此記錄在版本信息中找到對應的版本文件名,向受控單板發(fā)送軟件版本。受控單板BOOT引導程序收到軟件版本完成后,運行該版本,將控制權交給應用程序。
圖1是本發(fā)明方法主控板上的版本信息目錄結構圖,如圖所示,主控單板110上存放主控單板自身的版本軟件111、版本啟用信息文件112、113和版本信息文件114。受控單板上沒有版本存儲介質(zhì),主控板上按照受控板類型,分目錄存放各種受控板本。每個受控單板目錄下的一個板類型120中存儲有受控單板軟件121和受控配置信息文件122。
版本信息文件,用于存儲版本信息記錄中的本板的軟件版本。包括(CPU版本,F(xiàn)PGA版本)版本號,版本角色(可配,默認,備用),版本長度,創(chuàng)建時間等。
版本控制信息文件,用來配置主控單板啟動哪一個軟件版本。包括運行版本序號,激活標志,嘗試運行標志,驗證運行標志。主要有CPU啟動信息文件,單板配置信息文件等。
受控單板的配置信息,指定同種類型不同位置單板運行不同的版本。信息文件的一條記錄對應一個物理地址的單板。包括驗證CPU版本號,驗證FPGA版本號,激活CPU版本號,激活FPGA版本號,本板物理地址,硬件版本號等。
控制信息與版本信息分離的版本處理方法,包括以下處理過程和功能1.版本軟件的分發(fā)配置如圖2,根據(jù)OMC人機界面命令,如果分發(fā)的是主控版本軟件,則目標主控板接收版本后,存放到本板目錄下,并找到主控板版本信息文件,增加一條記錄,將新的版本記錄中的版本角色設置為備用版本。如果分發(fā)的是受控版本,則目標主控單板根據(jù)受控板類型查找對應目錄,更改對應的受控板版本信息文件,用新的版本軟件記錄替換舊的備用版本記錄。
具體步驟包括步驟201,根據(jù)OMC人機界面命令進行版本分發(fā);步驟202,主控板接收軟件版本;步驟203,判斷所接收到的軟件版本是否為主控板的軟件版本,是則執(zhí)行步驟204,否則執(zhí)行步驟207;步驟204,在主控板目錄下查找是否有對應的版本信息文件,是則執(zhí)行步驟206,否則執(zhí)行步驟205;步驟205,創(chuàng)建對應的版本信息文件;步驟206,更新該對應的版本信息文件,將更新的軟件版本替換原有的備用版本,從而更新的軟件版本作為了備用版本,結束該分發(fā)配置流程;步驟207,查找對應受控板目錄下是否有對應的版本信息文件,是則執(zhí)行步驟209,否則執(zhí)行步驟208;步驟208,創(chuàng)建對應的版本信息文件;步驟209,根據(jù)版本類型查找對應的受控單板目錄,更新對應的受控單板版本信息文件,將新版本設置為待用版本。
2.版本軟件的激活根據(jù)OMC人機界面命令,根據(jù)相應單板,在主控單板上按照板類型查找相應目錄下的版本控制信息文件,更新控制信息文件的主用版本和備用版本項,將備用版本對應的記錄設置為激活標志。
3.受控單板的配置根據(jù)OMC人機界面命令,根據(jù)相應單板,在主控單板上按照板類型查找相應目錄下的受控單板配置信息文件,更新配置記錄中的激活版本號和激活配置標志項。將備用版本轉(zhuǎn)為默認版本。
4.單板上電加載如圖3,如果是主控單板,上電后,引導程序根據(jù)自身存儲介質(zhì)上的版本控制信息文件和版本信息文件中的版本信息,引導要啟動的軟件版本。
主控單板版本軟件加載流程具體包括步驟301,單板復位上電;步驟302,BOOT讀取CPU啟動信息文件,根據(jù)激活啟用版本項,引導相應的主用軟件版本;步驟303,判斷單板是否正常啟動,是則執(zhí)行步驟305,否則執(zhí)行步驟304;步驟304,BOOT讀取啟動信息文件并設置相應標志位,引導備用版本啟動;步驟305,將控制權交給應用程序。
如圖4,受控單板版本軟件加載流程具體包括步驟401,上電后,BOOT引導程序向主控單板發(fā)出版本請求;步驟402,主控單板根據(jù)板類型查找對應受控板目錄下的受控板配置信息文件;步驟403,主控單板再根據(jù)受控板物理地址查找對應配置記錄將相應的啟用受控版本發(fā)送給受控單板。步驟404,受控單板BOOT接收完軟件版本后,將控制權交給應用程序。
5.版本的查詢。版本查詢通過人機命令查詢單板軟件版本信息,可以激活相應的版本,方便系統(tǒng)的維護。分為存儲版本和運行版本的查詢。
存儲版本的查詢,根據(jù)要查詢的板類型,在相應的主控制點的控制信息目錄下,查找版本信息文件,讀出所有的存儲版本信息,將結果返回OMC人機界面。
運行版本的查詢,根據(jù)要查詢的板類型,在相應的主控板上的控制信息目錄下,查找版本控制信息文件,將結果返回OMC人機界面。
本發(fā)明提出了控制信息與軟件版本信息分離方法??刂菩畔⒑桶姹拘畔⒌拇鎯梢杂卸喾N實現(xiàn)方式,本發(fā)明采用文件系統(tǒng)的辦法,還可以采用別的實現(xiàn)方法,例如數(shù)據(jù)庫的記錄方式,只要該方法能有效實現(xiàn),這都不違背本發(fā)明的描述。
總之,本發(fā)明提出的控制信息與版本軟件分離的版本處理方法,能高效簡捷可靠的實現(xiàn)版本管理,方便通訊系統(tǒng)版本的發(fā)布和升級維護。
以上所述僅為本發(fā)明的較佳實施例,并非用來限定本發(fā)明的實施范圍;凡是依本發(fā)明所作的等效變化與修改,都被本發(fā)明的專利范圍所涵蓋。
權利要求
1.一種嵌入式分布系統(tǒng)的版本信息處理方法,其特征在于,將控制單板和受控單板的版本控制信息及版本描述信息存儲到所述控制單板的存儲介質(zhì)上,并通過將所述版本控制信息和所述版本描述信息分別存儲,從而在版本升級中只需維護所述版本控制信息,在版本發(fā)布中發(fā)布的軟件版本只需帶有所述版本描述信息。
2.根據(jù)權利要求1所述的方法,其特征在于,所述版本控制信息記錄有軟件版本和物理單板的對應關系以及啟動參數(shù)信息;所述版本描述信息,是軟件版本自身屬性的說明,用來確定各個軟件類型的版本文件的信息。
3.根據(jù)權利要求2所述的方法,其特征在于,進一步包括如下步驟步驟一、將形成的所述版本控制信息和所述版本描述信息分別存儲到所述控制單板的存儲介質(zhì)上;步驟二、根據(jù)所述版本控制信息和所述版本描述信息,進行軟件版本的分發(fā)配置;步驟三、進行軟件版本的激活;步驟四、在單板復位后,根據(jù)所述版本控制信息和所述版本描述信息,進行版本的加載處理。
4.根據(jù)權利要求3所述的方法,其特征在于,在所述步驟一中,所述版本控制信息在單板出廠首次下載軟件版本時,由引導程序創(chuàng)建,并存儲在所述主控單板的所述存儲介質(zhì)上;所述版本描述信息由所述主控單板上的版本管理進程根據(jù)接收到的軟件版本創(chuàng)建。
5.根據(jù)權利要求4所述的方法,其特征在于,所述步驟二包括在所述軟件版本分發(fā)完成后,根據(jù)所述版本控制信息,讀出單板正在運行版本的版本標志,取得該單板的備用版本號;查找該備用版本號在所述版本描述信息中對應的記錄,修改該記錄從而將已分發(fā)的所述軟件版本作為備用版本。
6.根據(jù)權利要求5所述的方法,其特征在于,所述步驟三包括操作維護中心向所述主控單板發(fā)送激活命令,所述主控單板根據(jù)所述激活命令中的板類型、版本號來查找到對應的版本控制信息,并將所述版本控制信息中的備用版本項設置為激活,同時在所述版本描述信息中將備用版本的信息和主用版本的信息進行交換。
7.根據(jù)權利要求6所述的方法,其特征在于,所述步驟四中具有一主控單板加載流程,包括主控單板引導程序讀取本板的版本控制信息,根據(jù)所述版本控制信息中的激活標志,在所述版本描述信息中查找到對應的軟件版本的名稱,從所述存儲介質(zhì)上讀取對應的版本文件,加載所述軟件版本,在完成引導后將控制權交給加載的所述軟件版本,主控單板運行正常后修改相應的版本控制信息,將當前加載的版本設置為運行版本。
8.根據(jù)權利要求6所述的方法,其特征在于,所述步驟四中具有一受控單板加載流程,包括受控單板復位后,受控單板引導程序向主控單板請求版本;主控單板收到請求后,查找對應所述受控單板的版本控制信息的配置記錄;根據(jù)該記錄在對應的版本描述信息中找到軟件版本的文件名,向所述受控單板發(fā)送所述軟件版本;受控單板引導程序收到所述軟件版本后,運行所述軟件版本,然后將控制權交給加載的所述軟件版本。
9.根據(jù)權利要求4所述的方法,其特征在于,所述版本控制信息包括有單板正在運行版本標志和激活標志。
10.根據(jù)權利要求4所述的方法,其特征在于,所述版本描述信息包括有版本文件的類型、文件名、文件大小、軟件版本號、是否主用版本標志和/或創(chuàng)建的時間。
全文摘要
本發(fā)明公開了一種嵌入式分布系統(tǒng)的版本信息處理方法,其特點在于,將控制單板和受控單板的版本控制信息及版本描述信息存儲到所述控制單板的存儲介質(zhì)上,并通過將所述版本控制信息和所述版本描述信息分別存儲,從而在版本升級中只需維護所述版本控制信息,在版本發(fā)布中發(fā)布的軟件版本只需帶有所述版本描述信息。本發(fā)明根據(jù)通訊系統(tǒng)的單板軟件眾多,類型復雜的狀況,采取將版本的控制信息與版本軟件自身的描述信息進行分離的方法,在進行版本管理時,只需要維護控制信息即可方便實現(xiàn)高效可靠的版本管理。
文檔編號H04W24/00GK1980446SQ20051012631
公開日2007年6月13日 申請日期2005年12月6日 優(yōu)先權日2005年12月6日
發(fā)明者周巍, 雷大力 申請人:中興通訊股份有限公司