如果你平时工作使用Windows系统,对Windows的内存监控应该不陌生,在“任务管理器”中显示90%的内存占用,这些内存就全部由进程占用了,如果这时产生了新的进程,没有内存可用,内存管理器会将一部分内存数据交换到硬盘,出现这种情况,系统性能就会显著下降。

在Linux系统中常用“free”命令查看系统的内存使用情况,这篇文章就对“free”命令做介绍。“free”命令输出系统内存使用情况的快照,实际的信息保存在文件“/proc/meminfo”中。

“free”命令输出中,“used”列显示的内存占用由两大部分组成:进程占用、操作系统缓存(cache+buffer),操作系统缓存数据是可以直接丢弃的,不需要交换到硬盘中,所以在Linux系统中,实际可用的内存除了“free”列显示的内存还要加上buffer/cache占用的内存。

使用“free”命令,输出如下(操作系统是Debian 10):

新版本free命令的输出

忽略Swap部分,可以发现下面数量关系:

total=used+free+buff/cache

根据上面的描述,可用的内存为“free+buff/cache”即39178612,但实际有点不一样,因为一些cache内存被活动进程使用了,如果使用这部分内存,会影响系统的性能。“available”显示的值考虑到这个情况,这里显示的内存是可以直接由新进程使用的,而不影响系统性能的。

在较早的操作系统,比如RHEL 6,“free”命令的显示如下:

较早版本free命令的输出

这种情况下,第二行显示的“used”和“free”内存没有包含buffers和cache,总内存的数值“total”等于第二行的“used”加上“free”的值,也等于第三行的“used”加上“free”的值。这里还有两个关键的等式,如下:

used和free的计算方法

希望这篇文章能帮到你!

linux buffer cache 过高_你真的理解Linux的内存监控吗?相关推荐

  1. linux buffer cache 过高_怎么理解内存中的Buffer和Cache?

    1|0缓存 从 free 命令可以看到,缓存其实就是 Buffer 和 Cache 两部分的总和 字面意思,Buffer 是缓存区,Cache 是缓存,两者都是数据再内存中的临时存储 2|0Buffe ...

  2. linux buffer cache 过高_工作中经常用的linux命令 free

    free命令可以显示当前系统未使用的和已使用的内存数目,还可以显示被内核使用的内存缓冲区,不带参数默认将会以kb单位展示 CentOS 7.6上显示如下 free -m 以M为单位显示 total:表 ...

  3. linux的cache过高的原因定位与解决echo 3 > /proc/sys/vm/drop_caches

    先说结论解决办法: 一.在crontab定时执行echo 3> /proc/sys/vm/drop_caches清理缓存.治标不治本,过段时间缓存又会增加上来. 二.hcache -top 10 ...

  4. Linux buffer/cache 内存占用过高的原因以及解决办法

    表现现象 在Linux系统中,我们经常用free命令来查看系统内存的使用状态.在一个 CoreOS 的系统上,free命令的显示内容大概是这样一个状态: core@localhost ~ $ free ...

  5. Linux buffer/cache解读

     cache与buffer解读 cache出现的原因与功能 计算机硬件中CPU.内存.磁盘是最主要的三大部分,其中,CPU发展到今天,执行速度最快,而内存相对CPU而言,就慢多了,CPU执行的指令是从 ...

  6. linux 文件系统cache,终于找到一篇详解Linux文件系统Cache的文章

    级别: 初级 2006 年 5 月 11 日 文件 Cache 管理是 Linux 内核中一个很重要并且较难理解的组成部分.本文详细介绍了 Linux 内核中文件 Cache 管理的各个方面,希望能够 ...

  7. linux 丢包多少正常_干货总结!Linux运维故障排查思路

    1. 背景 有时候会遇到一些疑难杂症,并且监控插件并不能一眼立马发现问题的根源.这时候就需要登录服务器进一步深入分析问题的根源.那么分析问题需要有一定的技术经验积累,并且有些问题涉及到的领域非常广,才 ...

  8. linux能用airport吗_为什么都用Linux作为云主机的操作系统?

    云主机一般是作为服务器使用,服务器有不同类型:Web服务器.数据库服务器.应用程序服务器.云计算服务器.文件服务器.邮件服务器.DNS服务器等等. 多年来,类Unix操作系统的市场份额已大大提高,而当 ...

  9. 简单人物画像_你真的理解用户画像吗?| 船说

    " 「设计师沙龙」是ARK下半年开始逐渐形成的传统,由ARKers自发组织,分为视觉和交互两类,每月各举办一次.大家围绕一个话题展开,聊聊行业最新案例和工作上的心得,帮助大家共同进步. AR ...

最新文章

  1. python 多进程 字典,数组
  2. Python(2.7.6) 列表推导式
  3. OpenStack和Redis
  4. 转帖:ESB(Enterprise Service Bus)
  5. android中多线程绘制曲线图实例
  6. php mysql addslashes_PHP函数 mysql_real_escape_string 与 addslashes 的区别
  7. centOS下开机自启动apache、mysql、samba、svn等服务的最简单方法
  8. cvScale 深度转换 线性变换
  9. 围棋选手不到30岁就下坡,最大因素是什么?
  10. 管理计算机中应用科学教学视频,计算机科学技术在高校教学管理中的应用
  11. kali linux MD5解密,md5文件加密_文件MD5解密/加密方法 MD5在线加密解密
  12. ~囍~ 将欢乐进行到底篇
  13. ONLYOFFICE历史版本开发技术之二
  14. 树莓派蓝牙ble gattlib c语言,树莓派构建智能家居控制系统 篇三:花花草草智能监测仪接入树莓派Domoticz...
  15. 阿里云服务器ECS上部署简单的SSM项目
  16. java框架 - web服务器
  17. [工具使用]SqlMap
  18. unicode 生僻字_[微软拼音小技巧] 如何用Unicode输入生僻字
  19. 【R语言学习笔记】若干排序问题
  20. IDEA全局搜索Jar包中内容

热门文章

  1. 文件被损坏 java_使用PDF.JS实现pdf文件在线预览时,报文件被损坏的错误
  2. 3dmax 计算机中丢失,3DMax如何找回丢失的3D命令面板或工具栏
  3. java贪吃蛇客户端服务器_java Socket套接字TCP编程开发服务端和客户端之间的通信 - 贪吃蛇学院-专业IT技术平台...
  4. chm 转 html 带索引,chm 的项目文件中包含创建 chm 文件所需的HTML文件信息、目录表文件信息、索引文件信息、窗口属 - 试题答案网问答...
  5. kingcms php 排序 标签,Phpcms v9 如何设置排序listorder
  6. python合法的字符串_Python判断字符串是否为合法标示符操作
  7. Python基础——字典(dictionary)
  8. c++ class 类名 和 include 的区别
  9. 指数分布的定义形式及应用
  10. Linux基础-2文件及目录管理