- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
刚刚从 https://unix.stackexchange.com/questions/87908/how-do-you-empty-the-buffers-and-cache-on-a-linux-system 学到了这 3 种新技术:
释放页面缓存:
# echo 1 > /proc/sys/vm/drop_caches
释放dentries和inode:
# echo 2 > /proc/sys/vm/drop_caches
释放页面缓存、dentries 和 inode:
# echo 3 > /proc/sys/vm/drop_caches
我正在尝试了解 pagecache、dentries 和 inode 到底是什么。它们到底是什么?
释放它们是否也会删除有用的 memcached 和/或 redis 缓存?
--
我为什么要问这个问题?我的 Amazon EC2 服务器内存在几天内被填满 - 在 7 天内从 6% 增加到 95%。我必须每两周运行一次 cronjob 来删除这些缓存。然后内存使用率再次下降到 6%。
最佳答案
由于过于简单化,让我尝试在您的问题的上下文中进行解释,因为有多个答案。
您似乎正在处理目录结构的内存缓存。上下文中的 inode 是表示文件的数据结构。 dentries 是表示目录的数据结构。这些结构可用于构建表示磁盘上文件结构的内存缓存。为了得到一个直接的列表,操作系统可以去dentries——如果目录在那里——列出它的内容(一系列的inode)。如果不存在,请转到磁盘并将其读入内存,以便再次使用。
页面缓存可以包含任何到磁盘 block 的内存映射。这可能是缓冲的 I/O、内存映射文件、可执行文件的分页区域——操作系统可以从文件中保存在内存中的任何东西。
您的命令会刷新这些缓冲区。
关于caching - 什么是pagecache、dentries、inode?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29870068/
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 6 年前。 Improve this qu
我正在尝试进行图像处理,其中系统会提示用户将嘴部包含在图像中。一旦用户执行此操作,我的应用程序应该识别可识别 dentry 的像素(颜色从白色到黄色),然后我想仅使这些像素变亮。谁能给我指导如何继续?
这个类显示autoCompleteTextField,但是如果你在textField中写名称医生,那么在变量医生中显示太多结果如何减少 dentry 仅显示十个结果 import UIKit clas
我有一个下巴图像,如图所示,我希望在每颗 dentry 上都有一个听众,并通过相对布局向每颗 dentry 图像添加按钮成功,但它在一个屏幕上工作正常但得到另一方面困惑..我怎样才能让它在所有屏幕尺寸
根据 atomic_ops.txt在 Linux 内核中, all users of atomic_t should treat atomic_read() and atomic_set() as s
我正在开发一个无状态文件系统来浏览基于网络的目录和文件。我在主机上有自己的文件/目录 inode 缓存。我设计我的文件系统模块时,当从 VFS 层调用 evict_inode() 函数时,我的主机 i
刚刚从 https://unix.stackexchange.com/questions/87908/how-do-you-empty-the-buffers-and-cache-on-a-linux
我正在尝试抓取论坛以生成用于分析的数据集。 选择主题时,类名有一个尾随的唯一编号,例如: 我如何抓取并返回包含所有类名的字符串列表,例如: ["structItem structItem--threa
我正在开发一个模块,用于在打开时读取文件 xattributes。我已经连接了 sys_open,因此我需要在不打开文件的情况下获取文件的 dentry。简而言之,我有 inode 和绝对路径,但很难
我知道 iOS 5.0 上的 Core Image supports facial detection ( another example of this ),它给出了面部的整体位置,以及面部内眼睛和
我在考试中遇到了以下问题: 在 ext3 文件系统中,dentry 的数量高于 i-node 的数量。 我必须用 True 或 False 来回答并解释。 我的回答: 这是错误的,因为 dentrie
是否可以从给定的 dentry 和 inode 构造绝对路径? 谢谢大家 最佳答案 如果你有一个struct path(或者可以构造一个),看看tomoyo是如何做到的: http://lxr.lin
我对图像处理和对象检测非常陌生。我想提取/识别下图中 dentry 的位置和尺寸: 这是我迄今为止使用 OpenCV 尝试过的内容: import cv2 import numpy as np pla
我编写了一个系统调用来打开一个目录并获取文件对象和 dentry 结构。我正在尝试使用 list_for_each() 宏列出所有条目,包括子目录中的条目。问题是它只显示当前在 dentry 缓存中的
我正在学习 OpenCv。我有一个斜齿轮图像来寻找齿。 到目前为止,我一直试图找到轮廓,然后数 dentry 。我能够找到轮廓以及轮廓的坐标。但我坚持数 dentry 。因为我是 OpenCV 的新手
我正在研究 Linux 内核代码,尤其是文件系统部分。我发现当内核启动时,一些 dentry 对象被分配给根目录“/”。为什么需要在RAM中分配多个根目录副本?而且,由于看起来dcache(dentr
因此,我可以在多个位置挂载 sysfs(/sys 的虚拟文件系统),并且每次都会看到相同的内容。同样,我可以在多个安装点安装相同的 block 设备(如/dev/sda1)。 我现在正在为我的内核编写
我正在创建一个简单的 debugfs里面的文件/sys/kernel/debug/test/testFile使用以下代码: pDebugfs = debugfs_create_dir(name, NU
完成后,link/rm/mv 是否立即将 dentry 元数据同步到永久存储?如果没有,什么时候? 最佳答案 来自https://www.kernel.org/doc/Documentation/sy
我正在编写我自己的内核模块,它捕获 vfs_mkdir(struct inode *, struct dentry *, int) 内核函数调用并尝试记录发生此调用的磁盘路径名。 我想使用 dentr
我是一名优秀的程序员,十分优秀!