美文网首页
Linux中的buff/cache内存

Linux中的buff/cache内存

作者: 躁动的中年大叔 | 来源:发表于2018-07-08 22:36 被阅读57次

    我们用free、top等相关能够查询到当前内存的使用情况的命令时,总会有一个buff/cache让我们很困惑。

    buffer

    即写如磁盘时,先保存到磁盘缓冲区(buffer),然后再写入到磁盘。

    cache

    即读磁盘时,数据从磁盘读出后,暂留在缓冲区(cache),为后续程序的使用做准备。

    如何划分buffer/cache(已使用 or 空闲)

    1. 操作系统的角度:这块内存确实被操作系统使用了
    2. 用户角度:如果用户要使用,这块内存是可以很快被回收而被用户空间程序使用,因此从用户角度而言这块内存应被划为空闲状态

    Linux这种机制的好处

    这是Linux一种非常优秀的设计,目的就是为了提升磁盘IO的性能,从低速的块设备上读取的数据会暂时保存在内存中,即使数据在当时已经不再需要了,但在应用程序下一次访问该数据时,它可以从内存中直接读取,绕开了低速的块设备,从而提高系统的整体性能。

    相关文章

      网友评论

          本文标题:Linux中的buff/cache内存

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