(OS X 10.6.8で)htopを実行すると、次のようなメッセージが表示されます。
1 [||||||| 20.0%]タスク:合計70、実行中0 2 [||| 7.2%]負荷平均:1.11 0.79 0.64 3 [||||||||||||||||||||||||||| 81.3%]稼働時間:00: 30:42 4 [|| 5.8%] メモリ[||||||||||||||||||||| 3872/4096MB] Swp [0/0MB] PID USER PRI NI VIRT RES SHR S CPU%MEM%TIME + Command 284 501 57 0 15.3G 1064M 0 S 0.0 6.5 0:01.26 /アプリケーション/Firefox.app/Contents/MacOS/firefox -psn_0_90134 437 501 57 0 14.8G 785M 0 S 0.0 4.8 0:00.18 /Applications/Thunderbird.app/Contents/MacOS/Thunderbird -psn_0_114716 428 501 63 0 12.8G 351M 0 S 1.0 2.1 0:00.51 /Applications/Firefox.app/Contents/MacOS/plugin-container.app/Contents/MacOS/ 696 501 63 0 11.7G 175M 0 S 0.0 1.1 0:00.02 /System/Library/Frameworks/QuickLook.framework/Resources/quicklookd.app/Conte 38 0 33 0 11.1G 422M 0 S 0.0 2.6 0:00.59/System/Library/Frameworks/CoreServices。 framework/Frameworks/Metadata.framewo 183 501 48 0 10.9G 137M 0 S 0.0 0.8 0:00.03 /System/Library/CoreServices/Finder.app/Contents/MacOS/Finder
ギガバイトのVIRTメモリを使用しているプロセスで、0 MBのスワップを使用するにはどうすればよいですか?
VIRT
は使用済みメモリ(仮想またはその他)とは関係ありませんが、使用済みaddress-spaceとは関係ありません。あなたが思うかもしれないように関連しています。
最新のオペレーティングシステム(OSXを含む)には デマンドページング と呼ばれる機能があり、仮想アドレススペースの特定の領域をファイル(共有ライブラリ/ DLLなど)にマップするようにオペレーティングシステムに指示することで機能します。ファイルがメモリにロードされるのは、プログラムがそれらの仮想アドレスを読み取ろうとしたときだけです。
これらの共有ライブラリが実際に共有されている場合、オペレーティングシステムは実際には複数のプロセス間で物理メモリを共有します。つまり、これらの数十ギガバイトの大部分は、ファイルバックアップライブラリだけでなく、sameファイルバックアップライブラリでもあります。
さらに、スクラッチメモリが必要な場合(データ、設定、ビットマップ、サウンドなど)、未使用の物理ページがない場合、オペレーティングシステムはこれらのファイルバックアップ領域のコンテンツを実際に破棄し、アプリケーションに提供します。これらのページが再び必要になった場合、オペレーティングシステムは単にディスクからページをリロードできます。
スワップ(SWP
)は、そのスクラッチメモリ用の特別なファイルバックアップ領域です。スワップスペースを作成すると、オペレーティングシステムはそのスクラッチメモリを共有ライブラリではなく(より多くの実行中のプロセスで利用される)ディスクに移動でき、一般にパフォーマンスが向上し、おそらく最も驚くべきことに、が生成されます。 lessスワップは、スワップスペースがない場合よりも少なくなります。
まだメモリが残っています。システムはスワップアウトしていないため、まだスワップアウトする必要はありません...しかし、再び、奇妙なことに気づきました。私の(Linux)システムの1つで
CPU[|||||||||||||||||||| 63.2%] Tasks: 89, 114 thr; 1 running
Mem[||||||||||||||||| 167/1001MB] Load average: 0.19 1.13 0.75
Swp[ 0/1021MB] Uptime: 00:06:54
例えば。
これがOS Xの奇妙な問題なのか、その他の問題なのかはわかりません。 アクティビティモニター で確認することをお勧めします