应用程序完成后,每个操作(键入命令、切换工作区、打开新网页等)需要很长时间才能完成,因为相关的页面首先需要从交换区中读取。有没有一种方法可以告诉Linux内核将页面从交换区复制回物理内存,而无需手动地触摸(并等待)每个应用程序?我运行了很多应用程序,所以等待总是很痛苦的。我经常使用swapoff -a && swapon -a使系统再次响应,但这会清除交换中的页面,所以下次运行脚本时需要再次编写它们。
我想了解MAC OS X“虚拟内存”和Linux/Unix交换的不同之处。
我之所以这么问,是因为我观察到MAC OS X“虚拟内存”的工作效率(在桌面用例中)似乎比Linux/Unix交换更有效。只有在当前运行的程序需要的RAM比可用内存更多时,才会使用交换区。并将立即将存储在交换区中的数据尽快写回RAM。