一種關(guān)鍵點(diǎn)控制的嵌入式設(shè)備自動(dòng)在線(xiàn)升級(jí)
系統(tǒng)運(yùn)行過(guò)程中檢測(cè)到有新版本需要升級(jí)正常運(yùn)行系統(tǒng),則判斷基本運(yùn)行系統(tǒng)的關(guān)鍵點(diǎn)狀態(tài),如果為SUV狀態(tài),則直接在正常運(yùn)行系統(tǒng)中升級(jí)該升級(jí)包,否則需要設(shè)置從基本運(yùn)行系統(tǒng)啟動(dòng),并重啟終端后在基本運(yùn)行系統(tǒng)中升級(jí)該升級(jí)包。如果檢測(cè)到需要升級(jí)基本運(yùn)行系統(tǒng),則判斷正常運(yùn)行系統(tǒng)關(guān)鍵點(diǎn)狀態(tài),如果為SUV狀態(tài),則直接在基本運(yùn)行系統(tǒng)中升級(jí)該升級(jí)包,升級(jí)完成后設(shè)置正常運(yùn)行系統(tǒng)的關(guān)鍵點(diǎn)狀態(tài)為SSNV狀態(tài),否則忽略該升級(jí)包(如圖4所示)。在基本運(yùn)行系統(tǒng)啟動(dòng)成功,如果此時(shí)基本運(yùn)行系統(tǒng)的關(guān)鍵點(diǎn)狀態(tài)為SSNV狀態(tài),則設(shè)置為SUNV狀態(tài)(如圖5所示)?;具\(yùn)行系統(tǒng)的主要功能就是完成正常運(yùn)行系統(tǒng)的升級(jí)。啟動(dòng)后如果檢測(cè)到有新版本需要升級(jí)正常運(yùn)行系統(tǒng),則下載該升級(jí)包進(jìn)行升級(jí)業(yè)務(wù),升級(jí)完成后設(shè)置正常運(yùn)行系統(tǒng)的關(guān)鍵點(diǎn)狀態(tài)為SSNV狀態(tài),并表示基本運(yùn)行系統(tǒng)的關(guān)鍵點(diǎn)狀態(tài)為SUV狀態(tài)(如圖6所示)。
通過(guò)上述的關(guān)鍵點(diǎn)控制,該升級(jí)方案保證了任何情況下都有一個(gè)系統(tǒng)是能夠正常運(yùn)行升級(jí)系統(tǒng),不會(huì)出現(xiàn)終端因?yàn)樯?jí)過(guò)程斷電等因素造成升級(jí)失敗后,不能再自動(dòng)恢復(fù)的問(wèn)題,對(duì)終端升級(jí)的安全性有較大的提升。例如在正常運(yùn)行系統(tǒng)中升級(jí)正常運(yùn)行系統(tǒng)時(shí),基本運(yùn)行系統(tǒng)保證是SUV狀態(tài),如果出現(xiàn)斷電情況,終端重啟后進(jìn)入基本運(yùn)行系統(tǒng)中可以把正常運(yùn)行系統(tǒng)升級(jí);在正常運(yùn)行系統(tǒng)中升級(jí)基本運(yùn)行系統(tǒng)時(shí),正常運(yùn)行系統(tǒng)保證是SUV狀態(tài),如果出現(xiàn)斷電情況,終端重啟后進(jìn)入正常運(yùn)行系統(tǒng)可以繼續(xù)升級(jí)基本運(yùn)行系統(tǒng);在基本運(yùn)行系統(tǒng)中升級(jí)正常運(yùn)行系統(tǒng)時(shí),基本運(yùn)行系統(tǒng)保證是SUV狀態(tài),如果出現(xiàn)斷電情況,終端重啟后進(jìn)入基本運(yùn)行系統(tǒng)可以繼續(xù)升級(jí)正常運(yùn)行系統(tǒng)。該升級(jí)方案中不允許在基本運(yùn)行系統(tǒng)中升級(jí)自身。
linux操作系統(tǒng)文章專(zhuān)題:linux操作系統(tǒng)詳解(linux不再難懂)
評(píng)論