一种软件更新方法及系统技术方案

技术编号:10949268 阅读:154 留言:0更新日期:2015-01-23 10:40
本发明专利技术公开了一种软件更新方法及系统,用于更新包含有通用对象文件格式文件的软件,该方法包括:对新版本软件中的通用对象文件格式的文件进行分析,获取有效格式文件;计算出所述新版本软件中有效格式文件的特征值;判断所述新版本软件中有效格式文件的特征值是否与原版本软件中有效格式文件的特征值相匹配;所述新版本软件中有效格式文件的特征值与原版本软件中有效格式文件的特征值不匹配时,将特征值不同的有效格式文件筛选出来作为更新包,利用更新包对原版本软件进行更新;其中,新版本软件和原版本软件为同一软件的不同版本。本发明专利技术大大减少了软件更新过程中需要更新的文件量,提高了软件更新的效率。

【技术实现步骤摘要】
一种软件更新方法及系统
本专利技术涉及计算机
,具体涉及一种软件更新方法及系统。
技术介绍
各类软件在开发过程中或正式发布后,由于存在各种需求或者技术限制,通常需要通过更新进行升级并不断完善。目前软件更新主要有两种思路,一种是根据文件的修改时间进行全局更新,另一类是建立特征值表进行更新。 第一种思路通常是先重新编译生成新目标软件可执行文件,然后根据文件的修改时间将更新的数据文件直接打包到更新包中,并以追加和覆盖的方式替换掉原有文件。这种方法会导致相同内容的文件被反复替换的问题,并增加在线更新过程中网络流量和更新时间,因此,这种方法不适用于中大型的软件更新。 另一种思路是采用哈希映射表进行更新。具体是在文件打包后的完整包中建立特征值表;然后,为每一个打包文件计算出特征值并保存到特征值表中;比较更新文件的特征值与完整包里特征值表中的数据;若特征值不存在于此表中,则认为完整包中尚未存在此文件,此时将文件的数据和索引信息写入更新包,并将其更新后的位置信息与特征值记录到特征值表中;若特征值存在于特征值表中,则表明此文件已经存在于完整包中,此时仅将特征值对应的位置信息写入更新包的索引中。采用此思路进行软件更新时,对于仅发生软件编译时间等细微变化时,也会产生频繁更新特征值现象,导致软件更新效率不高、时间成本增加、网络流量增加的问题,因此,这种方法不适用于软件版本频繁发生细微变化的软件更新。
技术实现思路
针对目前软件更新效率不高、更新时间长、更新过程繁琐的缺点,本专利技术所要解决的技术问题是提出一种软件更新方法,能够在新版软件发布时,快速有效地筛选出更新包,完成软件特别是中大型软件的有效快速更新。 为了解决上述技术问题,本专利技术提供了一种软件更新方法,用于更新包含有通用对象文件格式文件的软件,所述方法包括:对新版本软件中的通用对象文件格式的文件进行分析,获取有效格式文件;计算出所述新版本软件中有效格式文件的特征值;判断所述新版本软件中有效格式文件的特征值是否与原版本软件中有效格式文件的特征值相匹配;所述新版本软件中有效格式文件的特征值与原版本软件中有效格式文件的特征值不匹配时,将所述新版本软件中特征值不同的有效格式文件筛选出来作为更新包,利用所述更新包对所述原版本软件进行更新;其中,所述新版本软件和原版本软件为同一软件的不同版本。 进一步,根据所述有效格式文件的类型确定文件特征值算法,通过所述算法计算出文件特征值,且每个所述有效格式文件对应唯一的特征值。 进一步,所述有效格式文件中包含有与文件更新属性相关的特征。 进一步,所述通用对象文件格式为可移植可执行文件标准格式。 进一步,对所述新版本软件中的通用对象文件格式的文件进行分析的方式包括头文件分析和/或段分析。 [0011 ] 进一步,所述头文件分析中,数据目录表、区块的数量、区块数据的大小特征所对应的文件为有效格式文件。 进一步,所述段分析中,段名、实际被使用的区块大小、相应块在磁盘文件中所占的大小、块属性特征所对应的文件为有效格式文件。 根据本专利技术的另一方面,还提供了一种软件更新系统,用于更新包含有通用对象文件格式文件的软件,所述系统包括:分析模块,用于对新版本软件中的通用对象文件格式的文件进行分析,获取有效格式文件;计算模块,用于计算出所述新版本软件中有效格式文件的特征值;判断模块,用于判断所述新版本软件中有效格式文件的特征值是否与原版本软件中有效格式文件的特征值相匹配;更新模块,用于所述新版本软件中有效格式文件的特征值与原版本软件中有效格式文件的特征值不匹配时,将所述新版本软件中特征值不同的有效格式文件筛选出来作为更新包,利用所述更新包对所述原版本软件进行更新;其中,所述新版本软件和原版本软件为同一软件的不同版本。 进一步,所述分析模块所分析的通用对象文件格式为可移植可执行文件标准格式。 进一步,所述分析模块对所述新版本软件中的通用对象文件格式的文件进行分析的方式包括头文件分析和/或段分析。 进一步,所述分析模块进行头文件分析时,数据目录表、区块的数量以及区块数据的大小特征所对应的文件为所述有效格式文件;所述分析模块进行段分析时,段名、实际被使用的区块大小、相应块在磁盘文件中所占的大小以及块属性特征所对应的文件为所述有效格式文件。 与现有技术相比,本专利技术的一个或多个实施例可以具有如下优点: 本专利技术所涉及的软件更新方法及系统通过对通用对象文件格式文件进行分析归类,筛选出更新包,利用更新包对原版本软件进行更新,从而大大减少了软件更新过程中需要更新的文件量,提高了软件更新的效率。 本专利技术的其他优点、目标和特征在某种程度上将在随后的说明书中进行阐述,并且在某种程度上,基于对下文的考察研究对本领域技术人员而言将是显而易见的,或者可以从本专利技术的实践中得到教导。本专利技术的目标和其他优点可以通过下面的说明书,权利要求书,以及附图中所特别指出的结构来实现和获得。 【附图说明】 附图用来提供对本专利技术的进一步理解,并且构成说明书的一部分,与本专利技术的实施例共同用于解释本专利技术,并不构成对本专利技术的限制。 图1是根据本专利技术一实施例的软件更新方法的流程示意图。 图2是根据本专利技术一实施例的软件更新系统的结构示意图。 【具体实施方式】 以下将结合附图及实施例来详细说明本专利技术的实施方式,借此对本专利技术如何应用技术手段来解决技术问题,并达成技术效果的实现过程能充分理解并据以实施。需要说明的是,只要不构成冲突,本专利技术中的各个实施例以及各实施例中的各个特征可以相互结合,所形成的技术方案均在本专利技术的保护范围之内。 另外,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。 本专利技术涉及一种软件更新方法及系统,下面将结合附图及实施例对本专利技术进行进一步详细说明。 实施例一 图1为本专利技术实施例的软件更新方法的流程示意图,所述方法具体包括以下步骤: 步骤S101,对新版本软件中的通用对象文件格式的文件进行分析,并获取有效格式文件。具体是按照能否体现文件更新属性的原则,对新版本软件文件格式进行分类,划分为有效格式和无效格式。其中,有效格式文件中包含所有能体现文件更新的属性,当修改或增加软件功能时,有效格式文件中相关属性会发生变化;无效格式文件没有包含与软件修改相关的属性,如仅因重新编译软件后产生文件格式时间戳属性改变、编译修改后的源代码产生的文件格式DOS部首不改变等属性。 本实施例以通用对象文件格式(COFF, Common Object File Format)中的可移植可执行文件标准格式(PE, Portable Executable, 32位Windows可移植可执行文件标准格式)为例对步骤S101进行详细说明。Windows平台下应用程序的可执行文件或动态链接库是采用可移植可执行文件标准格式(PE格式)存储的,以下主要介绍针对PE格式进行分析的过程。 1、头文件分析(file-header分析) 头文件结构中的属性用来说明文件的运行环境、运行区段、链接时间以及文件类型等。 其中,P本文档来自技高网...
一种软件更新方法及系统

【技术保护点】
一种软件更新方法,用于更新包含有通用对象文件格式文件的软件,其特征在于,所述方法包括:对新版本软件中的通用对象文件格式的文件进行分析,获取有效格式文件;计算出所述新版本软件中有效格式文件的特征值;判断所述新版本软件中有效格式文件的特征值是否与原版本软件中有效格式文件的特征值相匹配;所述新版本软件中有效格式文件的特征值与原版本软件中有效格式文件的特征值不匹配时,将所述新版本软件中特征值不同的有效格式文件筛选出来作为更新包,利用所述更新包对所述原版本软件进行更新;其中,所述新版本软件和原版本软件为同一软件的不同版本。

【技术特征摘要】
1.一种软件更新方法,用于更新包含有通用对象文件格式文件的软件,其特征在于,所述方法包括: 对新版本软件中的通用对象文件格式的文件进行分析,获取有效格式文件; 计算出所述新版本软件中有效格式文件的特征值; 判断所述新版本软件中有效格式文件的特征值是否与原版本软件中有效格式文件的特征值相匹配; 所述新版本软件中有效格式文件的特征值与原版本软件中有效格式文件的特征值不匹配时,将所述新版本软件中特征值不同的有效格式文件筛选出来作为更新包,利用所述更新包对所述原版本软件进行更新;其中,所述新版本软件和原版本软件为同一软件的不同版本。2.如权利要求1所述的方法,其特征在于,所述方法还包括:根据所述有效格式文件的类型确定文件特征值算法,利用所述算法计算出所述有效格式文件的特征值,且每个所述有效格式文件对应唯一的特征值。3.如权利要求1所述的方法,其特征在于,所述有效格式文件中包含有与文件更新属性相关的特征。4.如权利要求1至3任一项所述的方法,其特征在于,所述通用对象文件格式为可移植可执行文件标准格式。5.如权利要求4所述的方法,其特征在于, 对所述新版本软件中的通用对象文件格式的文件进行分析的方式包括头文件分析和/或段分析。6.如权利要求5所述的方法,其特征在于,所述头文件分析中,数据目录表、区块的数量以及区块数据的大小特征所对应的文件为所述有效格式文件;所述段分析中,段名、实际被...

【专利技术属性】
技术研发人员:万伟华史周波
申请(专利权)人:中标软件有限公司
类型:发明
国别省市:上海;31

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

1