一种内存管理方法及装置制造方法及图纸

技术编号:4004255 阅读:171 留言:0更新日期:2012-04-11 18:40
本发明专利技术实施例公开了一种用于内存管理的方法,包括:接收内存分配请求,所述内存分配请求中包括:请求分配的内存大小;根据所述请求分配的内存大小,在内存所有可用空间中选取最匹配的内存空间;所述最匹配的内存空间为:在所有不小于所述请求分配的内存大小的可用空间中,最小的可用空间;响应所述内存分配请求。本发明专利技术实施例还公开了一种用于内存管理的装置。采用本发明专利技术,具有为内存分配请求分配大小最匹配的可用内存碎片,增加内存的重复使用率和请求处理效率,使内存资源的使用效率最大化,提高整个系统的处理速度,给用户更好的使用体验的优点。

【技术实现步骤摘要】

本专利技术涉及计算机电子领域,尤其涉及一种内存管理方法及装置
技术介绍
随着计算机电子技术的发展,其应用的领域越来越广,除了传统的通信、计算机领 域,在汽车、家电、以及各种数控电子设备上也开始流行小型的计算机系统。但是,专利技术人在实施本专利技术的过程中发现,现有应用于汽车、家电、以及各种数控 电子设备领域的小型计算机系统存在明显的缺陷在汽车、家电、以及各种数控电子设备领域应用的计算机电子系统,由于受体积、 成本或硬件的限制较多,所以在上述领域使用的系统往往内存较小,其操作系统与传统的 通信、计算机领域相比,不够完善,进而造成系统运行过程中,占用和释放内存时都会产生 大量零散的内存碎片,阻碍内存空间的循环使用,降低了内存的有效利用率,浪费硬件资 源,使整个系统的处理速度减缓,降低用户满意度。
技术实现思路
本专利技术实施例所要解决的技术问题在于提供一种用于内存管理的方法及装置。 可有效管理内存资源,为程序分配最匹配的内存空间,在内存空间被释放时,进行合并整 理,增加内存的循环使用率和请求处理效率,使内存资源的使用效率最大化,提高整个系统 的处理速度,给用户更好的使用体验。为了解决上述技术问题,本专利技术实施例提供一种内存管理方法,包括接收内存分配请求,所述内存分配请求中包括请求分配的内存大小;根据所述请求分配的内存大小,在内存所有可用空间中选取最匹配的内存空间; 所述最匹配的内存空间为在所有不小于所述请求分配的内存大小的可用空间中,最小的 可用空间;响应所述内存分配请求。其中,所述接收内存分配请求之前还包括统计内存中所有可用空间的大小及对 应的地址,并根据所述可用空间的大小进行排序。其中,所述响应所述内存分配请求,所述响应中包括所述最匹配的内存空间的地 址,包括根据所述内存分配请求中请求分配的内存大小,在所述最匹配的内存空间中划分 对应大小的空间,供所述内存分配请求的发送端使用;向所述内存分配请求的发送端反馈划分出的内存空间的地址。其中,所述响应所述内存分配请求之后,还包括当所述划分出的内存空间被释放时,检测与被释放的内存空间相邻的内存空间是 否为可用空间;若所述相邻的内存空间为可用空间,则将所述被释放的内存空间与其相邻的内存空间合并。其中,所述方法应用于车载系统的内存管理。相应地,本专利技术实施例还提供了一种内存管理装置,包括请求接收模块,用于接收内存分配请求,所述内存分配请求中包括请求分配的内 存大小;内存匹配模块,用于根据所述请求分配的内存大小,在内存所有可用空间中选取 最匹配的内存空间;所述最匹配的内存空间为在所有不小于所述请求分配的内存大小的 可用空间中,最小的可用空间;响应处理模块,用于响应所述内存分配请求。其中,所述装置还包括统计排序模块,用于统计内存中所有可用空间的大小及对应的地址,并根据所述 可用空间的大小进行排序;内存匹配模块获取所述请求分配的内存大小后,根据所述统计排序模块对内存对 可用空间的排序,查找出最匹配的内存空间。其中,所述响应处理模块包括处理单元,用于根据所述内存分配请求中请求分配的内存大小,在所述内存匹配 模块查找出的最匹配的内存空间中,划分出对应大小的内存空间,供所述内存分配请求的 发送端使用;响应单元,用于向所述内存分配请求的发送端反馈所述处理单元划分出的内存空 间的地址。其中,所述装置还包括合并整理模块,用于当划分出的内存空间被释放时,检测与被释放的内存空间相 邻的内存空间是否为可用空间;若所述相邻的内存空间为可用空间,则将所述被释放的内 存空间与其相邻的内存空间合并。其中,所述装置应用于车载系统。实施本专利技术实施例,具有如下有益效果一、为内存分配请求分配大小最匹配的可用内存碎片,增加内存的重复使用率和 请求处理效率,提高整个系统的处理速度;二、在处理申请内存请求时加入排序算法,以可 用内存碎片的大小为序,增加查找效率;三、在内存空间被释放时,进行合并整理,可有效管 理内存资源,使内存资源的使用效率最大化,给用户更好的使用体验。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本 专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可 以根据这些附图获得其他的附图。图1为本专利技术提供的内存管理方法第一实施例流程示意图;图2为本专利技术提供的内存管理方法第二实施例流程示意图;图3为本专利技术提供的内存管理装置第一实施例结构示意图4为本专利技术提供的内存管理装置第二实施例结构示意图。 具体实施例方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于 本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他 实施例,都属于本专利技术保护的范围。参见图1,为本专利技术提供的内存管理方法第一实施例流程示意图,包括步骤S100,接收内存分配请求,所述内存分配请求中包括请求分配的内存大小。步骤S 101,根据所述请求分配的内存大小,在内存所有可用空间中选取最匹配的 内存空间;所述最匹配的内存空间为在所有不小于所述请求分配的内存大小的可用空间 中,最小的可用空间。步骤S102,响应所述内存分配请求,为请求端分配最匹配的内存空间供其使用。本专利技术实施例提供的内存管理方法,为程序分配大小最匹配的可用内存空间,增 加内存的重复使用率和请求处理效率,使内存资源的使用效率最大化,提高整个系统的处 理速度,给用户更好的体验。参见图2,为本专利技术提供的内存管理方法第二实施例流程示意图,在本实施例中, 将更为详细的描述本内存管理方法的流程,同时,本实施例提供的流程将增加内存空间被 释放后,进行合并整理的步骤,进一步优化内存资源。该内存管理方法如图2所示,包括在步骤S200,统计内存中所有可用空间的大小及对应的地址,并根据所述可用空 间的大小进行排序。进一步的,计算机系统中所有程序的运行都是在内存中进行的。一个 内存中可能同时运行着多个程序,各个运行的程序都占据着一部分内存空间(也称为“碎 片”),一般情况下,各个程序所占据的内存空间并不连续,所以,内存中将会剩下一些零散、 可用的内存空间或碎片。在本步骤中,就是将内存中剩下的所有可用内存空间,按照其大小 进行排序,同时记录各个可用内存空间的地址。更为具体的,假设有一个100M的内存,其占用情况如表1所示表 1 需要说明的是,表1只是为了更形象的说明本专利技术的技术方案,并不代表实际的 内存情况。从表1中可以看出,该内存已有4个部分被占用,剩余的空间被分为4部分,共 有50M,即内存中形成了 4个可用的内存空间。在本步骤中,根据可用空间的大小对其进行 排序后,结果如表2所示表 2 在步骤S201,接收内存分配请求,所述内存分配请求中包括请求分配的内存大 小。更为具体,当系统中有新的程序需要运行时,将发送内存分配请求,请求为其分配一定 大小的内存空间供其运行。所述内存分配请求中包括请求分配的内存大小,例如10M。当 然,也可能会包括程序占用该内存空间的时长。在步骤S202,根据所述请求分配的内存大小,在内存所有可用空间中选取最匹配 的内本文档来自技高网...

【技术保护点】
一种内存管理方法,其特征在于,包括:接收内存分配请求,所述内存分配请求中包括:请求分配的内存大小;根据所述请求分配的内存大小,在内存所有可用空间中选取最匹配的内存空间;所述最匹配的内存空间为:在所有不小于所述请求分配的内存大小的可用空间中,最小的可用空间;响应所述内存分配请求。

【技术特征摘要】

【专利技术属性】
技术研发人员:黄健
申请(专利权)人:惠州华阳通用电子有限公司
类型:发明
国别省市:44[中国|广东]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1