專利名稱:一種終端產(chǎn)品不中斷業(yè)務(wù)在線升級版本的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通訊技術(shù),特別涉及一種終端產(chǎn)品不中斷業(yè)務(wù)在線升級版本的方法。
背景技術(shù):
系統(tǒng)版本的升級是計算機(jī)應(yīng)用系統(tǒng)和嵌入式系統(tǒng)的常見操作。所謂系統(tǒng)的在線升級,是指在系統(tǒng)運(yùn)行的情況下,通過與遠(yuǎn)程的服務(wù)器的交互,完成用新版本更新現(xiàn)有的版本后運(yùn)行新版本的過程。對于終端產(chǎn)品來說,數(shù)量眾多且分布范圍廣,為滿足用戶增加新功能的需求,就需要采用遠(yuǎn)程在線升級的方式進(jìn)行版本更新,這樣對終端產(chǎn)品系統(tǒng)版本升級的安全性和可靠性要求更高。當(dāng)然,也可以采用下發(fā)補(bǔ)丁的方法由用戶自己升級終端產(chǎn)品的版本,但是由于終端產(chǎn)品的用戶眾多,用戶的知識層次不同,不利于統(tǒng)一控制,此方法在實(shí)踐中并不可行。
每個終端產(chǎn)品中一般只有一個單板,而且器件相對簡單,數(shù)目較少。在版本升級時是對單板的軟件版本進(jìn)行升級,軟件版本保存于單板的閃存(一種可讀寫的存儲媒質(zhì))中,因此升級就是用新的版本文件替換閃存中原有的版本文件。進(jìn)行終端產(chǎn)品的版本升級時,首先需要從版本服務(wù)器上獲取升級的版本文件到單板的內(nèi)存RAM中,進(jìn)行完整性檢查后,用內(nèi)存中的版本文件替換掉單板閃存中的版本,然后重新啟動單板使新的版本得到運(yùn)行。
若終端產(chǎn)品的閃存中只保存一份版本文件,那么在升級更新閃存上版本文件過程中可能出現(xiàn)單板意外斷電的情況,則此時閃存中只有一個不完整的版本文件,升級失敗后就不能靠遠(yuǎn)程升級的方式進(jìn)行恢復(fù),在其穩(wěn)定性和安全性方面存在隱患。所以現(xiàn)有技術(shù)中,一般的終端產(chǎn)品在閃存中都保存兩份版本文件,分為主、次版本,次版本只在主版本升級失敗的時候啟動,用于與遠(yuǎn)程服務(wù)器交互,將升級版本文件寫入閃存中主版本的區(qū)域,使主版本成功升級,單板重啟動后運(yùn)行主版本。
上面所述的現(xiàn)有技術(shù)中終端產(chǎn)品版本升級方法的缺點(diǎn)在于①終端產(chǎn)品升級時所更新的版本是正在運(yùn)行的版本,在閃存中寫入了新的版本文件時運(yùn)行的版本被刪除,造成正在運(yùn)行的某些業(yè)務(wù)因?yàn)槌绦蛟募粍h除而不能正常運(yùn)行。
②主版本升級失敗時,由次版本啟動使主版本再次進(jìn)行升級,次版本不具備與主版本相同的功能,此時終端產(chǎn)品的某些業(yè)務(wù)無法正常運(yùn)行,唯有等主版本升級成功后,才能正常運(yùn)行產(chǎn)品的全部業(yè)務(wù)。
③由于作為存儲媒體介質(zhì)的閃存有其使用壽命,終端產(chǎn)品版本的正常運(yùn)行和升級擦寫都在同一個閃存區(qū)域內(nèi),造成閃存使用壽命的降低。
發(fā)明內(nèi)容
本發(fā)明的目的在于克服現(xiàn)有技術(shù)的不足,提供一種終端產(chǎn)品不中斷業(yè)務(wù)在線升級版本的方法。該終端產(chǎn)品可以在正常運(yùn)行的狀態(tài)下對版本進(jìn)行在線升級,升級成功后在下次啟動時運(yùn)行新的版本,并可多次對版本進(jìn)行升級,存儲媒體介質(zhì)的壽命較以往終端產(chǎn)品也大大提高。
本發(fā)明的技術(shù)方案一種終端產(chǎn)品不中斷業(yè)務(wù)在線升級版本的方法,其特征在于終端產(chǎn)品的閃存的存儲區(qū)域劃分為第一區(qū)域和第二區(qū)域,所述的第一區(qū)域內(nèi)保存終端產(chǎn)品系統(tǒng)的第一版本,所述的第二區(qū)域內(nèi)保存與第一版本功能相同的第二版本,終端產(chǎn)品啟動時選擇第一區(qū)域內(nèi)的第一版本或第二區(qū)域內(nèi)的第二版本單獨(dú)運(yùn)行,系統(tǒng)的版本進(jìn)行在線升級時,不修改運(yùn)行中的版本區(qū)域,是將版本升級文件更新到未運(yùn)行的版本區(qū)域,更新時運(yùn)行中版本的業(yè)務(wù)不受版本升級的任何影響,版本升級成功后在下次終端產(chǎn)品啟動時由被更新的區(qū)域啟動新版本,完成終端產(chǎn)品的版本升級。
一種終端產(chǎn)品不中斷業(yè)務(wù)在線升級版本的方法,該方法具體包括如下步驟①啟動終端產(chǎn)品,由預(yù)先設(shè)置在引導(dǎo)區(qū)內(nèi)的啟動標(biāo)記選擇啟動一個版本,如果引導(dǎo)啟動第一版本,則終端產(chǎn)品的系統(tǒng)在第一區(qū)域運(yùn)行,此時第二區(qū)域內(nèi)的第二版本不被使用;②終端產(chǎn)品上運(yùn)行中的第一版本從遠(yuǎn)程服務(wù)器上獲取升級所需的版本文件,并對該版本文件進(jìn)行版本有效性檢驗(yàn),符合有效性檢驗(yàn)規(guī)則的版本文件被接收并保存于終端產(chǎn)品的內(nèi)存,不符合有效檢驗(yàn)的文件不被接收,并通知遠(yuǎn)程服務(wù)器;③接收到的版本文件保存于終端產(chǎn)品的內(nèi)存中后,由運(yùn)行的第一版本發(fā)出指令清除閃存中第二區(qū)域內(nèi)第二版本的內(nèi)容,并將內(nèi)存內(nèi)的版本文件寫入至第二區(qū)域中,此時第一版本沒有任何改變,所有業(yè)務(wù)正常運(yùn)行,不受系統(tǒng)版本升級的影響;④對第二區(qū)域內(nèi)升級后的版本進(jìn)行應(yīng)用有效性檢驗(yàn),檢驗(yàn)通過證明升級成功,將系統(tǒng)的啟動標(biāo)記置于該第二區(qū)域中,終端產(chǎn)品下次啟動時由第二區(qū)域內(nèi)啟動升級后的第二版本,檢驗(yàn)沒有通過證明升級失敗,系統(tǒng)的啟動標(biāo)記仍處于第一區(qū)域中,終端產(chǎn)品下次啟動時仍由第一區(qū)域內(nèi)啟動第一版本,在不影響終端產(chǎn)品業(yè)務(wù)功能的情況下實(shí)現(xiàn)版本升級失敗的回退;
⑤升級成功后運(yùn)行第二區(qū)域內(nèi)升級后的版本,當(dāng)終端產(chǎn)品下一次升級時,會將升級的版本文件寫入第一區(qū)域,不會影響運(yùn)行的第二區(qū)域版本的業(yè)務(wù),依此類推,在終端產(chǎn)品在線升級的時候并不中斷正在運(yùn)行的業(yè)務(wù)。
步驟②中從遠(yuǎn)程服務(wù)器上獲取升級的版本文件時,可由終端產(chǎn)品主動向服務(wù)器發(fā)起升級請求,或者由服務(wù)器發(fā)起并由終端產(chǎn)品被動接收的升級請求。
本發(fā)明的技術(shù)優(yōu)點(diǎn)本發(fā)明一種終端產(chǎn)品不中斷業(yè)務(wù)在線升級版本的方法從終端產(chǎn)品的穩(wěn)定性,安全性,易用性等方面考慮,主要從終端產(chǎn)品特點(diǎn)和用戶使用的角度設(shè)計,使得產(chǎn)品升級時不影響用戶的正常使用。終端產(chǎn)品升級時不會改變正在運(yùn)行的版本區(qū)域,而是將升級文件寫入不在運(yùn)行的版本區(qū)域,此過程中所有業(yè)務(wù)都可以正常使用,即使是升級失敗的時候,由于正在運(yùn)行的版本仍可以正常運(yùn)行,不需要進(jìn)行版本回退操作,對用戶使用不會有任何影響。用戶在整個過程中感覺不到產(chǎn)品在升級,提高了用戶對產(chǎn)品的滿意度。
從產(chǎn)品的使用壽命上來說,閃存上兩個版本區(qū)域是交替使用的,如果正在運(yùn)行的版本進(jìn)行升級,將版本文件寫入不在運(yùn)行的版本區(qū)域,升級成功后下一次啟動從另一個區(qū)域運(yùn)行,相比于在同一個區(qū)域進(jìn)行版本更新和運(yùn)行的終端產(chǎn)品,閃存分區(qū)交替使用延長了使用壽命,也提高了終端產(chǎn)品的穩(wěn)定性。
說明書附1為本發(fā)明一種終端產(chǎn)品不中斷業(yè)務(wù)在線升級版本的方法的版本升級操作流程示意圖。
圖2為本發(fā)明一種終端產(chǎn)品不中斷業(yè)務(wù)在線升級版本的方法的實(shí)施例1中版本升級操作流程圖。
具體實(shí)施例方式
下面結(jié)合附圖和具體的實(shí)施例來對本發(fā)明一種終端產(chǎn)品不中斷業(yè)務(wù)在線升級版本的方法做進(jìn)一步說明,但不能因此而限制本發(fā)明的保護(hù)范圍。
請看
圖1,圖1為本發(fā)明一種終端產(chǎn)品不中斷業(yè)務(wù)在線升級版本的方法的版本升級操作流程示意圖。由圖1可以看出,一種終端產(chǎn)品不中斷業(yè)務(wù)在線升級版本的方法,首先將終端產(chǎn)品的閃存劃分為第一區(qū)域和第二區(qū)域,在閃存的第一區(qū)域內(nèi)保存第一版本,在閃存的第二區(qū)域內(nèi)保存與第一版本具有相同功能的第二版本;其次,在終端產(chǎn)品啟動時選擇第一區(qū)域內(nèi)的第一版本或第二區(qū)域內(nèi)的第二版本單獨(dú)運(yùn)行;再次,在運(yùn)行版本正常工作行時對未運(yùn)行版本進(jìn)行在線升級,即用獲得的新的版本替代未運(yùn)行版本區(qū)域中的版本,升級成功后在更換啟動標(biāo)志的位置至新的版本所在的閃存區(qū)域,下次終端產(chǎn)品啟動時由啟動標(biāo)志引導(dǎo)運(yùn)行升級后的版本;以此類推,在絲毫不影響終端產(chǎn)品正常業(yè)務(wù)運(yùn)行的情況下,完成終端產(chǎn)品系統(tǒng)的在線升級。
終端產(chǎn)品在不中斷業(yè)務(wù)的情況下進(jìn)行在線升級,主要包括如下幾個步驟①終端產(chǎn)品從遠(yuǎn)程服務(wù)器上獲取系統(tǒng)升級需要的版本文件,并將該獲取的版本文件暫存在終端產(chǎn)品的內(nèi)存中;②將上述獲取的版本文件從內(nèi)存中更新到未運(yùn)行版本所在的閃存區(qū)域替代未運(yùn)行版本;③根據(jù)版本更新結(jié)果確定下一次啟動的版本區(qū)域,在終端產(chǎn)品再次啟動時運(yùn)行升級后的版本,完成終端產(chǎn)品版本升級。
實(shí)施例1請看圖2,圖2為本發(fā)明一種終端產(chǎn)品不中斷業(yè)務(wù)在線升級版本的方法的實(shí)施1的操作流程圖。由圖可以看出,可不中斷業(yè)務(wù)在線升級版本的終端產(chǎn)品的版本升級方法包括如下步驟①啟動終端產(chǎn)品,置于引導(dǎo)區(qū)域的啟動標(biāo)記引導(dǎo)啟動閃存第一區(qū)域中的第一版本,終端產(chǎn)品正常運(yùn)行第一版本的系統(tǒng),完成各種系統(tǒng)業(yè)務(wù),此時第二區(qū)域內(nèi)的第二版本處于未運(yùn)行狀態(tài);②由終端產(chǎn)品主動發(fā)起升級請求,運(yùn)行中的第一版本從遠(yuǎn)程服務(wù)器上獲取升級所需的版本文件,并對該版本文件進(jìn)行版本有效性檢驗(yàn),符合有效性檢驗(yàn)規(guī)則的版本文件被接收并保存于內(nèi)存RAM內(nèi),不符合有效檢驗(yàn)的文件不被接收,并通知遠(yuǎn)程服務(wù)器,從遠(yuǎn)程服務(wù)器上獲取升級的版本文件時也可以由遠(yuǎn)程服務(wù)器發(fā)起由終端產(chǎn)品被動接收的升級請求;③版本文件暫時保存于內(nèi)存RAM中后,由運(yùn)行中的第一版本發(fā)出指令清除閃存中第二區(qū)域內(nèi)第二版本的內(nèi)容,并將內(nèi)存RAM內(nèi)的版本文件寫入閃存的第二區(qū)域中,此時終端產(chǎn)品的系統(tǒng)正常運(yùn)行第一版本,完成各項(xiàng)正常業(yè)務(wù),不受第二區(qū)域中版本升級的任何影響;④對第二區(qū)域內(nèi)升級后的版本進(jìn)行應(yīng)用有效性檢驗(yàn),檢查版本寫入閃存的正確性,檢驗(yàn)通過證明升級成功,將系統(tǒng)的啟動標(biāo)記置于該第二區(qū)域中,終端產(chǎn)品下次啟動時由第二區(qū)域內(nèi)啟動升級后的第二版本,檢驗(yàn)沒有通過證明升級失敗,系統(tǒng)的啟動標(biāo)記仍處于第一區(qū)域中,終端產(chǎn)品下次啟動時仍由第一區(qū)域內(nèi)啟動未升級的第一版本,版本升級失敗后版本回退至原先運(yùn)行的第一版本,;⑤升級成功后,在終端產(chǎn)品再次啟動時,運(yùn)行升級后第二區(qū)域內(nèi)的版本,此后再有版本升級時,可升級第一區(qū)域內(nèi)的第一版本,依次類推,可以在完全不影響終端產(chǎn)品正常業(yè)務(wù)的情況下,實(shí)現(xiàn)系統(tǒng)版本的無限升級。
由上述本發(fā)明的實(shí)施例可以看出,本發(fā)明在移動終端內(nèi)的閃存上劃分兩個區(qū)域,分別保存兩個相同的版本,版本升級時,正在運(yùn)行的版本將獲取的版本升級文件更新到不在運(yùn)行的版本區(qū)域,對正在運(yùn)行的版本沒有任何改變,無論升級成功或者失敗,從用戶的角度看,產(chǎn)品的業(yè)務(wù)都可以正常運(yùn)行,用戶感覺不到產(chǎn)品的升級過程。
毫無疑問,本發(fā)明一種終端產(chǎn)品不中斷業(yè)務(wù)在線升級版本的方法的保護(hù)范圍并不局限于實(shí)施例中所列舉的方法步驟,還可以有其它的替代和變換??偠灾?,本發(fā)明的保護(hù)范圍還包括其它對于本領(lǐng)域技術(shù)人員來說顯而易見的變換和替代。
權(quán)利要求
1.一種終端產(chǎn)品不中斷業(yè)務(wù)在線升級版本的方法,其特征在于終端產(chǎn)品的閃存的存儲區(qū)域劃分為第一區(qū)域和第二區(qū)域,所述的第一區(qū)域內(nèi)保存終端產(chǎn)品系統(tǒng)的第一版本,所述的第二區(qū)域內(nèi)保存與第一版本功能相同的第二版本,終端產(chǎn)品啟動時選擇第一區(qū)域內(nèi)的第一版本或第二區(qū)域內(nèi)的第二版本單獨(dú)運(yùn)行,系統(tǒng)的版本進(jìn)行在線升級時,不修改運(yùn)行中的版本區(qū)域,是將版本升級文件更新到未運(yùn)行的版本區(qū)域,更新時運(yùn)行中版本的業(yè)務(wù)不受版本升級的任何影響,版本升級成功后在下次終端產(chǎn)品啟動時由被更新的區(qū)域啟動新版本,完成終端產(chǎn)品的版本升級。
2.權(quán)利要求1所述的一種終端產(chǎn)品不中斷業(yè)務(wù)在線升級版本的方法,其特征在于具體包括如下步驟①啟動終端產(chǎn)品,由預(yù)先設(shè)置在引導(dǎo)區(qū)內(nèi)的啟動標(biāo)記選擇啟動一個版本,若引導(dǎo)啟動第一版本,則終端產(chǎn)品的系統(tǒng)在第一區(qū)域運(yùn)行,此時第二區(qū)域內(nèi)的第二版本不被使用;②終端產(chǎn)品上運(yùn)行中的第一版本從遠(yuǎn)程服務(wù)器上獲取升級所需的版本文件,并對該版本文件進(jìn)行版本有效性檢驗(yàn),符合有效性檢驗(yàn)規(guī)則的版本文件被接收并保存于終端產(chǎn)品的內(nèi)存,不符合有效檢驗(yàn)的文件不被接收,并通知遠(yuǎn)程服務(wù)器;③接收到的版本文件保存于終端產(chǎn)品的內(nèi)存中后,由運(yùn)行的第一版本發(fā)出指令清除閃存中第二區(qū)域內(nèi)第二版本的內(nèi)容,并將內(nèi)存內(nèi)的版本文件寫入至第二區(qū)域中,此時第一版本沒有任何改變,所有業(yè)務(wù)正常運(yùn)行,不受系統(tǒng)版本升級的影響;④對第二區(qū)域內(nèi)升級后的版本進(jìn)行應(yīng)用有效性檢驗(yàn),檢驗(yàn)通過證明升級成功,將系統(tǒng)的啟動標(biāo)記置于該第二區(qū)域中,終端產(chǎn)品下次啟動時由第二區(qū)域內(nèi)啟動升級后的第二版本,檢驗(yàn)沒有通過證明升級失敗,系統(tǒng)的啟動標(biāo)記仍處于第一區(qū)域中,終端產(chǎn)品下次啟動時仍由第一區(qū)域內(nèi)啟動第一版本,在不影響終端產(chǎn)品業(yè)務(wù)功能的情況下實(shí)現(xiàn)版本升級失敗的回退;⑤升級成功后運(yùn)行第二區(qū)域內(nèi)升級后的版本,當(dāng)終端產(chǎn)品下一次升級時,會將升級的版本文件寫入第一區(qū)域,不會影響運(yùn)行的第二區(qū)域版本的業(yè)務(wù),依此類推,在終端產(chǎn)品在線升級的時候并不中斷正在運(yùn)行的業(yè)務(wù)。
3.根據(jù)權(quán)利要求2所述的一種終端產(chǎn)品不中斷業(yè)務(wù)在線升級版本的方法,其特征在于步驟②中從遠(yuǎn)程服務(wù)器上獲取升級的版本文件,可由終端產(chǎn)品主動向遠(yuǎn)程服務(wù)器發(fā)起升級請求,或者由遠(yuǎn)程服務(wù)器發(fā)起并由終端產(chǎn)品被動接收的升級請求。
全文摘要
本發(fā)明涉及一種終端產(chǎn)品不中斷業(yè)務(wù)在線升級版本的方法,將終端產(chǎn)品的閃存劃分為第一區(qū)域和第二區(qū)域,第一區(qū)域內(nèi)保存有第一版本,第二區(qū)域內(nèi)保存有與第一版本相同的第二版本,第一版本或第二版本可擇一單獨(dú)運(yùn)行,終端產(chǎn)品升級版本的方法包括如下步驟先從服務(wù)器獲取升級需要的版本文件到單板內(nèi)存中;然后將獲取的版本文件更新到不在運(yùn)行的版本區(qū)域;根據(jù)版本更新結(jié)果確定下一次啟動的版本區(qū)域,在不影響正常業(yè)務(wù)完成終端產(chǎn)品版本的升級。本發(fā)明一種終端產(chǎn)品不中斷業(yè)務(wù)在線升級版本的方法可在不中斷業(yè)務(wù)的情況下對版本進(jìn)行在線升級,提高了終端產(chǎn)品的穩(wěn)定性、安全性和易用性,同時延長了閃存的使用壽命。
文檔編號G06F9/445GK101078993SQ200710127708
公開日2007年11月28日 申請日期2007年6月18日 優(yōu)先權(quán)日2007年3月13日
發(fā)明者魏超群 申請人:中興通訊股份有限公司