[发明专利]内存泄露检测装置及方法、终端在审
| 申请号: | 201510615560.2 | 申请日: | 2015-09-24 |
| 公开(公告)号: | CN105204996A | 公开(公告)日: | 2015-12-30 |
| 发明(设计)人: | 杨显钧 | 申请(专利权)人: | 努比亚技术有限公司 |
| 主分类号: | G06F11/36 | 分类号: | G06F11/36 |
| 代理公司: | 深圳市世纪恒程知识产权代理事务所 44287 | 代理人: | 胡海国 |
| 地址: | 518057 广东省深圳市南山区高新区北环大道9018*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 内存 泄露 检测 装置 方法 终端 | ||
技术领域
本发明涉及计算机领域,尤其涉及一种内存泄露检测装置及方法、终端。
背景技术
在计算机科学中,内存泄露是指分配了内存给某个进程使用,而该进程使用完内存后没有释放内存,导致已分配的内存无法回收再利用。随着进程的运行,系统中的可用的内存就会越来越少,导致系统由于没有足够的内存而瘫痪,造成严重影响。内存泄露可能是由于开发人员考虑不周,编写的代码存在隐患没能及时释放内存,也可能是系统出现了异常,没有释放内存导致的。
目前,测试内存泄露的方法有很多,大多都涉及到相关的软件代码,是通过走查、反复调试来定位被测进程的代码中存在内存泄露的点,也可以借助如ccmalloc、Leaky等相关的工具来进行定位,判断被测进程是否存在内存泄露。采用现有的内存泄露测试方式,存在干扰大,测试不准确的缺陷。
发明内容
本发明的主要目的在于提出一种内存泄露检测装置及方法、终端,旨在解决现有技术中,对被测进程的内存泄露检测不准确的技术问题。
为实现上述目的,本发明提供一种内存泄露检测装置,该装置包括:
采集模块,用于采集被测进程的内存采样信息,所述内存采样信息包括采样时间、被测进程在所述采样时间对应的内存占用值;
生成模块,用于生成所述被测进程的内存占用值的变化趋势;
检测模块,用于根据所述被测进程的内存占用值的变化趋势,判断所述被测进程是否存在内存泄露。
可选的,所述检测模块还用于,在所述被测进程的内存占用值的变化趋势为递增趋势时,判断所述被测进程存在内存泄露,否则,判断所述被测进程不存在内存泄露。
可选的,所述装置还包括:
获取模块,用于获取测试脚本,所述测试脚本为shell脚本;
所述采集模块,还用于运行shell脚本采集被测进程的内存采样信息。
可选的,所述装置还包括:
定位模块,用于在所述被测进程存在内存泄露时,根据所述被测进程的内存占用值的变化趋势定位被测进程发生内存泄露的对象或代码段。
可选的,所述装置还包括:
发送模块,用于将所述采集的被测进程的内存采样信息发送给监控终端,以使得所述监控终端生成所述被测进程的内存占用值的变化趋势,并根据所述被测进程的内存占用值的变化趋势,判断所述被测进程是否存在内存泄露。
此外,为实现上述目的,本发明还提出一种内存泄露检测方法,该方法包括:
采集被测进程的内存采样信息,所述内存采样信息包括采样时间、被测进程在所述采样时间对应的内存占用值;
生成所述被测进程的内存占用值的变化趋势;
根据所述被测进程的内存占用值的变化趋势,判断所述被测进程是否存在内存泄露。
可选的,所述根据所述被测进程的内存占用值的变化趋势,判断所述被测进程是否存在内存泄露的步骤包括:
若所述被测进程的内存占用值的变化趋势为递增趋势,则判断所述被测进程存在内存泄露,否则,判断所述被测进程不存在内存泄露。
可选的,所述根据所述被测进程的内存占用值的变化趋势,判断所述被测进程是否存在内存泄露的步骤之后,该方法还包括:
在所述被测进程存在内存泄露时,根据所述被测进程的内存占用值的变化趋势定位所述被测进程发生内存泄露的对象或代码段。
可选的,所述采集被测进程的内存采样信息,所述内存采样信息包括采样时间、被测进程在所述采样时间对应的内存占用值的步骤之后,该方法还包括:
将所述采集的被测进程的内存采样信息发送给监控终端,以使得所述监控终端生成所述被测进程的内存占用值的变化趋势,并根据所述被测进程的内存占用值的变化趋势,判断所述被测进程是否存在内存泄露。
此外,为实现上述目的,本发明还提出一种终端,所述终端包括上述任一项所述的内存泄露检测装置。
本发明提出的内存泄露检测装置及方法、终端,所述内存泄露检测装置包括:采集模块,用于采集被测进程的内存采样信息,所述内存采样信息包括采样时间、被测进程在所述采样时间对应的内存占用值;生成模块,用于生成所述被测进程的内存占用值的变化趋势;检测模块,用于根据所述被测进程的内存占用值的变化趋势,判断所述被测进程是否存在内存泄露。运用本发明提供的技术方案可在该被测进程所在的终端的底层运行测试脚本,准确的采集到被测进程的内存采样信息,再根据采集到的内存采样信息判断被测进程是否发生内存泄露,可提高内存泄露检测的准确性。
附图说明
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于努比亚技术有限公司,未经努比亚技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510615560.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:定位软件开发中代码受影响范围的方法及系统
- 下一篇:一种异常调试方法及系统





