Linux OOM Killer

Linux OOM Killer

今天介绍一个跟公众号名字很相关的Linux内存管理机制。

概念

在软件故障中,Out-Of-Memory(OOM,系统可用内存不足)是最古老的故障之一,并且一直延续至今。

在早期的计算机系统中,内存小到以kb为单位,那时的程序员要精细的计算每一条指令的内存使用量,犹如在钢丝绳上表演杂技,稍有不慎就会出现内存不足导致软件或操作系统崩溃,但是即使限制那么苛刻,依然产生了许多伟大的软件,这也是这个公众号的名字由来。

即使今天的家用计算机内存已经至少8G起步,操作系统上运行的软件也会遇见OOM错误,Linux为了避免系统内存不足导致整个系统不可用,建立了一套OOM管理机制。

Linux的OOM管理机制会检测可用内存,在内存不足故障发生时选择性的杀死一个或者几个进程以释放内存,而执行这一任务的进程就被称作Linux Out-Of-Memory(OOM) Killer。

阅读更多