嵌入式查找内存泄露_需要了解的Linux内存泄漏检测

本文介绍了如何在Linux系统中检测和分析内存泄漏问题,包括查看内存信息、进程状态、使用工具如`/proc/meminfo`、`/proc/pid/maps`等。针对用户空间,提到了`mtrace`、`valgrind`等工具,而在内核空间,通过观察`slabinfo`和使用`slabtop`来判断是否存在内存泄漏。
摘要由CSDN通过智能技术生成

在实际的项目中,最难缠的问题就是内存泄漏,当然还有panic之类的,内存泄漏分为两部分用户空间的和内核空间的.我们就分别从这两个层面分析一下.

98d82b34efca83c06a868ebc397028f4.png

用户空间查看内存泄漏和解决都相对简单。定位问题的方法和工具也很多相对容易.我们来看看.

1. 查看内存信息

cat /proc/meminfo、free、cat /proc/slabinfo等

2.  查看进程的状态信息

top、ps、cat /proc/pid/maps/status/fd等

通常我们定位问题先在shell下ps查看当前运行进程的状态,嵌入式上可能显示的信息会少一些.

点击(此处)折叠或打开

root@hos-machine:~# ps -uaxw

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND

root 1 0.0 0.1 119872 3328 ? Ss 8月10 0:24 /sbin/init splash

root 2 0.0 0.0 0 0 ? S 8月10 0:00 [kthreadd]

root 3 0.0 0.0 0 0 ? S 8月10 0:44 [ksofTIrqd/0]

root 5 0.0 0.0 0 0 ? S

root 7 0.0 0.0 0 0 ? S 8月10 3:50 [rcu_sched]

root 8 0.0 0.0 0 0 ? S 8月10 0:00 [rcu_bh]

root 9 0.0 0.0 0 0 ? S 8月10 0:12 [migraTIon/0]

root 10 0.0 0.0 0 0 ? S 8月10 0:01 [watchdog/0]

root 11 0.0 0.0 0 0 ? S 8月10 0:01 [watchdog/1]

root 12 0.0 0.0 0 0 ? S 8月10 0:12 [migraTIon/1]

root 13 0.0 0.0 0 0 ? S 8月10 1:18 [ksofTIrqd/1]

root 15 0.0 0.0 0 0 ? S

root 16 0.0 0.0 0 0 ? S 8月10 0:01 [watchdog/2]

root 17 0.0 0.0 0 0 ? S 8月10 0:12 [migration/2]

root 18 0.0 0.0 0 0 ? S 8月10 1:19 [ksoftirqd/2]

root 20 0.0 0.0 0 0 ? S

root 21 0.0 0.0 0 0 ? S 8月10 0:01 [watchdog/3]

root 22 0.0 0.0 0 0 ? S 8月10 0:13 [migration/3]

root 23 0.0 0.0 0 0 ? S 8月10 0:41 [ksoftirqd/3]

root 25 0.0 0.0 0 0 ? S

root 26 0.0 0.0 0 0 ? S 8月10 0:00 [kdevtmpfs]

root 27 0.0 0.0 0 0 ? S

root 329 0.0 0.0 0 0 ? S

root 339 0.0 0.0 0 0 ? S

root 343 0.0 0.0 0 0 ? S

root 368 0.0 0.0 39076 1172 ? Ss 8月10 0:10 /lib/systemd/systemd-journald

root 373 0.0 0.0 0 0 ? S 8月10 0:00 [kauditd]

root 403 0.0 0.0 45772 48 ? Ss 8月10 0:01 /lib/systemd/systemd-udevd

root 444 0.0 0.0 0 0 ? S

systemd+ 778 0.0 0.0 102384 516 ? Ssl 8月10 0:04 /lib/systemd/systemd-timesyncd

root 963 0.0 0.0 191264 8 ? Ssl 8月10 0:00 /usr/bin/vmhgfs-fuse -o subtype=vmhgfs-fuse,allow_other /mnt/hgfs

root 987 9.6

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值