[发明专利]一种适用于SLAB的内存分配方法及装置在审
申请号: | 201410707583.1 | 申请日: | 2014-11-28 |
公开(公告)号: | CN104317734A | 公开(公告)日: | 2015-01-28 |
发明(设计)人: | 范恒英 | 申请(专利权)人: | 迈普通信技术股份有限公司 |
主分类号: | G06F12/06 | 分类号: | G06F12/06 |
代理公司: | 北京中博世达专利商标代理有限公司 11274 | 代理人: | 申健 |
地址: | 610041 四川省*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 适用于 slab 内存 分配 方法 装置 | ||
1.一种适用于SLAB的内存分配方法,其特征在于,包括:
获取一连续的第一内存区域;
将所述第一内存区域划分为多个连续的大小相同的内存块;
获取一连续的第二内存区域;
在所述第二内存区域设置与所述内存块对应的控制块;其中,所述控制块包含:指向所述第一内存区域起始地址的内存块数组指针、所有所述内存块的控制信息组成的控制信息数组、所有所述内存块的使用者信息组成的使用者信息数组。
2.根据权利要求1所述的SLAB内存分配方法,其特征在于,在所述第二内存区域设置与所述内存块对应的控制块,包括:
在所述第二内存区域设置与所述内存块数组指针的大小、所述控制信息数组的大小、所述使用者信息数组的大小之和相等的控制块。
3.根据权利要求1或2所述的SLAB内存分配方法,其特征在于,
所述控制块还包含指向所述使用者信息数组起始地址的使用者信息数组指针。
4.根据权利要求1-3任一项所述的SLAB内存分配方法,其特征在于,在获取一连续的第一内存区域之前,所述方法还包括:
接收上层用户发送的分配请求,其中,所述分配请求包含用户请求分配的内存大小;
将所述第一内存区域划分为多个连续的大小相同的内存块包括:
将所述内存区域划分为多个连续的、大小与所述用户请求分配的内存大小相等的内存块。
5.一种适用于SLAB的内存分配装置,其特征在于,包括:
获取单元,用于获取一连续的第一内存区域;
划分单元,用于将所述第一内存区域划分为多个连续的大小相同的内存块;
所述获取单元,还用于获取一连续的第二内存区域;
配置单元,用于在所述第二内存区域设置与所述内存块对应的控制块,其中,所述控制块包含:指向所述第一内存区域起始地址的内存块数组指针、所有所述内存块的控制信息组成的控制信息数组、所有所述内存块的使用者信息组成的使用者信息数组。
6.根据权利要求5所述的SLAB内存分配装置,其特征在于,所述配置单元,具体用于:
在所述第二内存区域设置与所述内存块数组指针的大小、所述控制信息数组的大小、所述使用者信息数组的大小之和相等的控制块。
7.根据权利要求5和6所述的SLAB内存分配装置,其特征在于,
所述控制块还包含指向所述使用者信息数组起始地址的使用者信息数组指针。
8.根据权利要求1-3任一项所述的SLAB内存分配装置,其特征在于,
所述获取单元,还用于在获取一连续的第一内存区域之前,接收上层用户发送的分配请求,其中,所述分配请求包含用户请求分配的内存大小;
相应的,所述划分单元,具体用于将所述内存区域划分为多个连续的、大小与所述用户请求分配的内存大小相等的内存块。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于迈普通信技术股份有限公司,未经迈普通信技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410707583.1/1.html,转载请声明来源钻瓜专利网。