美文网首页
Linux内存命令free

Linux内存命令free

作者: 10xjzheng | 来源:发表于2018-12-10 11:09 被阅读9次

1. free命令

$ free -m
             total       used       free     shared    buffers     cached
Mem:          7869       7057        811          0        638       1049
-/+ buffers/cache:       5369       2499
Swap:            0          0          0

2. Linux 如何使用内存

当应用从磁盘读数据,首先是从磁盘将数据加载到内存之中,如果物理内存不够,则把内存中的部分数据导入到磁盘中,将磁盘的部分空间当做虚拟内存来用,称为Swap.

但如果内存足够且有剩余,则Linux会合理应用这些内存,以提高整体的I/O效率,将剩余内存划分为buffers和cached两部分。

buffers和cached有什么区别呢?

cached -- 读

当应用程序读取某些数据时,这些数据(可能还有这些数据附近的扇区的数据)在用完之后并不一定会被清理,而是存到cached里面,若应用程序再次用到数据会直接从cached读取,避免了重复的磁盘I/O。

buffers-- 写

当应用程序修改了部分数据之后,由于写入磁盘的速度比较慢,可以先把数据存入buffers,应用程序可以继续其它操作,而无需等待数据写入磁盘的操作完成。

当系统需要更多的内存,则会把cache部分擦除,并把buffer中的内容写入磁盘,从而把这两部分内存释放给系统使用。

3. 各个字段的含义

1,total:物理内存实际总量
2,used:这块千万注意,这里可不是实际已经使用了的内存哦,这里是总计分配给缓存(包含buffers 与cache )使用的数量,但其中可能部分缓存并未实际使用。
3,free:未被分配的内存
4,shared:共享内存
5,buffers:系统分配的,但未被使用的buffer剩余量。注意这不是总量,而是未分配的量
6,cached:系统分配的,但未被使用的cache 剩余量。buffer 与cache 的区别见后面。

7,buffers/cache used:这个是buffers和cache的使用量,也就是实际内存的使用量,这个非常重要了,这里才是内存的实际使用量哦

8, buffers/cache free:未被使用的buffers 与cache 和未被分配的内存之和,这就是系统当前实际可用内存。千万注意,这里是 三者之和,也就是第一排的 free+buffers+cached,可不仅仅是未被使用的buffers 与cache的和哦,还要加上free(未分配的和)

9,swap,这个我想大家都理解,交换分区总量,使用量,剩余量

4. 生产环境谨慎执行的几个命令

  1. find
find / | grep "x"

若是服务器文件太多,扫描后这些文件信息都缓存到了slab区。而服务器如果开了swap,操作系统发现物理内存占满后,并没有立即释放cache,导致每次GC,都和硬盘打一次交道。然后,所有服务会不间歇卡顿了。

  1. vim 打开大文件
    vim打开大文件,所有文件的内容都会先加载到内存。结果,内存占满、接着swap也满了,然后oom-killer杀死了服务进程。

文章整理自:
linux中内存使用,swap,cache,buffer的含义总结
Linux之《荒岛余生》(三)内存篇

相关文章

  • Linux下查看系统内存命令

    Linux下内存查看命令 free 命令 free 命令显示系统内存的使用情况,包括物理内存、交换内存(swap)...

  • linux下free命令详解

    linux下free命令详解 free 命令显示系统内存的使用情况,包括物理内存、交换内存(swap)和内核缓冲区...

  • Linux 里 free 命令结果阐释

    目录 现象示例Linux 虚拟内存简介 现象 Linux 机器上 free 命令显示 Mem: 行里的 free ...

  • 每天一个Linux命令(31):free 命令

    Linux free 命令用于显示内存状态。free 指令会显示内存的使用情况,包括实体内存,虚拟的交换文件内存,...

  • 2019-02-27 内存命令free

    2019-02-27 内存命令free 在Linux执行free命令后的结果: 这个简单命令的背后包含很多操作系统...

  • Day-2 噜噜

    Day-2 LINUX 基本命令 命令结构 command -option 参数 系统操作 free 查看内存...

  • Linux内存命令free

    1. free命令 2. Linux 如何使用内存 当应用从磁盘读数据,首先是从磁盘将数据加载到内存之中,如果物理...

  • free命令

    free命令可以显示Linux系统中空闲的、已用的物理内存及swap内存,及被内核使用的buffer。在Linux...

  • 2 Linux 性能监测-free

    Linux性能监测-free free命令可以显示当前系统未使用的和已使用的内存数目,还可以显示被内核使用的内存缓...

  • Linux 的内存、Swap、Cache、Buffer

    通过free命令看Linux内存 total:总内存大小。 used:已经使用的内存大小(这里面包含cached和...

网友评论

      本文标题:Linux内存命令free

      本文链接:https://www.haomeiwen.com/subject/plxrhqtx.html