[发明专利]内存分配方法及系统有效
申请号: | 201310074180.3 | 申请日: | 2013-03-08 |
公开(公告)号: | CN103106147A | 公开(公告)日: | 2013-05-15 |
发明(设计)人: | 李顺芬;陈小刚;周密;宋志棠 | 申请(专利权)人: | 中国科学院上海微系统与信息技术研究所 |
主分类号: | G06F12/02 | 分类号: | G06F12/02 |
代理公司: | 上海光华专利事务所 31219 | 代理人: | 李仪萍 |
地址: | 200050 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 内存 分配 方法 系统 | ||
1.一种内存分配方法,其特征在于,所述内存分配方法至少包括:
-将包含1个空闲页面的各内存块归为一组空闲内存块组、包含2个空闲页面的各内存块归为一组空闲内存块组、包含空闲页面数量大于等于2i-1+1且小于等于2i的各内存块归为一组空闲内存块组,i为大于或等于2的整数,并基于空闲内存块组内各个空闲块的相关信息建立相应的空闲块索引记录,以便查询。
2.根据权利要求1所述的内存分配方法,其特征在于还包括步骤:
-基于内存需求来确定待查询的空闲内存块组;
-由待查询的空闲内存块组开始进行查询,以提供能满足内存需求的可用空闲内存块,
并修改可用空闲内存块的索引记录。
3.根据权利要求2所述的内存分配方法,其特征在于:
-当该可用空闲内存块的存储容量超过所述内存需求时,则将该可用空闲内存块拆分为满足所述内存需求的第一伙伴内存块与第二伙伴内存块,再基于第二伙伴内存块包含的空闲页面数量来确定该第二伙伴内存块所属的空闲内存块组,并基于所述第一伙伴内存块的相关信息来建立该内存块相对应的已分配索引记录、基于第二伙伴内存块的相关信息来建立新的空闲内存块索引记录,并删除该可用空闲内存块相对应的空闲块索引记录。
4.根据权利要求2所述的内存分配方法,其特征在于:
-当该可用空闲内存块的存储容量等于所述内存需求时,提供该可用空闲内存块以满足所述内存需求,并将该可用空闲内存块相对应的空闲块索引记录删除,并添加该内存块相对应的已分配索引记录。
5.根据权利要求2所述的内存分配方法,其特征在于:
-当该可用空闲内存块仅包含一个空闲页面时,若其存储容量超过所述内存需求时,直接提供该可用空闲内存块以满足所述内存需求,并将该可用空闲内存块相对应的空闲块索引记录删除,接着再添加该内存块相对应的已分配索引记录。
6.根据权利要求1所述的内存分配方法,其特征在于还包括步骤:
-基于待回收内存块的索引记录来确定是否存在伙伴内存块;
-若存在伙伴内存块,则确定该伙伴内存块是否已分配,若是,则基于该待回收内存块包含的页面数量来确定其所属的空闲内存块组,并在相应的空闲内存块组中增加该待回收内存块相对应的空闲块索引记录,并删除该待回收内存块相对应的已分配索引记录;若否,则将该待回收内存块与伙伴内存块合并,并基于该合并后的内存块包含的页面数量来确定其所属的空闲内存块组,并在相应的空闲内存块组中增加合并后的内存块相对应的空闲块索引记录,并删除待回收内存块相对应的已分配索引记录以及该伙伴内存块相对应的空闲块索引记录。
7.根据权利要求1所述的内存分配方法,其特征在于:每一组空闲内存块组的空闲内存块索引记录依照各自记录的空闲内存块包含的空闲页面数量以升序方式排列。
8.根据权利要求1所述的内存分配方法,其特征在于:2≤i≤9。
9.一种内存分配系统,其特征在于,所述内存分配系统至少包括:
分组模块,用于将包含1个空闲页面的各内存块归为一组空闲内存块组、包含2个空闲页面的各内存块归为一组空闲内存块组、包含空闲页面数量大于等于2i-1+1且小于等于2i的各内存块归为一组空闲内存块组,i为大于或等于2的整数;并基于空闲内存块组内各个空闲块的相关信息建立相应的空闲块索引记录,以便查询。
10.根据权利要求9所述的内存分配系统,其特征在于还包括:
确定模块,用于基于内存需求来确定待查询的空闲内存块组;
提供模块,用于由待查询的空闲内存块组开始进行查询,以提供能满足内存需求的可用空闲内存块。
11.根据权利要求10所述的内存分配系统,其特征在于:
当该可用空闲内存块的存储容量超过所述内存需求时,则提供模块将该可用空闲内存块拆分为满足所述内存需求的第一伙伴内存块与第二伙伴内存块,分组模块再基于第二伙伴内存块包含的空闲页面数量来确定该第二伙伴内存块所属的空闲内存块组,并基于所述第一伙伴内存块的相关信息来建立该内存块相对应的已分配索引记录、基于第二伙伴内存块的相关信息来建立新的空闲内存块索引记录,并删除该可用空闲内存块相对应的空闲块索引记录。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院上海微系统与信息技术研究所,未经中国科学院上海微系统与信息技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310074180.3/1.html,转载请声明来源钻瓜专利网。