[发明专利]内存管理的方法、装置、存储介质及电子设备有效
| 申请号: | 201911261539.1 | 申请日: | 2019-12-10 |
| 公开(公告)号: | CN111078407B | 公开(公告)日: | 2022-11-01 |
| 发明(设计)人: | 彭冬炜 | 申请(专利权)人: | OPPO(重庆)智能科技有限公司 |
| 主分类号: | G06F9/50 | 分类号: | G06F9/50 |
| 代理公司: | 深圳翼盛智成知识产权事务所(普通合伙) 44300 | 代理人: | 彭绪坤 |
| 地址: | 401120 重庆*** | 国省代码: | 重庆;50 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 内存 管理 方法 装置 存储 介质 电子设备 | ||
本申请实施例提供一种内存管理的方法、装置、存储介质及电子设备,通过接收内存分配请求,确定所述内存分配请求对应的内存需求量;根据所述内存需求量,从内存空间中的多个预设内存段中确定出目标内存段;从所述目标内存段中确定出与所述内存需求量的大小相匹配的目标内存页;基于所述目标内存页响应所述内存分配请求。以此通过将内存空间进行分段管理以形成多个预设内存段,并根据不同内存需求量分配不同的目标内存段进行管理,以实现将碎片内存页集中在部分预设内存段中,而其他预设内存段可以用于大块内存的分配,减少由于内存页分配所导致的碎片内存页,进而提高了内存管理的效率。
技术领域
本申请涉及电子技术领域,尤其涉及一种内存管理的方法、装置、存储介质及电子设备。
技术背景
计算机系统的内存容量通常是有限的,而同一个计算机系统上却可以运行许多计算机应用程序,为了保证不同计算机应用程序高效地使用系统内存,就需要对系统内存进行有效管理,这是计算机领域中的一项关键技术。
然而目前Linux操作系统在运行一段时间后,经过频繁的页交换之后,使物理内存中空闲页框的分布变得很分散、零碎,即出现大量的“片外碎片”。这些碎片的总容量可能足够大,但在空间上不连续。因此,尽管碎片的总容量足够大,但在系统需要一个若干页框连续的空闲空间时就会无法得到满足,从而导致内存分配失败。
发明内容
本申请实施例提供了一种内存管理的方法、装置、存储介质及电子设备,可以减少由于内存页分配所导致的碎片内存页,进而提高了内存管理的效率。
第一方面,本申请实施例提供了一种内存管理的方法,包括:
接收目标线程的内存分配请求,确定所述内存分配请求对应的内存需求量;
根据所述内存需求量,从内存空间中的多个预设内存段中确定出目标内存段;
从所述目标内存段中确定出与所述内存需求量的大小相匹配的目标内存页;
基于所述目标内存页响应所述内存分配请求。
第二方面,本申请实施例提供了一种内存管理装置,包括:
接收模块,用于接收目标线程的内存分配请求,确定所述内存分配请求对应的内存需求量;
确定模块,用于根据所述内存需求量,从内存空间中的多个预设内存段中确定出目标内存段;
匹配模块,用于从所述目标内存段中确定出与所述内存需求量的大小相匹配的目标内存页;
响应模块,用于基于所述目标内存页响应所述内存分配请求。
第三方面,本申请实施例提供了一种存储介质,其上存储有计算机程序,当所述计算机程序在计算机上运行时,使得所述计算机执行如本申请任一实施例提供的内存管理的方法。
第四方面,一种电子设备,包括处理器和存储器,所述存储器有计算机程序,所述处理器通过调用所述计算机程序,用于执行如本申请任一实施例提供的内存管理的方法。
由上可知,本申请实施例中,接收内存分配请求,确定所述内存分配请求对应的内存需求量;根据所述内存需求量,从内存空间中的多个预设内存段中确定出目标内存段;从所述目标内存段中确定出与所述内存需求量的大小相匹配的目标内存页;基于所述目标内存页响应所述内存分配请求。以此通过将内存空间进行分段管理以形成多个预设内存段,并根据不同内存需求量分配不同的目标内存段进行管理,以实现将碎片内存页集中在部分预设内存段中,而其他预设内存段可以用于大块内存的分配,减少由于内存页分配所导致的碎片内存页,进而提高了内存管理的效率。
附图说明
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于OPPO(重庆)智能科技有限公司,未经OPPO(重庆)智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911261539.1/2.html,转载请声明来源钻瓜专利网。





