free命令记

本文详细解析了Linux下free命令的内存使用情况,包括物理内存、缓存、交换分区等关键概念,并阐述了如何评估系统中真正可用的内存。
free命令:

oracle[~]$free -s 5 -c 4
                       total           used        free     shared    buffers     cached
1. Mem:       1013156       943940      69216          0      48472     699168
2. -/+ buffers/cache:       196300       816856
3. Swap:      2097144           0       2097144


说明:默认上面的数值单位都是k

      第一行(Mem)的total(1013156) 表示总的物理内存大小,buffers表示将要写入硬盘的缓冲数据占用的内存空间,cached表示将要被cpu处理的的缓存数据占用的内存空间。buffers和cached对于操作系统而言,是已经分配的空间了,所以这里的used=(内核使用+应用程序使用)+buffers+cached。于是,(内核使用+应用程序使用)=used-buffers-cached= 943940-48472-699168=196300。也就是说,内核和进程实际使用的内存量是196300。

     很巧,第二行( -/+ buffers/cache: )中的used(196300)等于第一行中的“内核使用+应用程序使用“。难道他们相等仅仅是巧合?当然不是了,第二行名字虽然叫做” -/+ buffers/cache“,但是他这个used表示的也是”内核使用+应用程序使用“,进程在申请内存时候,实际看的就是第二行。因为,对于进程而言,第一行的buffers与cache都是可用的,也就是对于进程而言,free(可用空间)=total(Mem中的)-used(-/+ buffers/cache中的)=1013156-196300=free(第一行中的)+buffers+cached= 69216+48472+699168= 816856

     第三行,交换分区,暂时不做记录了。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值