[发明专利]嵌入式设备固件补丁包生成及固件差分升级方法和装置在审
申请号: | 201611118555.1 | 申请日: | 2016-12-07 |
公开(公告)号: | CN106648765A | 公开(公告)日: | 2017-05-10 |
发明(设计)人: | 古金峰 | 申请(专利权)人: | 京信通信系统(中国)有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445 |
代理公司: | 北京市立方律师事务所11330 | 代理人: | 刘延喜,王增鑫 |
地址: | 510663 广*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 嵌入式 设备 补丁包 生成 固件差分 升级 方法 装置 | ||
技术领域
本发明涉及通信领域,具体而言,本发明涉及一种嵌入式设备固件补丁包生成方法及装置,同时还涉及一种嵌入式设备差分升级方法及系统。
背景技术
随着信息技术的发展,嵌入式设备越来越多样化,应用也越来越广泛。也越来越多的设备需要集中式管理,布局网管中心系统来集中监控、维护这些设备,如蜂窝式微基站、基站、路由器等一系列的设备都需要网管中心系统来监控其运行情况以及对其软件版本维护。往往网管中心系统管理了大量的设备,且其有不同的固件版本在运行,这个时候固件升级的速度、效率及其稳定性就显得非常重要,如果升级包过大以及网络传输速度的限制,会导致升级时间变长,升级时间过长对设备升级来说带来了诸多问题。升级期间出现突发事件影响升级结果的情况增加,比如链路异常、设备掉电等。升级包过大,不但会占用较多的设备资源,包括设备存储空间和CPU等资源,同时耗费网络带宽,耗费网络流量,如果用户通过以流量计费的渠道升级,又会增加额外开销。
现阶段,传统的设备固件升级有基本两种:一种整包升级方式,即用户通过网管升级整包完成升级;一种是补丁包升级方式,即用户在本地制作好补丁包,然后通过网管升级补丁包完成升级。第一种方式缺点在于整包比较大,远程传输比较慢,特别是在网速受限的环境下,直接影响网络升级的稳定性;第二种方式缺点是在网设备版本管理需要用户管理,因为制作补丁包,需要设备正在运行的固件版本,因此用户需要管理在网所有设备正在运行的固件版本;这样虽然在固件传输效率上大大提高了,但是却需要额外的人工投入到在网设备版本维护上。因此,必须要有新的方法,用以解决上述问题。
发明内容
本发明的目的旨在采用最小有效的固件补丁包进行嵌入式设备固件的差分升级,节省人力维护和宽带成本。
为了实现上述目的,本发明提供以下技术方案:
本发明一实施例提供一种嵌入式设备固件补丁包生成方法,包括以下步骤:
接收上传的固件升级包;
解析所述固件升级包并校验其合法性;
基于校验成功的固件升级包制作固件补丁包。
进一步,还包括步骤,更新数据库中固件的记录信息。
更进一步,还包括步骤,将制作完成的固件补丁包通过远程接口下载到相应设备。
具体的,所述通过远程接口下载固件补丁包到相应设备,具体依据数据库中固件的记录信息执行下载。
其中,所述固件的记录信息包括:用于表征固件补丁包制作是否成功的标记信息、用于表征是否支持固件补丁包升级的标记信息、固件补丁包路径、原固件包路径、当前固件升级包路径。
具体的,所述制作固件补丁包的步骤包括:
获取原固件包路径信息和版本号信息;
筛选出固件升级包和原固件包中不同的文件;
采用bsdiff工具对所述筛选出的不同文件进行差分处理;
生成固件补丁包的相关记录信息;
对所述经过差分处理的文件和固件补丁包的相关记录信息进行压缩打包,生成固件补丁包。
其中,所述固件补丁包的相关记录信息包括:固件补丁包版本号、每个文件在固件包的相对路径、用于表征是否新增或删除文件的标记信息、用于表征是否相同文件的标记信息、用于表征是否经过bsdiff工具差分的标记信息。
本发明另一实施例提供一种嵌入式设备固件差分升级方法,包括以下步骤:
通过远程接口获取采用上述任意一项所述的方法生成的固件补丁包;
解差分所述获取的固件补丁包,还原得到固件整包;
按照固件整包升级流程执行升级。
具体的,所述还原得到固件整包的步骤中,具体依据所述固件补丁包的相关记录信息,还原固件补丁包得到固件整包。
其中,所述固件补丁包的相关记录信息包括:固件补丁包版本号、每个文件在固件包的相对路径、用于表征是否新增或删除文件的标记信息、用于表征是否相同文件的标记信息、用于表征是否经过bsdiff工具差分的标记信息。
本发明又一实施例提供一种嵌入式设备固件补丁包生成装置,包括:
接收模块,用于接收上传的固件升级包;
解析校验模块,用于解析所述接收模块接收的固件升级包并校验其合法性;
补丁包制作模块,用于基于所述解析校验模块校验成功的固件升级包制作固件补丁包。
进一步,还包括更新模块,用于更新数据库中固件的记录信息。
更进一步,还包括远程下载模块,用于将所述补丁包制作模块制作完成的固件补丁包通过远程接口下载到相应设备。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于京信通信系统(中国)有限公司,未经京信通信系统(中国)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611118555.1/2.html,转载请声明来源钻瓜专利网。