内存溢出!在Linux中

时间:2017-07-24 23:30:51

标签: linux memory overflow

我的嵌入式系统运行Linux 3.10.14。

在运行时,我的应用程序打印出此消息。

ERR: Memory overflow! free bytes=56000, bytes used=4040000, bytes to allocate=84000

但是当我“自由”时,似乎我有足够的自由记忆。

/ # free
             total  used  free  shared buffers
Mem:         27652  20788 6864 0            0
-/+ buffers:        20788 6864
Swap:            0            0            0

错误消息的任何可能的根本原因? 或者我如何使用空闲内存到最后1个字节?

如果我遗漏任何信息,请发表评论。 谢谢!

1 个答案:

答案 0 :(得分:0)

根据“free”的输出,我们可以看到总共有27652个字节,使用了20788个字节,6864个字节是免费的。

从您的应用程序打印,它似乎尝试分配84000字节,但只有56000字节可用。

所以有一个问题,你的系统有多少内存? 27652字节或 4096000字节?

打印输出来自系统?