标签: c++ linux
我想在可用内存不足时警告用户。目前我正在使用sysconf(_SC_PHYS_PAGES)来获取可用的物理页数。
sysconf(_SC_PHYS_PAGES)
但是,还有OS用作缓冲区和缓存的内存。我如何以编程方式获取它们?
答案 0 :(得分:4)
来自procps的free命令的方式是读取/proc/meminfo文件。您可以看到他们的来源here。 meminfo函数更新全局变量,特别是kb_main_buffers和kb_main_cached。你可以重用他们的代码来做你想做的事情。 (假设您的许可证兼容)
/proc/meminfo