我是一个对Linux内存管理非常陌生的人。在阅读一些相关文档时,我有一些基本问题。
以下是我的配置:
vm.swappiness=10
vm.vfs_cache_pressure=140
vm.min_free_kbytes=2013265
我的理解是,如果可用内存低于vm.min_free_kbytes
,那么操作系统将回收内存。
内存回收是删除不需要的文件还是从RAM复制到Swap内存?
答:内存回收是指从RAM复制到Swap内存。
如果我没有使用Swap内存,会发生什么?
答:如果您没有使用Swap内存,则不会进行复制操作。
swappiness是否总是大于
vm.min_free_kbytes
?
答:swappiness并不总是大于vm.vfs_cache_pressure
的意义是什么?
答:
vm.min_free_kbytes
。
vm.vfs_cache_pressure
参数控制VFS inode和dentry缓存所占用的内存比例。它的值越高,表示更多地释放内存给pagecache,而减少inode和dentry缓存所占用的内存。
min_free_kbytes = 2G
并且系统的可用内存降到了2GB,那么数据(Cache、缓冲区等)会被删除还是系统会进入OOM状态? - Mohamed Ashraf