busyboxの「トップ」出力を解釈するには?


8

小さな組み込みARMシステムでBusyBoxを使用しています。特にリストされているPythonプロセスについて、「トップ」の出力を読み込もうとしています。このプロセスはどのくらいの実メモリを使用していますか?また、VSZは何の略ですか?システムには64MBのRAMしかありません。

メモリ:41444K使用、20572K空き、0K shrd、0Kバフ、18728Kキャッシュ
CPU:3%usr 3%sys 0%nic 92%アイドル0%io 0%irq 0%sirq
負荷平均:0.00 0.04 0.05 1/112 31667
  PID PPID USER STAT VSZ%VSZ%CPUコマンド
  777 775 python S 146m 241%3%/ usr / bin / python -u-dpdsrv.py

回答:


4

VSZ(またはVIRTのバージョンによってはtop)は、プロセスのアドレス空間にマップされたメモリの量です。これには、プロセスの実行可能ファイルと共有ライブラリ、そのヒープとスタック、およびマップされた他のすべてによって裏打ちされたページが含まれます。

表示するサンプル出力の場合、仮想サイズはシステムの物理メモリの量よりも大きいため、プロセスのアドレス空間の一部(ほとんど!)のページは、物理的にRAMに存在していません。それは問題ではありません:多くのプログラムは大量のコードを含み、多くの共有ライブラリをマッピングしますが、実際にはそのコードの特定の部分のみを使用するか、少なくとも同時にコードの特定の部分のみを使用するため、カーネルが削除できますそれらが使用されないときはいつでも、または最初からそれらをロードしないために、メモリからの未使用部分。

のバージョンにtopRES列が表示されていないようです。この列は、プロセスのアドレス空間内のメモリのどの程度が現在RAMに常駐しているかを示します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.