[发明专利]一种补丁处理的方法、第一设备及存储介质在审
| 申请号: | 202010920719.2 | 申请日: | 2020-09-04 |
| 公开(公告)号: | CN114138315A | 公开(公告)日: | 2022-03-04 |
| 发明(设计)人: | 谢江帆;殷罗英 | 申请(专利权)人: | 华为技术有限公司 |
| 主分类号: | G06F8/658 | 分类号: | G06F8/658;G06F8/656 |
| 代理公司: | 深圳市深佳知识产权代理事务所(普通合伙) 44285 | 代理人: | 李杭 |
| 地址: | 518129 广东*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 补丁 处理 方法 第一 设备 存储 介质 | ||
本申请实施例公开了一种补丁处理的方法、第一设备及存储介质,能够直接修改跳转指示区域中的位置指示信息,使应用了补丁函数的第一设备只需复制一页甚至较少的几页,不会分配较多的物理页来存储,占用空间较小,极大地消除频繁地应用补丁函数引发物理页增加的缺陷,有效减少内存开销。前述的方法包括:第一设备的存储空间包括跳转指示区域,跳转指示区域包括至少两个位置指示信息,位置指示信息用于指示与其对应的函数的位置,至少两个位置指示信息包括第一指示信息,第一指示信息用于指示第一函数对应的位置;获得补丁函数,补丁函数包括第一函数的补丁,响应于补丁函数激活,更新第一指示信息的值为第一值,第一值用于指示补丁函数的位置。
技术领域
本申请实施例涉及计算机技术领域,具体涉及一种补丁处理的方法、第一设备及存储介质。
背景技术
目前,为了修复程序漏洞或更新业务功能时不中断业务,在线补丁技术被引入,使各种电子设备可以通过在线补丁的方式对现有软件进行更新。
在线补丁技术就是在系统不复位的情况下改变系统中某些目标函数行为的方法。然而,当多个进程共享动态库时,可能由于加载顺序不一致导致该动态加载库在各个进程内的虚拟地址不相同,此时需要按需分配,为每个应用补丁函数的进程都分配相应的物理页。
而随着操作系统长期地运行,越来越多的程序漏洞被不断因打补丁得到修复,而每个应用了补丁的进程都需要复制被共享且被更改的函数所在页的内容,此时会为每个应用了补丁函数的进程分配相应的物理页来存储前述描述的页的内容,而当被共享且被更改的函数所占的页较大时,分配到的物理页也会也随之增加,大量消耗了物理内存。
发明内容
本申请实施例提供了一种补丁处理的方法、第一设备及存储介质,能够在第一设备需要执行函数对应的补丁时,可以直接修改跳转指示区域中的位置指示信息,使得应用了补丁函数的第一设备可以只需要复制一页即可,不会分配较多的物理页来存储,占用空间较小,极大地消除了第一设备频繁应用补丁函数引发的物理页随之增加的缺陷,有效地减少了内存开销。
第一方面,本申请实施例提供了一种补丁处理的方法,该方法可以包括:第一设备的存储空间包括跳转指示区域,该跳转指示区域包括至少两个位置指示信息,该位置指示信息用于指示与其对应的函数的位置,该至少两个位置指示信息包括第一指示信息,该第一指示信息用于指示第一函数对应的位置;获得补丁函数,该补丁函数包括该第一函数的补丁,响应于该补丁函数激活,该第一设备更新该第一指示信息的值为第一值,该第一值用于指示该补丁函数的位置。通过上述方式,将位置指示信息集中管理在跳转指示区域中,使得在第一设备需要执行函数对应的补丁时,可以直接修改该跳转指示区域中的位置指示信息的值就能够跳转至补丁函数的位置。另外,以x86处理器架构为例,一个页空间一般只用4096个字节,而一个函数在跳转指示区域中所对应的位置指示信息所占用的字节为8个,那么在同一页中可以最多支持512个函数对应的位置指示信息;而一般来说,一个函数自身占用几十个到几千个字节不等,所以几个函数就可能占用了一个页空间,那么基于现有方案中直接对原始函数进行更改以跳转至相应的补丁函数,导致应用补丁函数的第一设备需要复制函数所在的较多的页空间,且频繁应用补丁函数引发的物理页也随之增加。基于上述内存开销上的巨大差异,本申请中由于跳转指示区域相较于代码段来说,是一个占用存储空间较少的字段,因此应用了补丁函数的第一设备可以只需要复制跳转指示区域所在的一页甚至较少的几页即可,不会分配较多的物理页来存储,占用空间较小,消除了频繁应用补丁函数引发的物理页随之增加的缺陷,减少了内存开销。
在一些实施例中,当该第一值用于指示该补丁函数的位置时,该第一值包括:跳转地址或跳转指令,该跳转地址用于指示该补丁函数的地址,该跳转指令用于指示跳转至该补丁函数所在的地址。通过上述方式,利用跳转地址或跳转指令来实现指示第一设备跳转至补丁函数,为不同的处理器架构提供了多种可选的处理方式,例如:基于x86处理器架构的特性,在x86处理器架构中,第一设备可以基于上述的跳转地址跳转至补丁函数的位置;而在非x86处理器架构中,第一设备可以与上述的跳转指令跳转至补丁函数的位置,丰富了应用场景。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010920719.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种用于游船的避障系统
- 下一篇:一种锁止结构及洗碗机





