1.一種補(bǔ)丁修復(fù)方法,應(yīng)用于終端設(shè)備,其特征在于,所述終端設(shè)備上運(yùn)行著第一鏡像,所述第一鏡像是第一軟件工程的源代碼經(jīng)歷編譯、靜態(tài)鏈接得到的,所述方法包括:
2.如權(quán)利要求1所述的方法,其特征在于,在所述終端設(shè)備基于所述補(bǔ)丁函數(shù)的運(yùn)行地址合成跳轉(zhuǎn)指令之前,還包括:
3.如權(quán)利要求1或2所述的方法,其特征在于,如權(quán)利要求1所述的方法,其特征在于,所述跳轉(zhuǎn)指令包括連續(xù)存放的預(yù)留位、跳轉(zhuǎn)位和地址位,其中,所述地址位在所述跳轉(zhuǎn)位之后,所述地址位用于存放所述補(bǔ)丁函數(shù)的運(yùn)行地址,所述跳轉(zhuǎn)位用于存放第一指令集下的第二指令,所述第二指令用于將所述地址位中存放的數(shù)據(jù)讀取到程序計數(shù)器pc寄存器中。
4.如權(quán)利要求3所述的方法,其特征在于,所述地址位、所述跳轉(zhuǎn)位的字節(jié)長度都同于pc指針最小移動字節(jié)長度。
5.如權(quán)利要求3或4所述的方法,其特征在于,所述第一指令集是thumb指令集。
6.如權(quán)利要求2-5中任一項(xiàng)所述的方法,其特征在于,所述第二指令是加載寄存器ldr指令:ldr?pc,[pc,#0x0]。
7.如權(quán)利要求1-6中任一項(xiàng)所述的方法,其特征在于,所述補(bǔ)丁區(qū)包括:第一區(qū)域和第二區(qū)域;所述第一區(qū)域用于存放所述補(bǔ)丁函數(shù)的初始化數(shù)據(jù),所述第二區(qū)域用于存放所述補(bǔ)丁函數(shù)的運(yùn)行數(shù)據(jù),所述運(yùn)行數(shù)據(jù)是所述初始數(shù)據(jù)經(jīng)歷解密、解壓縮再搬移到所述第二區(qū)域中的;所述初始數(shù)據(jù)是所述補(bǔ)丁文件中包括的所述補(bǔ)丁函數(shù)的二進(jìn)制數(shù)據(jù)。
8.如權(quán)利要求7所述的方法,其特征在于,所述第一區(qū)域還用于存放函數(shù)patchregioninit的代碼指令,所述函數(shù)patchregioninit用于執(zhí)行所述解密、所述解壓縮以及所述搬移到所述第二區(qū)域中的操作;
9.如權(quán)利要求1-8中任一項(xiàng)所述的方法,其特征在于,還包括:在撤回所述補(bǔ)丁文件時,將所述函數(shù)描述表中的n個字節(jié)的機(jī)器碼寫回到所述原函數(shù)運(yùn)行地址處,
10.一種補(bǔ)丁制作方法,應(yīng)用于服務(wù)器,其特征在于,包括:
11.如權(quán)利要求10所述的方法,其特征在于,所述指定運(yùn)行地址是補(bǔ)丁區(qū)中的運(yùn)行地址,所述補(bǔ)丁區(qū)是所述服務(wù)器預(yù)先分配的、與所述終端設(shè)備上運(yùn)行著的第一鏡像占的運(yùn)行地址不沖突。
12.如權(quán)利要求10或11所述的方法,其特征在于,所述終端設(shè)備上運(yùn)行著的第一鏡像被所述服務(wù)器保存成歸檔鏡像;
13.一種終端設(shè)備,其特征在于,包括一個或多個微控制單元mcu和一個或多個存儲器;其中,所述一個或多個存儲器與所述mcu耦合,所述一個或多個存儲器用于存儲計算機(jī)程序代碼,所述計算機(jī)程序代碼包括計算機(jī)指令,當(dāng)所述mcu執(zhí)行所述計算機(jī)指令時,使得執(zhí)行如權(quán)利要求1-9任一項(xiàng)所述的方法。
14.一種服務(wù)器,其特征在于,包括一個或多個處理器和一個或多個存儲器;其中,所述一個或多個存儲器與所述處理器耦合,所述一個或多個存儲器用于存儲計算機(jī)程序代碼,所述計算機(jī)程序代碼包括計算機(jī)指令,當(dāng)所述處理器執(zhí)行所述計算機(jī)指令時,使得執(zhí)行如權(quán)利要求10-12任一項(xiàng)所述的方法。
15.一種芯片系統(tǒng),所述芯片系統(tǒng)應(yīng)用于終端設(shè)備,所述芯片系統(tǒng)包括一個或多個處理器,所述處理器包括微控制單元mcu,其特征在于,所述mcu用于調(diào)用計算機(jī)指令以使得執(zhí)行如權(quán)利要求1-9中任一項(xiàng)所述的方法。
16.一種芯片系統(tǒng),所述芯片系統(tǒng)應(yīng)用于服務(wù)器,所述芯片系統(tǒng)包括一個或多個處理器,其特征在于,所述處理器用于調(diào)用計算機(jī)指令以使得執(zhí)行如權(quán)利要求10-12中任一項(xiàng)所述的方法。
17.一種計算機(jī)可讀存儲介質(zhì),包括指令,其特征在于,當(dāng)所述指令在終端設(shè)備上運(yùn)行時,使得執(zhí)行如權(quán)利要求1-9任一項(xiàng)所述的方法。
18.一種計算機(jī)可讀存儲介質(zhì),包括指令,其特征在于,當(dāng)所述指令在服務(wù)器上運(yùn)行時,使得執(zhí)行如權(quán)利要求10-12任一項(xiàng)所述的方法。