0

从 Debian 7 升级到 Debian 8 on arm (cubietruck) 后,我目前面临 OOM 的主要问题。我已经阅读了很多关于 oom 机制和原因的内容,但我仍然想念一个答案

如何找到正在运行的进程的内存碎片?

我已经 cat-ed /proc/buddyinfo 并看到碎片上升到 oom 杀死进程的那一刻。但这仅适用于整个系统。是否有可能在每个进程基础上获取 buddyinfo 之类的信息?

PS:我假设某些进程创建(通过 kmalloc?)碎片或通过其运行时行为触发内核中的碎片内存(缓冲区,控制结构或其他......)


cubietruck系统具有 2GB RAM 和 4GB 交换空间。

   
2017-03-16 09:06:17 cubietruck 内核:[2114250.857191]
HighMem free:245388kB min:512kB low:2016kB high:3520kB
active_anon:200864kB
inactive_anon:230728kB
活动文件:331288kB
非活动文件:294800kB
无法挽回的文件:0kB
待写:0kB
目前:1307648kB
托管:1307648kB
锁定:0kB
平板可回收:0kB
平板不可回收:0kB
kernel_stack:0kB
页表:2456kB
反弹:0kB
free_pcp:92kB
local_pcp:0kB
free_cma:0kB
lowmem_reserve[]:0 0 0
4

0 回答 0