我在 Ubuntu(Kbuntu)上运行 Java 应用程序。64G 内存。该应用程序需要运行一段时间来处理数据。
系统监视器显示该应用程序使用了大约 10G 内存。
但是在KInfocenter中,64G内存中只有20G是空闲的,31G被用作Disk Cache,Swap更是少之又少。
那么磁盘缓存是什么?为什么它占用这么多?这是正常的吗?
答案1
这是 UNIX/Linux 的标准行为。操作系统尝试从内存中尽可能多地使用文件系统缓存。
当你运行需要超过 20GB(可用内存)的应用程序时,操作系统将释放一些缓存内存并将其提供给应用程序