Linux 内核内存泄露工具使用
2015-06-04 16:20
736 查看
http://blog.csdn.net/kehyuanyu/article/details/25151079
1. 内核添加内存泄漏功能选项
kernel memory leak detectorkernel debugging
memory leak debugging
Compile kernel with debug info
通过make menuconfig 进入配置选项界面进入kernel hacking --> trace中可以查看到
2. 开机时,挂载debugfs文件系统
android init.xxx.rc 文件中: mount debugfs debugfs /sys/kernel/debug纯linux系统中/etc/fstab : debug /sys/kernel/debug debugfs defaults 0 0
3. 运行应用程序后,查看内存跟踪器memleak
cat /sys/kernel/debug/memleak 执行多次确保获得正确结果kmemleak.c 文件中print_unreferenced 函数就会打印出泄漏的地址
seq_printf(seq, "unreferenced object
0x%08lx (size %zu):\n", object->pointer, object->size); // 例如地址为0x11223344
4. 使用addr2line将得到的地址反编译得到所在文件的函数
xxxxx-linux-addr2line -e vmlinux 11223344 // 即可得到问题出现的文件及行数相关文章推荐
- 升级Linux内核的教程
- Linux驱动开发必看详解神秘内核(完全转载)
- Linux CPU实时监控mpstat命令详解
- 在linux下install sublime text2
- Linux内核中_IO,_IOR,_IOW,_IOWR宏的用法与解析【转】
- linux下使用线程锁互斥访问资源
- linux驱动之jiffies的理解
- linux 开机启动项检查与设置。
- 【Linux系统安装】生产场景中的分区要求及分区方案
- Linux学习笔记之文件挂载
- Linux中rename命令的用法
- linux中强大的screen命令
- Linux 高可用(HA)集群之Corosync+pacemaker安装使用
- linux下简单的设备驱动开发
- Linux下MySQL数据库常用基本操作
- CentOS7 下使用sftp客户端上传文件到特定文件夹,外层其他文件夹不可访问,不可远程ssh登录
- linux下安装cmake和mysql遇到的问题总结
- 通过yum方式升级CentOS kernel
- linux 建立域环境nis
- linux程序包管理