在linux上,我应该如何根据/ proc / mem中的信息计算可用内存量?

前端之家收集整理的这篇文章主要介绍了在linux上,我应该如何根据/ proc / mem中的信息计算可用内存量?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

/ proc / mem中有很多字段:我知道我不能只使用“MemFree”,因为实际上缓存了大量内存.所以问题是,我如何计算可用内存量?

假设:

>系统配置为没有交换空间.
>我对“可用内存”的定义是当malloc达到零时malloc开始失败.

最佳答案
使用源卢克!

free.c – ‘free’命令行实用程序的源代码
sysinfo.c – 有关如何读入/ proc / meminfo的示例,请参阅方法meminfo().

虽然阅读/ proc很简单,能够预测malloc是否会失败并不容易.正如其他人提到的问题,例如过度使用这个问题.标准的方法是尝试分配你需要的东西,如果你不能让它优雅地失败或者用更少的工作.

如果你有足够的时间,这一系列文章值得一读:What every programmer should know about memory.

猜你在找的Linux相关文章