「散らかし放し」のアプリケーションに気をつけろ!
Mac OS Xのメモリー管理機構は、「ユーザーによるメモリーの監視は一切不要」が建前で作られている。
OS側から見ると、各アプリケーションが確保したメモリー空間は、作業が完了次第、解放して空きメモリー領域に戻して、他のアプリケーションが使えるようにしている。
アプリケーション側から見れば、メモリーをデータのキャッシュとして思う存分使って、別のアプリケーションが不足したときに不要な領域を解放する仕組みだ。
ただし、このメモリー運用に関する基本姿勢は、あくまでも理想だ。実際には使っていないメモリー空間を細かく解放されても、別のアプリケーションが使いにくいので無駄な領域が増えていってしまう。
一度読み込んだデータをメモリー上に保持して再利用時のパフォーマンス向上を図るMac OS Xの「ユニファイド・バッファー・キャッシュ」機能により、不要なキャッシュが蓄積されてメモリーの空き領域を減らすという問題もある。
結果として、複数のアプリケーションを長時間起動し、いくつものファイルを開いたり閉じたりしていると、利用可能な物理メモリーの空き領域は次第に減少する。
ここで新たにアプリケーションを起動するか、起動中のアプリケーションでさらなるメモリー空間を必要としたときに、スワップが作られるというわけだ。
試しに、SafariやFirefoxなどのウェブブラウザーで数十ものタブを開いて、ほかのアプリケーションもいくつか起動して使ってみよう。数時間もすれば、物理メモリーが4GBを超えるマシンでも、スワップが発生するはずだ。
スワップ予防にメモリー解放ツールを使う
以上から、Mac OS Xとうまく付き合うには「スワップの予防」が大切ということが理解できるはず。しかし、システム標準の「アクティビティモニタ」ではメモリーの使用状態を把握することはできても、散らかった状態を整理すること(メモリーコンパクション)はできない。
メモリーコンパクション機能を搭載するオンラインソフトはいくつかある。よく知られているところでは「iFreeMem」で、メモリーを大量に消費するプロセスを発生させることで、強引ながらも確実に非使用領域を解放してくれる。メニューの日本語表示にも対応。価格は10ユーロだ。
フリーウェアの「Libera Memory」も効果的だ。内部的には「du」コマンドを実行してユニファイド・バッファー・キャッシュを一掃しているため、iFreeMemほど強力には非使用領域を解放しないものの、フリーということもあり、メモリー解放の効果を知るための導入編としては最適だろう。
ちなみにこの仮想メモリーに関する仕組みは、今をときめくiPhoneも同根のOSゆえに同じ……ということで、iPhone OS/iOS向けのメモリー解放アプリも存在する。「Memory Status」は、メモリーの使用状況と実行中のプロセスを表示するのに加えて、解放機能も備えている。iOS 4の場合、アプリのマルチタスキング対応状況を確認するツールとしても活用可能だ。
筆者紹介──海上忍
ITジャーナリスト・コラムニスト。アップル製品のほか、UNIX系OSやオープンソースソフトウェアを得意分野とする。現役のNEXTSTEP 3.3Jユーザにして大のデジタルガジェット好き。近著には「改訂版 Mac OS X ターミナルコマンド ポケットリファレンス」(技術評論社刊、Amazon.co.jpで見る)など。
この連載の記事
-
第33回
iPhone
MacBook Proを快適に使うための一工夫 -
第32回
iPhone
MacBook Proがデスクトップ機になる? 「クラムシェルモード」の使い方 -
第31回
iPhone
MacBook Proの基盤「EFI」を知る -
第30回
iPhone
MacBook ProでiPhone 4のRetinaディスプレイを活用する -
第28回
iPhone
MobileMe、一新! さらに「iPhoneを探す」が便利に -
第27回
iPhone
夏目前! ラグジュアリーな冷却台をMacで検証 -
第26回
iPhone
iPad+Air Displayで、MacBook Proの作業を快適に!! -
第25回
iPhone
iPadからMacBook Proを遠隔操作してみた -
第24回
iPhone
映像&音声を1本で出力 Mac用HDMIアダプターを試す -
第23回
iPhone
MacBook Proとの相性バツグンの「mStand」(後編) - この連載の一覧へ