基于關(guān)鍵點控制的網(wǎng)絡(luò)嵌入式設(shè)備在線升級的實現(xiàn)
系統(tǒng)運行過程中檢測到有新版本需要升級正常運行系統(tǒng),則判斷基本運行系統(tǒng)的關(guān)鍵點狀態(tài),如果為SUV狀態(tài),則直接在正常運行系統(tǒng)中升級該升級包,否則需要設(shè)置從基本運行系統(tǒng)啟動,并重啟終端后在基本運行系統(tǒng)中升級該升級包。如果檢測到需要升級基本運行系統(tǒng),則判斷正常運行系統(tǒng)關(guān)鍵點狀態(tài),如果為SUV狀態(tài),則直接在基本運行系統(tǒng)中升級該升級包,升級完成后設(shè)置正常運行系統(tǒng)的關(guān)鍵點狀態(tài)為SSNV狀態(tài),否則忽略該升級包(如圖4所示)。在基本運行系統(tǒng)啟動成功,如果此時基本運行系統(tǒng)的關(guān)鍵點狀態(tài)為SSNV狀態(tài),則設(shè)置為SUNV狀態(tài)(如圖5所示)?;具\行系統(tǒng)的主要功能就是完成正常運行系統(tǒng)的升級。啟動后如果檢測到有新版本需要升級正常運行系統(tǒng),則下載該升級包進行升級業(yè)務(wù),升級完成后設(shè)置正常運行系統(tǒng)的關(guān)鍵點狀態(tài)為SSNV狀態(tài),并表示基本運行系統(tǒng)的關(guān)鍵點狀態(tài)為SUV狀態(tài)(如圖6所示)。
通過上述的關(guān)鍵點控制,該升級方案保證了任何情況下都有一個系統(tǒng)是能夠正常運行升級系統(tǒng),不會出現(xiàn)終端因為升級過程斷電等因素造成升級失敗后,不能再自動恢復(fù)的問題,對終端升級的安全性有較大的提升。例如在正常運行系統(tǒng)中升級正常運行系統(tǒng)時,基本運行系統(tǒng)保證是SUV狀態(tài),如果出現(xiàn)斷電情況,終端重啟后進入基本運行系統(tǒng)中可以把正常運行系統(tǒng)升級;在正常運行系統(tǒng)中升級基本運行系統(tǒng)時,正常運行系統(tǒng)保證是SUV狀態(tài),如果出現(xiàn)斷電情況,終端重啟后進入正常運行系統(tǒng)可以繼續(xù)升級基本運行系統(tǒng);在基本運行系統(tǒng)中升級正常運行系統(tǒng)時,基本運行系統(tǒng)保證是SUV狀態(tài),如果出現(xiàn)斷電情況,終端重啟后進入基本運行系統(tǒng)可以繼續(xù)升級正常運行系統(tǒng)。該升級方案中不允許在基本運行系統(tǒng)中升級自身。
3 結(jié)語
該方法在醫(yī)療呼叫系統(tǒng)中進行了應(yīng)用與驗證,嵌入式系統(tǒng)基于S3C2440處理器,負責系統(tǒng)中醫(yī)療信息的發(fā)布、查詢,語音呼叫及醫(yī)療增援服務(wù),其中床頭機、醫(yī)護機、門口機均采用該系統(tǒng),醫(yī)療呼叫系統(tǒng)需要全天候工作,不可能指定時間對系統(tǒng)升級,且升級過程需要用戶不可見,通過應(yīng)用本方法能夠方便的升級系統(tǒng)軟件,以修復(fù)軟件BUG或者增強軟件服務(wù)。升級過程中用戶不可見,且升級完成后不需要重啟終端,對于升級的易用性和友好性有較大改進。
本文分析了常用的網(wǎng)絡(luò)終端設(shè)備在線升級的方案,在保證在線升級過程安全的基礎(chǔ)上,通過對雙系統(tǒng)升級方法的優(yōu)化和改進,通過關(guān)鍵點狀態(tài)的記錄和判斷,實現(xiàn)了絕大部分情況下,可以在正常運行系統(tǒng)中直接升級正常運行系統(tǒng),升級完成后不需要重啟系統(tǒng),做到升級過程對用戶透明。同時在原來只能升級正常運行系統(tǒng)的基礎(chǔ)上,支持升級基本運行系統(tǒng)的功能,對于提升網(wǎng)絡(luò)終端設(shè)備在線升級的易用性和安全性有較大的幫助。
評論