在我的linux系统中,我发现空闲内存不断减少,我使用free -m来获得空闲内存大小。
但在我执行完
echo 3 > /proc/sys/vm/drop_caches空闲内存的大小返回到正常值。
我知道这个命令用于释放页面缓存、dentries和inodes。
但是,有没有任何方法可以知道哪个应用程序缓存了数据,以及我释放了哪些数据?
发布于 2011-09-01 10:43:47
简短的回答是否定的。
稍长一点的答案是,您在写入/proc/sys/vm/drop_cache时释放的缓存并没有真正链接到应用程序。它们是由没有实际应用概念的内核和各种内核子系统(通常是vm、块和fs子系统)创建的。
好消息是,您根本不必担心它们是否处于正常使用状态,因为内核将在每种情况下尽可能多地缓存,除非明确告诉它不要缓存,然后在缓存需要内存时立即丢弃。
https://serverfault.com/questions/307180
复制相似问题