Linux设备上的内存泄漏

时间:2011-05-06 09:29:56

标签: linux memory memory-leaks

此处的问题是将图像下载到设备后看到的内存泄漏。

下载程序

  1. 创建tempfs并首先将图像下载到tempfs
  2. 验证图片
  3. 将图像写入闪存
  4. 释放所有创建的缓冲区并卸载tmpfs
  5. 但我发现内存泄漏等于图像大小。该内存被添加到缓存部分。通过查看Linux(2.6.21.7)终端上的“free”命令转储确认了这一点。

1 个答案:

答案 0 :(得分:0)

您可能想要添加更多细节,因为根本不清楚您在谈论什么类型的设备,释放了什么样的“缓冲区”。

但是试图猜测一下这个问题:“缓存”部分中的内容实际上允许任何应用程序回收它。如果某个地方仍然可以访问内容,则仍会缓存该文件。这并不妨碍任何人分配该内存 - 当没有非缓存内存可供使用时,它将被简单地释放。

这样可以避免在不必要时访问磁盘。