[发明专利]多个热补丁的资源上高效的部署在审
申请号: | 201980039900.8 | 申请日: | 2019-06-07 |
公开(公告)号: | CN112384893A | 公开(公告)日: | 2021-02-19 |
发明(设计)人: | S·G·拉玛钱德兰;B·J·小舍温;D·A·赫普金 | 申请(专利权)人: | 微软技术许可有限责任公司 |
主分类号: | G06F8/656 | 分类号: | G06F8/656 |
代理公司: | 北京市金杜律师事务所 11256 | 代理人: | 刘田林 |
地址: | 美国华*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 多个热 补丁 资源 高效 部署 | ||
1.一种装置,包括:
设备,包括至少一个存储器和至少一个处理器,所述至少一个存储器适于存储针对所述设备的运行时数据,所述至少一个处理器适于执行处理器可执行代码,所述处理器可执行代码响应于执行使所述设备能够执行动作,所述动作包括:
提供针对补丁镜像的固定数量的逻辑补丁插槽,以用于热修补执行中的二进制文件;
在分离的时间接收多个热补丁请求,其中,所述多个热补丁请求中的每个热补丁请求包括用以热修补所述执行中的二进制文件的对应热补丁,并且其中所请求的所述多个热补丁的基数大于逻辑补丁插槽的所述固定数量;以及
随着所述执行中的二进制文件继续执行,当每次将热补丁应用于所述执行中的二进制文件的请求被接收时:
将所述对应热补丁分配给所述固定数量的逻辑补丁插槽中的非活跃逻辑补丁插槽;以及
从所分配的所述逻辑补丁插槽执行所述对应热补丁,以基于所述对应热补丁来热修补所述执行中的二进制文件。
2.根据权利要求1所述的装置,其中,所述执行中的二进制文件是执行中的管理程序。
3.根据权利要求1所述的装置,所述动作进一步包括:
取消分配所述对应热补丁的所述逻辑补丁插槽;以及
响应于取消分配所述逻辑补丁插槽,回收与所述逻辑补丁插槽相关联的资源。
4.根据权利要求1所述的装置,所述动作进一步包括:
响应于所述对应热补丁的执行,将与所述对应热补丁相关联的参考计数器设置为:与正在运行所述执行中的二进制文件的当前镜像的多个线程的基数相对应;
以信号通知所述多个线程解开和重绕;
当每次所述多个线程中的一个线程完成所述重绕时,递减与所述热补丁相关联的所述参考计数器;以及
响应于所述参考计数器达到零,取消分配所述对应热补丁的所述逻辑补丁插槽。
5.根据权利要求4所述的装置,其中当每次所述多个线程中的一个线程完成重绕时,响应于相关联的函数被调用,所述线程根据所述相关联的函数的经修补版本来启用所述相关联的函数。
6.根据权利要求4所述的装置,其中,响应于所述多个线程接收到解开和重绕的信号,在所述多个线程中的每个线程达到被动等待状态时,所述线程开始解开和重绕。
7.一种方法,包括:
接收将热补丁应用于执行中的管理程序的请求,其中多个线程正在所述执行中的管理程序的当前镜像中运行;
响应于所述请求,将与所述热补丁相关联的参考计数器设置为与所述多个线程的基数相对应,所述多个线程正在运行所述执行中的管理程序的所述当前镜像;
执行所述热补丁;
以信号通知所述多个线程解开和重绕;
当每次所述多个线程中的一个线程完成所述重绕时,递减与所述热补丁相关联的所述参考计数器;以及
响应于所述参考计数器达到零,随着所述执行中的管理程序的继续执行,回收与所述热补丁相关联的资源。
8.根据权利要求7所述的方法,其中当每次所述多个线程中的一个线程完成所述重绕时,响应于相关联的函数被调用,所述线程根据所述相关联的函数的经修补版本来启用所述相关联的函数。
9.根据权利要求7所述的方法,其中响应于所述多个线程接收到解开和重绕的信号,在所述多个线程中的每个线程达到被动等待状态时,所述线程开始解开和重绕。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软技术许可有限责任公司,未经微软技术许可有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201980039900.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:作业机械
- 下一篇:用于SOEC应用的膨胀器