安徽省城乡建设网站,前程无忧网最新招聘信息,企业网站的价值,德国网站建设LINUX的内存管理机制#xff0c;一般情况下不需要特意去释放已经使用的cache。Cache机制的存在#xff0c;使得Linux对磁盘的读写速度是有较大的好处的。 在 Linux 操作系统中#xff0c;当应用程序需要读取文件中的数据时#xff0c;操作系统先分配一些内存#xff0c;将…LINUX的内存管理机制一般情况下不需要特意去释放已经使用的cache。Cache机制的存在使得Linux对磁盘的读写速度是有较大的好处的。 在 Linux 操作系统中当应用程序需要读取文件中的数据时操作系统先分配一些内存将数据从存储设备读入到这些内存中然后再将数据分发给应用程序当需要往文件 中写数据时操作系统先分配内存接收用户数据然后再将数据从内存写到磁盘上。下面介绍两种方法来回收cache:一,使用命令手动回收sync ##释放前最好sync一下防止丢数据echo 3 /proc/sys/vm/drop_caches ##cache释放二,调整系统vm配置风险预警:调整以下系统配置可能会对系统性能造成负面影响请仔细测试并谨慎操作./etc/sysctl.conf里有几个对内存管理影响比较大的配置以下配置项的文档见vm.txt。vm.vfs_cache_pressure系统在进行内存回收时会先回收page cache, inode cache, dentry cache和swap cache。vfs_cache_pressure越大每次回收时inode cache和dentry cache所占比例越大vfs_cache_pressure默认是100值越大inode cache和dentry cache的回收速度会越快越小则回收越慢为0的时候完全不回收(OOM!)。vm.min_free_kbytes系统的保留内存的大小保留内存用于低内存状态下的atomic memory allocation requests(eg. kmalloc GFP_ATOMIC)该参数也被用于计算开始内存回收的阀值默认在开机的时候根据当前的内存计算所得越大则表示系统会越早开始内存回收。min_free_kbytes过大可能会导致OOM太小可能会导致系统出现死锁等问题。vm.swappiness该配置用于控制系统将内存swap out到交换空间的积极性取值范围是[0, 100]。swappiness越大系统的交换积极性越高默认是60如果为0则不会进行交换。