[发明专利]一种计算机内存管理方法、装置、设备及存储介质有效
申请号: | 202110626279.4 | 申请日: | 2021-06-04 |
公开(公告)号: | CN113268349B | 公开(公告)日: | 2022-02-18 |
发明(设计)人: | 李燕 | 申请(专利权)人: | 科东(广州)软件科技有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50 |
代理公司: | 北京华夏正合知识产权代理事务所(普通合伙) 11017 | 代理人: | 韩登营 |
地址: | 510530 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 计算机 内存 管理 方法 装置 设备 存储 介质 | ||
本发明提供了一种计算机内存管理方法、装置、设备及存储介质,所述方法包括:配置各类型的内存管理链表,每种类型的内存管理链表包括若干梯级递增的内存梯级链表,梯级高的内存梯级链表存放的空闲内存块大;根据调用的系统堆接口的类型和所需内存大小从相应类型的内存管理链表的内存梯级链表中按照梯级查找并分配大小匹配的内存块给系统堆调用方;基于调用的系统堆接口的类型和所释放内存大小把所释放内存加入到相应类型的内存管理链表的梯级匹配的内存梯级链表中;对各类型的内存管理链表中物理地址相邻空闲的内存块进行归并。所述方法、装置、设备及存储介质实现了计算机内存的无损管理,提高了计算机内存使用效率。
技术领域
本发明涉及计算机操作系统领域,尤其涉及一种计算机内存管理方法、装置、设备及存储介质领域。
背景技术
当前嵌入式操作系统的内核堆由于存在不断的分配和释放,导致堆本身可能存在很多内存碎片,这些碎片不连续,如图1A中示出的空闲内存碎片分布。这些空闲碎片不能满足分配更大空间的需求,从而导致堆空间不能被充分使用。
分配的堆空间本身带有堆管理数据结构,实际使用的空间总是小于分配的空间,并不是全空间使用。如图1B示出的分配的内存空间结构图,分配的堆空间的起始地址包括堆管理数据结构的数据。
发明内容
有鉴于此,本发明实施例提供了一种计算机内存管理方法、装置、设备及存储介质,通过梯级式的内存管理链表,对空闲内存块实现按其大小匹配的梯级存放,仅根据所需内存大小分配内存,并对物理地址相邻的空闲内存块进行归并,减少内存碎片,从而实现无损内存管理。
第一方面,本发明实施例提供了一种计算机内存管理方法,包括:配置各类型的内存管理链表,每种类型的内存管理链表包括若干梯级顺序增加的内存梯级链表,内存梯级链表的梯级越高,其存放的空闲内存块越大;根据调用的系统堆接口的类型和所需内存大小,从相应类型的内存管理链表的内存梯级链表中按照梯级查找并分配大小匹配的内存块给系统堆调用方;基于系统堆使用方类型和所释放内存大小把所释放内存加入到相应类型的内存管理链表的梯级匹配的内存梯级链表中。
由上,基于梯级分类的内存梯级链表快速查找满足所需内存大小的最小空闲内存块,且从其中只分配所需内存大小的空闲内存块,并把多余的空间存回对应梯级的内存梯级链表;把释放内存存入相应的内存梯级链表从而实现无损内存分配。
在第一方面的一种计算机内存管理方法的一种可能的实施方式中,所述配置各类型的内存管理链表包括:配置所述内存管理链表,所述内存管理链表的类型包括内核字节堆、用户字节堆和页堆,其中,内核字节堆用于计算机内核的内存分配和释放,用户字节堆用于用户程序的内存分配和释放,页堆既用于计算机内核的内存分配和释放,还用于用户程序的内存分配和释放;配置所述内存梯级链表,各类型的内存管理链表包括若干梯级的相应类型的内存梯级链表,页堆内存梯级链表的最小梯级大于内核字节堆内存梯级链表的最大梯级或用户字节堆内存梯级链表的最大梯级;在一些实施例中,所述内核字节堆内存梯级链表中存放的空闲内存块为基础内核空间的整数倍,所述基础内核空间为所述内核字节堆内存梯级链表中运行存放的最小空闲内存块,所述用户字节堆内存梯级链表中存放的空闲内存块为基础用户空间的整数倍,所述基础用户空间为所述用户字节堆内存梯级链表中允许存放的最小空闲内存块,所述页堆内存梯级链表中存放的空闲内存块为基础页堆空间的整数倍,所述基础页堆空间为所述页堆内存梯级链表中允许存放的最小空闲内存块。
由上,各梯级内核字节堆内存梯级链表和各梯级页堆内存梯级链表对应的内存空间范围依次增大,从而在为计算机内核分配内存时减少碎片产生;各梯级用户字节堆内存梯级链表和各梯级页堆内存梯级链表对应的内存空间范围依次增大,从而在为用户程序分配内存时减少碎片产生。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于科东(广州)软件科技有限公司,未经科东(广州)软件科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110626279.4/2.html,转载请声明来源钻瓜专利网。