[发明专利]内存回收的方法及相关设备在审
| 申请号: | 202310272997.5 | 申请日: | 2023-03-16 |
| 公开(公告)号: | CN116431332A | 公开(公告)日: | 2023-07-14 |
| 发明(设计)人: | 郝信;庞训磊;徐宇;邓刚;王荣巍 | 申请(专利权)人: | 阿里云计算有限公司 |
| 主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F12/02 |
| 代理公司: | 北京天同知创知识产权代理事务所(普通合伙) 16046 | 代理人: | 赵囡囡 |
| 地址: | 310024 浙江省*** | 国省代码: | 浙江;33 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 内存 回收 方法 相关 设备 | ||
本申请公开了一种内存回收的方法及相关设备,涉及计算机技术领域,该方法包括:从操作系统的内核具有的一个或多个控制组群中,确定需要执行代码段锁定操作的目标控制组群,控制组群为内核提供的用于管理进程组所使用的物理资源的机制,其中,进程组为一个或多个进程的集合,代码段锁定操作为对各进程下属于代码段的虚拟内存进行锁定的操作;判断目标控制组群中,进程下的虚拟内存是否属于代码段,若是,则对虚拟内存执行代码段锁定操作。本申请解决了频繁的进程回收但又重新从磁盘读入,导致IO耗时明显、核心服务出现明显的响应延迟的问题。
技术领域
本申请涉及到计算机技术领域,具体而言,涉及一种内存回收的方法及相关设备。
背景技术
本部分旨在为权利要求书中陈述的本发明实施例提供背景或上下文。不应以此处的描述包括在本部分中就承认是现有技术。
内存是计算机的重要部件之一,也称内存储器和主存储器,它用于暂时存放CPU中的运算数据,与硬盘等外部存储器交换的数据,在云计算环境中,随着内存的使用逐渐减少,触发内存回收,导致核心服务代码段内存被回收,代码段被写入磁盘,释放内存,但是,随着服务的持续运行,原本位于内存的代码段重新从磁盘加载进来,频繁的进程回收但又重新从磁盘读入,导致IO(即对磁盘进行读写等操作方式)耗时明显、核心服务出现明显的响应延迟现象,影响客户使用体验。甚至会造成OOM现象(OOM的全称为out of memory,通常指应用程序占用内存过多,被系统杀掉),对客户服务使用造成很糟糕的体验,严重影响云场景下的系统服务质量。
发明内容
本申请实施例提供了一种内存回收的方法及相关设备,以至少解决现有技术中,频繁的进程回收但又重新从磁盘读入,导致IO耗时明显、核心服务出现明显的响应延迟的问题。
根据本申请的一个方面,还提供了一种内存回收的方法,包括:
从操作系统的内核具有的一个或多个控制组群中,确定需要执行代码段锁定操作的目标控制组群,所述控制组群为所述内核提供的用于管理进程组所使用的物理资源的机制,其中,所述进程组为一个或多个进程的集合,所述代码段锁定操作为对各所述进程下属于代码段的虚拟内存进行锁定的操作;
判断所述目标控制组群中,所述进程下的所述虚拟内存是否属于所述代码段,若是,则对所述虚拟内存执行所述代码段锁定操作。
在其中的一些实施例中,所述方法还包括:
获取所述目标控制组群下,所述进程的身份标识;
基于所述身份标识,将所述进程记录于预先创建的链表中;
则,判断所述目标控制组群中,所述进程下的所述虚拟内存是否属于所述代码段的步骤包括:
遍历所述链表中记录的各所述进程下的所述虚拟内存,并判断所述虚拟内存的内存属性是否属于所述代码段,若是,则对所述虚拟内存执行所述代码段锁定操作。
在其中的一些实施例中,判断所述目标控制组群中,所述进程下的所述虚拟内存是否属于所述代码段的步骤还包括:
确定所述虚拟内存的结构体,所述结构体设置有标志位,所述标志位标识有所述虚拟内存的操作权限;
根据所述标志位标识的所述操作权限,判断所述标识位对应的所述虚拟内存的内存属性是否属于所述代码段。
在其中的一些实施例中,从操作系统的内核具有的一个或多个控制组群中,确定需要执行代码段锁定操作的目标控制组群之后,所述方法还包括:
获取预先设定的代码段锁定阈值;
计算已被锁定的属于所述代码段的所述虚拟内存的内存量;
判断所述内存量是否超过所述代码段锁定阈值,若否,则判断所述目标控制组群中,所述进程下的所述虚拟内存是否属于所述代码段。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里云计算有限公司,未经阿里云计算有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202310272997.5/2.html,转载请声明来源钻瓜专利网。





