[发明专利]一种内存配置方法、装置及系统有效
| 申请号: | 201580083925.X | 申请日: | 2015-10-28 |
| 公开(公告)号: | CN108139969B | 公开(公告)日: | 2021-06-08 |
| 发明(设计)人: | 洪涛 | 申请(专利权)人: | 华为技术有限公司 |
| 主分类号: | G06F12/02 | 分类号: | G06F12/02 |
| 代理公司: | 北京中博世达专利商标代理有限公司 11274 | 代理人: | 姚琼 |
| 地址: | 518129 广东*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 内存 配置 方法 装置 系统 | ||
1.一种内存配置方法,其特征在于,所述内存中包含公共内存池以及至少一个本地内存池,所述方法包括:
内存配置装置统计所述至少一个本地内存池中的待配置本地内存池内处于空闲状态的缓冲区的个数为J;所述内存配置装置中存储有所述待配置本地内存池中处于空闲状态的W个缓冲区的标识,所述标识用于指示所述W个缓冲区中每个缓冲区在相应存储块中的位置,W≤J,所述J为所述内存配置装置中的缓冲区的个数W与在所述内存中所述待配置本地内存池内处于空闲状态的缓冲区的个数Q之和,所述待配置本地内存池中包含N个存储块,每个存储块中包含M个缓冲区,N≥0,M>0,0≤J≤N*M;
若J小于第一阈值,所述内存配置装置则从所述公共内存池中申请至少一个存储块至所述待配置本地内存池,直至所述待配置本地内存池中处于空闲状态的缓冲区个数等于或大于所述第一阈值;
若J大于第二阈值,所述内存配置装置则从所述待配置本地内存池中释放至少一个存储块至所述公共内存池,直至所述待配置本地内存池内处于空闲状态的缓冲区个数等于或小于所述第二阈值,所述第二阈值大于所述第一阈值;
所述内存配置装置则从所述待配置本地内存池中释放至少一个存储块至所述公共内存池,直至所述待配置本地内存池内处于空闲状态的缓冲区个数等于或小于所述第二阈值,包括:
所述内存配置装置根据所述W个缓冲区中至少一个第一缓冲区的标识,将所述至少一个第一缓冲区释放至所述待配置本地内存池中所述第一缓冲区所处的第三存储块中,所述至少一个第一缓冲区与所述第三存储块内的缓冲区均处于空闲状态;
所述内存配置装置从所述待配置本地内存池中释放所述第三存储块至所述公共内存池。
2.根据权利要求1所述的方法,其特征在于,所述内存配置装置则从所述公共内存池中申请至少一个存储块至所述待配置本地内存池,直至所述待配置本地内存池中处于空闲状态的缓冲区个数等于或大于所述第一阈值,包括:
A.所述内存配置装置从公共内存池中申请第一存储块至所述待配置本地内存池,所述第一存储块为所述公共内存池中的任意存储块;
B.所述内存配置装置将所述第一存储块划分为M个缓冲区;
C.所述内存配置装置统计当前的所述待配置本地内存池内处于空闲状态的缓冲区个数;
若当前的所述待配置本地内存池内处于空闲状态的缓冲区个数小于所述第一阈值,则所述内存配置装置循环执行步骤A、B和C,直至所述待配置本地内存池中处于空闲状态的缓冲区个数等于或大于所述第一阈值。
3.根据权利要求1所述的方法,其特征在于,所述内存配置装置则从所述待配置本地内存池中释放至少一个存储块至所述公共内存池,直至所述待配置本地内存池内处于空闲状态的缓冲区个数等于或小于所述第二阈值,包括:
D.所述内存配置装置从所述待配置本地内存池中释放第二存储块至所述公共内存池,所述第二存储块为所述待配置本地内存池中的处于空闲状态的存储块;
E.所述内存配置装置统计当前的所述待配置本地内存池内处于空闲状态的缓冲区个数;
若当前的所述待配置本地内存池内处于空闲状态的缓冲区个数大于所述第二阈值,则所述内存配置装置循环执行步骤D和E,直至所述待配置本地内存池中处于空闲状态的缓冲区个数等于或小于所述第二阈值。
4.根据权利要求1所述的方法,其特征在于,在所述内存配置装置根据所述W个缓冲区中至少一个第一缓冲区的标识,将所述至少一个第一缓冲区释放至所述待配置本地内存池中所述第一缓冲区所处的第三存储块之前,还包括:
所述内存配置装置统计在所述待配置本地内存池中与第二缓冲区对应的存储块内,除所述第二缓冲区外的其他缓冲区是否处于空闲状态,所述第二缓冲区为所述W个缓冲区中的任一个;
若所述其他缓冲区均处于空闲状态,所述内存配置装置则将所述第二缓冲区确定为所述第一缓冲区。
5.根据权利要求1-4中任一项所述的方法,其特征在于,在内存配置装置统计内存中待配置本地内存池内处于空闲状态的J个缓冲区之前,还包括:
所述内存配置装置将所述内存中预定大小的存储空间划分为所述公共内存池,所述公共内存池包含Z个存储块,Z≥N。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201580083925.X/1.html,转载请声明来源钻瓜专利网。





