亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種嵌入式系統(tǒng)升級的方法

文檔序號:6375485閱讀:156來源:國知局
專利名稱:一種嵌入式系統(tǒng)升級的方法
技術領域
本發(fā)明涉及嵌入式系統(tǒng)技術領域,特別是指一種嵌入式系統(tǒng)升級的方法。
背景技術
在嵌入式系統(tǒng)中,由系統(tǒng)的運行環(huán)境和產品的功能等特點決定了嵌入式系統(tǒng)的非開放式的運行模式。在這種情況中,對嵌入式系統(tǒng)進行自動升級不但使產品延長壽命,而且保護了使用者的投資,即在不增加新投入的情況下增加了產品的新功能或修補了現(xiàn)有產品存在的缺陷。所以,對于一個含有嵌入式系統(tǒng)的產品而言,設計良好且功能強大的升級方案能為該產品帶來較強的競爭力。
現(xiàn)有嵌入式系統(tǒng)的升級方案通常為將升級文件做成鏡像文件,并將嵌入式系統(tǒng)中的非易失性存儲器上原有的數(shù)據(jù)全部擦除后,再將鏡像文件寫到非易失性存儲器上,以達到刷新升級的目的。
上述方案的缺陷在于對于以非易失性存儲器為永久存儲介質的嵌入式系統(tǒng)而言,升級過程中一旦發(fā)生意外斷電等異常情況時,系統(tǒng)將變得不可用,此時只能使用特殊的設備對該系統(tǒng)的非易失性存儲器進行完整的刷新后,才能使該系統(tǒng)繼續(xù)使用。該方案即不安全又使升級失敗后重新恢復系統(tǒng)的工作變得費時費力,甚至在某些條件下根本無法實現(xiàn)系統(tǒng)的恢復。而且,上述升級方案必須對非易失性存儲器的全部進行刷新升級,而不能對非易失性存儲器中指定的某一個或幾個部分的數(shù)據(jù)進行刷新升級操作,不便于管理。

發(fā)明內容
有鑒于此,本發(fā)明的目的在于提供一種嵌入式系統(tǒng)升級的方法,即使系統(tǒng)在升級過程中意外中斷,也能很方便的再次啟動該系統(tǒng)。
為達到上述目的,本發(fā)明的技術方案是這樣實現(xiàn)的一種嵌入式系統(tǒng)升級的方法,該方法包括以下步驟a、為嵌入式系統(tǒng)的非易失性存儲器上劃分邏輯區(qū)域,并指定一個區(qū)域用于保存升級操作前的待升級部分的數(shù)據(jù);b、當該系統(tǒng)需要升級時,下載所需的升級文件,并將非易失性存儲器上原有的待升級部分復制到非易失性存儲器的指定區(qū)域后,應用所下載的數(shù)據(jù)文件對該待升級部分進行升級操作;c、該系統(tǒng)下一次啟動時,判斷上次升級過程是否正常結束,如果是,則正常啟動該嵌入式系統(tǒng),否則將上次升級前復制到非易失性存儲器的指定區(qū)域數(shù)據(jù)恢復到原來的位置后,啟動該嵌入式系統(tǒng)。
較佳地,步驟a所述邏輯區(qū)域包括啟動代碼區(qū)、操作系統(tǒng)區(qū)、文件系統(tǒng)區(qū)、用于保存升級操作前的待升級部分數(shù)據(jù)的容錯區(qū)和系統(tǒng)升級過程標志區(qū)。
較佳地,所述系統(tǒng)升級過程標志區(qū)中至少包括升級成功標志、升級內容標志和升級數(shù)據(jù)長度參數(shù)。
較佳地,所述步驟b進一步包括應用所下載的數(shù)據(jù)文件對該待升級部分升級完畢后,再判斷非易失性存儲器邏輯區(qū)域中是否還有區(qū)域需要升級,如果是,則重復執(zhí)行步驟b,否則,正常啟動該嵌入式系統(tǒng)。
較佳地,所述步驟b進一步包括嵌入式系統(tǒng)引導程序通過外部連接方式與升級服務器進行連接,并根據(jù)從升級服務器下載的升級配置文件判斷該系統(tǒng)是否需要升級。
較佳地,所述外部連接方式包括網(wǎng)絡連接,串口連接、并口連接和USB連接。
較佳地,所述步驟b進一步包括
將非易失性存儲器上原有的待升級部分復制到非易失性存儲器的指定區(qū)域后,將系統(tǒng)升級過程標志區(qū)中的升級成功標志置為否;當升級操作完畢后,再將系統(tǒng)升級過程標志區(qū)中的升級成功標志置為成功;步驟c所述上次升級過程是否正常結束是根據(jù)系統(tǒng)升級過程標志區(qū)中的升級成功標志來判斷的。
較佳地,所述步驟c為如果上次升級過程是非正常結束,該系統(tǒng)再次與升級服務器進行連接,并判斷是否連接成功,如果是,則執(zhí)行升級操作,否則,將上次升級前復制到非易失性存儲器的指定區(qū)域數(shù)據(jù)恢復到原來的位置后,啟動該嵌入式系統(tǒng)。
較佳地,所述步驟c進一步包括將上次升級前復制到非易失性存儲器的指定區(qū)域數(shù)據(jù)恢復到原來的位置后,重新執(zhí)行升級操作。
較佳地,所述步驟b進一步包括將非易失性存儲器上原有的待升級部分復制到非易失性存儲器的指定區(qū)域后,根據(jù)所復制數(shù)據(jù)的內容以及大小設置系統(tǒng)升級過程標志區(qū)中的升級內容標志和升級數(shù)據(jù)長度參數(shù);所述步驟c是根據(jù)系統(tǒng)升級過程標志區(qū)中的升級內容標志,獲得上次升級非正常結束前最后進行升級操作的對象,根據(jù)系統(tǒng)升級過程標志區(qū)中的升級數(shù)據(jù)長度參數(shù),獲得上次升級非正常結束前最后進行升級操作的數(shù)據(jù)長度后,從非易失性存儲器的指定區(qū)域復制的相應長度的數(shù)據(jù)重新寫入到原來的位置。
較佳地,所述系統(tǒng)升級過程標志區(qū)中的升級成功標志為非易失性存儲器中不同待升級邏輯區(qū)域共用的一個標志位,或不同待升級邏輯區(qū)域分別應用不同的標志位。
較佳地,所述非易失性存儲器上原有的待升級部分為待升級部分的全部數(shù)據(jù)或待升級部分的部分數(shù)據(jù)。
應用本發(fā)明,通過為非易失性存儲器劃分邏輯區(qū)域,并將非易失性存儲器上原有待升級的數(shù)據(jù)復制到非易失性存儲器的指定區(qū)域后,再對該非易失性存儲器的某一部分進行升級操作,使得即使系統(tǒng)在升級過程中出現(xiàn)意外中斷的情況,也能將非易失性存儲器指定區(qū)域的數(shù)據(jù)恢復到原來的相應位置后,很方便的再次啟動該系統(tǒng)。因此,本發(fā)明使得嵌入式系統(tǒng)在升級過程出現(xiàn)意外中斷的情況下,具有一定的自我修復能力,即能夠保證系統(tǒng)再次正常啟動或自動重新進行升級。同時,由于應用本發(fā)明是對非易失性存儲器的部分區(qū)域進行升級,因此,實現(xiàn)了對升級過程的靈活管理。應用本發(fā)明,不需要增加任何控制硬件,也不依賴于特定的操作系統(tǒng),對于要求系統(tǒng)高可用性且又存在對系統(tǒng)升級需求的應用提供了一種低價可靠的解決方案。


圖1為應用本發(fā)明的對非易失性存儲器進行邏輯劃分后的示意圖;圖2為本發(fā)明升級方法一較佳實施例的流程圖。
具體實施例方式
為使本發(fā)明的目的、技術方案及優(yōu)點更加清楚,以下參照附圖并舉實施例,對本發(fā)明做進一步詳細說明。
本發(fā)明的思路是為嵌入式系統(tǒng)的非易失性存儲器上劃分邏輯區(qū)域,并指定一個區(qū)域用于保存升級操作前的待升級部分的數(shù)據(jù);當該系統(tǒng)需要升級時,下載所需的升級文件,并將待升級部分復制到非易失性存儲器的指定區(qū)域后,應用所下載的數(shù)據(jù)文件對該待升級部分進行升級操作;該系統(tǒng)下一次啟動時,判斷上次升級過程是否正常結束,如果是,則正常啟動該嵌入式系統(tǒng),如果系統(tǒng)在上次升級過程中發(fā)生意外斷電等情況而導致升級過程中斷,則將上次升級前復制到非易失性存儲器的指定區(qū)域數(shù)據(jù)恢復到原來的位置后,啟動該嵌入式系統(tǒng)。這樣,保證嵌入式系統(tǒng)總是可用。
圖1所示為應用本發(fā)明的對非易失性存儲器進行邏輯劃分后的示意圖。由于通常情況下,系統(tǒng)的非易失性存儲器不會全部被占用,總會留有一些剩余空間,因此,將余下的空間用于容錯區(qū)和系統(tǒng)升級過程標志區(qū)。這樣,將系統(tǒng)的非易失性存儲器在邏輯上劃分為啟動代碼區(qū)101、操作系統(tǒng)區(qū)102、文件系統(tǒng)區(qū)103、容錯區(qū)104和系統(tǒng)升級過程標志區(qū)105五個區(qū)域。其中,啟動代碼區(qū)101保存用于系統(tǒng)啟動的基本初始化和引導代碼,即通常意義上的bootloader,由于bootloader的主要功能是實現(xiàn)硬件系統(tǒng)的基本初始化和操作系統(tǒng)的加載,因此,為了保證系統(tǒng)在任何情況下都可用,不允許對bootlaoder進行重新刷寫的操作;操作系統(tǒng)區(qū)102保存該嵌入式操作系統(tǒng)的內核代碼;文件系統(tǒng)區(qū)103保存該嵌入式系統(tǒng)的文件系統(tǒng);容錯區(qū)104用于保存系統(tǒng)升級前的待升級部分的數(shù)據(jù),即用于系統(tǒng)容錯恢復時所用的數(shù)據(jù),以防止由于升級過程意外中斷,而導致系統(tǒng)下次無法正常啟動的情況;系統(tǒng)升級過程標志區(qū)105用于保存系統(tǒng)升級過程中的狀態(tài),其包括升級成功標志、升級內容標志、升級數(shù)據(jù)長度參數(shù)以及廠商標志等等。每個區(qū)域的大小根據(jù)不同的實現(xiàn)系統(tǒng)進行不同的劃分。
圖2所示為本發(fā)明升級方法一較佳實施例的流程圖。通過修改bootlaoder的流程,使嵌入式系統(tǒng)實現(xiàn)了帶有容錯機制的自動升級。
步驟201,系統(tǒng)啟動時,bootloader通過外部的連接方式與升級服務器進行連接,并判斷該連接是否連接成功,如果是,則執(zhí)行步驟207,否則執(zhí)行步驟202;其中,外部連接方式包括網(wǎng)絡連接、串口連接、并口連接和USB連接等,bootloader將按照預先確定的順序分別嘗試通過以上的外部連接方式與服務器進行連接;步驟202,檢查系統(tǒng)的升級過程標志區(qū)中的升級成功標志;步驟203,根據(jù)系統(tǒng)升級過程標志區(qū)中的升級成功標志判斷上次的升級過程是否正常結束,如果是,則執(zhí)行步驟212,否則執(zhí)行步驟204;步驟204,bootloader再次嘗試能否與升級服務器進行連接,并判斷是否連接成功,如果是,則執(zhí)行步驟207,否則執(zhí)行步驟205;步驟205,bootloader讀取升級過程標志區(qū)中的升級內容標志來確定上次非正常結束前最后進行升級操作的對象,并讀取升級過程標志區(qū)中的升級數(shù)據(jù)長度參數(shù)來確定上次非正常結束前最后進行升級操作的數(shù)據(jù)長度;
步驟206,根據(jù)升級操作的數(shù)據(jù)長度,從容錯區(qū)中復制相應長度的數(shù)據(jù),并將該數(shù)據(jù)恢復到非易失性存儲器中原來的相應位置后,將系統(tǒng)升級過程標志區(qū)中的升級成功標志置為成功后,執(zhí)行步驟212;步驟207,從服務器上下載升級配置文件,并根據(jù)升級配置文件中的標識字段判斷該系統(tǒng)是否需要升級,如果是,則執(zhí)行步驟208,否則直接執(zhí)行步驟212;該升級配置文件由服務器升級管理程序根據(jù)用戶的升級要求生成并放置在確定的目錄下,且具有約定的格式,bootloader通過分析該配置文件,獲取用戶希望升級的區(qū)域,即操作系統(tǒng)區(qū),或文件系統(tǒng)區(qū),或操作系統(tǒng)區(qū)和文件系統(tǒng)區(qū);步驟208,bootlaoder向服務器申請下載操作系統(tǒng)區(qū)或文件系統(tǒng)區(qū)所需的升級文件,下載完畢后,執(zhí)行步驟209;操作系統(tǒng)區(qū)的升級文件和文件系統(tǒng)區(qū)的升級文件分別由不同的文件名表示,且文件名由升級配置文件指定,且每次只能下載一種類型的文件;步驟209,根據(jù)容錯區(qū)的大小將當前待升級的文件復制到容錯區(qū),并將所復制數(shù)據(jù)的長度記錄在系統(tǒng)升級過程標志區(qū)中的升級數(shù)據(jù)長度參數(shù)中;步驟210,將系統(tǒng)升級過程標志區(qū)中的升級成功標志置為否,并將系統(tǒng)升級過程標志區(qū)中的升級內容標志標記為當前即將升級部分的標志后,利用下載的升級文件對相應區(qū)域,即操作系統(tǒng)區(qū)或文件系統(tǒng)區(qū),進行升級;步驟211,判斷嵌入式系統(tǒng)中是否還有其它部分需要升級,如果是,則返回步驟208,否則將系統(tǒng)升級過程標志區(qū)中的升級成功標志置為成功后,執(zhí)行步驟212;步驟212,進行系統(tǒng)初始化以及加載操作,正常啟動系統(tǒng)。上述方案中系統(tǒng)升級過程標志區(qū)中的升級成功標志可以是操作系統(tǒng)區(qū)與文件系統(tǒng)區(qū)共用一個標志位,也可以是操作系統(tǒng)區(qū)與文件系統(tǒng)區(qū)分別用不同的標志位。
下面以一嵌入式Linux系統(tǒng)為例,具體說明本發(fā)明的實現(xiàn)過程。
假設該嵌入式Linux系統(tǒng)中的閃存(flash)為4M,對該flash進行邏輯區(qū)域劃分的結果為啟動代碼區(qū)存放bootloader,并占用flash的前32K,操作系統(tǒng)區(qū)存放壓縮后的操作系統(tǒng),并占用其后的700K,文件系統(tǒng)區(qū)存放壓縮后的文件系統(tǒng),并占用隨后的1500K,升級過程標志區(qū)存放狀態(tài)標志,并占用flash的最后32K,文件系統(tǒng)區(qū)之后到系統(tǒng)升級標志區(qū)之前為容錯區(qū),該容錯區(qū)大小為4000-32-700-1500-32,即約為1700K。
系統(tǒng)啟動時,bootlaoder通過網(wǎng)絡與服務器連接,并得到服務器端生成的升級配置文件,該配置文件要求嵌入式Linux系統(tǒng)用服務器端c盤下的os.bin文件對flash上的操作系統(tǒng)進行升級,用服務器端c盤下的filesystem目錄中的myfs.bin文件對flash上的文件系統(tǒng)進行升級。
bootlaoder通過網(wǎng)絡首先下載os.bin文件,并將flash上原有的操作系統(tǒng)區(qū)中已壓縮的操作系統(tǒng)數(shù)據(jù)復制到flash上的容錯區(qū)中,之后,將所復制數(shù)據(jù)的長度記錄在系統(tǒng)升級過程標志區(qū)中的升級數(shù)據(jù)長度參數(shù)中,將系統(tǒng)升級過程標志區(qū)中的升級成功標志置為否,將系統(tǒng)升級過程標志區(qū)中的升級內容標志置為1(假設1代表升級操作系統(tǒng),2代表升級文件系統(tǒng)),然后用已下載的os.bin文件對flash上的操作系統(tǒng)區(qū)中的操作系統(tǒng)數(shù)據(jù)進行刷新。對操作系統(tǒng)的升級完成后,將系統(tǒng)升級過程標志區(qū)中的升級成功標志置為成功。此時,bootloader再從服務器下載myfs.bin文件,并將flash上原有的文件系統(tǒng)區(qū)中已壓縮的文件系統(tǒng)數(shù)據(jù)復制到flash上的容錯區(qū),覆蓋容錯區(qū)中的現(xiàn)有文件后,并將所復制數(shù)據(jù)的長度記錄在系統(tǒng)升級過程標志區(qū)中的升級數(shù)據(jù)長度參數(shù)中,將系統(tǒng)升級過程標志區(qū)中的升級成功標志置為否,將系統(tǒng)升級過程標志區(qū)中的升級內容標志置為2,然后用已下載的myfs.bin文件對flash上的文件系統(tǒng)區(qū)中的文件系統(tǒng)數(shù)據(jù)進行刷新。
如果在對文件系統(tǒng)進行升級的過程中發(fā)生了系統(tǒng)掉電等意外情況,而使升級過程中斷,則當該嵌入式系統(tǒng)重新上電后,由于bootloader并未損壞,因此,bootloader仍可以正常運行。其具體過程如下
該嵌入式Linux系統(tǒng)重新上電后,bootloader首先與升級服務器嘗試連接,如果連接成功,則重新下載配置文件并按照其要求進行升級操作;否則,bootlaoder檢查系統(tǒng)升級過程標志區(qū)中的升級成功標志,如果該標志為成功,則進行正常的系統(tǒng)初始化以及加載操作,啟動該系統(tǒng),但由于該系統(tǒng)上次升級時出現(xiàn)意外斷電,因此系統(tǒng)的升級成功標志肯定為否,此時,bootloader再次嘗試與升級服務器連接,如果連接成功,則重新下載配置文件并按照其要求進行升級操作;否則,bootlaoder檢查系統(tǒng)升級過程標志區(qū)中的升級內容標志,由于上次中斷時的升級操作是針對文件系統(tǒng)區(qū),因此,該標志為2,于是bootloader讀取系統(tǒng)升級過程標志區(qū)中的升級數(shù)據(jù)長度參數(shù),獲取上次升級前的文件系統(tǒng)大小為1500K,然后bootloader從容錯區(qū)復制1500K的數(shù)據(jù)以覆蓋現(xiàn)在文件系統(tǒng)區(qū)中的數(shù)據(jù),并將系統(tǒng)升級過程標志區(qū)中的升級成功標志置為成功后,進行正常的系統(tǒng)初始化以及加載操作,以啟動該系統(tǒng)。由此可見,即使系統(tǒng)在升級時發(fā)生意外中斷的情況,系統(tǒng)依然是可啟動,并且是可用的。
容錯區(qū)的大小根據(jù)系統(tǒng)的非易失性存儲介質的大小以及對系統(tǒng)安全性和成本的綜合考慮來決定。如果系統(tǒng)對安全性要求較高,則建議采用容量較大的非易失性存儲介質,以保證容錯區(qū)的大小與壓縮后的操作系統(tǒng)和壓縮后的文件系統(tǒng)所占空間的最大值相同或稍大,這樣才能使經容錯恢復后的系統(tǒng)正常啟動。如果系統(tǒng)對安全性要求不高,也可采用容量較小的非易失性存儲介質,以節(jié)約成本。如果容錯區(qū)的大小比壓縮后的操作系統(tǒng)和壓縮后的文件系統(tǒng)所占空間的最大值小,則在刷新相應的區(qū)域時,容錯區(qū)有多大,就復制相應長度的數(shù)據(jù)放入容錯區(qū)。在這種情況下,當容錯區(qū)中的數(shù)據(jù)被恢復回去后,并不能保證系統(tǒng)能夠進入可使用狀態(tài)。但由于系統(tǒng)的bootloader總是可用的,即使發(fā)生了由于容錯區(qū)太小而使恢復回去的數(shù)據(jù)不可用的情況,系統(tǒng)至少能夠通過bootloader與升級服務器的交互來進行一次新的升級過程,這樣使系統(tǒng)避免了由于升級失敗而必須要使用特殊的設備來刷新該系統(tǒng)的情況。
以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內,所做的任何修改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內。
權利要求
1.一種嵌入式系統(tǒng)升級的方法,其特征在于,該方法包括以下步驟a、為嵌入式系統(tǒng)的非易失性存儲器上劃分邏輯區(qū)域,并指定一個區(qū)域用于保存升級操作前的待升級部分的數(shù)據(jù);b、當該系統(tǒng)需要升級時,下載所需的升級文件,并將非易失性存儲器上原有的待升級部分復制到非易失性存儲器的指定區(qū)域后,應用所下載的數(shù)據(jù)文件對該待升級部分進行升級操作;c、該系統(tǒng)下一次啟動時,判斷上次升級過程是否正常結束,如果是,則正常啟動該嵌入式系統(tǒng),否則將上次升級前復制到非易失性存儲器的指定區(qū)域數(shù)據(jù)恢復到原來的位置后,啟動該嵌入式系統(tǒng)。
2.根據(jù)權利要求1所述的方法,其特征在于,步驟a所述邏輯區(qū)域包括啟動代碼區(qū)、操作系統(tǒng)區(qū)、文件系統(tǒng)區(qū)、用于保存升級操作前的待升級部分數(shù)據(jù)的容錯區(qū)和系統(tǒng)升級過程標志區(qū)。
3.根據(jù)權利要求2所述的方法,其特征在于,所述系統(tǒng)升級過程標志區(qū)中至少包括升級成功標志、升級內容標志和升級數(shù)據(jù)長度參數(shù)。
4.根據(jù)權利要求1所述的方法,其特征在于,所述步驟b進一步包括應用所下載的數(shù)據(jù)文件對該待升級部分升級完畢后,再判斷非易失性存儲器邏輯區(qū)域中是否還有區(qū)域需要升級,如果是,則重復執(zhí)行步驟b,否則,正常啟動該嵌入式系統(tǒng)。
5.根據(jù)權利要求1或4所述的方法,其特征在于,所述步驟b進一步包括嵌入式系統(tǒng)引導程序通過外部連接方式與升級服務器進行連接,并根據(jù)從升級服務器下載的升級配置文件判斷該系統(tǒng)是否需要升級。
6.根據(jù)權利要求5所述的方法,其特征在于,所述外部連接方式包括網(wǎng)絡連接,串口連接、并口連接和USB連接。
7.根據(jù)權利要求3所述的方法,其特征在于,所述步驟b進一步包括將非易失性存儲器上原有的待升級部分復制到非易失性存儲器的指定區(qū)域后,將系統(tǒng)升級過程標志區(qū)中的升級成功標志置為否;當升級操作完畢后,再將系統(tǒng)升級過程標志區(qū)中的升級成功標志置為成功;步驟c所述上次升級過程是否正常結束是根據(jù)系統(tǒng)升級過程標志區(qū)中的升級成功標志來判斷的。
8.根據(jù)權利要求5所述的方法,其特征在于,所述步驟c為如果上次升級過程是非正常結束,該系統(tǒng)再次與升級服務器進行連接,并判斷是否連接成功,如果是,則執(zhí)行升級操作,否則,將上次升級前復制到非易失性存儲器的指定區(qū)域數(shù)據(jù)恢復到原來的位置后,啟動該嵌入式系統(tǒng)。
9.根據(jù)權利要求1所述的方法,其特征在于,所述步驟c進一步包括將上次升級前復制到非易失性存儲器的指定區(qū)域數(shù)據(jù)恢復到原來的位置后,重新執(zhí)行升級操作。
10.根據(jù)權利要求3所述的方法,其特征在于,所述步驟b進一步包括將非易失性存儲器上原有的待升級部分復制到非易失性存儲器的指定區(qū)域后,根據(jù)所復制數(shù)據(jù)的內容以及大小設置系統(tǒng)升級過程標志區(qū)中的升級內容標志和升級數(shù)據(jù)長度參數(shù);所述步驟c是根據(jù)系統(tǒng)升級過程標志區(qū)中的升級內容標志,獲得上次升級非正常結束前最后進行升級操作的對象,根據(jù)系統(tǒng)升級過程標志區(qū)中的升級數(shù)據(jù)長度參數(shù),獲得上次升級非正常結束前最后進行升級操作的數(shù)據(jù)長度后,從非易失性存儲器的指定區(qū)域復制的相應長度的數(shù)據(jù)重新寫入到原來的位置。
11.根據(jù)權利要求7所述的方法,其特征在于,所述系統(tǒng)升級過程標志區(qū)中的升級成功標志為非易失性存儲器中不同待升級邏輯區(qū)域共用的一個標志位,或不同待升級邏輯區(qū)域分別應用不同的標志位。
12.根據(jù)權利要求1所述的方法,其特征在于,所述非易失性存儲器上原有的待升級部分為待升級部分的全部數(shù)據(jù)或待升級部分的部分數(shù)據(jù)。
全文摘要
本發(fā)明提供了一種嵌入式系統(tǒng)升級的方法,通過為非易失性存儲器劃分邏輯區(qū)域,并將非易失性存儲器上原有待升級的數(shù)據(jù)復制到非易失性存儲器的指定區(qū)域后,再對該非易失性存儲器的某一部分進行升級操作,使系統(tǒng)在升級過程中出現(xiàn)意外中斷的情況,能將非易失性存儲器指定區(qū)域的數(shù)據(jù)恢復到原來的相應位置后,能夠再次啟動或自動重新進行升級。因此,本發(fā)明使嵌入式系統(tǒng)具有一定的自我修復能力,同時,由于應用本發(fā)明是對非易失性存儲器的部分區(qū)域進行升級,因此,實現(xiàn)了對升級過程的靈活管理。應用本發(fā)明,不需要增加任何硬件,也不依賴于特定的操作系統(tǒng),對于要求系統(tǒng)高可用性且又存在對系統(tǒng)升級需求的應用提供了一種低價可靠的解決方案。
文檔編號G06F12/06GK1581101SQ0315338
公開日2005年2月16日 申請日期2003年8月12日 優(yōu)先權日2003年8月12日
發(fā)明者張鵬, 劉旸 申請人:聯(lián)想(北京)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1