[發(fā)明專利]獲取板卡的類型ID的方法和軟件版本升級的方法在審
申請?zhí)枺?/td> | 201410367753.6 | 申請日: | 2014-07-30 |
公開(公告)號: | CN104199678A | 公開(公告)日: | 2014-12-10 |
發(fā)明(設(shè)計)人: | 鐘捷群;劉馳;胡哲 | 申請(專利權(quán))人: | 上海斐訊數(shù)據(jù)通信技術(shù)有限公司 |
主分類號: | G06F9/445 | 分類號: | G06F9/445 |
代理公司: | 無 | 代理人: | 無 |
地址: | 201616 *** | 國省代碼: | 上海;31 |
權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
摘要: | |||
搜索關(guān)鍵詞: | 獲取 板卡 類型 id 方法 軟件 版本 升級 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及一種軟件升級的方法,尤其是軟件升級的方法中需要獲取板卡的類型ID的環(huán)節(jié)。
背景技術(shù)
框式交換機設(shè)備包含多塊插入式的板卡,每塊板卡均有唯一的類型ID,在板上運行的軟件也有唯一的版本號。
為了解決BUG或增加新功能,軟件在產(chǎn)品生命周期內(nèi)會陸續(xù)發(fā)布新版本的軟件,后發(fā)布的版本號數(shù)值會比先發(fā)布的版本號數(shù)值大。本文提到的升級,除了從低版本升級到高版本,也包括從高版本降級到低版本。
在軟件版本升級過程,需要識別待更新軟件是否適用于指定板卡。通常的方法是判斷待更新軟件中包含其所支持板卡的類型ID與指定板卡的類型ID是否相同,相同則說明待更新軟件適用于指定板卡;反之,則不適用于。這里提到的升級,除了從低版本升級到高版本,也包括從高版本降級到低版本。
然而,在軟件升級過程,獲取指定板卡的類型ID需要在源代碼中調(diào)用驅(qū)動程序以先獲取板卡的硬件類型,根據(jù)板卡的硬件類型和預(yù)先設(shè)定的映射關(guān)系產(chǎn)生出板卡的類型ID。因而,獲取指定板卡的類型ID需依賴硬件提供的信息,當(dāng)硬件變更硬件類型信息時,得不到正確的板卡類型ID,要軟件升級模塊同步修改映射關(guān)系才能產(chǎn)生正確的板卡類型ID。
板卡上最先配置的軟件有Bootloader(引導(dǎo)安裝軟件)和系統(tǒng)鏡像,Bootloade負責(zé)加載和引導(dǎo)系統(tǒng)鏡像,在產(chǎn)品發(fā)布后,Bootloader不需要更新。因此,通常不會給用戶提供bootloader;而是在生產(chǎn)時把bootloader編譯后再燒寫到Boot?flash(boot閃存)中。如圖1所示,為bootloader編譯后燒進256K的Boot?flash后Boot?flash的空間結(jié)構(gòu)圖,內(nèi)部包括bootloader編譯后的100K的原始文件bootloader.bin和未使用Boot?flash空間。
發(fā)明內(nèi)容
本發(fā)明需解決的技術(shù)問題是提供一種方便、簡單、不再依賴硬件提供信息的獲取板卡的類型ID的方法。
為解決上述的技術(shù)問題,本發(fā)明設(shè)計了一種獲取板卡的類型ID的方法,其包括以下步驟:步驟1:將Bootloader編譯后生成原始文件,再將原始文件進行擴展生成擴展文件;步驟2:將所述擴展文件最末尾的四個字節(jié)用于保存板卡的類型ID;步驟3:將保存有板卡的類型ID的擴展文件燒寫進板卡的BootFlash里;步驟4:自板卡的BootFlash里讀取出板卡的類型ID。
作為本發(fā)明進一步改進,所述擴展文件的大小與BootFlash的空間大小相等。
作為本發(fā)明進一步改進,擴展文件包括原始文件、中間預(yù)留空間和最末尾的四個字節(jié)。
作為本發(fā)明進一步改進,所述中間預(yù)留空間全配置為1。
作為本發(fā)明進一步改進,所述自板卡的BootFlash里讀取出板卡的類型ID的步驟包括:自板卡的BootFlash結(jié)束地址減四個字節(jié)處讀取出板卡的類型ID。
本發(fā)明還提供一種板卡的BootFlash的空間結(jié)構(gòu),所述BootFlash的空間包括Bootloader編譯后生成的原始文件、中間預(yù)留空間和最末尾的四個字節(jié),所述最末尾的四個字節(jié)保存板卡的類型ID。所述中間預(yù)留空間全配置為1。
本發(fā)明還提供一種軟件版本升級的方法,應(yīng)用于包括如權(quán)利要求6或7所述的BootFlash的空間結(jié)構(gòu)的板卡,其包括以下步驟:
步驟1:自板卡的BootFlash里讀取出板卡的類型ID;
步驟2:比較軟件所支持的板卡的類型ID與步驟1中讀取出的類型ID是否相同,如果相同,說明軟件適用于在該板卡上升級,如果不相同,則不適合于在該板卡上升級。
本發(fā)明獲取板卡的類型ID的方法不再依賴硬件提供的信息,而是在板卡的BootFlash里直接讀取出板卡的類型ID,方便,簡單?;谠诎蹇ǖ腂ootFlash里可直接讀取出板卡的類型ID,還可用于判斷軟件是否適用于在板卡上進行升級,為軟件升級的過程提供了便利。
附圖說明
圖1是現(xiàn)有技術(shù)板卡的Boot?flash的空間結(jié)構(gòu)圖;
圖2是本發(fā)明板卡的Boot?flash的空間結(jié)構(gòu)圖。
具體實施方式
為了使本領(lǐng)域相關(guān)技術(shù)人員更好地理解本發(fā)明的技術(shù)方案,下面將結(jié)合附圖和實施方式,對本發(fā)明實施方式中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施方式僅僅是本發(fā)明一部分實施方式,而不是全部的實施方式。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于上海斐訊數(shù)據(jù)通信技術(shù)有限公司;,未經(jīng)上海斐訊數(shù)據(jù)通信技術(shù)有限公司;許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410367753.6/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。