このページの本文へ

前へ 1 2 次へ

目指せ快適! MacBook Pro長期レビュー 第29回

Macのメモリーを整理整頓 パフォーマンスを改善!

2010年06月29日 16時00分更新

文● 海上忍

  • この記事をはてなブックマークに追加
  • 本文印刷

「散らかし放し」のアプリケーションに気をつけろ!

 Mac OS Xのメモリー管理機構は、「ユーザーによるメモリーの監視は一切不要」が建前で作られている。

 OS側から見ると、各アプリケーションが確保したメモリー空間は、作業が完了次第、解放して空きメモリー領域に戻して、他のアプリケーションが使えるようにしている。

 アプリケーション側から見れば、メモリーをデータのキャッシュとして思う存分使って、別のアプリケーションが不足したときに不要な領域を解放する仕組みだ。

 ただし、このメモリー運用に関する基本姿勢は、あくまでも理想だ。実際には使っていないメモリー空間を細かく解放されても、別のアプリケーションが使いにくいので無駄な領域が増えていってしまう。

 一度読み込んだデータをメモリー上に保持して再利用時のパフォーマンス向上を図るMac OS Xの「ユニファイド・バッファー・キャッシュ」機能により、不要なキャッシュが蓄積されてメモリーの空き領域を減らすという問題もある。

 結果として、複数のアプリケーションを長時間起動し、いくつものファイルを開いたり閉じたりしていると、利用可能な物理メモリーの空き領域は次第に減少する。

 ここで新たにアプリケーションを起動するか、起動中のアプリケーションでさらなるメモリー空間を必要としたときに、スワップが作られるというわけだ。

 試しに、SafariやFirefoxなどのウェブブラウザーで数十ものタブを開いて、ほかのアプリケーションもいくつか起動して使ってみよう。数時間もすれば、物理メモリーが4GBを超えるマシンでも、スワップが発生するはずだ。

スワップファイルが作成される/var/vmディレクトリーを確認したところ。ふと気が付けば、合計200MB近いスワップ領域が作成されていた


スワップ予防にメモリー解放ツールを使う

 以上から、Mac OS Xとうまく付き合うには「スワップの予防」が大切ということが理解できるはず。しかし、システム標準の「アクティビティモニタ」ではメモリーの使用状態を把握することはできても、散らかった状態を整理すること(メモリーコンパクション)はできない。

 メモリーコンパクション機能を搭載するオンラインソフトはいくつかある。よく知られているところでは「iFreeMem」で、メモリーを大量に消費するプロセスを発生させることで、強引ながらも確実に非使用領域を解放してくれる。メニューの日本語表示にも対応。価格は10ユーロだ。

価格10ユーロのシェアウェア「iFreeMem」。メモリーの確保と解放を強制実行しているとおぼしき内容だが、確実に空き領域を広げてくれる

 フリーウェアの「Libera Memory」も効果的だ。内部的には「du」コマンドを実行してユニファイド・バッファー・キャッシュを一掃しているため、iFreeMemほど強力には非使用領域を解放しないものの、フリーということもあり、メモリー解放の効果を知るための導入編としては最適だろう。

フリーのメモリー解放ツール「Libera Memory」。メモリー解放処理前後のようすを一目瞭然に比較できる

 ちなみにこの仮想メモリーに関する仕組みは、今をときめくiPhoneも同根のOSゆえに同じ……ということで、iPhone OS/iOS向けのメモリー解放アプリも存在する。「Memory Status」は、メモリーの使用状況と実行中のプロセスを表示するのに加えて、解放機能も備えている。iOS 4の場合、アプリのマルチタスキング対応状況を確認するツールとしても活用可能だ。

メモリー解放ツールとして使えるiPhoneアプリ「Memory Status」。実行後にInactive領域が約4%減少している


筆者紹介──海上忍


 ITジャーナリスト・コラムニスト。アップル製品のほか、UNIX系OSやオープンソースソフトウェアを得意分野とする。現役のNEXTSTEP 3.3Jユーザにして大のデジタルガジェット好き。近著には「改訂版 Mac OS X ターミナルコマンド ポケットリファレンス」(技術評論社刊、Amazon.co.jpで見る)など。



前へ 1 2 次へ

カテゴリートップへ

この連載の記事

ASCII.jp RSS2.0 配信中