free命令详解——Linux性能分析

本文详细解析Linux内存管理机制,并通过free命令展示了如何获取系统内存使用情况,包括物理内存、缓存、交换区等关键信息,以及如何评估系统内存资源状态。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、使用格式  

语法格式:free [-b | -k | -m] [-o] [-s delay ] [-t] [-l] [-V]

[-b | -k | -m] :选择数据的单位-b字节、-k千字节、-m兆字节(也就是我平时的mb)

[-o]:不显示-/+ buffers/cache:行

[-s delay ]:延时,单位是秒

[-t]:显示total的统计行

[-l]:显示各个项目最高和最低的静态内存

[-V]:版本不解释

二、实例分析

       free命令虽然不难,但是能够熟练使用它是非常重要的。因为在很多意想不到的情况下,它总能够为我们提供定位问题的重要信息。

我们用free -m -t -l 来显示一个最详尽的结果。个人感觉一般都是用free -m的比较多,看自己习惯吧。

上面的列属性英文感觉很清晰了,所以不再进行解释啦。下面主要对行属性进行解释:

Mem:物理内存

Low:内核使用的物理内存

High:用户使用的物理内存(Linux kernel将内存分为了内核区和用户区具体划分规则有1:3、2:2等等具体看内核版本)

-/+ buffers/cache:表示物理内存的缓存统计

swap:交换区

Total:就是total=men+swap


      现在每一项基本都能看懂了,然后接下来我们来分析。分析的话最重要是经验的积累。如果没有没有实际操作经验,感觉要把什么内存机制、块设备的真正弄明白是比较困难的。我们接下来将介绍一些实际使用的时候,重点关注的几个值。还有一个综合的衡量指标。

1)men行,total属性告诉我们这个系统有1G+内存

2)-/+ buffers/cache行,free属性告诉我们应用程序还有1002MB可以使用

3)swap行,used属性告诉我们交换分区还没进行使用,内存非常充足。


最后下面提供一个小经验公式:

S=应用程序可用内存/系统物理内存

S>70%:内存资源非常充分

S<20%:内存自由严重紧缺

20%<S<70%:基本满足需求

注:这个公式不提倡在实际中使用,感觉结合bash脚本实现一个自动检测和记录会比较好一些(实习的时候就写过o(∩_∩)o...哈哈)


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值