一种嵌入式设备版本文件打包的方法及打包工具技术

技术编号:30020098 阅读:14 留言:0更新日期:2021-09-11 06:38
本发明专利技术公开了一种嵌入式设备版本文件打包的方法及打包工具,具体涉及打包方法技术领域,包括以下步骤:当需要对文件进行打包时,使用打包工具新建一个打包目录,并将需要打包的文件目录路径置于打包目录中。本发明专利技术通过在打包系统中插入抗冗余插件,使得冗余插件可以自动将增设的重复文件删除,同时索引编码生成模块可以生成新的索引编码,然后关联模块可以将新的索引编码和重复的唯一文件进行关联,使得相关人员通过索引编码即可对重复文件进行查询,使得本装置在打包的过程中和打包之后可以在不影响正常查询的情况下删除不必要的重复文件,在一定程度上降低文件的大小,从而可以大幅度的降低打包时间,同时降低了整个文件的占用空间。占用空间。

【技术实现步骤摘要】
一种嵌入式设备版本文件打包的方法及打包工具


[0001]本专利技术涉及打包方法
,更具体地说,本专利技术涉及一种嵌入式设备版本文件打包的方法及打包工具。

技术介绍

[0002]固件升级是指通过专门的升级程序,将硬件中的工作程序或源代码进行改进,使其得到兼容性、性能或者功能上的提高,固件升级文件(bin文件)的安全性是嵌入式系统的安全性的必要条件,bin文件的完整性又决定了嵌入式设备升级能否成功,而一个bin文件包含很多资源,如图像、声音、文本、脚本和其他各种类型的数据,一般的客户端可能存在上万个文件,其中不乏一些重复的冗余数据,因此在打包的过程中会浪费较长的时间,而且会占用大量不必要的空间。

技术实现思路

[0003]为了克服现有技术的上述缺陷,本专利技术提供了一种嵌入式设备版本文件打包的方法及打包工具,本专利技术所要解决的技术问题是:一个bin文件包含很多资源,如图像、声音、文本、脚本和其他各种类型的数据,一般的客户端可能存在上万个文件,其中不乏一些重复的冗余数据,因此在打包的过程中会浪费较长的时间,而且会占用大量不必要的空间的问题。
[0004]为实现上述目的,本专利技术提供如下技术方案:一种嵌入式设备版本文件打包的方法及打包工具,包括以下步骤:
[0005]S1、当需要对文件进行打包时,使用打包工具新建一个打包目录,并将需要打包的文件目录路径置于打包目录中,然后收集待打包的文件,并进行读取,其中,每个文件由至少一个文件项来描述,每个文件项包含多个用于描述文件内容的文件信息,在读取过程中,对文件的顺序进行采集并记录为文件顺序列表,同时根据文件的属性判断出文件为普通文件还是需要进行加密的文件,然后将普通文件的内容进行对比,去除冗余数据,如果一个文件对应两个或者多个位置,可生成用于访问同一文件的索引编码,然后再以同样的方法对加密文件内的内容进行处理。
[0006]S2、然后对加密文件进行单独处理,先确定加密算法并生成加密密钥,然后使用该加密密钥对加密文件的各个模块分别进行加密,然后对文件进行嵌入式系统裁剪,编译后生成标准Linux内核文件和rootfs文件系统镜像,然后对不同的裁剪需求产生的标准Linux内核文件进行对比,去除标准Linux内核文件头部的相同部分,在设备升级过程中,将截取出的相同部分组回标准Linux内核文件头部,最后打包bin文件,并对打包后的bin文件进行CRC校验计算,将得到的CRC校验值写入bin文件尾部,然后从节点标记文件中读取所有需要打包的节点,其中位于所述节点的更新包内包含有不同版本的更新文件,对标记文件中需要打包的节点进行基础节点、普通节点和重要节点划分,然后对所有需要打包的节点按照倒序方式进行外层遍历。
[0007]S3、当遍历至某一节点时,导出该节点的更新文件并保存在打包文件列表中,当遍历所有重要节点之后,判断所有文件是否均已被读取,如果是,则停止打包,如果否,则查询没有被读取的文件并重新进行读取,读取完成之后停止打包,然后在打包系统中插入抗冗余插件,所述抗冗余插件包括增设对比模块、索引编码生成模块和关联模块,有文件新增时,增设对比模块可以自动将增设的文件与之前打包的档案进行对比,如果增设的文件中具有与之前文件重复时,自动将重复文件删除,同时索引编码生成模块可以生成新的索引编码,然后关联模块可以将新的索引编码和重复的唯一文件进行关联,使得相关人员通过索引编码即可对重复文件进行查询。
[0008]作为本专利技术的进一步方案:所述相邻的两个需要打包的节点之间未选中需要打包的节点按照倒序方式进行内层遍历。
[0009]作为本专利技术的进一步方案:所述打包bin文件时进行加密算法加密,所述加密算法为MD5加密算法。
[0010]作为本专利技术的进一步方案:所述增设对比模块的输出端与索引编码生成模块的输入端电连接,所述索引编码生成模块的输出端与关联模块的输入端电连接。
[0011]作为本专利技术的进一步方案:所述增设对比模块的作用是用于将增设的文件与之前的文件进行对比,确定是否存在重复文件。
[0012]作为本专利技术的进一步方案:所述索引编码生成模块可以将文件自动生成一组编码,所述关联模块可以将索引编码与文件进行关联。
[0013]作为本专利技术的进一步方案:所述CRC校验计算的具体方法如下:采用32位循环冗余算法,用待打包的二进制数据t(x)除以生成多项式g(x),最后的余数作为CRC校验值,将计算结果写入bin文件尾部。
[0014]作为本专利技术的进一步方案:所述打包工具为Webpack打包工具。
[0015]作为本专利技术的进一步方案:所述Webpack打包工具可以同时进行多个打包任务。
[0016]本专利技术的有益效果在于:
[0017]本专利技术通过在打包系统中插入抗冗余插件,使得冗余插件可以自动将增设的重复文件删除,同时索引编码生成模块可以生成新的索引编码,然后关联模块可以将新的索引编码和重复的唯一文件进行关联,使得相关人员通过索引编码即可对重复文件进行查询,使得本装置在打包的过程中和打包之后可以在不影响正常查询的情况下删除不必要的重复文件,在一定程度上降低文件的大小,从而可以大幅度的降低打包时间,同时降低了整个文件的占用空间。
具体实施方式
[0018]下面将对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0019]一种嵌入式设备版本文件打包的方法及打包工具,包括以下步骤:
[0020]S1、当需要对文件进行打包时,使用打包工具新建一个打包目录,并将需要打包的文件目录路径置于打包目录中,然后收集待打包的文件,并进行读取,其中,每个文件由至
少一个文件项来描述,每个文件项包含多个用于描述文件内容的文件信息,在读取过程中,对文件的顺序进行采集并记录为文件顺序列表,同时根据文件的属性判断出文件为普通文件还是需要进行加密的文件,然后将普通文件的内容进行对比,去除冗余数据,如果一个文件对应两个或者多个位置,可生成用于访问同一文件的索引编码,然后再以同样的方法对加密文件内的内容进行处理。
[0021]S2、然后对加密文件进行单独处理,先确定加密算法并生成加密密钥,然后使用该加密密钥对加密文件的各个模块分别进行加密,然后对文件进行嵌入式系统裁剪,编译后生成标准Linux内核文件和rootfs文件系统镜像,然后对不同的裁剪需求产生的标准Linux内核文件进行对比,去除标准Linux内核文件头部的相同部分,在设备升级过程中,将截取出的相同部分组回标准Linux内核文件头部,最后打包bin文件,并对打包后的bin文件进行CRC校验计算,将得到的CRC校验值写入bin文件尾部,然后从节点标记文件中读取所有需要打包的节点,其中位于节点的更新包内包含有不同版本的更新文件,对标记文件中需要打包的节点进行基础节点、普通节点和重要节点划本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种嵌入式设备版本文件打包的方法及打包工具,其特征在于,包括以下步骤:S1、当需要对文件进行打包时,使用打包工具新建一个打包目录,并将需要打包的文件目录路径置于打包目录中,然后收集待打包的文件,并进行读取,其中,每个文件由至少一个文件项来描述,每个文件项包含多个用于描述文件内容的文件信息,在读取过程中,对文件的顺序进行采集并记录为文件顺序列表,同时根据文件的属性判断出文件为普通文件还是需要进行加密的文件,然后将普通文件的内容进行对比,去除冗余数据,如果一个文件对应两个或者多个位置,可生成用于访问同一文件的索引编码,然后再以同样的方法对加密文件内的内容进行处理;S2、然后对加密文件进行单独处理,先确定加密算法并生成加密密钥,然后使用该加密密钥对加密文件的各个模块分别进行加密,然后对文件进行嵌入式系统裁剪,编译后生成标准Linux内核文件和rootfs文件系统镜像,然后对不同的裁剪需求产生的标准Linux内核文件进行对比,去除标准Linux内核文件头部的相同部分,在设备升级过程中,将截取出的相同部分组回标准Linux内核文件头部,最后打包bin文件,并对打包后的bin文件进行CRC校验计算,将得到的CRC校验值写入bin文件尾部,然后从节点标记文件中读取所有需要打包的节点,其中位于所述节点的更新包内包含有不同版本的更新文件,对标记文件中需要打包的节点进行基础节点、普通节点和重要节点划分,然后对所有需要打包的节点按照倒序方式进行外层遍历;S3、当遍历至某一节点时,导出该节点的更新文件并保存在打包文件列表中,当遍历所有重要节点之后,判断所有文件是否均已被读取,如果是,则停止打包,如果否,则查询没有被读取的文件并重新进行读取,读取完成之后停止打包,然后在打包系统中插入抗冗余插件,所述抗冗余插件包括增设对比模块、索引编码生成模块和关联模块,有文件新增时,增设对比模块可以自动将增设的文件与...

【专利技术属性】
技术研发人员:孙恺
申请(专利权)人:武汉云漫文化传媒有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1