【技術實現步驟摘要】
本專利技術屬于嵌入式設備
,特別涉及一種通用的嵌入式計算機軟件在線升級方法。
技術介紹
傳統的嵌入式計算機,由于硬件資源的限制(比如,程序存儲器容量小,運算速度慢,無外部通信接口或外部通信接口速度慢),在生產階段就把用戶程序固化到程序存儲器中,出廠后用戶程序是無法隨意更改的。如果在運行中程序出現問題,或者功能需要改進,那就只能返廠維修,或者現場拆機更換硬件板卡。隨著科技的不斷發展,嵌入式計算機中的硬件資源也越來越充裕,這就為嵌入式計算機實現更多功能提供了硬件保障。為了方便廠家對系統的維護、滿足用戶多變的需求,以及延長系統的生命周期等,嵌入式計算機應當具備在線升級的能力。目前,在LED顯示屏控制器所用的嵌入式計算機中普遍使用的升級方法是,直接把升級文件中的新版用戶程序寫入程序存儲器中,覆蓋掉之前的舊版用戶程序,然后重啟系統,直接使用程序存儲器中的新版用戶程序。這種升級方法將會導致以下問題:1.在線升級時,待升級的嵌入式計算機無法運行用戶程序,因此,嵌入式計算機將會失去響應。2.升級完成后,必須重啟待升級的嵌入式計算機,這將會影響整個嵌入式系統的正常運行。3.在線升級時,如果升級數據發生錯誤(比如,升級文件接收錯誤,升級文件寫入錯誤),這將會導致用戶分區的用戶程序錯誤。4.在線升級時,如果嵌入式計算機硬件發生故障(比如,系統掉電,程序存儲器損壞),這也會導致用戶分 ...
【技術保護點】
一種通用的嵌入式計算機軟件在線升級方法,其特征在于,采用在線升級服務器對嵌入式計算機軟件升級,在線升級服務器的升級步驟包括:步驟[201],開始升級;步驟[202],讀取升級文件頭,該文件頭為升級文件的前若干個字節,包括前半部分字節和后半部分字節,前半部分字節為文件頭的后半部分字節以及升級文件除文件頭之外的所有數據的校驗和,后半部分字節為升級文件的版本號;步驟[203],校驗升級文件,即,計算文件頭的后半部分字節以及升級文件除文件頭之外的所有數據的校驗和,然后與文件頭前半部分字節的數據進行比較,如果相同則說明升級文件數據無誤,否則說明升級文件數據錯誤;步驟[204],比較版本號,即,發送獲取軟件版本號的指令給嵌入式計算機以獲得嵌入式計算機中正在運行軟件的版本號,然后與文件頭后半部分字節的數據進行比較,如果升級文件的版本號大于正在運行軟件的版本號則說明升級文件版本號無誤,否則說明升級文件版本號錯誤;步驟[205],發送升級文件,即,把升級文件中除了文件頭之外的所有數據(即升級文件中的有效升級數據)拆為若干個數據塊,按照升級通信協議打包,形成升級文件數據包后按順序發送給嵌入式計算機,每發送 ...
【技術特征摘要】
1.一種通用的嵌入式計算機軟件在線升級方法,其特征在于,采用在線升級服
務器對嵌入式計算機軟件升級,在線升級服務器的升級步驟包括:
步驟[201],開始升級;
步驟[202],讀取升級文件頭,
該文件頭為升級文件的前若干個字節,包括前半部分字節和后半部分字節,
前半部分字節為文件頭的后半部分字節以及升級文件除文件頭之外的所有
數據的校驗和,后半部分字節為升級文件的版本號;
步驟[203],校驗升級文件,即,
計算文件頭的后半部分字節以及升級文件除文件頭之外的所有數據的校驗
和,然后與文件頭前半部分字節的數據進行比較,如果相同則說明升級文件數
據無誤,否則說明升級文件數據錯誤;
步驟[204],比較版本號,即,
發送獲取軟件版本號的指令給嵌入式計算機以獲得嵌入式計算機中正在運
行軟件的版本號,然后與文件頭后半部分字節的數據進行比較,如果升級文件
的版本號大于正在運行軟件的版本號則說明升級文件版本號無誤,否則說明升
級文件版本號錯誤;
步驟[205],發送升級文件,即,
把升級文件中除了文件頭之外的所有數據(即升級文件中的有效升級數據)
拆為若干個數據塊,按照升級通信協議打包,形成升級文件數據包后按順序發
送給嵌入式計算機,
每發送一個升級文件數據包后都要等待對方的應答,如果接收到失敗的應
答則重新發送當前的數據包,否則繼續發送下一個數據包,直到所有有效的升
級數據發送完成為止,
如果同一個升級文件數據包連續多次發送失敗,則表示升級失敗;
步驟[206],發送重啟指令,
在合適的時間發送重啟指令給嵌入式計算機,以便完成升級,重啟指令的
發送時間完全由用戶而定;
步驟[207],結束升級。
2.如權利要求1所述的通用的嵌入式計算機軟件在線升級方法,其特征在于,
\t所述嵌入式計算機具有程序存儲器,程序存儲器具有多個分區,包括:
啟動區,用于存儲嵌入式計算機的啟動程序,為只讀分區,
上電后,嵌入式計算機的主控制器從啟動區讀出啟動程序并運行,用來啟
動整個嵌入式計算機;
配置區,用于存儲分區的激活信息,為可讀寫分區,
在嵌入式計算機啟動的最后階段,啟動程序會讀取配置區中的分區激活信
息,然后轉跳到激活的分區,執行激活分區中的用戶程序;
恢復區,用于存儲預設的用戶程序,為只讀分區,
在正常情況下恢復區未激活,只有在升級失敗時才會激活該分區,在升級
失敗時,嵌入式計算機啟動后會...
【專利技術屬性】
技術研發人員:賈鑫,金星,
申請(專利權)人:中海網絡科技股份有限公司,
類型:發明
國別省市:上海;31
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。