Linux系统中,可以使用top命令检查内存使用状况,开启top工具后,可以通过shift+m按键来使进程按内存使用率进行排序, 您就可以看出哪些进程使用内存较多。
top工具中的内存统计,与Windows系统中的统计称为不太一样,如果观察内存Used值过大,比如例子中的7G,并不是系统内存实际已经使用了7G。
top工具第四行中的“已使用的内存总量(used)”是指现在Linux内核控制的内存量,“空闲内存总量(free)”是指Linux内核还未纳入管控的内存量。需要注意的是,纳入内核管控的内存并不都在使用中,还包括过去使用的现在可以被重复利用的内存,内核并不把这些可被重新使用的内存交还到“空闲内存总量(free)”中去,因此在linux上free内存会越来越少,但不用为此担心。有个近似的计算公式:第四行的free + 第四行的buffers + 第五行的cached,按这个公式可以得出服务器的大约可用内存。例如本例中:可用内存大概有 373556+406888 +4902952 = 5.6GB。
在top里建议时刻监控第五行swap交换分区的used值,如果这个数值在不断的变化(增大),说明内核在不断进行内存和swap的数据交换,这是真正的内存不够用了。 |