[发明专利]一种终端软件升级方法及装置在审
申请号: | 201410100573.1 | 申请日: | 2014-03-17 |
公开(公告)号: | CN104932909A | 公开(公告)日: | 2015-09-23 |
发明(设计)人: | 陈禧;双建平 | 申请(专利权)人: | 中兴通讯股份有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445 |
代理公司: | 北京元本知识产权代理事务所 11308 | 代理人: | 秦力军 |
地址: | 518057 广东省深圳市南山*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 终端 软件 升级 方法 装置 | ||
技术领域
本发明涉及差分升级技术,特别涉及一种专门针对内存空间很小的设备的分治差分升级方案。
背景技术
很多终端设备需要进行相应的固件升级,但是由于存储空间的限制导致不能容纳一个完整的版本数据进行升级,所以需要根据两个版本之间的差异性,制作差分升级包,以减少存储空间的开销。
但是目前主流的差分方案提供厂商并不开源,而开源的差分方案实际上并不能解决内存空间开销上过大,而实际的通讯设备如数据卡、uFi类设备,它们出于成本的考虑,用于放置版本数据的flash空间都比较小,要想在这一类设备上进行版本升级,就需要一个针对有限内存空间设备的差分算法方案。
发明内容
本发明的目的在于提供一种终端软件升级方法及装置,能更好地解决在内存空间较小的设备上实现软件升级的问题。
根据本发明的一个方面,提供了一种终端软件升级方法,包括:
持有源版本软件的终端获取用于升级源版本软件的差分包;
通过解析所述差分包,得到由多个具有控制命令的元素组成的差分信息集合;
按照各元素在所述差分信息集合中的顺序和各自具有的控制命令,依次对源版本软件中相应区域的数据进行更新,从而使源版本软件升级为目标版本软件。
优选地,所述的持有源版本软件的终端获取用于升级源版本软件的差分包的步骤包括:
终端从网络侧下载所述用于升级源版本软件的差分包,并将所述差分包读取到内存。
优选地,所述控制命令包括用来指示数据复制的控制命令和用来指示数据替换的控制命令,所述的按照各元素在所述差分信息集合中的顺序和各自具有的控制命令,依次对源版本软件中相应区域的数据进行更新的步骤包括:
终端利用当前元素所具有的用来指示数据替换的控制命令,获取用来替换源版本软件中指定区域数据的目标版本软件数据,并将所述目标版本软件数据覆盖写入到所述指定区域;
所述目标版本软件数据覆盖写入到所述指定区域后,终端按照所述差分信息集合中的元素顺序,对下一个元素指定区域的数据进行更新。
优选地,当当前元素具有用来指示数据复制的控制命令,则直接按照所述差分信息集合中的元素顺序,对下一个元素指定区域的数据进行更新。
优选地,还包括网络侧生成所述差分包的步骤,包括:
对源版本软件和目标版本软件的二进制数据分别进行处理,得到具有多个属性元素的源版本多重元素集合和目标版本多重元素集合;
按照源版本多重元素集合中各元素的升级顺序,依次计算所述源版本多重元素集合和目标版本多重元素集合之间的各对应元素的差分信息;
根据所述源版本多重元素集合和目标版本多重元素集合之间的各对应元素的差分信息,生成用于终端软件升级的差分包。
优选地,所述的根据所述源版本多重元素集合和目标版本多重元素集合之间的各对应元素的差分信息,生成用于终端软件升级的差分包的步骤包括:
利用所述源版本多重元素集合和目标版本多重元素集合之间的各对应元素的差分信息,生成相应的控制命令;
按照预定格式,对所生成的控制命令和所述差分信息进行封装并压缩,形成成差分包输出。
优选地,所述差分信息用于标识源版本软件和目标版本软件之间的匹配区域或非匹配区域。
优选地,当所述差分信息用于标识源版本软件和目标版本软件之间的匹配区域时,生成用来指示数据复制的控制命令。
优选地,当所述差分信息用于标识源版本软件和目标版本软件之间的非匹配区域时,生成用来指示数据替换的控制命令。
根据本发明的另一方面,提供了一种终端软件升级装置,包括:
差分包获取模块,用于获取用来升级终端源版本软件的差分包;
差分包解析模块,用于通过解析所述差分包,得到由多个具有控制命令的元素组成的差分信息集合;
软件升级模块,用于按照各元素在所述差分信息集合中的顺序和各自具有的控制命令,依次对源版本软件中相应区域的数据进行更新,从而使源版本软件升级为目标版本软件。
与现有技术相比较,本发明的有益效果在于:
本发明采用分治的思路节省了内存开销,解决了在内存空间很小的设备上进行原地差分升级的问题,并且利用各项优化措施在一定程度上提升了压缩效率和做包时间,减小了差分包尺寸,提升了工作效率,节约了人力成本,使得差分升级技术可以得到进一步推广和应用。
附图说明
图1是本发明提供的终端软件升级方法原理框图;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中兴通讯股份有限公司,未经中兴通讯股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410100573.1/2.html,转载请声明来源钻瓜专利网。