[发明专利]一种静态内存管理方法及装置在审
申请号: | 202011602076.3 | 申请日: | 2020-12-30 |
公开(公告)号: | CN112650693A | 公开(公告)日: | 2021-04-13 |
发明(设计)人: | 张朋 | 申请(专利权)人: | 上海创功通讯技术有限公司 |
主分类号: | G06F12/06 | 分类号: | G06F12/06;G06F9/50 |
代理公司: | 北京同达信恒知识产权代理有限公司 11291 | 代理人: | 张燕 |
地址: | 201203 上海市浦东新区*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 静态 内存 管理 方法 装置 | ||
1.一种静态内存管理方法,其特征在于,包括:
若待分配内存空间无空闲的目标内存块,则将候选内存块作为分配给所述待分配内存空间的内存块;所述目标内存块为堆内存的多个内存块中不小于所述待分配内存空间的最小内存块;所述候选内存块为所述多个内存块的空闲内存块中不小于所述待分配内存空间的最小内存块;所述候选内存块的内存空间大于所述目标内存块的内存空间;所述多个内存块的内存空间为静态空间;
待所述目标内存块空闲时,将所述候选内存块中的数据拷贝至所述目标内存块,并释放所述候选内存块。
2.如权利要求1所述的方法,其特征在于,所述候选内存块为第一候选内存块或第二候选内存块;所述第一候选内存块为所述多个内存块在第一时段的空闲内存块中不小于所述待分配内存空间的最小内存块;所述第二候选内存块为所述多个内存块在第二时段的空闲内存块中不小于所述待分配内存空间的最小内存块;所述第一候选内存块的内存空间大于所述第二候选内存块的内存空间;所述第一时段在所述第二时段之前;所述方法还包括:
在所述第二时段,将所述第一候选内存块中的数据拷贝至所述第二候选内存块,并释放所述第一候选内存块。
3.如权利要求1所述的方法,其特征在于,所述候选内存块为第一候选内存块;所述第一候选内存块为所述多个内存块在第一时段的空闲内存块中不小于所述待分配内存空间的最小内存块;所述目标内存块为所述多个内存块在第三时段的空闲内存块中不小于所述待分配内存空间的最小内存块;所述第一时段在所述第三时段之前;
所述待所述目标内存块空闲时,将所述候选内存块中的数据拷贝至所述目标内存块,并释放所述候选内存块,包括:
在所述第三时段,将所述第一候选内存块中的数据拷贝至所述目标内存块,并释放所述第一候选内存块。
4.如权利要求1所述的方法,其特征在于,所述多个内存块中任一内存块的存储状态信息通过预设数据结构记录;
所述预设数据结构中包括预设标识;所述预设标识为第一预设值或第二预设值;所述预设标识的初始值为所述第二预设值;所述第一预设值指示所述内存块中所存储数据的目标内存块不为所述内存块;所述第二预设值指示所述内存块中所存储数据的目标内存块为所述内存块;
所述待所述目标内存块空闲时,将所述候选内存块中的数据拷贝至所述目标内存块之前,还包括:
确定所述候选内存块的预设标识为所述第一预设值。
5.如权利要求4所述的方法,其特征在于,所述将候选内存块作为分配给所述待分配内存空间的内存块之后,还包括:
将所述候选内存块的预设标识从所述第二预设值更新为所述第一预设值;
所述释放所述候选内存块后,还包括:
将所述候选内存块的预设标识从所述第一预设值更新为所述第二预设值。
6.如权利要求1所述的方法,其特征在于,所述多个内存块中任一内存块的存储状态信息通过预设数据结构记录;所述预设数据结构记录包括内存指针;所述内存指针指向所述待分配内存空间当前所分配的内存块;所述将候选内存块作为分配给所述待分配内存空间的内存块之后,还包括:
设置所述内存指针指向所述候选内存块;
所述将所述候选内存块中的数据拷贝至所述目标内存块之后,还包括:
设置所述内存指针指向所述目标内存块。
7.如权利要求1至6任一项所述的方法,其特征在于,还包括:
输出所述多个内存块的存储状态信息;所述多个内存块任一内存块的存储状态信息包括:所述内存块被分配的持续时长;
释放所述多个内存块中被分配的持续时长大于预设时长的内存块;所述预设时长为判断内存块异常占用的时长。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海创功通讯技术有限公司,未经上海创功通讯技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011602076.3/1.html,转载请声明来源钻瓜专利网。