欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種基于SPARC在軌NorFLASH壞塊監(jiān)控程序處理方法

文檔序號(hào):6538496閱讀:274來源:國知局
一種基于SPARC在軌NorFLASH壞塊監(jiān)控程序處理方法
【專利摘要】本發(fā)明公開了一種基于SPARC在軌NorFLASH壞塊監(jiān)控程序處理方法,其特征在于:所述監(jiān)控程序處理方法是基于SPARC的在軌NorFLASH壞塊監(jiān)控程序處理方法,將程序二進(jìn)制序映像存儲(chǔ)于NorFLASH中冗余三備份,分別位于頭部、中間和尾部三個(gè)地方,頭部的程序二進(jìn)制映像是系統(tǒng)上電后開始啟動(dòng)運(yùn)行的程序。本發(fā)明用程序運(yùn)行到壞塊處會(huì)產(chǎn)生硬件錯(cuò)誤中斷,根據(jù)SPARC平臺(tái)特有的性質(zhì),設(shè)計(jì)巧妙的中斷服務(wù)程序,充分利用程序存儲(chǔ)器空余的存儲(chǔ)空間,來延長硬件系統(tǒng)的使用壽命。
【專利說明】—種基于SPARC在軌NorFLASH壞塊監(jiān)控程序處理方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于嵌入式軟件監(jiān)控程序領(lǐng)域,具體地說,涉及一種基于SPARC在軌NorFLASH壞塊監(jiān)控程序處理方法。
【背景技術(shù)】
[0002]SPARC是一種開源的RISC處理器架構(gòu)技術(shù),在國內(nèi)廣泛的應(yīng)用在航天領(lǐng)域。同時(shí),隨著航天任務(wù)的復(fù)雜化,嵌入式實(shí)時(shí)操作系統(tǒng)在航天領(lǐng)域的應(yīng)用也越來越廣泛。在嵌入式實(shí)時(shí)操作系統(tǒng)運(yùn)行過程中,有兩條最重要且執(zhí)行最頻繁的內(nèi)核路徑:任務(wù)切換路徑和中斷處理路徑。在這兩條路徑上有大量對(duì)全局變量及全局?jǐn)?shù)據(jù)結(jié)構(gòu)進(jìn)行讀寫的操作,為保證全局?jǐn)?shù)據(jù)的一致性,現(xiàn)有的嵌入式實(shí)時(shí)操作系統(tǒng)通常采用關(guān)中斷的方法確保多個(gè)任務(wù)對(duì)共享資源的互斥訪問。
[0003]星務(wù)系統(tǒng)長期運(yùn)行于太空中,由于太空中的環(huán)境異常復(fù)雜,且非常得惡劣,會(huì)導(dǎo)致程序存儲(chǔ)器出現(xiàn)壞塊,通常的做法是采用雙機(jī)冗余的辦法,當(dāng)一個(gè)機(jī)出現(xiàn)壞塊時(shí),系統(tǒng)會(huì)自動(dòng)切換到另外備機(jī)運(yùn)行。

【發(fā)明內(nèi)容】

[0004]本發(fā)明要解決的技術(shù)問題是克服上述缺陷,提供一種基于SPARC在軌NorFLASH壞塊監(jiān)控程序處理方法,利用程序運(yùn)行到壞塊處會(huì)產(chǎn)生硬件錯(cuò)誤中斷,根據(jù)SPARC平臺(tái)特有的性質(zhì),設(shè)計(jì)巧妙的中斷服務(wù)程序,充分利用程序存儲(chǔ)器空余的存儲(chǔ)空間,來延長硬件系統(tǒng)的使用壽命。
[0005]為解決上述問題,本發(fā)明所采用的技術(shù)方案是:
[0006]一種基于SPARC在軌NotFLASH壞塊監(jiān)控程序處理方法,其特征在于:所述監(jiān)控程序處理方法是基于SPARC的在軌NorFLASH壞塊監(jiān)控程序處理方法,將程序二進(jìn)制序映像存儲(chǔ)于NorFLASH中冗余三備份,分別位于頭部、中間和尾部三個(gè)地方,頭部的程序二進(jìn)制映像是系統(tǒng)上電后開始啟動(dòng)運(yùn)行的程序。
[0007]作為一種改進(jìn),監(jiān)控程序處理方法的工作步驟如下:當(dāng)硬件工作產(chǎn)生中斷陷阱時(shí),硬件會(huì)自動(dòng)將當(dāng)前發(fā)生硬件中的PC和nPC值存入到新窗口的r [17]和r [18],然后跳轉(zhuǎn)到相應(yīng)的中斷服務(wù)程序運(yùn)行;當(dāng)頭部程序二進(jìn)制映像出現(xiàn)壞塊,CPU運(yùn)行到此處時(shí),將發(fā)生硬件中斷,在中斷服務(wù)程序中檢測(cè)當(dāng)前窗口 r[17]值;如果位置是頭部的程序二進(jìn)制映像,則將中間的程序二進(jìn)制映像相應(yīng)的地址賦值給當(dāng)前窗口的r[17]和r[18];如果位置是中間的程序二進(jìn)制映像,則將尾部程序二進(jìn)制映像相應(yīng)的地址賦值給當(dāng)前窗口的r[17]和r[18],中斷退出返回;如果位置是尾部程序二進(jìn)制映像,則關(guān)閉主機(jī),啟用備機(jī)運(yùn)行。
[0008]作為一種改進(jìn),所述程序中賦值過程中存在指令跳轉(zhuǎn),指令跳轉(zhuǎn)分為絕對(duì)跳轉(zhuǎn)和相對(duì)跳轉(zhuǎn),相對(duì)跳轉(zhuǎn)是基于當(dāng)前PC值的跳轉(zhuǎn),與程序位置無關(guān);絕對(duì)跳轉(zhuǎn)是絕對(duì)的物理地址;當(dāng)程序運(yùn)行在中部程序二進(jìn)制映像時(shí),如遇到絕對(duì)跳轉(zhuǎn)指令,則程序會(huì)跳轉(zhuǎn)到頭部程序二進(jìn)制映像相應(yīng)的絕對(duì)地址運(yùn)行,如果此處沒有壞塊,則程序繼續(xù)運(yùn)行;如果此處為壞塊,則會(huì)發(fā)生相應(yīng)的硬件中斷,然后跳轉(zhuǎn)到中部程序二進(jìn)制映像相應(yīng)的位置執(zhí)行,以此類推。
[0009]由于采用了上述技術(shù)方案,與現(xiàn)有技術(shù)相比,本發(fā)明是基于SPARC的在軌NorFLASH壞塊監(jiān)控程序處理方法,將程序二進(jìn)制序映像存儲(chǔ)于NorFLASH中冗余三備份,分別位于頭部,中間,尾部三個(gè)地方,頭部的程序二進(jìn)制映像是系統(tǒng)上電后開始啟動(dòng)運(yùn)行的程序。本發(fā)明用程序運(yùn)行到壞塊處會(huì)產(chǎn)生硬件錯(cuò)誤中斷,根據(jù)SPARC平臺(tái)特有的性質(zhì),設(shè)計(jì)巧妙的中斷服務(wù)程序,充分利用程序存儲(chǔ)器空余的存儲(chǔ)空間,來延長硬件系統(tǒng)的使用壽命。
【專利附圖】

【附圖說明】
[0010]圖1為本發(fā)明一種實(shí)施例的NorFLASH程序存儲(chǔ)器二進(jìn)制映像分布圖;
[0011]圖2為本發(fā)明一種實(shí)施例的壞塊中斷處理程序流程圖;
[0012]圖3為本發(fā)明一種實(shí)施例的程序運(yùn)行邏輯示意圖。
【具體實(shí)施方式】
[0013]實(shí)施例:
[0014]如圖1所示,一種基于SPARC在軌NotFLASH壞塊監(jiān)控程序處理方法,所述監(jiān)控程序處理方法是基于SPARC的在軌NorFLASH壞塊監(jiān)控程序處理方法,將程序二進(jìn)制序映像存儲(chǔ)于NorFLASH中冗余三備份,分別位于頭部、中間和尾部三個(gè)地方,頭部的程序二進(jìn)制映像是系統(tǒng)上電后開始啟動(dòng)運(yùn)行的程序。
[0015]在本實(shí)施例中,如圖2所示,監(jiān)控程序處理方法的工作步驟如下:當(dāng)硬件工作產(chǎn)生中斷陷阱時(shí),硬件會(huì)自動(dòng)將當(dāng)前發(fā)生硬件中的PC和nPC值存入到新窗口的r [ 17]和r [ 18],然后跳轉(zhuǎn)到相應(yīng)的中斷服務(wù)程序運(yùn)行;當(dāng)頭部程序二進(jìn)制映像出現(xiàn)壞塊,CPU運(yùn)行到此處時(shí),將發(fā)生硬件中斷,在中斷服務(wù)程序中檢測(cè)當(dāng)前窗口 r[17]值;如果位置是頭部的程序二進(jìn)制映像,則將中間的程序二進(jìn)制映像相應(yīng)的地址賦值給當(dāng)前窗口的r[17]和r[18];如果位置是中間的程序二進(jìn)制映像,則將尾部程序二進(jìn)制映像相應(yīng)的地址賦值給當(dāng)前窗口的r[17]和r[18],中斷退出返回;如果位置是尾部程序二進(jìn)制映像,則關(guān)閉主機(jī),啟用備機(jī)運(yùn)行。
[0016]如圖3所示,所述程序中賦值過程中存在指令跳轉(zhuǎn),指令跳轉(zhuǎn)分為絕對(duì)跳轉(zhuǎn)和相對(duì)跳轉(zhuǎn),相對(duì)跳轉(zhuǎn)是基于當(dāng)前PC值的跳轉(zhuǎn),與程序位置無關(guān);絕對(duì)跳轉(zhuǎn)是絕對(duì)的物理地址;當(dāng)程序運(yùn)行在中部程序二進(jìn)制映像時(shí),如遇到絕對(duì)跳轉(zhuǎn)指令,則程序會(huì)跳轉(zhuǎn)到頭部程序二進(jìn)制映像相應(yīng)的絕對(duì)地址運(yùn)行,如果此處沒有壞塊,則程序繼續(xù)運(yùn)行;如果此處為壞塊,則會(huì)發(fā)生相應(yīng)的硬件中斷,然后跳轉(zhuǎn)到中部程序二進(jìn)制映像相應(yīng)的位置執(zhí)行,以此類推。
[0017]本發(fā)明是基于SPARC的在軌NorFLASH壞塊監(jiān)控程序處理方法,將程序二進(jìn)制序映像存儲(chǔ)于NorFLASH中冗余三備份,分別位于頭部,中間,尾部三個(gè)地方,頭部的程序二進(jìn)制映像是系統(tǒng)上電后開始啟動(dòng)運(yùn)行的程序。本發(fā)明用程序運(yùn)行到壞塊處會(huì)產(chǎn)生硬件錯(cuò)誤中斷,根據(jù)SPARC平臺(tái)特有的性質(zhì),設(shè)計(jì)巧妙的中斷服務(wù)程序,充分利用程序存儲(chǔ)器空余的存儲(chǔ)空間,來延長硬件系統(tǒng)的使用壽命。
[0018]以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1.一種基于SPARC在軌NorFLASH壞塊監(jiān)控程序處理方法,其特征在于:所述監(jiān)控程序處理方法是基于SPARC的在軌NorFLASH壞塊監(jiān)控程序處理方法,將程序二進(jìn)制序映像存儲(chǔ)于NorFLASH中冗余三備份,分別位于頭部、中間和尾部三個(gè)地方,頭部的程序二進(jìn)制映像是系統(tǒng)上電后開始啟動(dòng)運(yùn)行的程序。
2.根據(jù)權(quán)利要求1中所述的基于SPARC在軌NorFLASH壞塊監(jiān)控程序處理方法,其特征在于:監(jiān)控程序處理方法的工作步驟如下: 當(dāng)硬件工作產(chǎn)生中斷陷阱時(shí),硬件會(huì)自動(dòng)將當(dāng)前發(fā)生硬件中的PC和nPC值存入到新窗口的r[17]和r[18],然后跳轉(zhuǎn)到相應(yīng)的中斷服務(wù)程序運(yùn)行;當(dāng)頭部程序二進(jìn)制映像出現(xiàn)壞塊,CPU運(yùn)行到此處時(shí),將發(fā)生硬件中斷,在中斷服務(wù)程序中檢測(cè)當(dāng)前窗口 r[17]值;如果位置是頭部的程序二進(jìn)制映像,則將中間的程序二進(jìn)制映像相應(yīng)的地址賦值給當(dāng)前窗口的r[17]和r[18];如果位置是中間的程序二進(jìn)制映像,則將尾部程序二進(jìn)制映像相應(yīng)的地址賦值給當(dāng)前窗口的r[17]和r[18],中斷退出返回;如果位置是尾部程序二進(jìn)制映像,則關(guān)閉主機(jī),啟用備機(jī)運(yùn)行。
3.根據(jù)權(quán)利要求2中所述的基于SPARC在軌NorFLASH壞塊監(jiān)控程序處理方法,其特征在于:所述程序中賦值過程中存在指令跳轉(zhuǎn),指令跳轉(zhuǎn)分為絕對(duì)跳轉(zhuǎn)和相對(duì)跳轉(zhuǎn),相對(duì)跳轉(zhuǎn)是基于當(dāng)前PC值的跳轉(zhuǎn),與程序位置無關(guān);絕對(duì)跳轉(zhuǎn)是絕對(duì)的物理地址; 當(dāng)程序運(yùn)行在中部程序二進(jìn)制映像時(shí),如遇到絕對(duì)跳轉(zhuǎn)指令,則程序會(huì)跳轉(zhuǎn)到頭部程序二進(jìn)制映像相應(yīng)的絕對(duì)地址運(yùn)行,如果此處沒有壞塊,則程序繼續(xù)運(yùn)行;如果此處為壞塊,則會(huì)發(fā)生相應(yīng)的硬件中斷,然后跳轉(zhuǎn)到中部程序二進(jìn)制映像相應(yīng)的位置執(zhí)行,以此類推。
【文檔編號(hào)】G06F21/52GK103870746SQ201410060939
【公開日】2014年6月18日 申請(qǐng)日期:2014年2月21日 優(yōu)先權(quán)日:2014年2月21日
【發(fā)明者】趙英輝, 劉大鵬, 崔小磊, 許開維 申請(qǐng)人:北京神舟航天軟件技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
南充市| 玉田县| 塔河县| 兰州市| 鲜城| 闸北区| 象山县| 泰兴市| 新乐市| 丽水市| 洛宁县| 大竹县| 花垣县| 咸阳市| 谢通门县| 米泉市| 紫金县| 肇庆市| 县级市| 高平市| 定襄县| 库尔勒市| 大英县| 龙南县| 正镶白旗| 蓬溪县| 祁东县| 库尔勒市| 沙坪坝区| 丹凤县| 武平县| 兴山县| 镇坪县| 巴彦淖尔市| 通城县| 博罗县| 千阳县| 灵石县| 泰安市| 安塞县| 平远县|