本發明專利技術公開了一種利用主備版本備份實現升級的方法。本發明專利技術通過在嵌入式設備中同時存儲啟動BOOT、現有主用版本、現有備用版本三個文件以及參數配置,實現主備互換、遠程升級功能,提高產品的穩定性和可維護性,有效降低產品開發和維護成本。
【技術實現步驟摘要】
本專利技術涉及嵌入式產品設計領域,特別是。
技術介紹
:在嵌入式產品中,經常會因為功能變化、故障修復等原因,需要從遠程對產品中的軟件(版本)進行升級。傳統嵌入式產品實現方式,是在產品中僅放置一個版本文件,該版本運行期間執行升級功能時,需要從遠程下載文件,并覆蓋該版本自己所在的存儲位置。完成版本升級后,重新啟動即可運行新版本。該方式的缺陷在于升級過程不能被中斷,一旦升級過程被掉電等情況異常中止,將導致設備上存儲的版本文件損壞,無法再次啟動,最終只能返廠維修。
技術實現思路
:本專利技術的目的在于提供以克服現有技術的不足,從而在終端設備上降低產品成本。本專利技術的技術方案:,其特征在于具體步驟如下:(I)在嵌入式設備上,將存儲空間邏輯劃分為三部分,分別標識為VO、Vl和V2。(2)將啟動BOOT、現有主用版本和現有備用版本存儲在嵌入式設備中,啟動BOOT的存儲位置為V0,現有主用版本的存儲位置為Vl或V2,現有備用版本的存儲位置為Vl或V2,現有主用版本和現有備用版本的存儲位置關系由參數配置決定。(3)嵌入式設備運行時,由啟動BOOT進行引導,根據參數配置,判斷現有主用版本位于Vl還是V2,運行現有主用版本,啟動BOOT切換控制權至現有主用版本。(4)當嵌入式設備需要升級時,現有主用版本從遠程服務端下載新版本,將新版本拷貝到現有備用版本位置,然后更改參數配置,將新版本設為新主用版本,將當前主用版本設為新備用版本,然后重啟嵌入式設備,完成軟件升級。上述所說的啟動BOOT是一個小型可執行文件,存儲在嵌入式設備的物理地址0x0,在嵌入式設備開始工作后將自動執行。上述所說的現有主用版本是與現有備用版本不同的可執行文件,能夠首先獲得啟動BOOT的引導而運行。上述步驟(2)中所說的現有主用版本是設置了位置無關選項的可執行文件,步驟(3)中所說的運行現有主用版本的方式為將現有主用版本拷貝到啟動位置再運行,或者不執行拷貝,直接從存儲位置運行現有主用版本。上述步驟(2)中所說的現有主用版本為未設置位置無關選項的可執行文件,步驟(3)中所說的運行現有主用版本的方式為將現有主用版本拷貝到某個固定的啟動位置再運行。上述所說的啟動位置為內存或存儲空間的某個位置。上述所說的參數配置存儲在獨立的存儲空間或存儲在嵌入式設備另外劃分的區域中,將嵌入式設備另外劃分的區域標識為Vm。上述所說的存儲參數配置的獨立的存儲空間為E2PR0M。上述所說的啟動BOOT切換控制權中的切換方式為調整CPU程序計數器。上述所說的步驟(2)中運行現有主用版本以后,啟動BOOT切換控制權以前,如果啟動BOOT運行在用戶模式下,需要通過軟中斷方式,強迫CPU進入管理模式,然后才能調整(PU程序計數器。本專利技術的優越性:本專利技術通過在嵌入式設備中同時存儲啟動BOOT、現有主用版本、現有備用版本三個文件以及參數配置,實現主備互換、遠程升級功能,提高產品的穩定性和可維護性,有效降低產品開發和維護成本。附圖說明:圖1為本專利技術所涉中參數配置存儲在獨立的存儲空間時嵌入式設備的存儲空間劃分示意圖。圖2為本專利技術所涉中參數配置存儲在嵌入式設備中時嵌入式設備存儲空間劃分示意圖。具體實施方式:實施例:,其特征在于具體步驟如下:(I)在嵌入式設備上,將存儲空間邏輯劃分為三部分,分別標識為V0、Vl和V2。(2)將啟動BOOT、現有主用版本和現有備用版本存儲在嵌入式設備中,啟動BOOT的存儲位置為V0,現有主用版本的存儲位置為Vl或V2,現有備用版本的存儲位置為Vl或V2,現有主用版本和現有備用版本的存儲位置關系由參數配置決定。(3)嵌入式設備運行時,由啟動BOOT進行引導,根據參數配置,判斷現有主用版本位于Vl還是V2,運行現有主用版本,啟動BOOT切換控制權至現有主用版本。(4)當嵌入式設備需要升級時,現有主用版本從遠程服務端下載新版本,將新版本拷貝到現有備用版本位置,然后更改參數配置,將新版本設為新主用版本,將當前主用版本設為新備用版本,然后重啟嵌入式設備,完成軟件升級。上述所說的啟動BOOT是一個小型可執行文件,存儲在嵌入式設備的物理地址0x0,在嵌入式設備開始工作后將自動執行。上述所說的現有主用版本是與現有備用版本不同的可執行文件,能夠首先獲得啟動BOOT的引導而運行。上述步驟(2)中所說的現有主用版本是設置了位置無關選項的可執行文件,步驟(3)中所說的運行現有主用版本的方式為將現有主用版本拷貝到啟動位置再運行,或者不執行拷貝,直接從存儲位置運行現有主用版本。上述所說的啟動位置為內存或存儲空間的某個位置。上述所說的參數配置存儲在獨立的存儲空間。上述所說的存儲參數配置的獨立的存儲空間為E2PR0M。 上述所說的啟動BOOT切換控制權中的切換方式為調整CPU程序計數器。權利要求1.,其特征在于具體步驟如下: (1)在嵌入式設備上,將存儲空間邏輯劃分為三部分,分別標識為VO、Vl和V2。(2)將啟動BOOT、現有主用版本和現有備用版本存儲在嵌入式設備中,啟動BOOT的存儲位置為VO,現有主用版本的存儲位置為Vl或V2,現有備用版本的存儲位置為Vl或V2,現有主用版本和現有備用版本的存儲位置關系由參數配置決定。(3)嵌入式設備運行時,由啟動BOOT進行引導,根據參數配置,判斷現有主用版本位于Vl還是V2,運行現有主用版本,啟動BOOT切換控制權至現有主用版本。(4)當嵌入式設備需要升級時,現有主用版本從遠程服務端下載新版本,將新版本拷貝到現有備用版本位置,然后更改參數配置,將新版本設為新主用版本,將當前主用版本設為新備用版本,然后重啟嵌入式設備,完成軟件升級。2.根據權利要求1所說的,其特征在于所說的啟動BOOT是一個小型可執行文件,存儲在嵌入式設備的物理地址0x0,在嵌入式設備開始工作后將自動執行。3.根據權利要求1所說的,其特征在于所說的現有主用版本是與現有備用版本不同的可執行文件,能夠首先獲得啟動BOOT的引導而運行。4.根據權利要求1所說的,其特征在于步驟(2)中所說的現有主用版本是設置了位置無關選項的可執行文件,步驟(3)中所說的運行現有主用版本的方式為將現有主用版本拷貝到啟動位置再運行,或者不執行拷貝,直接從存儲位置運行現有主用版本。5.根據權利要求1所說的,其特征在于步驟(2)中所說的現有主用版本為未設置位置無關選項的可執行文件,步驟(3)中所說的運行現有主用版本的方式為將現有主用版本拷貝到某個固定的啟動位置再運行。6.根據權利要求4或5所說的,其特征在于所說的啟動位置為內存或存儲空間的某個位置。7.根據權利要求1所說的,其特征在于所說的參數配置存儲在獨立的存儲空間或存儲在嵌入式設備另外劃分的區域中,將嵌入式設備另外劃分的區域標識為Vm。8.根據權利要求7所說的,其特征在于所說的存儲參數配置的獨立的存儲空間為E2PR0M。9.根據權利要求1所說的,其特征在于所說的啟動BOOT切換控制權中的切換方式為調整CPU程序計數器。10.根據權利要求1所說的,其特征在于所說的步驟(2)中運行現有主用版本以后,啟動BOOT切換控制權以前,如果啟動BOOT運行在用戶模式下,需要通過軟中斷方式,強迫CPU進入管理模式,然后才能調整CPU程序計數器。全文摘要本專利技術公開了。本專利技術通過在嵌入式設備中本文檔來自技高網...
【技術保護點】
一種利用主備版本備份實現升級的方法,其特征在于具體步驟如下:(1)在嵌入式設備上,將存儲空間邏輯劃分為三部分,分別標識為V0、V1和V2。(2)將啟動BOOT、現有主用版本和現有備用版本存儲在嵌入式設備中,啟動BOOT的存儲位置為V0,現有主用版本的存儲位置為V1或V2,現有備用版本的存儲位置為V1或V2,現有主用版本和現有備用版本的存儲位置關系由參數配置決定。(3)嵌入式設備運行時,由啟動BOOT進行引導,根據參數配置,判斷現有主用版本位于V1還是V2,運行現有主用版本,啟動BOOT切換控制權至現有主用版本。(4)當嵌入式設備需要升級時,現有主用版本從遠程服務端下載新版本,將新版本拷貝到現有備用版本位置,然后更改參數配置,將新版本設為新主用版本,將當前主用版本設為新備用版本,然后重啟嵌入式設備,完成軟件升級。
【技術特征摘要】
【專利技術屬性】
技術研發人員:王鐘穎,師煒焱,
申請(專利權)人:國家納米技術與工程研究院,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。