一种软件补丁升级装置及方法制造方法及图纸

技术编号:6537985 阅读:201 留言:0更新日期:2012-04-11 18:40
本发明专利技术实施例公开了一种软件补丁升级方法,该方法包括:接收升级指令;在接收到升级指令后,根据补丁文件包中文件名和目录结构,生成备份程序;调用所述备份程序,执行备份操作;根据所述补丁文件包中文件,执行升级操作。并且,该方法还可以在升级失败后,能够执行软件升级的自动回滚。本发明专利技术实施例还提供相应的装置。本发明专利技术技术方案采用将补丁文件包中文件名和目录结构,与被升级软件的文件进行对比,生成备份程序,调用该备份程序,执行备份操作,调用补丁文件包执行升级操作,使得本实施提供的技术方案在执行升级操作之前可以实现对被升级软件的备份。

【技术实现步骤摘要】

本专利技术涉及计算机
,具体涉及。
技术介绍
对于应用软件版本的升级主要牵涉到文件的修改,升级前备份以及升级失败后进行恢复。现有技术中对升级前文件的备份是采用对要升级的文件进行单独的备份,如果升级失败,根据备份的文件对系统进行恢复操作。软件的备份、升级、恢复都是手工或者通过单独的开发完成。换句话说,现有技术中在执行升级操作时,设备不能完成现有程序的备份功能,在升级失败的情况下,不能实现自动恢复功能。
技术实现思路
本专利技术实施例提供,该技术方案可以实现程序的备份功能,升级功能,还可以实现升级失败后自动恢复功能。一种软件补丁升级方法,包括在接收到升级指令后,根据补丁文件包中文件名和目录结构,生成备份程序;调用所述备份程序,执行备份操作;根据所述补丁文件包中文件,执行升级操作。一种软件补丁升级装置,包括接收模块、程序生成模块和调度模块;所述接收模块,用于接收升级指令;所述程序生成模块,用于在接收到升级指令后,根据补丁文件包中文件名和目录结构,生成备份程序;所述调用模块,用于调用所述备份程序,执行备份操作;根据所述补丁文件包中文件,执行升级操作。本专利技术实施例采用将补丁文件包中文件名和目录结构,与被升级软件的文件进行对比,生成备份程序,调用该备份程序,执行备份操作,调用补丁文件包执行升级操作,使得本实施提供的技术方案在执行升级操作之前可以实现对被升级软件的备份;进一步,备份程序中可以不必包含被升级软件的完整文件,在备份程序中只需要记录被升级软件的文件与补丁文件包中文件不同的文件及其位置,从而可以更高效的生成备份程序。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术实施例提供的软件补丁升级装置的结构示意图;图2是本专利技术实施例提供的软件补丁升级方法的总体流程图3是本专利技术实施例提供的软件补丁升级方法的具体流程图。 具体实施例方式为了使本
的人员更好地理解本专利技术实施例的方案,下面结合附图和实施方式对本专利技术实施例作进一步的详细说明。图1为本专利技术实施例中软件补丁升级装置的结构示意图。该软件补丁升级装置包括接收模块11、程序生成模块12、和调度模块13。其中,接收模块11用于接收升级指令,将升级指令发送给程序生成模块13 ;程序生成模块12用于在接收到升级指令后,根据补丁文件包中文件名和目录结构,生成备份程序;其中,程序生成模块I2中根据补丁文件中文件名和目录结构,生成备份程序,具体可以是将补丁文件中文件名和目录结构,与被升级文件的文件名和目录结构进行对比, 不需要比对文件内容,根据对比后的结果,生成备份程序。由于补丁文件包一直存在且不变,且目录结构与被升级文件的目录结构相同,备份程序中可以不必包含被升级软件的完整文件,在备份程序中只需要记录被升级软件的文件与补丁文件包中文件不同的文件及其位置,从而可以更高效的生成备份程序。调度模块13用于调用程序生成模块12生成的备份程序,执行备份操作;调度模块 13还用于调用补丁文件包,执行升级操作;其中,调度模块13中执行升级操作可以是具体是补丁文件包中文件中的升级所需的非变更文件和升级所需的变更文件覆盖被升级的软件文件。通过上述对本专利技术实施例提供的软件补丁升级装置的说明,该装置中程序生成模块12将补丁文件包中文件名和目录结构,与被升级软件的文件进行对比,生成备份程序, 然后,调度模块13调用该备份程序,执行备份操作,调度模块13调用补丁文件包执行升级操作。使得该装置在执行升级操作之前可以实现对被升级软件的备份;进一步,软件补丁升级装置还包括存储模块14用于存储补丁文件包;其中,补丁文件包中包括升级所需的文件,具体可以包括升级所需的非变更文件,和升级所需的变更文件。需要理解的是,补丁文件包中非变更文件是指直接覆盖或者新增的文件,文件的目录结构和现有的目录结构相同,如果是新增文件目录不存在的还是按照升级后的目录结构放置。按照这个原则配置好补丁后,就可以通过补丁升级装置完成补丁的升级了。进一步,程序生成模块12将补丁文件包中文件名和目录结构与被升级软件的文件进行对比,生成备份程序,备份程序中可以不必包含被升级软件的所有文件,在备份程序中只需要记录被升级软件的文件与补丁文件包中文件不同的文件及其位置,从而可以更高效的生成备份程序。优选的,调度模块13还用于判断升级操作是否失败,如果升级操作失败,则调度模块13还用于通知程序生成模块12升级操作失败;因此,程序生成模块12还用于当升级操作失败时,根据补丁文件包中文件名和目录结构,以及备份操作后生成的备份包中文件, 生成恢复程序;调度模块13还用于调用生成的恢复程序,执行恢复操作。其中,程序生成模块I2根据补丁文件包中文件名和目录结构,以及备份操作后生成的备份包中文件,生成恢复程序可以顺序的包括两部分,一部分是生成清理脚本,另一部分是生成恢复脚本。其中,由补丁文件包中文件名和目录结构,可以容易的获知进行升级操作的被升级软件中文件的具体位置,当升级操作失败后,只需要将被升级软件中被补丁文件包覆盖地方的文件全部清除。基于该原理,程序生成模块12可以生成恢复程序中的清理脚本。进一步,恢复脚本是利用备份操作生成的备份包回滚系统的原理而生成的。调度模块 13调用恢复程序后,执行恢复操作,具体可以顺序的执行清除覆盖有补丁文件包中文件,用备份操作生成的备份包回滚系统,实现了系统恢复。通过上述说明,程序生成模块12和调度模块13共同实现了在升级操作失败后系统的恢复,使得本专利技术实施例提供的软件补丁升级装置可以实现系统恢复功能。优选的,还需要说明的是,程序生成模块12生成恢复程序的顺序可以不限于上述在调度模块13执行升级操作失败之后,也程序生成模块12可以在调度模块13执行备份操作之后,根据补丁文件包中文件名和目录结构,以及备份操作后生成的备份包中文件,生成恢复程序;当调度模块13执行升级操作失败,直接调用生成的恢复程序即可。优选的,本实施例提供的软件补丁升级装置中存储模块14中存储的补丁文件包在出厂时可以是包含非变更文件,和变更文件信息。换句话说,变更文件没有直接被包含在补丁文件包中,而是,通过变更信息和被变更软件的文件,间接的获得到变更文件。因此,本实施例提供的装置还可以包括获取模块15和配置模块16。获取模块15用于根据补丁文件包中变更文件信息,获取被升级软件中文件;将获取的被升级软件中文件存储到补丁包中;配置模块16根据存储的变更文件信息,对获取的被升级软件中文件进行配置,配置模块具体用于根据变更文件信息,对获取的被升级软件中文件进行增加,删除,或者修改其中任意一种或者几种操作。配置后的文件也就是上述所说的补丁文件包中的变更文件。通过对软件补丁升级装置中增加获取模块15和配置模块16使得该装置可以利用被现有被升级软件的文件,而不必将所有文件都存储到补丁包中,使得出厂时的补丁包更简单。图2所示为本专利技术实施例提供的一种软件补丁升级方法总体流程图。本实施例提供的方法可以在升级操作之前,执行根据补丁文件包中文件名和目录结构,生成备份程序,本文档来自技高网
...

【技术保护点】
1.一种软件补丁升级方法,其特征在于,包括:在接收到升级指令后,根据补丁文件包中文件名和目录结构,生成备份程序;调用所述备份程序,执行备份操作;根据所述补丁文件包中文件,执行升级操作。

【技术特征摘要】
1.一种软件补丁升级方法,其特征在于,包括在接收到升级指令后,根据补丁文件包中文件名和目录结构,生成备份程序;调用所述备份程序,执行备份操作;根据所述补丁文件包中文件,执行升级操作。2.根据权利要求1所述的方法,其特征在于,所述根据补丁文件包中文件名和目录结构,生成备份程序,具体包括将补丁文件中文件名和目录结构,与被升级文件的文件名和目录结构进行对比,根据对比后的结果,生成备份程序。3.根据权利要求1所述的方法,其特征在于,所述方法还包括根据所述补丁文件包中文件名和目录结构,以及备份操作后生成的备份包中文件,生成恢复程序;当确定所述升级操作失败后,调用所述恢复程序,执行恢复操作。4.根据权利要求1所述的方法,其特征在于,所述方法还包括根据预置的变更文件信息,获取被升级软件中文件;根据所述变更文件信息,对获取的被升级软件中文件进行配置;则所述补丁文件包中包括所述配置后得到的文件。5.根据权利要求4所述的方法,其特征在于,所述根据变更文件信息,对获取的被升级软件中文件进行配置,具体包括根据变更文件信息,对获取的被升级软件中文件进行增加,删除,或者修改其中任意一种或者几种操作。6.一种软件补丁升级装置,其特征在于,包括接收模块、程序生成模块和调度模块;所述接收模块,用于接收升级指令;所述...

【专利技术属性】
技术研发人员:刘超
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:94

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

1