一種基于事件的星載軟件運(yùn)行狀態(tài)監(jiān)控方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及星載嵌入式軟件領(lǐng)域,特別是一種基于事件的星載軟件運(yùn)行狀態(tài)監(jiān)控方法。
【背景技術(shù)】
[0002]衛(wèi)星在軌運(yùn)行過程中,需要實(shí)時(shí)監(jiān)測(cè)其運(yùn)行狀態(tài)和情況,這些狀態(tài)信息一般通過遙測(cè)信道下傳到地面,便于對(duì)其觀測(cè)和監(jiān)控。而衛(wèi)星軟硬件資源、遙測(cè)下行資源均有限,如何合理使用有限資源,達(dá)到衛(wèi)星軟件運(yùn)行狀態(tài)監(jiān)控,始終是設(shè)計(jì)過程中需考慮的關(guān)鍵因素。
[0003]在星載軟件運(yùn)行狀態(tài)監(jiān)控方面,常規(guī)方法采用遙測(cè)下行軟件變量方式實(shí)現(xiàn),存在的主要問題是:一方面,對(duì)每種狀態(tài)的監(jiān)控均設(shè)置軟件標(biāo)志,周期性的存儲(chǔ)和下傳,浪費(fèi)存儲(chǔ)空間和遙測(cè)下行通道;另一方面,記錄所有標(biāo)志、事件信息過多,可能造成存儲(chǔ)空間溢出情況。
【發(fā)明內(nèi)容】
[0004]本發(fā)明解決的技術(shù)問題是:克服現(xiàn)有技術(shù)的不足,提供了一種基于事件的星載軟件運(yùn)行狀態(tài)監(jiān)控方法,能夠利用星上有限的存儲(chǔ)空間,通過事件觸發(fā)和記錄方式,完成對(duì)軟件運(yùn)行狀態(tài)監(jiān)控,確保事件不遺漏且及時(shí)通過遙測(cè)下傳到地面。
[0005]本發(fā)明的技術(shù)解決方案是:一種基于事件的星載軟件運(yùn)行狀態(tài)監(jiān)控方法,包括如下步驟:
[0006](I)根據(jù)星載軟件關(guān)鍵事件信息長度、關(guān)鍵事件信息數(shù)目確定關(guān)鍵事件信息存儲(chǔ)空間值后送至衛(wèi)星,并控制衛(wèi)星根據(jù)關(guān)鍵事件信息存儲(chǔ)空間值建立關(guān)鍵事件信息存儲(chǔ)空間;所述關(guān)鍵事件信息包括地面需觀測(cè)的異常敏感器采集數(shù)據(jù)、異常程序分支、總線傳輸錯(cuò)誤信息;
[0007](2)對(duì)星載軟件關(guān)鍵事件信息進(jìn)行編號(hào),并通過編號(hào)建立各個(gè)關(guān)鍵事件信息在關(guān)鍵事件信息存儲(chǔ)空間的存儲(chǔ)位置關(guān)系,然后建立每個(gè)關(guān)鍵事件信息在軟件中的觸發(fā)點(diǎn);
[0008](3)在星載軟件運(yùn)行過程中經(jīng)過觸發(fā)點(diǎn)觸發(fā)對(duì)應(yīng)的關(guān)鍵事件信息時(shí),將該觸發(fā)點(diǎn)對(duì)應(yīng)的關(guān)鍵事件信息加入到關(guān)鍵事件信息存儲(chǔ)空間中,并根據(jù)關(guān)鍵事件信息的首次觸發(fā)時(shí)間計(jì)算關(guān)鍵事件信息存儲(chǔ)空間中關(guān)鍵事件信息的存儲(chǔ)時(shí)間,并在星載軟件運(yùn)行過程中,判斷關(guān)鍵事件信息存儲(chǔ)空間中關(guān)鍵事件信息的數(shù)目及關(guān)鍵事件信息存儲(chǔ)時(shí)間;
[0009](4)如果關(guān)鍵事件信息存儲(chǔ)空間中關(guān)鍵事件信息的數(shù)目小于關(guān)鍵事件信息的數(shù)目閾值,則依次判斷各個(gè)關(guān)鍵事件信息存儲(chǔ)時(shí)間,當(dāng)關(guān)鍵事件信息存儲(chǔ)時(shí)間大于等于關(guān)鍵事件信息存儲(chǔ)時(shí)間閾值時(shí),將該關(guān)鍵事件信息進(jìn)行下傳,當(dāng)關(guān)鍵事件信息存儲(chǔ)時(shí)間小于關(guān)鍵事件信息存儲(chǔ)時(shí)間閾值時(shí),不進(jìn)行操作;如果關(guān)鍵事件信息存儲(chǔ)空間中關(guān)鍵事件信息的數(shù)目大于等于關(guān)鍵事件信息的數(shù)目閾值,則將此時(shí)關(guān)鍵事件信息存儲(chǔ)空間中關(guān)鍵事件信息進(jìn)行下傳;
[0010](5)關(guān)鍵事件信息下傳后,在關(guān)鍵事件信息存儲(chǔ)空間中清除該關(guān)鍵事件信息,清空該關(guān)鍵事件信息的首次觸發(fā)事件和在關(guān)鍵事件信息存儲(chǔ)空間中的存儲(chǔ)時(shí)間,并重復(fù)步驟
(2)-步驟(4)直至對(duì)星載軟件運(yùn)行狀態(tài)監(jiān)控完成。
[0011]所述的建立每個(gè)關(guān)鍵事件信息在軟件中的觸發(fā)點(diǎn)為在軟件的關(guān)鍵事件信息處添加的軟件接口,其中該軟件接口可以在第一次運(yùn)行對(duì)應(yīng)關(guān)鍵事件信息時(shí),將對(duì)應(yīng)關(guān)鍵事件信息添加到關(guān)鍵事件信息存儲(chǔ)空間中。
[0012]所述的關(guān)鍵事件信息的數(shù)目閾值為700,關(guān)鍵事件信息存儲(chǔ)時(shí)間閾值為5s。
[0013]本發(fā)明與現(xiàn)有技術(shù)相比的優(yōu)點(diǎn)在于:
[0014](I)本發(fā)明與現(xiàn)有技術(shù)相比,在事件信息被觸發(fā)時(shí)才進(jìn)行記錄和下傳,提高存儲(chǔ)空間和遙測(cè)下行通道使用效率;
[0015](2)本發(fā)明與現(xiàn)有技術(shù)相比,對(duì)同一事件信息,無論是一次還是多次觸發(fā),僅占用該事件對(duì)應(yīng)的相同存儲(chǔ)空間,有效節(jié)省了事件信息存儲(chǔ)空間,采用有限存儲(chǔ)空間能夠存儲(chǔ)所有事件?目息;
[0016](3)本發(fā)明在到達(dá)關(guān)鍵事件信息存儲(chǔ)時(shí)間上限或關(guān)鍵事件信息存儲(chǔ)數(shù)目上限時(shí),對(duì)關(guān)鍵事件信息進(jìn)行下傳,可有效均衡關(guān)鍵事件信息下傳的時(shí)間要求和數(shù)目要求,提高遙測(cè)下行通道利用率。
【附圖說明】
[0017]圖1為本發(fā)明方法的流程示意圖;
【具體實(shí)施方式】
[0018]下面結(jié)合附圖對(duì)本發(fā)明的【具體實(shí)施方式】進(jìn)行進(jìn)一步的詳細(xì)描述。
[0019]如圖1所示,本發(fā)明涉及一種基于事件的星載軟件運(yùn)行狀態(tài)監(jiān)控方法,能夠完成關(guān)鍵事件信息記錄,并及時(shí)下行到地面,具體步驟如下:
[0020]步驟一:預(yù)先建立有限的關(guān)鍵事件信息存儲(chǔ)空間,關(guān)鍵事件信息存儲(chǔ)空間為預(yù)先分配內(nèi)存空間,根據(jù)具體應(yīng)用場(chǎng)景確定其存儲(chǔ)空間大小,用于存儲(chǔ)所有關(guān)鍵事件信息,即地面根據(jù)實(shí)際應(yīng)用環(huán)境預(yù)先計(jì)算關(guān)鍵事件信息存儲(chǔ)空間大小,并控制衛(wèi)星建立對(duì)應(yīng)大小關(guān)鍵事件信息存儲(chǔ)空間。所述關(guān)鍵事件信息的存儲(chǔ)空間Nspace = Ndis*LenInfo,其中LenInfo表示每個(gè)關(guān)鍵事件信息長度(單位:字節(jié)),關(guān)鍵事件信息內(nèi)容可包含事件觸發(fā)時(shí)候時(shí)間、變量參數(shù)等信息,Ndis為分配的可存儲(chǔ)事件總數(shù),Nspace為總存儲(chǔ)空間大小(單位:字節(jié))O
[0021]步驟二:建立軟件運(yùn)行過程中關(guān)鍵事件信息編號(hào),并確保每個(gè)關(guān)鍵事件信息編號(hào)的唯一性。同時(shí),并通過每個(gè)關(guān)鍵事件信息編號(hào),建立與事件存儲(chǔ)空間一一對(duì)應(yīng)的查詢關(guān)系。所述關(guān)鍵事件信息包括地面需觀測(cè)的異常敏感器采集數(shù)據(jù)、異常程序分支、總線傳輸錯(cuò)誤信息,其中,步驟一中所述事件存儲(chǔ)空間用于存儲(chǔ)所述關(guān)鍵事件信息。
[0022]例如關(guān)鍵事件信息總數(shù)為Nmax (Nmax< = Ndis),為便于關(guān)鍵事件信息與存儲(chǔ)空間建立一一對(duì)應(yīng)關(guān)系,令事件編號(hào)(id)取值為[0,Nmax-1]。
[0023]步驟三:建立每個(gè)關(guān)鍵事件信息在軟件中的觸發(fā)點(diǎn),所述觸發(fā)點(diǎn)為軟件運(yùn)行添加關(guān)鍵事件信息的軟件接口,即通過接口函數(shù)SET_EVENT(id),將觸發(fā)時(shí)刻的關(guān)鍵事件信息(id)添加到存儲(chǔ)空間中。
[0024]步驟四: