内存
wllabs
一直努力学习和工作中,虽然不如意,但是还是要努力,希望以后越来越好。求各种机会。
展开
-
内存Available 是怎么计算的
前段时间在看/proc/meminfo,计算内核态内存,用户态内存,还有X内存。在看这些的时候发现个问题就是 MemAvailable 竟然大于 Buffers + Cached + MemFree,因为在我印象里一直认为Available会少于buff + cache + free的。于是扒代码分析:...原创 2020-03-04 15:57:27 · 3243 阅读 · 2 评论 -
oom详解
目录oom_adj是什么oom_score_adj是什么oom_adj和oom_score_adj关系为什么写入的oom_adj和获取的oom_adj不一致:进程如何打分oom怎么判断oom_adj是什么oom_adj 是一个打分因子, 取值范围 -17到 15。 取值 -17 这个进程就永远杀不掉了oom_score_adj是什么oom_score_...原创 2020-01-09 21:35:09 · 3750 阅读 · 0 评论 -
计算内核泄漏内存值
最近看物理机有些内存不知道去哪里了,于是总结了下:通过/proc/meminfo 统计内核泄漏值,用总内存(MemTotal) 减去未使用的内存和内核以及用户态程序所使用的内存 (MemFree + MemKernel + MemLru)。这样就能统计出不明去向的内存值,也可以是说是内核内存泄漏了吧。未使用的内存: MemFree = cat /proc/meminfo | grep ...原创 2019-09-20 14:23:34 · 316 阅读 · 0 评论 -
【转】理解LINUX的MEMORY OVERCOMMIT
Memory Overcommit的意思是操作系统承诺给进程的内存大小超过了实际可用的内存。一个保守的操作系统不会允许memory overcommit,有多少就分配多少,再申请就没有了,这其实有些浪费内存,因为进程实际使用到的内存往往比申请的内存要少,比如某个进程malloc()了200MB内存,但实际上只用到了100MB,按照UNIX/Linux的算法,物理内存页的分配发生在使用的瞬间,...转载 2019-09-23 17:06:24 · 292 阅读 · 0 评论