新四季網

嵌入式固件差分升級的文件生成和合成的方法和系統的製作方法

2023-12-02 11:31:51 1

嵌入式固件差分升級的文件生成和合成的方法和系統的製作方法
【專利摘要】本發明公開了嵌入式固件差分升級的文件生成和合成的方法和系統,包括以下步驟:A、差分升級文件的生成:根據終端已有固件和需要更新的固件比較出二者不同的數據字節,以數據字節為單位取得刪除包和增添包,將刪除包與增添包合成為升級包;B、下載所述升級包;C、差分升級文件的合成:將所述升級包解析為刪除包和增添包,將刪除包、增添包以及終端已有固件合成需要更新的固件。本發明通過區分兩個文件的中同與不同的數據字節,來打包數據進行差分升級的升級包,壓縮升級文件大小,縮短升級時間和減少資源消耗,實現固件的快速升級。
【專利說明】嵌入式固件差分升級的文件生成和合成的方法和系統

【技術領域】
[0001]本發明涉及通過空中接口技術,對嵌入式固件進行更新升級,具體是一種嵌入式固件差分升級文件的生成方法,以及通過差分升級文件合成相應嵌入式固件的合成方法和系統。

【背景技術】
[0002]隨著物聯網產業的興起,低功耗無線通信技術藍牙和Zigbee的發展,需求日新月異,需要能快速有效的對嵌入式產品進行升級。傳統的一對一式的固件升級技術,升級過程佔用太多資源,耗費數據流量巨大,升級過程緩慢,已經越來越不能滿足客戶的需求。
[0003]因此出現了一種通過差分包升級的方式,已經被越來越多的人採用。但是原有的差分包升級方式,針對手機等大型嵌入式軟體產品,不能適合基於低速率低功耗的藍牙和zigbee等無線通信技術空中接口升級的產品。如申請號為201210209785.4的發明專利《升級包生成方法和系統、動態文件差分升級的方法和終端》,這種升級方式是針對大型嵌入式系統固件,這種固件帶文件系統的,升級可控制區分的是每一個文件。
[0004]如圖1所示,該專利打包升級包的思想是,如果終端(手機)上已經擁有這個文件,打包升級包的時候,就不用打包進去,如果沒有這個文件,他就把它打包到升級包裡面去。這樣,因為大多數文件是相同的,沒有改變的,不同的文件就比較少,所以打包的升級包也是比較小的,能在一定程度上縮短升級時間和減少資源消耗。
[0005]這個升級思想比較宏觀。就好像一個書櫃,我們要更新書柜上面的書籍,就會看著書籍的名字和封面,就可以把需要撤下來的書籍就拿下來,需要更新上去的書籍就放上去。
[0006]這種升級思想雖然在一定程度上在一定程度上縮短升級時間和減少資源消耗,但仍未找到最為有效的方案,因為單個文件不是最小的數據單位,單個文件它包含大量的字節數據,當升級過程中需要更新的只是某些字節數據時,更新整個文件也是極其緩慢和浪費資源的,尤其是在低速率低功耗的藍牙和zigbee等無線通信技術空中接口升級的產品O


【發明內容】

[0007]為解決上述技術問題,本發明的目的是提供一種可實現快速升級的嵌入式固件差分升級文件生成和合成的方法和系統。
[0008]本發明採用的技術方案是:
嵌入式固件差分升級的文件生成和合成的方法,包括以下步驟:
A、差分升級文件的生成:根據終端已有固件和需要更新的固件比較出二者不同的數據字節,以數據字節為單位取得刪除包和增添包,將刪除包與增添包合成為升級包;
B、下載所述升級包;
C、差分升級文件的合成:將所述升級包解析為刪除包和增添包,將刪除包、增添包以及終端已有固件合成需要更新的固件。
[0009]進一步的,所述步驟A中刪除包包含的內容為終端已有固件有而需要更新的固件沒有的,增添包包含的內容為終端已有固件沒有而需要更新的固件有的。
[0010]進一步的,所述步驟C中終端已有固件參與合成的內容為終端已有固件和需要更新的固件二者相同的部分。
[0011]其中,所述升級包還包括升級包長度、升級包類型、刪除包長度、增添包長度、升級固件校驗值、文件校驗。
[0012]進一步的,所述步驟B下載完成之後、所述步驟C解析升級包之前設置有一校驗程序,當校驗成功則進入步驟C。
[0013]本發明還包括與上述方法基於同一個發明構思的一種嵌入式固件差分升級的文件生成和合成的系統,包括至少一伺服器和/或主機設備端、以及與伺服器和/或主機設備端交互的至少一終端;
該伺服器和/或主機設備端用於差分升級文件的生成:根據終端已有固件和需要更新的固件比較出二者不同的數據字節,以數據字節為單位取得刪除包和增添包,將刪除包與增添包合成為升級包;
該終端包括一協議棧模塊、一升級包解析模塊、一固件組裝模塊、一固件升級模塊,其中,協議棧模塊與伺服器和/或主機設備端交互以下載所述升級包,升級包解析模塊將所述升級包解析為刪除包和增添包,固件組裝模塊將刪除包、增添包以及終端已有固件合成需要更新的固件,固件升級模塊將終端已有固件升級為需要更新的固件。
[0014]進一步的,所述刪除包包含的內容為終端已有固件有而需要更新的固件沒有的,增添包包含的內容為終端已有固件沒有而需要更新的固件有的。
[0015]進一步的,所述終端已有固件參與合成的內容為終端已有固件和需要更新的固件二者相同的部分。
[0016]其中,所述升級包還包括升級包長度、升級包類型、刪除包長度、增添包長度、升級固件校驗值、文件校驗。
[0017]進一步的,下載升級包完成之後、解析升級包之前設置有一校驗程序,當校驗成功則進入解析環節。
[0018]本發明的有益效果:
本發明提出一種嵌入式固件差分升級文件生成和合成的方法和系統,通過區分兩個文件的中同與不同的數據字節,來打包數據進行差分升級的升級包,壓縮升級文件大小,縮短升級時間和減少資源消耗,實現固件的快速升級。

【專利附圖】

【附圖說明】
[0019]下面結合附圖對本發明的【具體實施方式】做進一步的說明。
[0020]圖1是現有固件升級方案流程圖;
圖2是本發明DBOTA升級系統結構圖;
圖3是固件升級包結構圖;
圖4是本發明實施例固件升級包生成裝置框圖;
圖5是本發明實施例固件升級包合成裝置框圖;
圖6是本發明實施例所述固件升級方案流程圖。
[0021]

【具體實施方式】
首選,需要說明的是,在文件系統中,靜態文件是指在終端中版本發布時就已經確定,且不會由於用戶使用/修改配置等因素改變的文件,這種文件用戶不能通過菜單等方式修改,對於同一個版本的不同終端來說,是相同的,本實施例中所述的固件即靜態文件。
[0022]參考圖2所示,為本發明的一種嵌入式固件差分升級的文件生成和合成的系統,包括一伺服器和/或主機設備端、以及與伺服器和/或主機設備端交互的一終端,該終端為客戶端或終端設備端;
該伺服器和/或主機設備端用於差分升級文件的生成:根據終端已有固件和需要更新的固件比較出二者不同的數據字節,以數據字節為單位取得刪除包和增添包(二者稱為差分包),將刪除包與增添包合成為升級包;
該終端包括一協議棧模塊、一升級包解析模塊、一固件組裝模塊、一固件升級模塊,其中,協議棧模塊與伺服器和/或主機設備端交互以下載所述升級包,升級包解析模塊將所述升級包解析為刪除包和增添包,固件組裝模塊將刪除包、增添包以及終端已有固件合成需要更新的固件,並通知協議棧模塊固件的組裝結果;固件升級模塊將終端已有固件升級為需要更新的固件,並通知協議棧模塊固件的升級結果。
[0023]在取差分包的過程中,其工作原理是通過對原始固件進行操作,刪除不同的部分,添加沒有的部分,保持相同的部分,從而獲得了我們需要進行升級的固件。故所述刪除包包含的內容為終端已有固件有而需要更新的固件沒有的,增添包包含的內容為終端已有固件沒有而需要更新的固件有的,而所述終端已有固件參與合成的內容為終端已有固件和需要更新的固件二者相同的部分。
[0024]其中,如圖3所示,所述升級包包括升級包長度、升級包類型、刪除包、增添包、刪除包長度、增添包長度、升級固件校驗值、文件校驗。
[0025]本發明還包括與上述系統基於同一個發明構思的嵌入式固件差分升級的文件生成和合成的方法,包括以下步驟:
A、差分升級文件的生成:如圖4,根據終端已有固件和需要更新的固件比較出二者不同的數據字節,以數據字節為單位取得刪除包和增添包(二者稱為差分包),將刪除包與增添包合成為升級包;
B、下載所述升級包;
C、差分升級文件的合成:如圖5,將所述升級包解析為刪除包和增添包,將刪除包、增添包以及終端已有固件合成需要更新的固件。
[0026]在上述取差分包的過程中,其工作原理是通過對原始固件進行操作,刪除不同的部分,添加沒有的部分,保持相同的部分,從而獲得了我們需要進行升級的固件。故所述步驟A中刪除包包含的內容為終端已有固件有而需要更新的固件沒有的,增添包包含的內容為終端已有固件沒有而需要更新的固件有的;所述步驟C中終端已有固件參與合成的內容為終端已有固件和需要更新的固件二者相同的部分。
[0027]其中,如圖3,所述升級包還包括升級包長度、升級包類型、刪除包、增添包、刪除包長度、增添包長度、升級固件校驗值、文件校驗。
[0028]如圖6所示,本發明實施例所述固件升級方案流程,包括具體步驟:
Ql、開始升級流程; Q2、終端接收到主機或伺服器升級固件的通知;
Q3、協議棧模塊與伺服器交互通信,下載升級包;
Q4,檢驗是否下載完成,若完成則進入下一步,否則返回Q3 ;
Q5、通過升級包的文件校驗進行校驗,校驗通過進入下一步,否則跳至Q13 ;
Q6、解析模塊對升級包進行解析;
Q7、判斷是否解析成功,若解析成功則進入下一步,否則跳至Q13 ;
Q8、固件組裝模塊對解析的數據和原有固件數據進行組裝;
Q9、檢驗是否組裝成功,若組裝成功則進入下一步,否則跳至Q13 ;
Q10、固件升級模塊使用組裝後的固件進行升級;
Q11、檢驗是否升級成功,若升級成功則進入Q13,否則進入Q12;
Q12、終端或客戶端重啟,回滾到升級前的系統;
Q13、上報伺服器升級結果;
如上所述,本發明提出一種嵌入式固件差分升級文件生成和合成的方法和系統,通過區分兩個文件的中同與不同的數據字節,來打包數據進行差分升級的升級包,壓縮升級文件大小,相比傳統技術以文件為最小單位差分升級,本發明可以更好的縮短升級時間和減少資源消耗,實現固件的快速升級,尤其是適用於中小型嵌入式系統固件,當然大型嵌入式系統也是可以實現的,升級小型的嵌入式產品一般只需要一個文件就可以了。當然,我們升級的方法,升級兩個,三個,多個的文件也是沒有問題的。
[0029]以上所述僅為本發明的優先實施方式,本發明並不限定於上述實施方式,只要以基本相同手段實現本發明目的的技術方案都屬於本發明的保護範圍之內。
【權利要求】
1.嵌入式固件差分升級的文件生成和合成的方法,其特徵在於包括以下步驟: A、差分升級文件的生成:根據終端已有固件和需要更新的固件比較出二者不同的數據字節,以數據字節為單位取得刪除包和增添包,將刪除包與增添包合成為升級包; B、下載所述升級包; C、差分升級文件的合成:將所述升級包解析為刪除包和增添包,將刪除包、增添包以及終端已有固件合成需要更新的固件。
2.根據權利要求1所述的嵌入式固件差分升級的文件生成和合成的方法,其特徵在於:所述步驟A中刪除包包含的內容為終端已有固件有而需要更新的固件沒有的,增添包包含的內容為終端已有固件沒有而需要更新的固件有的。
3.根據權利要求2所述的嵌入式固件差分升級的文件生成和合成的方法,其特徵在於:所述步驟C中終端已有固件參與合成的內容為終端已有固件和需要更新的固件二者相同的部分。
4.根據權利要求1所述的嵌入式固件差分升級的文件生成和合成的方法,其特徵在於:所述升級包還包括升級包長度、升級包類型、刪除包長度、增添包長度、升級固件校驗值、文件校驗。
5.根據權利要求4所述的嵌入式固件差分升級的文件生成和合成的方法,其特徵在於:所述步驟B下載完成之後、所述步驟C解析升級包之前設置有一校驗程序,當校驗成功則進入步驟C。
6.嵌入式固件差分升級的文件生成和合成的系統,其特徵在於: 包括至少一伺服器和/或主機設備端、以及與伺服器和/或主機設備端交互的至少一終端; 該伺服器和/或主機設備端用於差分升級文件的生成:根據終端已有固件和需要更新的固件比較出二者不同的數據字節,以數據字節為單位取得刪除包和增添包,將刪除包與增添包合成為升級包; 該終端包括一協議棧模塊、一升級包解析模塊、一固件組裝模塊、一固件升級模塊,其中,協議棧模塊與伺服器和/或主機設備端交互以下載所述升級包,升級包解析模塊將所述升級包解析為刪除包和增添包,固件組裝模塊將刪除包、增添包以及終端已有固件合成需要更新的固件,固件升級模塊將終端已有固件升級為需要更新的固件。
7.根據權利要求6所述的嵌入式固件差分升級的文件生成和合成的系統,其特徵在於:所述刪除包包含的內容為終端已有固件有而需要更新的固件沒有的,增添包包含的內容為終端已有固件沒有而需要更新的固件有的。
8.根據權利要求7所述的嵌入式固件差分升級的文件生成和合成的系統,其特徵在於:所述終端已有固件參與合成的內容為終端已有固件和需要更新的固件二者相同的部分。
9.根據權利要求6所述的嵌入式固件差分升級的文件生成和合成的系統,其特徵在於:所述升級包還包括升級包長度、升級包類型、刪除包長度、增添包長度、升級固件校驗值、文件校驗。
10.根據權利要求9所述的嵌入式固件差分升級的文件生成和合成的系統,其特徵在於:下載升級包完成之後、解析升級包之前設置有一校驗程序,當校驗成功則進入解析環 節。
【文檔編號】G06F9/445GK104184814SQ201410422666
【公開日】2014年12月3日 申請日期:2014年8月25日 優先權日:2014年8月25日
【發明者】盧軍營, 沈阜山 申請人:中山市永衡日用製品有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀