[发明专利]一种基于代码相似度保持的嵌入式软件更新方法有效
申请号: | 201410015803.4 | 申请日: | 2014-01-14 |
公开(公告)号: | CN103777948B | 公开(公告)日: | 2017-01-04 |
发明(设计)人: | 董玮;卜佳俊;陈纯;王永刚;莫璧源 | 申请(专利权)人: | 浙江大学 |
主分类号: | G06F9/44 | 分类号: | G06F9/44;G06F9/445 |
代理公司: | 杭州求是专利事务所有限公司33200 | 代理人: | 陈昱彤 |
地址: | 310058 浙江*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于代码相似度保持的嵌入式软件更新方法,包括:通过新版本代码的地址空间生成位图段,并且,或者以所述位图段中的“1”表示新版本代码中的对应地址的指令包含引用且以位图段中的“0”表示新版本代码中的对应地址的指令不包含引用,或者以所述位图段中的“0”表示新版本代码中的对应地址的指令包含引用且以位图段中的“1”表示新版本代码中的对应地址的指令不包含引用;将新版本代码中所有的引用目标地址生成一个新版本定位表,每个引用目标地址在所述新版本定位表中各有一个唯一的索引,然后将新版本代码中的各个引用目标地址分别替换成该引用目标地址在所述新版本定位表中的对应索引,生成代码段。 | ||
搜索关键词: | 一种 基于 代码 相似 保持 嵌入式 软件 更新 方法 | ||
【主权项】:
一种基于代码相似度保持的嵌入式软件更新方法,其特征在于,包括:通过新版本代码的地址空间生成位图段,并且,以所述位图段中的“1”表示新版本代码中的对应地址的指令包含引用且以位图段中的“0”表示新版本代码中的对应地址的指令不包含引用,或者以所述位图段中的“0”表示新版本代码中的对应地址的指令包含引用且以位图段中的“1”表示新版本代码中的对应地址的指令不包含引用;将新版本代码中所有的引用目标地址生成一个新版本定位表,每个引用目标地址在所述新版本定位表中各有一个唯一的索引,然后将新版本代码中的各个引用目标地址分别替换成该引用目标地址在所述新版本定位表中的对应索引,生成代码段;其中,所述“将新版本代码中所有的引用目标地址生成一个新版本定位表”的方法如下:第一步,新建一个空的旧版本代码的定位表作为旧版本定位表,从旧版本代码的起始地址处按照地址递增的方向遍历旧版本代码的每一条指令的地址,判断每一条指令的地址是否是旧版本代码中的一个引用目标地址:如果是,则将相应指令的地址按遍历的先后顺序逐个添加到旧版本定位表中,如果不是,则不添加;第二步,新建一个空的新版本代码的定位表作为所述新版本定位表,然后从新版本代码的起始地址处按照地址递增的方向逐个检查新版本代码的每一条指令的地址是否为新版本代码中的一个引用目标地址:如果新版本代码的被检查的指令的地址是新版本代码中的一个引用目标地址,则判断在旧版本代码中是否存在与所述被检查的指令相同的指令,若存在,则根据该指令在旧版本代码中的地址找到其在旧版本定位表中的索引,然后在新版本定位表的相同索引位置处插入新版本代码的被检查的指令的地址;若不存在,则将新版本代码的被检查的指令的地址插入到新版本定位表的第一个空位置。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江大学,未经浙江大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201410015803.4/,转载请声明来源钻瓜专利网。