天下网吧 >> 网吧系统 >> 系统教程 >> 正文

怎么样来检查Linux系统下内存泄漏

2014-4-21网络整理佚名

在天下网吧-网吧系统-网吧天下栏目上一篇文章中,我们看到了:

  • 上一篇文章:

  • 希望对各位网吧网管或者网吧维护,做网吧系统的各位大大有用,那么今天我们一起来看下:怎么样来检查Linux系统下内存泄漏

      在前面的文章中我们曾向大家介绍了关于丢失的Linux系统Grub密码如何找回的问题,不知道大家觉得怎么样呢!现在我们要向大家介绍的就是怎么样来检查Linux系统下内存泄漏!下面大家还是跟着我们txwb网吧联盟的网吧系统栏目一起去看看吧!
      1.我们可以在需要内存泄漏检查的代码的开始调用voidmtrace(void).mtrace为malloc等函数安装hook,用于记录内存分配信息.在需要内存泄漏检查的代码的结束调用voidmuntrace(void).
      需要注意的是:一般不要调用muntrace,而让程序自然结束.因为可能有些释放内存代码要到muntrace之后才运行.
      2.用debug模式编译被检查代码(-g或-ggdb)
      3.设置环境变量MALLOC_TRACE为一文件名,这一文件将存有内存分配信息
      4.运行被检查程序,直至结束或muntrace被调用.
      5.用mtrace命令解析内存分配Log文件($MALLOC_TRACE)
      (mtracefoo$MALLOC_TRACE,wherefooistheexecutiblename)
      如果有内存泄漏的话,mtrace会输出分配泄漏,内存的代码位置,以及分配数量.
      需要说明的是:1.可以将mtrace,muntrace放入信号处理函数(USR1,USR2),以动态地进行内存泄漏检查控制.
      2.mtrace是个perl代码,如果你对符号地址与代码文本的转换感兴趣,可以读一下.
      3.again,尽量不要用muntrace()
      ForC++Leak:
      另外,大家检查内存泄漏的方法除glibc提供外;还可以试试一些专用的程序。在这里就不做说明了!
      检查Linux系统下内存泄漏的相关内容我们就说到这里了,大家如果还有不明白的地方可以去本站的网吧系统栏目去查找,如果找不到解决办法,可以留言一起讨论,当然如果大家有什么好的资料也可以和我们一起分享哦!


    好了,关于【怎么样来检查Linux系统下内存泄漏】这个问题今天就说到这,有些地方说得不是很好,如果你有更好的补充请发表评论或者上网吧论坛提出吧。网吧论坛地址:http://bbs.txwb.com

    如果有下一页,请点击下一页哦,文章还没说完呢。

    本文来源:网络整理 作者:佚名

    声明
    声明:本站所发表的文章、评论及图片仅代表作者本人观点,与本站立场无关。若文章侵犯了您的相关权益,请及时与我们联系,我们会及时处理,感谢您对本站的支持!联系Email:support@txwb.com,系统开号,技术支持,服务联系QQ:1175525021本站所有有注明来源为天下网吧或天下网吧论坛的原创作品,各位转载时请注明来源链接!
    天下网吧·网吧天下