嵌入式Linux系统内存泄露调试

钱国正 2012-09-15 08:35:05
最近客户报bug,我们调试发现是内存减少造成的,由于公司很多东西都是购买其他厂商的,所以不知道是哪个模块出现的问题。
我想通过 在系统添加监控函数,监控malloc, realloc, calloc, free的调用,来监控内存的使用,不知道这种做法是否有用?我要在哪里添加比较合适呢?

查过相关资料,说是glibc库函数提供给了这些malloc, realloc, calloc, free函数,但是系统调用是brk, 这样的话就没法通过修改内核来监控,那么我该如何做?抑或是有其他程序可以监控各个进程申请的内存?

通过bug重现,我们基本可以判断每次减少内存为4KB,实在是有点纠结啊。。。
...全文
214 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
ARMBULL 2012-09-17
  • 打赏
  • 举报
回复
用strace追踪一下,看下运行过程中调用了什么函数,然后再到这个函数里面去查找问题,先把问题分解,然后再深入分析.否则,如大海捞针.
BD007 2012-09-17
  • 打赏
  • 举报
回复
那个基本不管用

21,595

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 驱动开发/核心开发
社区管理员
  • 驱动开发/核心开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧