web-dev-qa-db-ja.com

4 GBを超えるメモリを使用し、何も実行していないMac OS X

私のMacは、ほとんど何も実行されていないときに、とんでもない量のメモリを使用しているようです。コンピューターを再起動した直後、端末とアクティビティモニターのみを起動した。

5 GBに近いRAMは、2つのプロセスのみが実行されていて、「アクティビティモニター」に従ってメモリを使用していて、htopが1GBに近い場合、どのように使用できますか?洞察をいただければ幸いです。

htopはこれを表示します:

enter image description here

そして「活動モニター」はこれを表示します:

enter image description here

6
user1231120

これは簡単に説明できます。 Mac OS X 10.9.5システムから今すぐ取得した「アクティビティモニター」のスクリーンショットを見てみましょう。

enter image description here

これを参考にして、スクリーンショットの右下にある項目に基づいていくつかの計算を行ってみましょう。

  • アプリメモリ:1.59GB
  • ファイルキャッシュ:1.32GB
  • 有線メモリ:1.30GB

これらの数値を合計すると、合計は4.21GBになります。これは、4.21GBであるMemory Usedの値と正確に一致します。

では、アプリのメモリ、ファイルキャッシュ、有線メモリの違いは何ですか?このすべては、Apple自身のサポート記事 「アクティビティモニターを使用してシステムメモリを読み取り、使用量を判断するRAMが使用されている」 のために非常に明確に回答されていますMac OS X 10.8.5以前またはこの記事 「アクティビティモニターの使用方法」 はMac OS X 10.9以降を対象としています。また、以降の記事の関連する定義は、スクリーンショット-Mac OS X 10.9以降を使用している場合:

  • App Memory:アプリとそのプロセスによって現在使用されているメモリの総量。
  • ファイルキャッシュ:アプリケーションで最近使用され、他のアプリケーションで使用できるメモリ。たとえば、Mailを使用していてMailを終了した場合、Mailが使用していたRAMはファイルキャッシュの一部になり、他のアプリで使用できるようになります。Mailを再度開いた場合ファイルキャッシュメモリが別のアプリによって使用(上書き)される前に、Mailはファイルキャッシュが起動ドライブからすべてのコンテンツをロードする代わりにアプリメモリに変換されるため、より速く開きます。
  • 有線メモリ:メモリを圧縮したり、起動ドライブにページアウトしたりできないため、RAMに保持する必要があります。プロセスが使用するメモリは、他のプロセスが借りることはできません。アプリが使用する有線メモリの量は、アプリのプログラマーによって決定されます。

これらの定義を見ると、「非アクティブ」の最大のユーザーのようですRAMは実際にはファイルキャッシュですRAMエリアです。キャッシュ、システムで必要な場合はすぐに上書き/再割り当てできます。ただし、実際にはキャッシュであるため、以前にそのキャッシュメモリを使用していたアプリケーションを再起動すると、そのアプリケーションは早く起動します。

したがって、ファイルキャッシュが使用する1.32GBのメモリは、システムがそれを取得して使用できるときに使用するため、実際には「空き」メモリと見なすことができます。そして、もちろん、これには、起動または再使用された場合にファイルキャッシュに保存された過去のアプリケーションの起動/使用を高速化するという追加の利点があります。

また、「メモリプレッシャー」と呼ばれる「アクティビティモニター」の中央下部にあるグラフを実行していることに注意してください。 Appleはそれを説明します:

メモリ圧力グラフは、メモリリソースの可用性を示すのに役立ちます。

つまり、「メモリプレッシャー」グラフはAppleによる試みであり、最新のMac OS Xシステムでのメモリ管理の相対的な複雑さを視覚化するのに役立ちます。生の数字をじっと見つめるだけの使い方は、時々混乱を招きます。

17
JakeGould

メモリの「使用量」を実際に見積もるのはかなり難しいことに注意してください。メモリ使用量に関する非常に啓発的な投稿があります in Android at Stack Overflow ; Mac OS XとAndroidで使用される変更されたLinuxカーネルの間には明らかに違いがありますが、十分に類似しているため、まだ関連性があります。

共有メモリ、プロセスごとのメモリ、および仮想メモリを考慮に入れると、「メモリ内にあるもの」と「メモリ内にないもの」が混同されます。 「アクティビティモニター」とhtopは、単に異なる推定値を使用します。これは心配する必要はありません。8GBのメモリがインストールされている場合、使用されているメモリの容量(5 GB)はかなり正常です。

1
Rooke