![Linux进程突然被杀掉(OOM killer),查看系统日志,第1张 Linux进程突然被杀掉(OOM killer),查看系统日志,第1张](/aiimages/Linux%E8%BF%9B%E7%A8%8B%E7%AA%81%E7%84%B6%E8%A2%AB%E6%9D%80%E6%8E%89%EF%BC%88OOM+killer%EF%BC%89%EF%BC%8C%E6%9F%A5%E7%9C%8B%E7%B3%BB%E7%BB%9F%E6%97%A5%E5%BF%97.png)
一个命令: 这个命令需要用户处于root权限才能看,执行之后可以看到: 简单说一下: total-vm就是
进程使用的虚拟
内存大小,其中部分内容映射到RAM本身,也就是主存,被分配和使用也就成了RSS。 部分RSS在实际内存块里面分配,成了anon-rss,叫做匿名内存。还有映射到设备和文件的RSS内存卡,叫做file-rss。 比如说: 你用vim指令打开一个巨大的文件,那么file-rss将会很高。 如果你用malloc()动态分配很大部分的内存,并且真的使用了它,那么anon-rss也会很高。 但是!!如果你使用malloc()分配了大量的内存,但是不去用它!那么total-vm将会变得更高,但是因为内存过量使用,不会使用真正的内存,那么rss值会很低。 可以看到上述信息,发现进程被
杀掉了。 那么杀掉它的原因是什么呢? 首先确定,当报出OOM的时候,系统的内存已经不足了,于是linux会决定杀掉进程,但是linux采用的策略并非是杀掉最占用内存的进程(Android是这样)。 linux会给每个进程评分:oom_score 根据这个评分去kill,决定这个分数的因素除了内存占用大小之外,还有内存增加的速率,比如说kylin,当执行Task构建Cube的时候,内存的占用会突然爆发式增长!发现这时候的分数老高了!然后就把它kill了。http://www.wowotech.net/memory_management/oom.html https://stackoverflow.com/questions/18845857/what-does-anon-rss-and-total-vm-mean
Linux kill 命令用于终止进程,其用法步骤如下:
需要准备的材料分别是:电脑、linux连接工具。
1、首先连接上linux主机,进入命令行状态。
2、输入:ps -ef,按回车,查询进程列表。
3、选择需要终止的进程,例如PID为9977的进程,则命令行输入:kill 9977,按回车即可终止该进程。
评论列表(0条)