[发明专利]一种基于热补丁的软件系统升级方法、终端及存储介质有效
申请号: | 202010259016.X | 申请日: | 2020-04-03 |
公开(公告)号: | CN111562934B | 公开(公告)日: | 2023-08-11 |
发明(设计)人: | 向卫东;孟庆晓;吴闽华 | 申请(专利权)人: | 深圳震有科技股份有限公司 |
主分类号: | G06F8/656 | 分类号: | G06F8/656;G06F8/658 |
代理公司: | 深圳市君胜知识产权代理事务所(普通合伙) 44268 | 代理人: | 徐凯凯;陈专 |
地址: | 518057 广东省深圳市南山区粤海街*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 补丁 软件 系统升级 方法 终端 存储 介质 | ||
1.一种基于热补丁的软件系统升级方法,其特征在于,所述基于热补丁的软件系统升级方法包括以下步骤:
检测软件系统中的补丁文件,并获取所述补丁文件中待修改代码的定位信息及待写入新代码;
通过所述定位信息查找程序中的待修改代码;
安装所述补丁文件,并将所述待写入新代码写入在所述程序的代码存储区;
所述通过所述定位信息查找程序中的待修改代码,具体包括以下步骤:
关闭所述软件系统中运行程序的写入保护进程;
通过所述定位信息查找所述程序中的待修改代码;
根据查找结果复制所述待修改代码,并将所复制的待修改代码写入内存中进行备份,以便在卸载所述补丁文件时恢复所述待修改代码;
所述安装所述补丁文件,并将所述待写入新代码写入在所述程序的代码存储区,具体包括以下步骤:
安装所述补丁文件,并在所述待修改代码处写入相应的跳转执行代码;其中,所述跳转执行代码的跳转目标为所述待写入新代码;
将所述待写入新代码写入在所述程序的代码存储区,并开启所述软件系统中运行程序的写入保护进程;
所述安装所述补丁文件,并将所述待写入新代码写入在所述程序的代码存储区,之后还包括:
当检测到新补丁文件时,安装所述新补丁文件,并卸载所述程序中的原补丁文件;
所述补丁文件为ELF格式文件,其中包括:版本信息、校验信息、定位信息及所述待写入新代码;
所述补丁文件的头部设置有三个片段,所述三个片段分别为:所述补丁文件的版本信息及校验信息、所述待修改代码的定位信息、待写入新代码;其中,在包含补丁文件的版本信息及校验信息的片段中,设置有补丁文件的版本号、生成时间、CRC校验码。
2.根据权利要求1所述的基于热补丁的软件系统升级方法,其特征在于,还包括:
预先根据所述程序生成所述补丁文件。
3.根据权利要求2所述的基于热补丁的软件系统升级方法,其特征在于,还包括:
设置所述补丁文件的安装进程及卸载进程,并将所述安装进程及所述卸载进程存储在所述程序中。
4.根据权利要求1所述的基于热补丁的软件系统升级方法,其特征在于,所述检测软件系统中的补丁文件,并获取所述补丁文件中待修改代码的定位信息及待写入新代码,具体包括以下步骤:
当检测到所述软件系统的程序运行时,检测所述软件系统中的补丁文件;
读取所述补丁文件中的版本信息和校验信息,并通过所述版本信息和所述校验信息对所述补丁文件进行验证;
根据验证结果获取所述补丁文件中待修改代码的定位信息及待写入新代码。
5.一种终端,其特征在于,包括处理器,以及与所述处理器连接的存储器,所述存储器存储有基于热补丁的软件系统升级程序,所述基于热补丁的软件系统升级程序被所述处理器执行时用于实现如权利要求1-4任一项所述的基于热补丁的软件系统升级方法的操作。
6.一种存储介质,其特征在于,所述存储介质存储有基于热补丁的软件系统升级程序,所述基于热补丁的软件系统升级程序被处理器执行时用于实现如权利要求1-4任一项所述的基于热补丁的软件系统升级方法的操作。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳震有科技股份有限公司,未经深圳震有科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010259016.X/1.html,转载请声明来源钻瓜专利网。