天下网吧 >> 网吧天地 >> 网吧技术 >> 网吧系统 >> 正文

Linux系统下如何使用mtrace监测内存

2013-1-16网络整理佚名

  在前面的文章中我们曾向大家介绍了关于Windows系统下如何访问Linux分区的问题,不知道大家觉得怎么样呢!现在我们要向大家介绍的就是Linux系统下如何使用mtrace监测内存!下面大家还是跟着我们txwb网吧联盟的网吧系统栏目一起去看看吧!
  Linux系统下的Mtrace工具主要能够检测一些内存分配和泄漏的失败等。使用Mtrace来调试程序有4个基本步骤,还需要用到GNUC函数库里面的一些辅助的函数功能:
  1.需要包含头文件,并且在main()函数的最开始包含一个函数调用:mtrace()。由于在main函数的最开头调用了mtrace(),所以这个进程后面的一切分配和释放内存的操作都可以由mtrace来跟踪和分析。
  2.定义一个环境变量,用来指示一个文件。该文件用来输出log信息。如:
  $exportMALLOC_TRACE=mymemory.log
  3.正常运行程序。此时程序中的关于内存分配和释放的操作都可以记录下来。
  4.然后用mtrace使用工具来分析log文件。如:
  $mtracetestmem$MALLOC_TRACE
  这里需要注意的是在很多嵌入式的环境中,并不提供export命令,也没有记录环境变量的文件。唯一的办法就是把环境变量加到应用程序中。在Glibc库中有putenv函数,就是写入环境变量的。
  intputenv(char*string)[Function]
  大家在设置好环境变量后。又有一个问题了:如果程序是自运行的,即没有终止的时候,那想在特定的地方,分析内存情况,怎么办呢?
  这个其实还是要看Glibc!调用muntrace函数,log文件就生成了。这时用mtrace命令分析log文件就可以了。
  Linux系统下使用mtrace监测内存的方法我们就介绍完了,大家如果还有什么想知道的地方可以去本站的网吧系统栏目去查找,如果找不到相关内容,可以留言一起讨论,当然如果大家有什么好的资料也可以和我们一起分享哦!

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

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