一種防止固件升級(jí)失敗的方法和設(shè)備的制作方法
【專(zhuān)利摘要】本發(fā)明是一種防止固件升級(jí)失敗的方法和設(shè)備,方法包含以下步驟:1)啟動(dòng)設(shè)備;2)通過(guò)了合法性和一致性校驗(yàn);3)未通過(guò)合法性和一致性校驗(yàn),則在可更新固件和原始固件中選擇一個(gè)較佳的版本,執(zhí)行固件升級(jí)程序;4)固件升級(jí)程序完成后,重新啟動(dòng)設(shè)備,重復(fù)步驟1)。優(yōu)點(diǎn):升級(jí)前進(jìn)行合法性校驗(yàn),排除文件損壞的固件、版本號(hào)不符合的固件或者與設(shè)備型號(hào)不匹配的固件,提高升級(jí)成功率;每次設(shè)備啟動(dòng)時(shí)都進(jìn)行一致性校驗(yàn),當(dāng)應(yīng)用程序被意外修改、損壞或刪除后能夠自動(dòng)恢復(fù);當(dāng)升級(jí)過(guò)程由于斷電或強(qiáng)制重啟造成中斷后,能夠自動(dòng)恢復(fù)升級(jí),最差的情況出現(xiàn),也能夠啟動(dòng)一個(gè)受保護(hù)的最小系統(tǒng)以供重新升級(jí),不會(huì)造成設(shè)備無(wú)法運(yùn)行。
【專(zhuān)利說(shuō)明】一種防止固件升級(jí)失敗的方法和設(shè)備
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及的是一種防止固件升級(jí)失敗的方法和設(shè)備,屬于數(shù)字信息傳輸【技術(shù)領(lǐng)域】。
【背景技術(shù)】
[0002]固件是一種嵌入在硬件設(shè)備中的軟件,通常位于特殊應(yīng)用集成電路(ASIC)或可編程邏輯器件(PLD)中的閃存、電可擦除可編程只讀存儲(chǔ)器(EEPROM)或可編程只讀存儲(chǔ)器(PROM)里,有的可以讓用戶(hù)更新。
[0003]隨著相關(guān)領(lǐng)域技術(shù)和用戶(hù)需求的日新月異,廠商一般會(huì)通過(guò)定期的固件升級(jí)來(lái)提升設(shè)備的性能及可靠性、修復(fù)現(xiàn)有的程序問(wèn)題或者為設(shè)備增加新的功能,從而使設(shè)備保持在最佳的工作狀態(tài)。
[0004]為了升級(jí)設(shè)備的固件,現(xiàn)有技術(shù)通常采用以下步驟:1.將新固件包復(fù)制到需要升級(jí)的設(shè)備存儲(chǔ)器中;2.設(shè)備對(duì)新固件包校驗(yàn),確認(rèn)新固件包的完整性;3.對(duì)新固件包進(jìn)行解包操作,用新固件包中的文件內(nèi)容覆蓋系統(tǒng)中原有的固件內(nèi)容。不難發(fā)現(xiàn),上述方案步驟3的解包操作中,如果在寫(xiě)入時(shí)出現(xiàn)斷電或強(qiáng)制重啟的方式中斷升級(jí)過(guò)程,那么有可能造成文件損壞,固件內(nèi)容不完整,導(dǎo)致設(shè)備無(wú)法正常啟動(dòng),或者需要使用非常規(guī)方式重新刷入固件。完成這個(gè)不可中斷的操作過(guò)程的在一些存儲(chǔ)介質(zhì)上比較耗時(shí),無(wú)論發(fā)生的幾率大小,固件升級(jí)失敗后造成的后果是非常嚴(yán)重的,存在較大的風(fēng)險(xiǎn)。
【發(fā)明內(nèi)容】
[0005]本發(fā)明提出的是一種防止固件升級(jí)失敗的方法和設(shè)備,其目的旨在解決現(xiàn)有技術(shù)所存在的上述的缺陷,有效防止固件升級(jí)失敗。
[0006]本發(fā)明的技術(shù)解決方案:一種防止固件升級(jí)失敗的方法,包含以下步驟:
1)啟動(dòng)設(shè)備,開(kāi)機(jī)進(jìn)入操作系統(tǒng)后,進(jìn)入固件校驗(yàn)程序,對(duì)可更新固件中的文件內(nèi)容和已安裝的應(yīng)用程序文件內(nèi)容進(jìn)行合法性和一致性校驗(yàn);
2)通過(guò)了合法性和一致性校驗(yàn),則退出固件校驗(yàn)程序,執(zhí)行已安裝的應(yīng)用程序;
3)未通過(guò)合法性和一致性校驗(yàn),則在可更新固件和原始固件中選擇一個(gè)較佳的版本,執(zhí)行固件升級(jí)程序;
4 )固件升級(jí)程序完成后,重新啟動(dòng)設(shè)備,重復(fù)步驟2 )進(jìn)入固件校驗(yàn)程序。
[0007]—種防止固件升級(jí)失敗的設(shè)備,其特征是包含只讀存儲(chǔ)裝置和可讀寫(xiě)存儲(chǔ)裝置,所述的只讀存儲(chǔ)裝置,包含以下模塊:a.操作系統(tǒng)模塊,用于管理設(shè)備的硬件與軟件資源,為其他模塊提供運(yùn)行環(huán)境;b.固件校驗(yàn)和升級(jí)模塊,用于在應(yīng)用程序模塊損壞或需要更新的情況下,根據(jù)可更新固件存儲(chǔ)模塊的內(nèi)容,自動(dòng)修復(fù)應(yīng)用程序模塊,從而確保應(yīng)用程序模塊總是能夠工作,或者自動(dòng)更新應(yīng)用程序模塊,使其保持在最佳的工作狀態(tài),該模塊還用于在可更新固件存儲(chǔ)模塊損壞的情況下,使用原始固件存儲(chǔ)模塊自動(dòng)替換可更新固件存儲(chǔ)模塊,從而確?;謴?fù)設(shè)備的基本功能,以便重新升級(jí);c.原始固件存儲(chǔ)模塊,用于保存一個(gè)一定能夠正常運(yùn)行的版本的固件,本身不可執(zhí)行;
所述的可讀寫(xiě)存儲(chǔ)裝置,包含以下模塊:a.可更新固件存儲(chǔ)模塊,用于保存新版本的固件,本身不可執(zhí)行;b.應(yīng)用程序模塊,用于提供設(shè)備的實(shí)際功能,應(yīng)用程序可以在操作系統(tǒng)模塊提供的環(huán)境下執(zhí)行,在通過(guò)固件校驗(yàn)?zāi)K的校驗(yàn)之后啟動(dòng),本模塊所述的應(yīng)用程序來(lái)自可更新固件存儲(chǔ)模塊。
[0008]本發(fā)明與現(xiàn)有技術(shù)相比,主要區(qū)別及其效果在于:
升級(jí)前進(jìn)行合法性校驗(yàn),排除文件損壞的固件、版本號(hào)不符合的固件或者與設(shè)備型號(hào)不匹配的固件,提高升級(jí)成功率;
每次設(shè)備啟動(dòng)時(shí)都進(jìn)行一致性校驗(yàn),當(dāng)應(yīng)用程序被意外修改、損壞或刪除后能夠自動(dòng)恢復(fù);
當(dāng)升級(jí)過(guò)程由于斷電或強(qiáng)制重啟造成中斷后,能夠自動(dòng)恢復(fù)升級(jí),最差的情況(如通過(guò)校驗(yàn)后的固件仍然由于某種原因損壞)出現(xiàn),也能夠啟動(dòng)一個(gè)受保護(hù)的最小系統(tǒng)以供重新升級(jí),不會(huì)造成設(shè)備無(wú)法運(yùn)行。
【專(zhuān)利附圖】
【附圖說(shuō)明】
[0009]圖1是本發(fā)明A實(shí)施方式的流程圖。
[0010]圖2是本發(fā)明B實(shí)施方式的流程圖。
[0011]圖3是一種防止固件升級(jí)失敗的設(shè)備結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0012]一種防止固件升級(jí)失敗的方法,包括以下步驟:
1)啟動(dòng)設(shè)備,開(kāi)機(jī)進(jìn)入操作系統(tǒng)后,進(jìn)入固件校驗(yàn)程序,對(duì)可更新固件中的文件內(nèi)容和已安裝的應(yīng)用程序文件內(nèi)容進(jìn)行合法性和一致性校驗(yàn);
2)通過(guò)了合法性和一致性校驗(yàn),則退出固件校驗(yàn)程序,執(zhí)行已安裝的應(yīng)用程序;
3)未通過(guò)合法性和一致性校驗(yàn),則在可更新固件和原始固件中選擇一個(gè)較佳的版本,執(zhí)行固件升級(jí)程序;
4)固件升級(jí)程序完成后,重新啟動(dòng)設(shè)備,重復(fù)步驟2)進(jìn)入固件校驗(yàn)程序。
[0013]所述的操作系統(tǒng)、固件校驗(yàn)程序以及原始固件和固件升級(jí)程序、可更新固件都保存在設(shè)備中的只讀存儲(chǔ)器中,其內(nèi)容可以通過(guò)程序或者用戶(hù)操作修改。
[0014]所述的保存在可讀寫(xiě)存儲(chǔ)器中,其內(nèi)容全部來(lái)自可更新固件或者原始固件。
[0015]所述的合法性和一致性的校驗(yàn),包含以下步驟:a.檢查可更新固件是否能夠支持該設(shè)備的型號(hào)或固有識(shí)別號(hào)是否合法;b.使用冗余校驗(yàn)算法CRC、MD5或SHAl ;
c.將可更新固件中的文件和已安裝的應(yīng)用程序文件逐一進(jìn)行比對(duì),如果已安裝的應(yīng)用程序的任何一個(gè)文件丟失或者校驗(yàn)結(jié)果不符,則一致性校驗(yàn)不通過(guò)。
[0016]所述的原始固件,它是具有完整功能的普通固件或是為了減少存儲(chǔ)空間占用而定制的簡(jiǎn)化版本,該簡(jiǎn)化版本至少應(yīng)能夠提供固件升級(jí)的功能。
[0017]所述的在可更新固件未損壞的情況下,優(yōu)先選擇可更新固件,否則選擇原始固件。
[0018]所述的在本權(quán)利要求涉及的運(yùn)行環(huán)境中,無(wú)法通過(guò)應(yīng)用程序或者用戶(hù)操作的方式修改其中的內(nèi)容,只讀存儲(chǔ)器使用固化的硬件實(shí)現(xiàn),或使用底層軟件虛擬保護(hù)的方式實(shí)現(xiàn)。[0019]實(shí)施例1
如圖1所示,
在步驟SllO中,用戶(hù)將新版本的固件包以HTTP POST、FTP、TFTP、SCP或者讀取外部存儲(chǔ)卡的方式上傳到設(shè)備中的臨時(shí)存儲(chǔ)空間(如RAM)中。
[0020]接著,在步驟Slll中,對(duì)上傳的固件包進(jìn)行完整性校驗(yàn),在本實(shí)施方式中,固件包是由應(yīng)用程序文件經(jīng)過(guò)tar打包,再加上gz、bz2等算法壓縮后制作成的標(biāo)準(zhǔn)壓縮包,將固件包的文件內(nèi)容解壓縮到臨時(shí)存儲(chǔ)空間,如果能夠正確解壓縮,那么說(shuō)明固件包是完整的,接著,用這個(gè)固件包覆蓋現(xiàn)有的可更新固件,進(jìn)入步驟S112 ;如果不能夠正確解壓縮,則刪除這個(gè)固件包,中止升級(jí)程序,進(jìn)入步驟S116。
[0021]在步驟S112中,重新啟動(dòng)設(shè)備,進(jìn)入固件校驗(yàn)程序,再次將固件包解壓縮到臨時(shí)存儲(chǔ)空間,使用冗余校驗(yàn)算法(如CRC、MD5或SHA1,不同算法的精確性有差異,但都可以實(shí)現(xiàn)一致性校驗(yàn)的功能)對(duì)解壓縮的文件內(nèi)容計(jì)算,得到校驗(yàn)值A(chǔ)。
[0022]接著,在步驟S113中,使用冗余校驗(yàn)算法對(duì)現(xiàn)有應(yīng)用程序的文件內(nèi)容計(jì)算,得到校驗(yàn)值B。
[0023]接著,在步驟SI 14中,逐一將校驗(yàn)值A(chǔ)與校驗(yàn)值B做比較,如果所有文件的A校驗(yàn)值與B校驗(yàn)值都符合,進(jìn)入步驟SI 16,否則進(jìn)入升級(jí)步驟SI 15。
[0024]在步驟S115中,使用步驟S112解壓縮的文件覆蓋應(yīng)用程序,完成升級(jí),進(jìn)入步驟S116,需要說(shuō)明的是,如果本步驟執(zhí)行過(guò)程中由于斷電或強(qiáng)制重啟造成升級(jí)過(guò)程中斷,那么在重新啟動(dòng)設(shè)備后執(zhí)行的步驟S114中,將無(wú)法通過(guò)校驗(yàn),導(dǎo)致重新進(jìn)入本步驟。
[0025]在步驟S116中,啟動(dòng)應(yīng)用程序。
[0026]實(shí)施例2
本實(shí)施方式在第一實(shí)施方式的基礎(chǔ)上進(jìn)行了改進(jìn),主要改進(jìn)之處在于,在本實(shí)施方式中,改進(jìn)了第一實(shí)施方式的校驗(yàn)方法,使用Linux系統(tǒng)中的軟件包管理系統(tǒng)(如DEB或RPM)對(duì)應(yīng)用程序進(jìn)行自動(dòng)安裝、配置、卸載和升級(jí)。
[0027]如圖2所示,在步驟S210中,用戶(hù)將新版本的固件包上傳到設(shè)備中的臨時(shí)存儲(chǔ)空間中。
[0028]接著,在步驟S211中,對(duì)上傳的固件包進(jìn)行完整性校驗(yàn),在本實(shí)施方式中,固件包是操作系統(tǒng)能夠識(shí)別的標(biāo)準(zhǔn)安裝包,可以提供以下功能:根據(jù)可更新固件的版本號(hào)(通常有主版本號(hào)、次版本號(hào)和修訂版本號(hào))判斷現(xiàn)有的應(yīng)用程序是否需要升級(jí);根據(jù)可更新固件的依賴(lài)關(guān)系,防止在設(shè)備上安裝錯(cuò)誤的固件,如果通過(guò)本步驟的校驗(yàn),進(jìn)入步驟S212,否則刪除這個(gè)固件包,中止升級(jí)程序,進(jìn)入步驟S216。
[0029]在步驟S212中,重新啟動(dòng)設(shè)備,進(jìn)入固件校驗(yàn)程序,提取固件包中所有文件的校驗(yàn)值(一般以文本文件方式保存在標(biāo)準(zhǔn)安裝包中),作為校驗(yàn)值A(chǔ)。
[0030]接著,在步驟S213中,使用冗余校驗(yàn)算法對(duì)現(xiàn)有應(yīng)用程序的文件內(nèi)容計(jì)算,得到校驗(yàn)值B。
[0031 ] 接著,在步驟S214中,逐一將校驗(yàn)值A(chǔ)與校驗(yàn)值B做比較,如果所有文件的A校驗(yàn)值與B校驗(yàn)值都符合,進(jìn)入步驟S216,否則進(jìn)入升級(jí)步驟S216。
[0032]在步驟S215中,啟動(dòng)軟件包管理系統(tǒng)安裝固件包,如果已有舊版本,系統(tǒng)會(huì)先刪除舊版本再安裝新版本,這樣舊版本中的垃圾文件不會(huì)殘留在設(shè)備中,完成升級(jí),進(jìn)入步驟S216,需要說(shuō)明的是,如果本步驟執(zhí)行過(guò)程中由于斷電或強(qiáng)制重啟造成升級(jí)過(guò)程中斷,那么在重新啟動(dòng)設(shè)備后執(zhí)行的步驟S214中,將無(wú)法通過(guò)校驗(yàn),導(dǎo)致重新進(jìn)入本步驟。
[0033]在步驟S216中,啟動(dòng)應(yīng)用程序。
[0034]如圖3所示,一種防止固件升級(jí)失敗的設(shè)備,該設(shè)備包含:只讀存儲(chǔ)裝置A和可讀寫(xiě)存儲(chǔ)裝置B。其中,只讀存儲(chǔ)裝置的實(shí)現(xiàn)可以使用專(zhuān)門(mén)的硬件R0M,但是為了節(jié)省成本,本實(shí)施方案中使用一塊普通的IGB存儲(chǔ)卡來(lái)實(shí)現(xiàn)上述兩個(gè)裝置。
[0035]具體的,在這個(gè)存儲(chǔ)卡上劃分兩個(gè)分區(qū),第一分區(qū)用于實(shí)現(xiàn)只讀存儲(chǔ)裝置,第一分區(qū)的大小需要根據(jù)具體的操作系統(tǒng)大小確定;將存儲(chǔ)卡的剩余容量分配給第二分區(qū),用于實(shí)現(xiàn)可讀寫(xiě)存儲(chǔ)裝置。
[0036]其中,操作系統(tǒng)Al和其他需要保護(hù)的程序如固件校驗(yàn)程序A2和升級(jí)程序A3以及原始固件A4存儲(chǔ)在第一分區(qū),第一分區(qū)的文件系統(tǒng)格式應(yīng)采用系統(tǒng)內(nèi)核固有支持的格式,采用Windows PE、或者裁剪后的Linux系統(tǒng),一般最少需要100MB,如果設(shè)備需要較全面的圖形界面支持,則需要300MB,較小的操作系統(tǒng)適合基于半導(dǎo)體存儲(chǔ)器的嵌入式設(shè)備。
[0037]其中,可更新固件BI和應(yīng)用程序模塊B2存儲(chǔ)在第二分區(qū),在存在多個(gè)可選擇方案的情況下,第二分區(qū)應(yīng)該優(yōu)先選擇能夠支持操作系統(tǒng)特定功能的文件系統(tǒng)格式,以便能夠使用相應(yīng)的功能,如Linux可以使用支持符號(hào)連接的Ext3格式,Windows則可以使用FAT32或者NTFS格式。
[0038]需要說(shuō)明的是,從只讀介質(zhì)上啟動(dòng)操作系統(tǒng)有以下步驟:
S310.載入引導(dǎo)程序(boot loader),簡(jiǎn)單地說(shuō),引導(dǎo)程序在操作系統(tǒng)運(yùn)行之前運(yùn)行的一段程序,它可以將系統(tǒng)的軟硬件環(huán)境帶到一個(gè)合適狀態(tài),為運(yùn)行操作系統(tǒng)做好準(zhǔn)備。
[0039]S311.引導(dǎo)程序?qū)⒉僮飨到y(tǒng)內(nèi)核載入內(nèi)存,然后將控制權(quán)轉(zhuǎn)交給內(nèi)核。
[0040]S312.接著,內(nèi)核載入所需的其他系統(tǒng)文件,完成操作系統(tǒng)啟動(dòng)。這些系統(tǒng)文件通常是壓縮處理且可虛擬掛載的鏡像文件的形式,例如Windows系統(tǒng)的WM,Linux系統(tǒng)的SquashFS,大幅減少了所需的存儲(chǔ)空間。
[0041]需要說(shuō)明的是,S312所述載入所需的其他系統(tǒng)文件,可以采用以下兩種方式:S312a.將系統(tǒng)文件全部加載到內(nèi)存中,從內(nèi)存中啟動(dòng),這種方式內(nèi)存大小要求較高,啟
動(dòng)速度快。
[0042]S312b.直接從只讀介質(zhì)啟動(dòng)系統(tǒng)文件,這種方式對(duì)內(nèi)存大小的要求較低,但會(huì)增加啟動(dòng)時(shí)間,在某些低速存儲(chǔ)介質(zhì)上,系統(tǒng)的整體運(yùn)行速度可能不理想。
[0043]進(jìn)一步的,在S312所屬的系統(tǒng)文件載入后,這些系統(tǒng)文件所在的分區(qū)會(huì)進(jìn)入虛擬寫(xiě)保護(hù)模式,在其運(yùn)行環(huán)境下,無(wú)法對(duì)操作系統(tǒng)文件和其他只讀存儲(chǔ)裝置進(jìn)行實(shí)際的寫(xiě)入操作,所以不會(huì)損壞其中的數(shù)據(jù),系統(tǒng)在重啟動(dòng)后,內(nèi)存中的臨時(shí)改動(dòng)全部丟失,系統(tǒng)恢復(fù)到最初狀態(tài)。
[0044]上述實(shí)施方式的步驟可以被認(rèn)為是用于實(shí)現(xiàn)邏輯功能的一系列指令列表,其的全部或部分功能可以使用軟件、固件、硬件或其組合來(lái)實(shí)現(xiàn)。例如,將軟件或固件存儲(chǔ)在機(jī)器可讀介質(zhì)上,通過(guò)相應(yīng)的系統(tǒng)程序來(lái)執(zhí)行。
[0045]其中,機(jī)器可讀介質(zhì)可以使用下列方式實(shí)現(xiàn):包括半導(dǎo)體隨機(jī)存取芯片(如RAM)、浮柵晶體管存儲(chǔ)器(如閃存、可擦除可編程只讀存儲(chǔ)器EPR0M、電可擦除可編程只讀存儲(chǔ)器EEPR0M)、磁盤(pán)、光盤(pán)和網(wǎng)絡(luò)存儲(chǔ)器。
【權(quán)利要求】
1.一種防止固件升級(jí)失敗的方法,其特征是該方法包括以下步驟:1)啟動(dòng)設(shè)備,開(kāi)機(jī)進(jìn)入操作系統(tǒng)后,進(jìn)入固件校驗(yàn)程序,對(duì)可更新固件中的文件內(nèi)容和已安裝的應(yīng)用程序文件內(nèi)容進(jìn)行合法性和一致性校驗(yàn);2)通過(guò)了合法性和一致性校驗(yàn),則退出固件校驗(yàn)程序,執(zhí)行已安裝的應(yīng)用程序;3)未通過(guò)合法性和一致性校驗(yàn),則在可更新固件和原始固件中選擇一個(gè)較佳的版本,執(zhí)行固件升級(jí)程序;4)固件升級(jí)程序完成后,重新啟動(dòng)設(shè)備,重復(fù)步驟I)進(jìn)入固件校驗(yàn)程序。
2.根據(jù)權(quán)利要求1所述的一種防止固件升級(jí)失敗的方法,其特征是所述的操作系統(tǒng)、固件校驗(yàn)程序以及原始固件和固件升級(jí)程序、可更新固件都保存在設(shè)備中的只讀存儲(chǔ)器中,其內(nèi)容通過(guò)程序或者用戶(hù)操作修改。
3.根據(jù)權(quán)利要求1所述的一種防止固件升級(jí)失敗的方法,其特征是所述的保存在設(shè)備中的可讀寫(xiě)存儲(chǔ)器中,其內(nèi)容全部來(lái)自可更新固件或者原始固件。
4.根據(jù)權(quán)利要求1所述的一種防止固件升級(jí)失敗的方法,其特征是所述的合法性和一致性的校驗(yàn),包含以下步驟:a.檢查可更新固件是否能夠支持該設(shè)備的型號(hào)或固有識(shí)別號(hào)是否合法;b.使用冗余校驗(yàn)算法CRC、MD5或SHAl ;c.將可更新固件中的文件和已安裝的應(yīng)用程序文件逐一進(jìn)行比對(duì),如果已安裝的應(yīng)用程序的任何一個(gè)文件丟失或者校驗(yàn)結(jié)果不符,則一致性校驗(yàn)不通過(guò)。
5.根據(jù)權(quán)利要求1所述的一種防止固件升級(jí)失敗的方法,其特征是所述的原始固件,它是具有完整功能的普通固件或是為了減少存儲(chǔ)空間占用而定制的簡(jiǎn)化版本,該簡(jiǎn)化版本至少應(yīng)能夠提供固件升級(jí)的功能。
6.根據(jù)權(quán)利要求1所述的一種防止固件升級(jí)失敗的方法,其特征是所述的在可更新固件未損壞的情況下,優(yōu)先選擇可更新固件,否則選擇原始固件。
7.根據(jù)權(quán)利要求1所述的一種防止固件升級(jí)失敗的方法,其特征是所述的在本權(quán)利要求涉及的運(yùn)行環(huán)境中,無(wú)法通過(guò)應(yīng)用程序或者用戶(hù)操作的方式修改其中的內(nèi)容,只讀存儲(chǔ)器使用固化的硬件實(shí)現(xiàn),或使用底層軟件虛擬保護(hù)的方式實(shí)現(xiàn)。
8.一種防止固件升級(jí)失敗的設(shè)備,其特征是包含只讀存儲(chǔ)裝置和可讀寫(xiě)存儲(chǔ)裝置,所述的只讀存儲(chǔ)裝置,包含以下模塊:a.操作系統(tǒng)模塊,用于管理設(shè)備的硬件與軟件資源,為其他模塊提供運(yùn)行環(huán)境;b.固件校驗(yàn)和升級(jí)模塊,用于在應(yīng)用程序模塊損壞或需要更新的情況下,根據(jù)可更新固件存儲(chǔ)模塊的內(nèi)容,自動(dòng)修復(fù)應(yīng)用程序模塊,從而確保應(yīng)用程序模塊總是能夠工作,或者自動(dòng)更新應(yīng)用程序模塊,使其保持在最佳的工作狀態(tài),該模塊還用于在可更新固件存儲(chǔ)模塊損壞的情況下,使用原始固件存儲(chǔ)模塊自動(dòng)替換可更新固件存儲(chǔ)模塊,從而確保恢復(fù)設(shè)備的基本功能,以便重新升級(jí);c.原始固件存儲(chǔ)模塊,用于保存一個(gè)一定能夠正常運(yùn)行的版本的固件,本身不可執(zhí)行;所述的可讀寫(xiě)存儲(chǔ)裝置,包含以下模塊:a.可更新固件存儲(chǔ)模塊,用于保存新版本的固件,本身不可執(zhí)行;b.應(yīng)用程序模塊,用于提供設(shè)備的實(shí)際功能,應(yīng)用程序可以在操作系統(tǒng)模塊提供的環(huán)境下執(zhí)行,在通過(guò)固件校驗(yàn)?zāi)K的校驗(yàn)之后啟動(dòng),本模塊所述的應(yīng)用程序來(lái)自可更新固件存儲(chǔ)模塊。
【文檔編號(hào)】G06F11/14GK103455354SQ201310400667
【公開(kāi)日】2013年12月18日 申請(qǐng)日期:2013年9月6日 優(yōu)先權(quán)日:2013年9月6日
【發(fā)明者】王強(qiáng), 吳磊, 衛(wèi)剛 申請(qǐng)人:南京南自信息技術(shù)有限公司