Snow Leopardでswapを無効化するには
Mac OS XはSnow Leopardになってからメモリマネージメントが大分賢くなったけれど、依然としてswapの発生頻度はかなり高い。場合によってはInactiveが数GBあるのにもかかわらずswapを使い始めたりするので、4GB以上搭載していることが当たり前の今は、思い切ってoffにしてしまうのが良い。
今まではswapを無効化するために専門的な知識が必要な部分が多かったのだけど、最近簡単な方法を見つけたので紹介する。下記コマンドをTerminalで実行し、再起動する。
sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.dynamic_pager.plist
ただし、このままではswapファイルがそのまま残ってしまうので、以下のコマンドを実行する。
sudo rm /private/var/vm/swapfile*
実行後、もう一度再起動し、以下のコマンドを用いてswapが無効化されていることを確認する。
sysctl vm.swapusage
実行結果として、以下のように表示されればswapが無効化されている。
vm.swapusage: total = 0.00M used = 0.00M free = 0.00M
逆に、有効化する為のコマンドは以下。
sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.dynamic_pager.plist
今まで使ってきたMacでは、swapを無効化したことによる弊害はなかったのだけど、MacBook Air(late 2010)でswapを無効にすると高確率でsleep復帰後にiChatの表示が乱れるのと、Exposeを起動した瞬間にユーザープロセスがすべて落ちる(MacBook Air(late 2010)のswapについて)。バグっぽいなぁ・・・
Pingback: MacBook Air(late 2010)のswapについて « notohirog
Pingback: 大容量メモリと小容量SSD時代における2つのMacBookの初期設定 | notohirog