【Linux】/proc/sys/vm/drop_caches

前言

/proc/sys/vm/drop_caches 是 Linux 系统中的一个虚拟文件,用于控制内核的缓存管理。通过写入特定值到这个文件,可以释放系统的缓存,从而优化内存使用。

功能

释放缓存: drop_caches 允许用户手动清空内存中的页面缓存、目录项缓存和 inode 缓存。这对于测试和性能调优非常有用。

使用方法

要释放缓存,可以使用 echo 命令将相应的值写入 /proc/sys/vm/drop_caches。需要 root 权限才能执行这些操作。
具体步骤:

打开终端

使用以下命令来释放缓存

释放页面缓存(Page Cache)

写入 1 将清理系统中的页面缓存,即文件内容在内存中的存储。这会导致下次访问文件时必须从磁盘读取数据,可能会短时间影响性能。

echo 1 | sudo tee /proc/sys/vm/drop_caches

释放目录项缓存(Dentry Cache)

写入 2 将清理目录项缓存。目录项缓存存储了文件系统中的目录条目,清理后会导致下次访问目录时重新读取。

echo 2 | sudo tee /proc/sys/vm/drop_caches

释放 inode 缓存(Inode Cache)

写入 3 将清理 inode 缓存,inode 缓存存储了文件系统中关于文件的元数据。

echo 3 | sudo tee /proc/sys/vm/drop_caches

释放所有类型的缓存(页面缓存、目录项缓存和 inode 缓存)

echo 3 | sudo tee /proc/sys/vm/drop_caches

注意事项

性能影响:

清空缓存会导致系统在下次访问文件时需要重新加载数据,可能会短期内影响性能,因此通常只在特殊情况下使用。

临时操作:

这个操作是临时的,系统会根据需要自动管理缓存。重启后,缓存机制会恢复正常。

测试目的:

常用于性能测试,以评估应用程序在没有缓存的情况下的表现。

查看当前缓存使用情况

在执行清空缓存之前,可以使用以下命令查看当前的内存和缓存使用情况:

free -h

或者查看 /proc/meminfo 文件:

cat /proc/meminfo | grep -i cache
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值