[发明专利]内存占用情况分析方法、装置、设备及计算机存储介质在审
申请号: | 201711295732.8 | 申请日: | 2017-12-08 |
公开(公告)号: | CN107943681A | 公开(公告)日: | 2018-04-20 |
发明(设计)人: | 张延良 | 申请(专利权)人: | 郑州云海信息技术有限公司 |
主分类号: | G06F11/34 | 分类号: | G06F11/34;G06F11/36 |
代理公司: | 北京集佳知识产权代理有限公司11227 | 代理人: | 罗满 |
地址: | 450018 河南省郑州市*** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 内存 占用 情况 分析 方法 装置 设备 计算机 存储 介质 | ||
技术领域
本发明涉及系统状态监测技术领域,特别是涉及一种内存占用情况分析方法。本发明还涉及一种内存占用情况分析装置、设备及计算机可读存储介质。
背景技术
在开发用户态应用程序中,会经常需要检测内存的占用情况,来判断是碰到内存泄漏问题,还是存在程序占用内存过大情况。
目前一般使用开源的内存检测软件(如valgrind)去检测是否存在内存泄漏。但是,这种软件有个缺点就是必须终止用户态进程才能输出检测结果,供后续分析是否存在内存泄露以及变量或类在申请内存后的占用情况,因此目前的检测软件无法较实时的获取内存占用情况。
因此,如何提供一种实时性好的内存占用情况分析方法、装置、设备及计算机可读存储介质是本领域技术人员目前需要解决的问题。
发明内容
本发明的目的是提供一种内存占用情况分析方法,不需要停止用户态进程,可动态统计内存的使用信息,实时性好;本发明的另一目的是提供一种基于上述方法的装置、设备及计算机可读存储介质。
为解决上述技术问题,本发明提供了一种内存占用情况分析方法,包括:
运行用户态进程,所述用户态进程调用动态库的内存接口进行内存申请和释放;
所述动态库依据自身内存接口的调用情况进行内存统计,得到统计信息;
所述动态库周期性地将所述统计信息输出至指定路径文件内存储;
依据所述指定路径文件内的所述统计信息,分析内存占用情况。
优选地,所述动态库为tcmalloc动态库。
优选地,所述分析内存占用情况具体包括:
依据所述统计信息,查找内存占用超出预设大小的变量或类;
判断查找出的变量或类是否属于正常的内存占用,若是,则输出内存占用过大的判断结果,若不是,输出存在内存泄露的判断结果。
为解决上述技术问题,本发明还提供了一种内存占用情况分析装置,包括:
用户态进程运行模块,用于运行用户态进程,并通过调用动态库的内存接口进行所述用户态进程的内存申请和释放;
所述动态库,用于依据自身内存接口的调用情况进行内存统计,得到统计信息;周期性地将所述统计信息输出至指定路径文件内存储;
分析模块,用于依据所述指定路径文件内的所述统计信息,分析内存占用情况。
优选地,所述分析模块具体包括:
查找单元,用于依据所述统计信息,查找内存占用超出预设大小的变量或类;
判断单元,用于判断查找出的变量或类是否属于正常的内存占用,若是,则输出内存占用过大的判断结果,若不是,输出存在内存泄露的判断结果。
为解决上述技术问题,本发明还提供了一种内存占用情况分析设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如以上任一项所述的内存占用情况分析方法的步骤。
为解决上述技术问题,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如以上任一项所述的内存占用情况分析方法的步骤。
本发明提供了一种内存占用情况分析方法,在动态库内增加内存统计的功能,用户态进程调用动态库内的内存接口进行内存申请和释放时,动态库会实时依据内存接口的情况进行内存统计,得到统计信息,进而使得后续可根据该统计信息,分析内存占用情况。可见,本发明不需要停止用户态进程,而是在用户态进程申请或释放内存时即实时的统计了内存的占用信息,采用动态统计的方式,实时性好。本发明还提供了一种基于上述方法的装置、设备及计算机可读存储介质,在此不再赘述。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的一种内存占用情况分析方法的过程的流程图;
图2为本发明提供的一种内存占用情况分析装置的结构示意图。
具体实施方式
本发明的核心是提供一种内存占用情况分析方法,不需要停止用户态进程,可动态统计内存的使用信息,实时性好;本发明的另一目的是提供一种基于上述方法的装置、设备及计算机可读存储介质。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于郑州云海信息技术有限公司,未经郑州云海信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711295732.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种软件开发人员用控制系统
- 下一篇:提交bug的方法及装置