首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >unix机器上的高速缓存内存持续增长

unix机器上的高速缓存内存持续增长
EN

Stack Overflow用户
提问于 2014-07-14 00:12:53
回答 1查看 644关注 0票数 1

在我的Ubuntu 12VP上,我运行的是一个完整的比特币节点。当我第一次启动它时,它使用了大约700mb的内存。如果我24小时后回来(免费的-m)会是这样的:

代码语言:javascript
复制
  total used free shared buffers cached

  4002  3881 120    0      32     2635

-/+缓冲区/缓存: 1214 2787

交换: 255 0 255

但是如果我使用以下命令清除"cached“

echo 3>/proc/sys/vm/drop_cache

然后再次执行免费的-m:

代码语言:javascript
复制
 total used free shared buffers cached

 4002  1260 2742   0      1      88

-/+缓冲区/缓存: 1170 2831

交换: 255 0 255

我可以看到缓存的列被清除,并且我有比以前看起来更多的空闲内存。

我有几个问题:

这个缓存的数字是什么?我的猜测是,文件被缓存是为了更快地访问磁盘?

可以让它增长并使用我所有的空闲内存吗?

其他需要内存的进程是否能够逐出缓存的内存?

如果不是,我是否应该常规地使用前面显示的echo3命令清除它?

EN

回答 1

Stack Overflow用户

发布于 2016-09-21 20:25:54

Linux试图更有效地利用系统资源。Linux对数据进行缓存,减少了数据量。从而加快了系统的速度。关于数据的元数据存储在缓冲区中,而实际数据将存储在缓存中。

当您清除高速缓存时,使用高速缓存的进程将丢失数据,因此您必须在清除高速缓存之前运行sync,以便系统将数据复制到辅助存储,从而减少错误。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24724668

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档