Linux停止将映射的页面刷新到磁盘

时间:2020-01-09 10:41:59  来源:igfitidea点击:

在Linux中,如何停止将映射的页面刷新到磁盘?
/proc/sys/vm/flush_mmap_pages Linux内核参数指定在内存映射处于活动状态时是否应通过kupdate将内存映射文件页面刷新到磁盘。
此参数的有效值为1(通过kupdate启用内存映射)和0(通过kupdate禁用内存映射)。
此参数的默认值为1。
要配置此参数,请使用echo [1或者0]/proc/sys/vm/flush_mmap_pages。
将此参数设置为0将执行以下操作:

  • 只要内存映射处于活动状态,kupdate就不会刷新脏的内存映射文件页面。
  • 仅在禁用内存映射后,所有脏文件页面才会异步刷新到磁盘。

如果将/proc/sys/vm/flush_mmap_pages设置为0,建议您使用另一个应用程序将内存映射的页面手动同步到磁盘。
因此,要停止在Linux中将映射表刷新到磁盘,请执行:

sysctl -w /proc/sys/vm/flush_mmap_pages=0

仅在禁用内存映射后,所有脏文件页面才会异步刷新到磁盘。
要再次启用内存映射,请执行:

sysctl -w /proc/sys/vm/flush_mmap_pages=1

将以下行添加到/etc/sysctl.conf中:

echo 0 >/proc/sys/vm/flush_mmap_pages