[发明专利]内存块有效性检测方法有效
申请号: | 201210199999.8 | 申请日: | 2012-06-18 |
公开(公告)号: | CN102789407A | 公开(公告)日: | 2012-11-21 |
发明(设计)人: | 车任秋;罗德贵;周琳 | 申请(专利权)人: | 上海斐讯数据通信技术有限公司 |
主分类号: | G06F11/22 | 分类号: | G06F11/22;G06F12/02 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 201600 上海市松江*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明提供了一种内存块有效性检测方法,主要包括:获取内存管理系统中内存池的起始地址及结束地址;检索内存管理系统中的空闲内存块AVL树,收集所有空闲内存块的信息,以数组形式存储,并按照内存块地址进行由低到高排序;判断是否存在空闲块,如果是存在空闲块,检测当前空闲块的有效性,如果不存在空闲块,则检测完成;如果内存块不能通过有效性检测,则作为坏块,提示该坏块的位置以及其详细信息,再获取下一个空闲块循环检测。本发明在不扩展内存块现有组织结构以及不需要增加任何标记消耗额外内存的基础上,能有效地检测出内存管理系统中出现的内存坏块,并提示坏块位置及信息,以方便开发人员定位解决出现坏块的原因。 | ||
搜索关键词: | 内存 有效性 检测 方法 | ||
【主权项】:
一种内存块有效性检测方法,其特征在于:所述内存块有效性检测方法包括如下步骤:step1:获取内存管理系统中内存池的起始地址及结束地址,从而确定内存管理系统的范围;step2:检索内存管理系统中的空闲内存块AVL树,收集所有空闲内存块的信息,以数组形式存储,并按照内存块地址进行由低到高排序;step3:判断是否存在空闲块,如果是存在空闲块,执行step4,如果不存在空闲块,则检测完成;step4:检测当前空闲块的有效性:step4.1:如果不能通过有效性检测,则作为坏块,提示该坏块的位置以及其详细信息,再获取下一个空闲块并重复step3,即,重复判断是否还存在空闲块,如果还存在空闲块,重复检测该空闲块的有效性;如果不存在空闲块,则检测完成;step4.2:如果能通过有效性检测,则检测下一个内存块的有效性,如果能通过有效性检测,则执行step5,如果不能通过有效性检测,则作为坏块,提示该坏块的位置以及其详细信息,再获取下一个空闲块并重复step3;step5:判断再下一个内存块是否为空闲块,如果是空闲块,重复step4;如果不是空闲块,则判断是否为最后一个分配块,如果是最后一个分配块,则检测完成,如果不是最后一个分配块,则执行step6;step6:检测该分配块的有效性,如果该分配块能通过有效性检测,则重复step5;如果该分配块不能通过有效性检测,则作为坏块,提示该坏块的位置以及其详细信息,再获取下一个空闲块并重复step3。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海斐讯数据通信技术有限公司,未经上海斐讯数据通信技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201210199999.8/,转载请声明来源钻瓜专利网。