[发明专利]内存分配方法、装置、电子设备和计算机可读存储介质有效
申请号: | 202010390798.0 | 申请日: | 2020-05-11 |
公开(公告)号: | CN111562986B | 公开(公告)日: | 2023-05-16 |
发明(设计)人: | 杨正传;陶宏;孟勤海 | 申请(专利权)人: | 上海加糖科技有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 201103 上海市徐*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 内存 分配 方法 装置 电子设备 计算机 可读 存储 介质 | ||
本发明涉及于嵌入式系统技术领域,具体涉及一种基于嵌入式系统的内存分配方法、内存分配装置、电子设备和计算机存储介质,包括:根据预设周期内所述嵌入式系统接收到的内存申请请求,获得所述内存申请请求对应的申请内存大小;记录所述申请内存大小,当记录的所述申请内存大小的个数累积达到预设个数时,按照预设加权分析方法对累积的所述申请内存大小进行加权分析;根据分析结果,调整所述嵌入式系统在新一轮的预设周期内需分配的初始内存大小。可见,该基于嵌入式系统的内存分配方法、内存分配装置、电子设备和计算机存储介质,解决了嵌入式系统在使用过程中存在内存浪费的问题,提高了内存使用效率,降低了成本。
技术领域
本发明涉及嵌入式系统技术领域,具体涉及一种基于嵌入式系统的内存分配方法、内存分配装置、电子设备和计算机可读存储介质。
背景技术
在嵌入式系统中,内存一直都是比较紧张的资源。在现在的复杂嵌入式设备中,随着业务的复杂度越来越高,对内存的需求也越来越多样化。而作为使用者,存在使用偏好的问题,也就是说用户一般只使用嵌入式设备中的某些业务功能,所以导致传统的内存使用存在一定的浪费。为了解决内存使用浪费的问题,在现有的内存分配方案中,一般有两种解决方式:
1、所有的内存作为一个区域整体进行操作,当需要分配内存时,就在整个区域中进行查找,找到一个合适的区域并予以使用。该方案有如下的缺点:搜索时间比较长、算法复杂;即为了寻找到合适的内存块,可能需要查找整个内存空间,且查找匹配的算法也会复杂化。还有一个缺点的是会造成内存分配的碎片,导致内存虽然还有大的内存量,但由于都是小块的内存,导致无法满足相对较大的内存申请需求。
2、对内存进行预先分区处理。该方法是为了解决方法1中的缺陷而设计的。其原理是将内存按照固定的大小分配成若干块,在内存进行申请的时候直接进行匹配,从适合的最小内存块中进行分配。如此匹配算法简单,且不会产生内存碎片。
当然,之后还出现过一些变种的内存分配方式,但是所有的分配方式都是指定内存块的,即分配的内存块的块数不会根据使用的过程而对初始分配的内存块进行智能化的调整。
发明内容
为克服现有技术存在的上述不足,本发明提供一种基于嵌入式系统的内存分配方法、内存分配装置、电子设备和计算机可读存储介质,解决了嵌入式系统在使用过程中存在内存浪费的问题,提高了内存使用效率,降低了成本。
为达此目的,本发明采用以下技术方案:
第一方面,提供一种基于嵌入式系统的内存分配方法包括:
根据预设周期内所述嵌入式系统接收到的内存申请请求,获得所述内存申请请求对应的申请内存大小;
记录所述申请内存大小,当记录的所述申请内存大小的个数累积达到预设个数时,按照预设加权分析方法对累积的所述申请内存大小进行加权分析;
根据分析结果,调整所述嵌入式系统在新一轮的预设周期内需分配的初始内存大小。
优选的,所述预设周期为所述嵌入式系统从启动到停止的过程。
优选的,所述申请内存大小为申请的内存块对应的内存大小,所述初始内存大小为初始的内存块对应的内存大小;其中,所述内存块的内存大小为固定值。
优选的,所述获得所述内存申请请求对应的申请内存大小,包括:
在一个预设周期内,若接收到所述内存申请请求,则将与所述内存申请请求对应的内存块的块数递增,以获得递增后的内存块块数;
所述记录所述申请内存大小,包括:
当递增后的所述内存块块数大于初始分配的内存块块数,则更新初始分配的内存块的块数;
在所述一个预设周期结束时,记录最后得到的初始分配的内存块块数。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海加糖科技有限公司,未经上海加糖科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010390798.0/2.html,转载请声明来源钻瓜专利网。