打印
[嵌入式linux]

linux内存占用问题!

[复制链接]
2516|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
llz3h|  楼主 | 2013-1-24 09:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
硬件平台:atmel at91sam9260
内核:linux-2.6.30
文件系统:jaffs2

在执行一个程序,这个程序是每隔500ms就打印信息,并将打印信息重定向到一个文件a.log中,这样我让他运行一段时间,前后用free命令查看,发现内存占用一直增加,
我让板子运行了一晚上,内存free部分竟然少了6M多!!!我换了一个文件系统,是ramdisk+yaffs2的,nandflash用yaffs2形式挂载到根文件系统ramdisk上,将这个a.log放在nandflash上,这样相同的测试了一晚上,内存free部分也少了3M左右,产品上如果一直都有打印信息的话,那么内存不是都会被占用光?!!!这个问题没有什么头绪,请大神指点下,多谢!!!
测试源码及操作如下:
测试源码:
#include <stdio.h>
#include <stdlib.h>

int main()
{
while(1)
{
  printf("asdhjfhsadfj12871287234\r\n");
  usleep(500000);
}

return 1;
}

编译得到memtest可执行文件,在开发板上执行如下步骤:
#pwd
/home
#./memtest >> a.log 2>&1 &


相关帖子

沙发
jlass| | 2013-1-24 15:54 | 只看该作者
应该只是内存脏了。

你可以实测一下,一直跑,内存占用应该到不了100%的(除非你的代码有内存泄漏),到达70%左右系统就会自动清理脏内存的。

使用特权

评论回复
板凳
colala| | 2013-1-24 16:08 | 只看该作者
两天也不会占满的  

使用特权

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

本版积分规则

3

主题

25

帖子

1

粉丝