[发明专利]一种基于特征值查表法的增量升级方法有效
申请号: | 201711036946.3 | 申请日: | 2017-10-30 |
公开(公告)号: | CN107783778B | 公开(公告)日: | 2020-04-10 |
发明(设计)人: | 陈智松;冯万健;曾炳阳;骆昭阳 | 申请(专利权)人: | 厦门亿联网络技术股份有限公司 |
主分类号: | G06F8/658 | 分类号: | G06F8/658 |
代理公司: | 厦门市新华专利商标代理有限公司 35203 | 代理人: | 李宁 |
地址: | 361009 福建省厦门市*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开的一种基于特征值查表法的增量升级方法,包括固件的生成和写入两个部分;通过对整个升级过程进行多次的数据校验,确保了写入数据的准确性,将风险降到最低,并且许多CRC数据是在生成固件时打包的,CRC_Table[]的比对也是在工具中高速完成,最大限度的降低了对内存的操作,对提高效率有很大的帮助。 | ||
搜索关键词: | 一种 基于 特征值 查表法 增量 升级 方法 | ||
【主权项】:
一种基于特征值查表法的增量升级方法,其特征在于,包括:一、固件的生成:a、编译生成常规固件,并在固件内预留一块用于写入特定信息的空白空间;b、拟定一个采样单位大小,依据此大小将固件除预留空间以外区域划分成多个区间,且每个区间大小与采样单位大小一致;采用CRC32算法计算出每个区间的值作为特征值,将所有特征值整合成一张特征值表,记为CRC_Table[],每个特征值的位置与划分的内存区间是一一对应的;c、对生成的特征值表CRC_Table[]进行一次CRC32运算,将结果记为CRC_Info1,用于升级时进行数据校验;d、对固件除预留空间以外的所有数据进行一次CRC32运算,将结果记为CRC_Info2,用于升级时进行数据校验;e、将CRC_Table[]、CRC_Info1和CRC_Info2按顺序插入到固件之前预留的空白空间中,生成一个新的固件;二、固件的写入:f、打开升级工具,连接设备,在升级工具中选择想要升级的版本;g、升级工具读出固件中写入的CRC_Table[]、CRC_Info1和CRC_Info2数据;h、升级工具对固件中的CRC_Table[]进行一次CRC32计算,判断结果是否与固件中的CRC_Info1一致,如果不一样则认为是固件读取异常,终止升级过程并弹出警告;i、升级工具对固件中预留的空白空间以外的数据进行一次CRC32计算,判断结果是否与固件中的CRC_Info2一致,如果不一致则认为是固件读取异常,终止升级过程并弹出警告;j、升级工具读出设备中写入的CRC_Table[]、CRC_Info1和CRC_Info2数据;k、升级工具对设备中的CRC_Table[]进行一次CRC32计算,判断结果是否与设备1中的CRC_Info1一致,如果不一样则认为是设备读取异常,终止升级过程并弹出警告;l、升级工具对比固件中的CRC_Table[]和设备中的CRC_Table[],对其存在差异的地方对应的内存区间进行擦写,同时自动判断是要采用整个block擦写的方式或是采用每个采样区间的大小进行擦写的方式处理;m、升级工具将固件中的CRC_Table[]、CRC_Info1和CRC_Info2数据写入设备中,替换原有的相关数据;n、升级工具对整个固件进行一次CRC32运算得到Verify_1,发送指令让设备对指定地址的内存进行一次CRC32运算得到Verify_2,并返回给升级工具,当Verify_1和Verify_2相等时,则说明升级成功,如果不等,则说明写入异常,弹出相应警告。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于厦门亿联网络技术股份有限公司,未经厦门亿联网络技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201711036946.3/,转载请声明来源钻瓜专利网。
- 上一篇:包装盒(一)
- 下一篇:一种基于锁频环的二阶广义积分器结构及锁相环同步方法