国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種實(shí)現(xiàn)ota升級(jí)的方法和終端的制作方法

      文檔序號(hào):9579083閱讀:482來源:國(guó)知局
      一種實(shí)現(xiàn)ota升級(jí)的方法和終端的制作方法
      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種實(shí)現(xiàn)OTA (Over The Air,空中下載技術(shù))升級(jí)的方法和終端。
      【背景技術(shù)】
      [0002]隨著智能手機(jī)愈來愈廣泛的普及,人們對(duì)智能手機(jī)的要求也越來越高,尤其是手機(jī)的信息安全更是備受重視。系統(tǒng)開發(fā)者以及設(shè)備制造商也在從各個(gè)方面嘗試加強(qiáng)手機(jī)的安全性。Android智能手機(jī)系統(tǒng)開發(fā)商Google在最新版本中推出了系統(tǒng)鏡像完整性校驗(yàn)功能,該功能通過每次開機(jī)對(duì)系統(tǒng)鏡像進(jìn)行完整性校驗(yàn)的方法確保其沒有被攻擊者進(jìn)行惡意篡改,但是這一機(jī)制不能與目前Android系統(tǒng)廣泛應(yīng)用的OTA升級(jí)機(jī)制兼容工作。具體地,Android智能平臺(tái)目前廣泛應(yīng)用OTA升級(jí)機(jī)制原理如圖1所示,該升級(jí)方法是通過在生產(chǎn)過程中比較系統(tǒng)中對(duì)應(yīng)文件的差別,計(jì)算出相應(yīng)的差分?jǐn)?shù)據(jù),打包成OTA升級(jí)包;然后在手機(jī)側(cè)通過該升級(jí)包將系統(tǒng)中對(duì)應(yīng)文件升級(jí)至新版本,達(dá)到整個(gè)系統(tǒng)升級(jí)的目的。
      [0003]然后,該機(jī)制的問題是,雖然升級(jí)后系統(tǒng)文件的內(nèi)容保持與新版本一致,但是由于升級(jí)過程中每個(gè)具體文件的修改順序,修改方法都不同,所以導(dǎo)致從系統(tǒng)層面的角度上看,文件系統(tǒng)的元數(shù)據(jù)被修改了,所以當(dāng)這種方式與Android的系統(tǒng)完整性校驗(yàn)一起工作的時(shí)候,就會(huì)導(dǎo)致升級(jí)后系統(tǒng)鏡像校驗(yàn)失敗。所以,如何既可以實(shí)現(xiàn)OTA升級(jí),又可以兼容系統(tǒng)鏡像校驗(yàn)機(jī)制,成為目前亟待解決的技術(shù)問題。

      【發(fā)明內(nèi)容】

      [0004]本發(fā)明提供一種實(shí)現(xiàn)OTA升級(jí)的方法和終端,用以解決現(xiàn)有技術(shù)中的OTA升級(jí)技術(shù)無法兼容系統(tǒng)鏡像校驗(yàn)機(jī)制的問題。
      [0005]依據(jù)本發(fā)明的一個(gè)方面,提供一種實(shí)現(xiàn)OTA升級(jí)的方法,所述方法中,待升級(jí)終端的系統(tǒng)鏡像文件以數(shù)據(jù)塊的形式存儲(chǔ);具體地,所述方法包括:
      [0006]獲取并解析OTA升級(jí)包,得到面向于系統(tǒng)鏡像文件的各差分升級(jí)文件;
      [0007]從系統(tǒng)鏡像文件中讀取與各差分升級(jí)文件對(duì)應(yīng)的數(shù)據(jù)塊,對(duì)相應(yīng)的數(shù)據(jù)塊進(jìn)行升級(jí)操作,以實(shí)現(xiàn)對(duì)系統(tǒng)鏡像文件的升級(jí)。
      [0008]可選地,本發(fā)明所述方法中,所述差分升級(jí)文件的文件頭中包含有用以指示該差分升級(jí)文件對(duì)應(yīng)的數(shù)據(jù)塊在系統(tǒng)鏡像文件中的偏移量字段、以及用以指示數(shù)據(jù)塊大小的Size字段;
      [0009]所述從系統(tǒng)鏡像文件中讀取與各差分升級(jí)文件對(duì)應(yīng)的數(shù)據(jù)塊,具體包括:
      [0010]根據(jù)各差分升級(jí)文件頭中的偏移量字段和Size字段,在所述系統(tǒng)鏡像文件中讀取與各差分升級(jí)文件對(duì)應(yīng)的數(shù)據(jù)塊。
      [0011]可選地,本發(fā)明所述方法中,所述差分升級(jí)文件的文件頭中還包括用以判定差分升級(jí)文件是否有效的魔術(shù)字符串字段;
      [0012]所述方法還包括:當(dāng)?shù)玫矫嫦蛴谙到y(tǒng)鏡像文件的各差分升級(jí)文件時(shí),根據(jù)各差分升級(jí)文件的魔術(shù)字符串字段,檢測(cè)各差分升級(jí)文件的有效性,并在各差分升級(jí)文件有效時(shí),觸發(fā)讀取對(duì)應(yīng)數(shù)據(jù)塊的操作。
      [0013]可選地,本發(fā)明所述方法中,所述對(duì)相應(yīng)的數(shù)據(jù)塊進(jìn)行升級(jí)操作,以實(shí)現(xiàn)對(duì)系統(tǒng)鏡像文件的升級(jí),具體包括:
      [0014]將與各差分升級(jí)文件對(duì)應(yīng)的數(shù)據(jù)塊讀入內(nèi)存;
      [0015]針對(duì)內(nèi)存中的各數(shù)據(jù)塊,將各差分升級(jí)文件補(bǔ)丁應(yīng)用到對(duì)應(yīng)的數(shù)據(jù)塊中;
      [0016]將升級(jí)后的數(shù)據(jù)塊寫入待升級(jí)終端設(shè)備,實(shí)現(xiàn)對(duì)系統(tǒng)鏡像文件的升級(jí)。
      [0017]可選地,本發(fā)明所述方法中,所述從系統(tǒng)鏡像文件中讀取與各差分升級(jí)文件對(duì)應(yīng)的數(shù)據(jù)塊,對(duì)相應(yīng)的數(shù)據(jù)塊進(jìn)行升級(jí)操作,具體包括:
      [0018]調(diào)用系統(tǒng)函數(shù),為每個(gè)差分升級(jí)文件分別創(chuàng)建一個(gè)處理進(jìn)程,每個(gè)處理進(jìn)程調(diào)取對(duì)應(yīng)的差分升級(jí)文件,并從系統(tǒng)鏡像文件中讀取與該差分升級(jí)文件對(duì)應(yīng)的數(shù)據(jù)塊進(jìn)行升級(jí)操作,以實(shí)現(xiàn)對(duì)各待升級(jí)數(shù)據(jù)塊的并發(fā)升級(jí)。
      [0019]依據(jù)本發(fā)明的另一個(gè)方面,提供一種實(shí)現(xiàn)OAT升級(jí)的終端,所述終端中的系統(tǒng)鏡像文件以數(shù)據(jù)塊的形式存儲(chǔ);所述終端具體包括:
      [0020]信息獲取模塊,用于獲取并解析OTA升級(jí)包,得到面向于系統(tǒng)鏡像文件的各差分升級(jí)文件;
      [0021]升級(jí)模塊,用于從系統(tǒng)鏡像文件中讀取與各差分升級(jí)文件對(duì)應(yīng)的數(shù)據(jù)塊,對(duì)相應(yīng)的數(shù)據(jù)塊進(jìn)行升級(jí)操作,以實(shí)現(xiàn)對(duì)系統(tǒng)鏡像文件的升級(jí)。
      [0022]可選地,本發(fā)明所述終端中,所述差分升級(jí)文件的文件頭中包含有用以指示該差分升級(jí)文件對(duì)應(yīng)的數(shù)據(jù)塊在系統(tǒng)鏡像文件中的偏移量字段、以及用以指示數(shù)據(jù)塊大小的Size字段;
      [0023]所述升級(jí)模塊,具體用于根據(jù)各差分升級(jí)文件頭中的偏移量字段和Size字段,在所述系統(tǒng)鏡像文件中讀取與各差分升級(jí)文件對(duì)應(yīng)的數(shù)據(jù)塊。
      [0024]可選地,本發(fā)明所述終端中,所述差分升級(jí)文件的文件頭中還包括用以判定差分升級(jí)文件是否有效的魔術(shù)字符串字段;
      [0025]所述信息獲取模塊,還用于當(dāng)所述信息獲取模塊得到面向于系統(tǒng)鏡像文件的各差分升級(jí)文件時(shí),根據(jù)各差分升級(jí)文件的魔術(shù)字符串字段,檢測(cè)各差分升級(jí)文件的有效性,并在各差分升級(jí)文件有效時(shí),觸發(fā)所述升級(jí)模塊。
      [0026]可選地,本發(fā)明所述終端中,所述升級(jí)模塊,具體用于將與各差分升級(jí)文件對(duì)應(yīng)的數(shù)據(jù)塊讀入內(nèi)存,針對(duì)內(nèi)存中的各數(shù)據(jù)塊,將各差分升級(jí)文件補(bǔ)丁應(yīng)用到對(duì)應(yīng)的數(shù)據(jù)塊中,將升級(jí)后的數(shù)據(jù)塊寫入終端設(shè)備,實(shí)現(xiàn)對(duì)系統(tǒng)鏡像文件的升級(jí)。
      [0027]可選地,本發(fā)明所述終端中,所述升級(jí)模塊,進(jìn)一步用于調(diào)用系統(tǒng)函數(shù),為每個(gè)差分升級(jí)文件分別創(chuàng)建一個(gè)處理進(jìn)程,利用每個(gè)處理進(jìn)程調(diào)取對(duì)應(yīng)的差分升級(jí)文件,并從系統(tǒng)鏡像文件中讀取與對(duì)應(yīng)差分升級(jí)文件對(duì)應(yīng)的數(shù)據(jù)塊進(jìn)行升級(jí)操作,以實(shí)現(xiàn)對(duì)各待升級(jí)數(shù)據(jù)塊的并發(fā)升級(jí)。
      [0028]本發(fā)明有益效果如下:
      [0029]首先,本發(fā)明使用拆分后的系統(tǒng)鏡像文件作為差分比較的數(shù)據(jù)而不是使用文件系統(tǒng)中的文件,這樣文件系統(tǒng)的元數(shù)據(jù)也被包含在差分?jǐn)?shù)據(jù)包中,升級(jí)過程不會(huì)修改文件系統(tǒng)的元數(shù)據(jù),升級(jí)后終端中的鏡像與生產(chǎn)過程中的鏡像完全一致,不會(huì)與系統(tǒng)校驗(yàn)機(jī)制沖突,實(shí)現(xiàn)了 OTA升級(jí)機(jī)制與系統(tǒng)鏡像校驗(yàn)機(jī)制的有效結(jié)合;
      [0030]其次,本發(fā)明所使用的OTA升級(jí)可以實(shí)現(xiàn)對(duì)系統(tǒng)鏡像的并發(fā)升級(jí),極大的提高了升級(jí)效率。
      【附圖說明】
      [0031]為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作一簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
      [0032]圖1為現(xiàn)有技術(shù)中Android平臺(tái)OTA升級(jí)機(jī)制的示意圖;
      [0033]圖2為本發(fā)明實(shí)施例提供的一種實(shí)現(xiàn)OTA升級(jí)的方法的流程圖;
      [0034]圖3為本發(fā)明實(shí)施例中OTA升級(jí)包中差分升級(jí)文件的結(jié)構(gòu)圖;
      [0035]圖4為本發(fā)明實(shí)施例中提供的實(shí)現(xiàn)OTA升級(jí)的方法的又一流程圖;
      [0036]圖5為本發(fā)明實(shí)施例中OTA升級(jí)機(jī)制的示意圖;
      [0037]圖6為本發(fā)明實(shí)施例提供的一種實(shí)現(xiàn)OTA升級(jí)的終端的結(jié)構(gòu)框圖。
      【具體實(shí)施方式】
      [0038]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
      [0039]為了解決現(xiàn)有技術(shù)中OTA升級(jí)技術(shù)無法兼容系統(tǒng)鏡像校驗(yàn)機(jī)制的問題,本發(fā)明提供一種實(shí)現(xiàn)OTA升級(jí)的方法和終端,該方法是一種有效可行的面向塊設(shè)備的Android平臺(tái)OTA升級(jí)方式,其能夠使Android系統(tǒng)的OTA升級(jí)機(jī)制與系統(tǒng)校驗(yàn)機(jī)制有效的結(jié)合工作。下面就通過幾個(gè)具體實(shí)施例對(duì)本發(fā)明的詳細(xì)實(shí)施過程進(jìn)行闡述。
      [0040]實(shí)施例一
      [0041]本發(fā)明實(shí)施例提供一種實(shí)現(xiàn)OTA升級(jí)的方法,所述方法中,待升級(jí)終端的系統(tǒng)鏡像文件以數(shù)據(jù)塊的形式存儲(chǔ)。具體的,如圖2所示,所述方法包括:
      [0042]步驟S201,獲取并解析OTA升級(jí)包,得到面向于系統(tǒng)鏡像文件的各差分升級(jí)文件;
      [0043]其中,差分升級(jí)文件的文件頭中至少包含有用以指示該差分升級(jí)文件對(duì)應(yīng)的數(shù)據(jù)塊在系統(tǒng)鏡像文件中的偏移量字段、以及用以指示數(shù)據(jù)塊大小的Size字段。
      [0044]可選地,差分升級(jí)文件的文件頭中還包括用以判定差分升級(jí)文件是否有效的魔術(shù)字符串字段;
      [0045]此時(shí),當(dāng)?shù)玫矫嫦蛴谙到y(tǒng)鏡像文件的各差分升級(jí)文件時(shí),還需要根據(jù)各差分升級(jí)文件的魔術(shù)字符串字段,檢測(cè)各差分升級(jí)文件的有效性,并在各差分升級(jí)文件有效時(shí),觸發(fā)步驟S202。
      [0046]步驟S202,從系統(tǒng)鏡像文件中讀取與各差分升級(jí)文件對(duì)應(yīng)的數(shù)據(jù)塊,對(duì)相應(yīng)的數(shù)據(jù)塊進(jìn)行升級(jí)操作,以實(shí)現(xiàn)對(duì)系統(tǒng)鏡像文件的升級(jí)。
      [0047]其中,從系統(tǒng)鏡像文件中讀取與各差分升級(jí)文件對(duì)應(yīng)的數(shù)據(jù)塊,具體包括:
      [0048]根據(jù)各差分升級(jí)文件頭中的偏移量字段和Size字段,在所述系統(tǒng)鏡像文件中讀取與各差分升級(jí)文件對(duì)應(yīng)的數(shù)據(jù)塊。
      [0049]進(jìn)一步地,對(duì)相應(yīng)的數(shù)據(jù)塊進(jìn)行升級(jí)操作優(yōu)選地通過如下方式實(shí)現(xiàn):
      [0050](I)將與各差分升級(jí)文件對(duì)應(yīng)的數(shù)據(jù)塊讀入內(nèi)存;
      [0051](2)針對(duì)內(nèi)存中的各數(shù)據(jù)塊,將各差分升級(jí)文件補(bǔ)丁應(yīng)用到對(duì)應(yīng)的數(shù)據(jù)塊中;
      [0052](3)將升級(jí)后的數(shù)據(jù)塊寫入待升級(jí)終端設(shè)備,實(shí)現(xiàn)對(duì)系統(tǒng)鏡像文件的升級(jí)。
      [0053]該方式將數(shù)據(jù)塊讀入內(nèi)存進(jìn)行升級(jí),在該方式下,即使終端突然掉電或死機(jī),只要終端重啟后,均可以將內(nèi)存內(nèi)未完成的升級(jí)操作繼續(xù)完成,保證了升級(jí)的連續(xù)性。
      [0054]進(jìn)一步地,本發(fā)明實(shí)施例所述方法還可以使用多線程模式針對(duì)整個(gè)系統(tǒng)鏡像完成并發(fā)升級(jí),具體表現(xiàn)為:
      [0055]調(diào)用系統(tǒng)函數(shù),為每個(gè)差分升級(jí)文件分別創(chuàng)建一個(gè)處理進(jìn)程,每個(gè)處理進(jìn)程調(diào)取對(duì)應(yīng)的差分升級(jí)文件,并從系統(tǒng)鏡像文件中讀取與該差分升級(jí)文件對(duì)應(yīng)的數(shù)據(jù)塊進(jìn)行升級(jí)操作,以實(shí)現(xiàn)對(duì)各待升級(jí)數(shù)據(jù)塊的并發(fā)升級(jí)。
      [0056]綜上所述,本實(shí)施例所述方法使用拆分后的系統(tǒng)鏡像文件作為差分比較的數(shù)據(jù)而不是使用文件系統(tǒng)中的文件,這樣文件系統(tǒng)的元數(shù)據(jù)也被包含在差分?jǐn)?shù)據(jù)包中,升級(jí)過程不會(huì)修改文件系統(tǒng)的元數(shù)據(jù),升級(jí)后終端中的鏡像與生產(chǎn)過程中的鏡像完全一致,不會(huì)與系統(tǒng)校驗(yàn)機(jī)制沖突,實(shí)現(xiàn)了 OTA升級(jí)機(jī)制與系統(tǒng)鏡像校驗(yàn)機(jī)制的有效結(jié)合。
      [0057]為了更清楚的闡述本發(fā)明,下面根據(jù)圖3?圖5給出本發(fā)明一個(gè)較佳的實(shí)施例,并結(jié)合對(duì)實(shí)施例的描述,進(jìn)一步給出本
      當(dāng)前第1頁(yè)1 2 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1