[发明专利]一种查找改写内存的任务的方法和系统有效
| 申请号: | 200910106144.4 | 申请日: | 2009-03-16 |
| 公开(公告)号: | CN101515242A | 公开(公告)日: | 2009-08-26 |
| 发明(设计)人: | 石江涛 | 申请(专利权)人: | 中兴通讯股份有限公司 |
| 主分类号: | G06F11/10 | 分类号: | G06F11/10 |
| 代理公司: | 深圳市永杰专利商标事务所 | 代理人: | 曹建军 |
| 地址: | 518057广东省深圳市南山区*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 查找 改写 内存 任务 方法 系统 | ||
技术领域
本发明涉及了通信产品在市场应用或实验室环境中定位非法改写内存的一种手段,特别涉及一种查找改写内存的任务的方法和系统。
背景技术
在通信领域中,产品在市场应用或实验室环境中会遇到由于内存被非法改写导致系统功能异常甚至死机了。如果是定位野指针随机改写不固定的内存就更加困难了,在通信领域中野指针改写内存的问题是个难题,一般没有系统性的方法定位,通常情况下是靠不停的复现问题,然后分析流程,再不停的加入调试手段来一步一步分析和定位。
发明内容
本发明所要解决的技术问题是,提供一种查找改写内存的任务的方法和系统,从而为定位系统故障提供有效的记录信息以便于定位系统问题,提高产品在市场中的稳定性。
本发明提出了一种查找改写内存的任务的方法,包括:
步骤1、分配模块依据预定的分配策略依次分配一辅助内存和一待测内存;
步骤2、赋值模块给所述待测内存里的内容赋一校验字;
步骤3、任务切换钩子模块监测所述待测内存的内容是否被改写,在当前任务向下一个任务切换时,判断所述待测内存的内容是否与所述校验字相同,如果不相同,则记录当前任务标识,并更改标志位的初值;
步骤4、查找模块判断所述任务切换钩子模块的标志位的初值是否被更改,是则通过所述任务切换钩子模块查找到改写所述待测内存的任务标识,否则释放所述待测内存和辅助内存,执行步骤1。
当所述分配模块需要重新分配辅助内存和待测内存时,所述步骤1中预定的分配策略是,每次分配给所述辅助内存的内存容量都比上一次分配的多,或每次分配给所述辅助内存的内存容量都比上一次分配的少,或者是随机分配的;每次分配给所述待测内存的内存容量固定。
所述步骤2中的校验字是一个固定数值。
另,本发明还提出了一种查找改写内存的任务的系统,包括:
分配模块,用于初始化时或根据接收到的分配消息,依次分配一辅助内存和一待测内存;
赋值模块,用于给所述待测内存里的内容赋一校验字;
任务切换钩子模块,用于监测所述待测内存的内容是否被改写,在当前任务向下一个任务切换时,判断所述待测内存的内容是否与所述校验字相同,如果不相同,则记录当前任务标识,并更改标志位的初值;
查找模块,用于判断所述任务切换钩子模块的标志位的初值是否被更改,是则通过所述任务切换钩子模块查找到改写所述待测内存的任务标识,否则释放所述待测内存和辅助内存,发送所述分配消息给所述分配模块。
所述系统还包括分配模式存储模块,所述分配模式存储模块,用于存储第一分配模式,即每次分配给所述辅助内存的内存容量都比上一次分配的多,每次分配给所述待测内存的内存容量固定,或用于存储第二分配模式,即每次分配给所述辅助内存的内存容量都比上一次分配的少,每次分配给所述待测内存的内存容量固定,或用于存储第三分配模式,即随机分配给所述辅助内存的内存容量,每次分配给所述待测内存的内存容量固定。
所述分配模式存储模块存储了所述三种分配模式中的任一种分配模式,所述分配模块根据所述分配模式存储模块中的所述分配模式,分配一辅助内存和一待测内存。
基于上述技术方案,本发明通过动态的分配待测内存,检测待测内存内容是否被改写,定位改写所述待测内存的任务,从而捕获野指针,提高了产品在市场中的稳定性。
附图说明
图1是本发明查找改写内存的任务的方法流程图。
图2是本发明查找改写内存的任务的系统框图。
具体实施方式
下面结合附图和具体实施例对本发明的技术方案作详细说明。
图1是本发明查找改写内存的任务的方法流程图,该方法包括:
步骤1、分配模块依据预定的分配策略依次分配一辅助内存和一待测内存;
当所述分配模块需要重新分配辅助内存和待测内存时,所述步骤1中预定的分配策略是,每次分配给所述辅助内存的内存容量都比上一次分配的多,或每次分配给所述辅助内存的内存容量都比上一次分配的少,或者是随机分配的;每次分配给所述待测内存的内存容量固定。
分配待测内存是有一定策略的,原则上就是要待测内存在内存中的位置不停的变化并且有一定的随机性,利用这种策略让野指针改写待测内存,从而捕获住野指针改写内存的任务。例如可以采取如下策略:
(1)按照内容容量从少到多的顺序分配一块辅助内存,紧接着辅助内存的地址之后分配一块内存容量固定的待测内存:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中兴通讯股份有限公司,未经中兴通讯股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910106144.4/2.html,转载请声明来源钻瓜专利网。





