打印

busybox存在内存泄漏?

[复制链接]
2463|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
火箭球迷|  楼主 | 2010-8-12 10:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
刚开始一直以为是自己的驱动的问题,第一次执行驱动的测试程序时都会少固定的28K内存,更有甚者100多K是“肉包子打狗”.
   后来发现每次运行busybox-1.11.1里的命令时,也会少固定的4K内存。以为是这个版本的bug,重新交叉编译了万工(osboy)提供的1.8.1版本的busybox时,问题依然存在。

   换用BSP里的内核image和根文件系统(0.64.0),并不存在这个问题。使用BSP里的内核image和我的根文件系统就会少内存。应该不会是内核里的问题。

   是free蒙蔽了我的双眼,还是busybox偷走了我的内存!有人在使用万工提供的busybox吗?你们是否也存在这个问题? 引用:
root:~> free
              total         used         free       shared      buffers
  Mem:        27544        10032        17512            0          708
Swap:            0            0            0
Total:        27544        10032        17512
root:~> pwd
/
root:~> free
              total         used         free       shared      buffers
  Mem:        27544        10036        17508            0          708
Swap:            0            0            0
Total:        27544        10036        17508
root:~>

相关帖子

沙发
dfsa| | 2010-8-12 15:19 | 只看该作者
不应该有这个问题的

使用特权

评论回复
板凳
dfsa| | 2010-8-12 15:21 | 只看该作者
你运行起来的时候,执行cat /proc/meminfo看看内存空间,然后执行命令看看还会少么?

使用特权

评论回复
地板
火箭球迷|  楼主 | 2010-8-13 13:57 | 只看该作者
还是存在这样,memory还是每个命令减少4K!
引用:
root:~> cat /proc/meminfo   
        total:    used:    free:  shared: buffers:  cached:
Mem:  28205056 10268672 17936384        0   724992   806912
MemTotal:        27544 kB
MemFree:         17516 kB

root:~> echo

root:~> cat /proc/meminfo
        total:    used:    free:  shared: buffers:  cached:
Mem:  28205056 10272768 17932288        0   724992   811008
Swap:        0        0        0
MemTotal:        27544 kB
MemFree:         17512 kB

root:~> df
Filesystem           1k-blocks      Used Available Use% Mounted on
rootfs                    1475      1475         0 100% /
/dev/root                 1475      1475         0 100% /
/dev/mtdblock1            3072      1704      1368  55% /apps
/dev/mtdblock2            1024       196       828  19% /info
192.168.1.15:/usr/local/src/image
                      50395008   5431744  42403296  11% /media/nfs
root:~> cat /proc/meminfo
        total:    used:    free:  shared: buffers:  cached:
Mem:  28205056 10276864 17928192        0   724992   815104
Swap:        0        0        0
MemTotal:        27544 kB
MemFree:         17508 kB

使用特权

评论回复
5
火箭球迷|  楼主 | 2010-8-13 13:57 | 只看该作者
每次少的那固定4K(4096,一个子不多,一个子不少)都跑到cached里去了。
如果如busybox里所说,可是在我们的AMR9+linux上并不存在这个问题。
引用:
>: free
              total         used         free       shared      buffers
  Mem:        62488         7680        54808            0         1148
Swap:            0            0            0
Total:        62488         7680        54808
>: dmesg
<5>Linux version 2.6.12 (root@localhost.localdomain) (gcc version 3.4.1) v1 Sat Aug 30 15:00:26 CST 2008
<4>CPU: ARM920Tid(wb) [41129200] revision 0 (ARMv4T)
>: free     此时并没有归还内存
              total         used         free       shared      buffers
  Mem:        62488         7708        54780            0         1148
Swap:            0            0            0
Total:        62488         7708        54780
>:   过了一会儿
>: free   现在再看,内存已经回来了
              total         used         free       shared      buffers
  Mem:        62488         7680        54808            0         1148
Swap:            0            0            0
Total:        62488         7680        54808若果真如此,需要我们在内核里配置打开相应选项(存在乎!)么?

2.4.20的内核,何时才会免费帮busybox善后?
心里很不踏实啊........

使用特权

评论回复
6
pkat| | 2010-8-13 14:06 | 只看该作者
这内存泄露的的确很恐怖

使用特权

评论回复
7
秋天落叶| | 2010-8-13 14:49 | 只看该作者
内存泄露是一个很常见的问题,一般是空间没有及时释放引起的

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:姚明的铁杆球迷

150

主题

3470

帖子

3

粉丝