System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本專利技術屬于航天嵌入式設備的操作系統引導,特別是涉及一種應用于宇航嵌入式設備的高可靠啟動方法。
技術介紹
1、儀器儀表類設備是航天員獲取參數、下發指令的重要人機交互通道,隨著近些年來人機工效學對cpu算力要求的不斷提高和交互方式的復雜化,宇航設備中逐漸出現了采用linux操作系統管理cpu資源以及復雜業務邏輯的方案。該種方案的出現屏蔽了不同硬件設備之間的差異,有效降低設計師的工作強度,大大加快軟件設計開發流程。
2、然而不同于一般直接引導操作系統的方式,linux操作系統的引導啟動至少需要bootloader、linux鏡像、設備樹、文件系統四類文件。這些文件由于體積限制,需要保存在nor?flash和nand?flash等大容量器件中,由于flash存儲器在空間應用中容易受到空間輻射帶來的單粒子翻轉效應,會導致存儲的數據出現變動。由于四類文件缺一不可,一旦任意一類文件的關鍵位置發生翻轉,都將導致操作系統無法正常運行,致使設備功能癱瘓。因此,一套具有較高容錯性和可靠性的linux啟動方法便顯得十分重要。
技術實現思路
1、有鑒于此,本專利技術的目的是提供一種應用于宇航嵌入式設備的高可靠啟動方法,降低存儲器件nor?flash和nand?flash出現的單粒子翻轉而導致linux操作系統組件損壞、無法正常啟動的風險,保證宇航設備操作系統的可靠啟動,以較高性價比的方式提高設備的容錯性和穩定性。
2、實現本專利技術的技術方案如下:
3、一種應用于宇航
4、預先在設備的nor?flash中存放三份boot0、三份uboot、三份內核鏡像、三份dtb以及三份ramfs;在nand?flash中存放三份rootfs、三份應用軟件以及三份用戶數據;在norflash中存放上述所有文件的md5三份;
5、啟動過程為:通過三取二的方式選擇正確的操作系統組件啟動到ramfs;在ramfs中對nand?flash及其存放的rootfs和應用數據進行校驗,校驗成功會切換至rootfs,否則會進入修復模式;在操作系統中會定期對組件進行巡檢,并在修復模式中對錯誤文件進行替換。
6、進一步地,本專利技術所述啟動過程為:
7、步驟s1,設備在上電或復位后,cpu從nor?flash中讀取三份boot0至cpu內部存儲空間,通過三取二互相比對的方式選取正確的boot0初始化ddr內存;
8、步驟s2,boot0將三份uboot從nor?flash中讀取到ddr的三個地址,通過三取二互相比對的方式選取正確的uboot并拷貝至ddr預設的位置,程序跳轉至ddr中執行,完成硬件初始化的工作;
9、步驟s3,uboot將三份kernel、三份dtb、三份ramfs讀取到ddr中,通過三取二比對和校驗md5的方式選取正確的kernel、dtb、ramfs執行,進入到ramfs中;
10、步驟s4,在ramfs中對nand?flash進行檢查,查詢壞塊狀況并嘗試掛載;若出現新增壞塊或nand無法正確掛載,則需要對nand進行重載;若重載失敗執行步驟s7進入修復模式;
11、步驟s5,在ramfs中對rootfs進行嘗試掛載,并對rootfs及存放的各類業務代碼的md5值進行校驗,掛載成功且校驗無誤后將文件系統由ramfs切換至rootfs,執行init程序啟動各類服務以及應用程序腳本;若全部失敗則執行步驟s7進入修復模式;
12、步驟s6,系統完成啟動并執行各類業務代碼后,操作系統后臺定期進行巡檢,對flash中存放的所有文件進行檢查,依據三取二以及文件md5校驗結果,對可糾正的錯誤文件進行替換;若出現三份文件均不一致的不可糾正錯誤則進入修復模式;
13、步驟s7,在修復模式下,操作系統發送文件受損請求并等待通過tte、以太網等方式傳輸的文件,確認文件無誤后將進入到ramfs環境中對相關文件進行部署和替換并同步md5值,在同步完成并校驗無誤后重新啟動系統。
14、進一步地,本專利技術所述nand重載包括:對nand?flash壞塊所在分區取消掛載,格式化相應分區,對格式化后的分區重新掛載,對于因為格式化丟失的文件若存有備份且通過md5校驗則寫入備份文件。
15、進一步地,本專利技術所述的啟動方案在ramfs中先對rootfs、nand?flash以及各類業務代碼進行校驗,無誤后由ramfs切換至rootfs并繼續執行啟動過程。
16、進一步地,本專利技術所述的啟動方案在系統正常啟動后會在后臺定期對存儲在flash的所有文件進行校驗,通過三取二校驗和md5校驗兩種結果綜合判斷,對錯誤的文件進行替換。
17、進一步地,本專利技術所述的啟動方案步驟s1中所述的方法可具體化為:cpu從norflash中先讀取一份boot0至cpu的內部存儲空間,再通過自舉的方式讀取另外兩份boot0至cpu的內部存儲空間。
18、進一步地,本專利技術所述的啟動方案存在修復模式,在三份備份文件均出現錯誤后可以通過tte或以太網傳輸新文件以進行部署和修復。
19、進一步地,本專利技術所述的啟動方案使用的cpu架構為armv7。
20、進一步地,本專利技術所述nor?flash為32mb且具有抗輻照設計。
21、進一步地,本專利技術所述nand?flash為4gb且具有抗輻照設計。
22、有益效果:
23、第一,本專利技術所提出的方法可以在啟動過程中規避發生錯誤的文件,使用三取二互相比對的方式選取正確的linux操作系統組件執行,并在系統運行過程中檢測出發生錯誤的文件并予以糾正,降低系統啟動失敗的風險。
24、第二,本專利技術所提出的方法考慮了宇航環境中容易出現的單粒子翻轉效應,針對nor?flash和nand?flash抗輻照能力和存儲能力方面的特點,按照重要性存放了不同等級的文件,使用了不同級別的校驗方法,在可靠性更高的nor?flash中存儲更為重要的一級引導文件boot0、uboot和kernel,在大容量存儲器中nand?flash中存儲重要性較低的rootfs、應用程序、業務代碼以及用戶數據。提高了設備的穩定性和可靠性。
25、第三,本專利技術所提出的方法可以在三份備份文件均出現錯誤后通過tte、以太網等方式進行更新。
本文檔來自技高網...【技術保護點】
1.一種應用于宇航嵌入式設備的高可靠啟動方法,其特征在于,所述應用于宇航嵌入式設備包括DDR、NOR?FLASH、NAND?FLASH以及支持Linux操作系統組件的CPU,所述Linux操作系統組件包括boot0、uboot、Linux內核鏡像kernel、設備樹dtb以及文件系統,所述文件系統包括根文件系統rootfs和內存文件系統ramfs;
2.根據權利要求1所述應用于宇航嵌入式設備的高可靠啟動方法,其特征在于,所述啟動過程為:
3.根據權利要求2所述應用于宇航嵌入式設備的高可靠啟動方法,其特征在于,所述NAND重載包括:對NAND?FLASH壞塊所在分區取消掛載,格式化相應分區,對格式化后的分區重新掛載,對于因為格式化丟失的文件若存有備份且通過md5校驗則寫入備份文件。
4.根據權利要求2所述應用于宇航嵌入式設備的高可靠啟動方法,其特征在于,在ramfs中先對rootfs、NAND?FLASH以及各類業務代碼進行校驗,無誤后由ramfs切換至rootfs并繼續執行啟動過程。
5.根據權利要求2所述應用于宇航嵌入式設備的高可
6.根據權利要求2所述應用于宇航嵌入式設備的高可靠啟動方法,其特征在于,步驟S1中所述的方法具體為:CPU從NOR?FLASH中先讀取一份boot0至CPU的內部存儲空間,再通過自舉的方式讀取另外兩份boot0至CPU的內部存儲空間。
7.根據權利要求2所述應用于宇航嵌入式設備的高可靠啟動方法,其特征在于,在修復模式,在三份備份文件均出現錯誤后可以通過TTE或以太網傳輸新文件以進行部署和修復。
8.根據權利要求2所述應用于宇航嵌入式設備的高可靠啟動方法,其特征在于,所述的啟動方案使用的CPU架構為ARMV7。
9.根據權利要求2所述應用于宇航嵌入式設備的高可靠啟動方法,其特征在于,所述NOR?FLASH為32MB且具有抗輻照設計。
10.根據權利要求2所述應用于宇航嵌入式設備的高可靠啟動方法,其特征在于,所述NAND?FLASH為4GB且具有抗輻照設計。
...【技術特征摘要】
1.一種應用于宇航嵌入式設備的高可靠啟動方法,其特征在于,所述應用于宇航嵌入式設備包括ddr、nor?flash、nand?flash以及支持linux操作系統組件的cpu,所述linux操作系統組件包括boot0、uboot、linux內核鏡像kernel、設備樹dtb以及文件系統,所述文件系統包括根文件系統rootfs和內存文件系統ramfs;
2.根據權利要求1所述應用于宇航嵌入式設備的高可靠啟動方法,其特征在于,所述啟動過程為:
3.根據權利要求2所述應用于宇航嵌入式設備的高可靠啟動方法,其特征在于,所述nand重載包括:對nand?flash壞塊所在分區取消掛載,格式化相應分區,對格式化后的分區重新掛載,對于因為格式化丟失的文件若存有備份且通過md5校驗則寫入備份文件。
4.根據權利要求2所述應用于宇航嵌入式設備的高可靠啟動方法,其特征在于,在ramfs中先對rootfs、nand?flash以及各類業務代碼進行校驗,無誤后由ramfs切換至rootfs并繼續執行啟動過程。
5.根據權利要求2所述應用于宇航嵌入式設備...
【專利技術屬性】
技術研發人員:劉成源,邱新安,馬動濤,閆春杰,雷志廣,張天湘,張東璞,張強,馮雨,許珩,寧銀,
申請(專利權)人:蘭州空間技術物理研究所,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。