MacOSX转移虚拟内存使用的硬盘
Mac OS X的虚拟内存的设计让我们不再会像以前一样,使用一个应用软件到一半得时候看到内存不足的对话框,然后必须关掉其应用软件,再设给他多一点内存。虚拟内存是将硬盘的空间拿来当作内存使用,根据DDIF这个网站所说,如果你有两个硬盘,并将虚拟内存所使用的硬盘设为第二个硬盘时,系统整体的效率回提升。
设定虚拟内存交换档案位置的档案在 /etc/rc,在开机程序 (start up sequence) 的前期阶段会被设定),在接近档案结尾的地方有一行
swapdir = /private/var/vm
就是试定虚拟内存跟哪里做档案的交换。
问题是,在开机程序的早期阶段,系统还没有看到第二个硬盘的存在,所以我们不能就在这个地方,直接将路径更改到第二个硬盘上。所以需要放入下面的程序代码,提早 Mount 其余的硬盘等。
##
# Mount any remaining filesystems
##
if [ ! -f /var/db/volinfo.database ]; then Uninitialized_VSDB=-YES-; fi
if [ "${AUTODISKMOUNT:=-YES-}" != "-NO-" ]; then
ConsoleMessage "Mounting media"
case ${AUTODISKMOUNT} in
-REMOVABLE-)
autodiskmountflags="-a" ;; # Mount removeable media
*)
autodiskmountflags="" ;;
esac
autodiskmount -v ${autodiskmountflags}
fi
if [ "${Uninitialized_VSDB:=-NO-}" = "-YES-" ]; then vsdbutil -i; fi
你必须将这一段程序代码放在
swapdir = /priavte/var/vm
之前,这样第二个磁盘才可以提早被 Mount 并使我们可以将虚拟内存要交换档案的路径放在第二个磁盘。
磁盘 Mount 出来以后就必须更改交换档案的路径
将
swapdir=/private/var/vm
改成
swapdir=/Volumes/second_hard_drive/private/var/vm
second_hard_drive 是你第二个硬盘的名字
就这样,从新开机以后,系统整体的运作应该会变快,尤其是当你在使用多个软件的时候。