[發(fā)明專(zhuān)利]一種用于微小衛(wèi)星系統(tǒng)的局部代碼更新方法及其系統(tǒng)有效
| 申請(qǐng)?zhí)枺?/td> | 201210362798.5 | 申請(qǐng)日: | 2012-09-26 |
| 公開(kāi)(公告)號(hào): | CN102880494A | 公開(kāi)(公告)日: | 2013-01-16 |
| 發(fā)明(設(shè)計(jì))人: | 李紅;楊國(guó)青;陳浩杰;程士慶;李坤;吳朝暉 | 申請(qǐng)(專(zhuān)利權(quán))人: | 浙江大學(xué) |
| 主分類(lèi)號(hào): | G06F9/445 | 分類(lèi)號(hào): | G06F9/445;G06F12/02 |
| 代理公司: | 杭州天勤知識(shí)產(chǎn)權(quán)代理有限公司 33224 | 代理人: | 胡紅娟 |
| 地址: | 310027 浙*** | 國(guó)省代碼: | 浙江;33 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 用于 微小 衛(wèi)星 系統(tǒng) 局部 代碼 更新 方法 及其 | ||
技術(shù)領(lǐng)域
本發(fā)明屬于計(jì)算機(jī)技術(shù)領(lǐng)域,具體涉及一種用于微小衛(wèi)星系統(tǒng)的局部代碼更新方法及其系統(tǒng)。
背景技術(shù)
由于外太空的惡劣環(huán)境,微小衛(wèi)星系統(tǒng)中的存儲(chǔ)器件有可能會(huì)受損壞,從而會(huì)導(dǎo)致部分程序無(wú)法正常運(yùn)行,這種情況下,如果不更新這些程序就有可能導(dǎo)致整個(gè)衛(wèi)星無(wú)法正常運(yùn)行,嚴(yán)重的可能導(dǎo)致整顆衛(wèi)星報(bào)廢。
軟件在軌更新是衛(wèi)星在軌運(yùn)行過(guò)程中,發(fā)現(xiàn)任務(wù)軟件錯(cuò)誤或漏洞后,以對(duì)其規(guī)避的軟件新版本替換原始版本的補(bǔ)救措施。故軟件在軌更新不僅是衛(wèi)星系統(tǒng)的客觀要求之一,也是微小衛(wèi)星綜合電子技術(shù)的必然演進(jìn)方向。
目前,國(guó)內(nèi)外很多衛(wèi)星型號(hào)的星載計(jì)算機(jī)軟件在軌更新的對(duì)象顆粒度較粗,如軟件整體或分系統(tǒng)軟件配置項(xiàng)。在目前的衛(wèi)星系統(tǒng)代碼的更新,需要借助于系統(tǒng)的bootloader程序重新燒寫(xiě)全部的系統(tǒng)映象,上電重新啟動(dòng)程序,從而完成一次代碼的更新。該做法的優(yōu)點(diǎn)是:首先,更新操作簡(jiǎn)單易行。這種做法不需要在原有任務(wù)軟件的基礎(chǔ)上引入復(fù)雜的動(dòng)態(tài)更新程序支持在軌更新;其次,更新的過(guò)程對(duì)系統(tǒng)的額外開(kāi)銷(xiāo)小。
雖然,這種方法實(shí)現(xiàn)簡(jiǎn)單,易于操作,但是這種方法有如下缺點(diǎn):
首先,更新速度慢,成功率低;每次進(jìn)行軟件在軌更新均須向星上注入軟件整體或整個(gè)配置項(xiàng)。尤其是在有效更新的代碼只占更新軟件或配置項(xiàng)的一小部分時(shí),但是仍需要更新全部的應(yīng)用程序或者配置項(xiàng),在星地鏈路通信速度低的,誤碼率較高的情況下,更新的速度慢,成功率低。
其次,浪費(fèi)星地間鏈路的資源;由于星地間通信的有效速度較低,星地間的通信資源有限,在有效更新代碼占更新軟件或配置項(xiàng)的比例極小時(shí),嚴(yán)重的浪費(fèi)和占用星地資源,影響到其他模塊對(duì)星地通信的使用。
再次,更新導(dǎo)致程序運(yùn)行的中斷;由于代碼更新借助于bootloader程序,需要通過(guò)重新燒寫(xiě)并再次上電重啟系統(tǒng),系統(tǒng)運(yùn)行不可避免的需要中斷。
發(fā)明內(nèi)容
針對(duì)現(xiàn)有技術(shù)所存在的上述技術(shù)缺陷,本發(fā)明提供了一種用于微小衛(wèi)星系統(tǒng)的局部代碼更新方法,在更新過(guò)程中能夠保證其余程序正常運(yùn)行,且更新速度快。
一種用于微小衛(wèi)星系統(tǒng)的局部代碼更新方法,包括如下過(guò)程:
(1)在微小衛(wèi)星系統(tǒng)中構(gòu)建模塊調(diào)用表,所述的模塊調(diào)用表存儲(chǔ)有每個(gè)模塊在系統(tǒng)內(nèi)存中的區(qū)域地址;
(2)獲取微小衛(wèi)星系統(tǒng)中故障模塊的ID,從本地找出與該ID對(duì)應(yīng)的模塊,并將該模塊的代碼編譯成可執(zhí)行文件;
(3)將所述的可執(zhí)行文件上傳至微小衛(wèi)星系統(tǒng)中;根據(jù)可執(zhí)行文件中的加載地址信息將可執(zhí)行文件加載至系統(tǒng)內(nèi)存中相應(yīng)的空閑區(qū)域;
(4)根據(jù)可執(zhí)行文件在內(nèi)存中的區(qū)域地址,更新模塊調(diào)用表中故障模塊的區(qū)域地址。
所述的步驟(2)中,將模塊的代碼編譯成可執(zhí)行文件的過(guò)程為:首先,在本地的系統(tǒng)源代碼工程目錄中的CMD文件內(nèi)新定義一塊內(nèi)存區(qū)域;然后,根據(jù)新定義內(nèi)存區(qū)域的地址,更新模塊的加載地址信息;最后,將更新后的模塊編譯成可執(zhí)行文件。
優(yōu)選地,所述的步驟(4)中,當(dāng)模塊調(diào)用表更新完成后,將所述的模塊調(diào)用表和可執(zhí)行文件保存至系統(tǒng)的Flash存儲(chǔ)器中;能夠保證微小衛(wèi)星系統(tǒng)意外重啟情況下,仍能執(zhí)行更新后的模塊。
一種用于微小衛(wèi)星系統(tǒng)的局部代碼更新系統(tǒng),包括:
調(diào)用表構(gòu)建單元,用于根據(jù)每個(gè)模塊在微小衛(wèi)星系統(tǒng)內(nèi)存中的區(qū)域地址,構(gòu)建模塊調(diào)用表;
接收單元,用于接收獲取微小衛(wèi)星系統(tǒng)中故障模塊的ID;
查找編譯單元,用于從本地找出與所述的ID對(duì)應(yīng)的模塊,并將該模塊的代碼編譯成可執(zhí)行文件;
上傳單元,用于將所述的可執(zhí)行文件上傳至微小衛(wèi)星系統(tǒng)中;
加載單元,用于根據(jù)可執(zhí)行文件中的加載地址信息將可執(zhí)行文件加載至微小衛(wèi)星系統(tǒng)內(nèi)存中相應(yīng)的空閑區(qū)域;
更新單元,用于根據(jù)可執(zhí)行文件在內(nèi)存中的區(qū)域地址,更新所述的模塊調(diào)用表中故障模塊的區(qū)域地址。
本發(fā)明通過(guò)構(gòu)建模塊調(diào)用表采用局部更新的方式,有效的解決了現(xiàn)有技術(shù)更新速度慢的問(wèn)題,由于大大減少了上傳文件的大小,故極大的提高了星地間鏈路資源的利用率,同時(shí)能夠保證其余程序正常運(yùn)行。
附圖說(shuō)明
圖1為微小衛(wèi)星系統(tǒng)的結(jié)構(gòu)示意圖。
圖2為模塊調(diào)用表與系統(tǒng)內(nèi)存區(qū)的映射示意圖。
圖3為模塊存儲(chǔ)表與內(nèi)存區(qū)以及存儲(chǔ)區(qū)的映射示意圖。
圖4為本發(fā)明更新方法的步驟流程圖。
具體實(shí)施方式
為了更為具體地描述本發(fā)明,下面結(jié)合附圖及具體實(shí)施方式對(duì)本發(fā)明的技術(shù)方案進(jìn)行詳細(xì)說(shuō)明。
該專(zhuān)利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專(zhuān)利權(quán)人授權(quán)。該專(zhuān)利全部權(quán)利屬于浙江大學(xué),未經(jīng)浙江大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買(mǎi)此專(zhuān)利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210362798.5/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專(zhuān)利網(wǎng)。
- 同類(lèi)專(zhuān)利
- 專(zhuān)利分類(lèi)
- 定位系統(tǒng)、信息提供裝置及終端裝置
- 衛(wèi)星接收信號(hào)調(diào)試方法、系統(tǒng)及設(shè)備
- 衛(wèi)星定位方法
- 一種捕獲衛(wèi)星組的方法和裝置
- 衛(wèi)星捕獲方法及裝置
- 基于分布式星群的數(shù)據(jù)傳輸方法和裝置
- 一種基于K-means++聚類(lèi)算法的北斗導(dǎo)航系統(tǒng)故障檢測(cè)方法及檢測(cè)系統(tǒng)
- 一種用于衛(wèi)星網(wǎng)絡(luò)的通信方法、裝置和設(shè)備
- 基于遺傳算法的成像衛(wèi)星調(diào)度方法和系統(tǒng)
- 成像衛(wèi)星的任務(wù)調(diào)度方法和系統(tǒng)





