htopでメモリ使用量を読み取る方法は?


30

それは私のhtop出力です:

ここに画像の説明を入力してください

たとえば、私はこのルビスクリプトに混乱しています:

ここに画像の説明を入力してください

使用している物理メモリはいくつですか?3+1+8+51+515151+51


次に、RES列は見たいものです。
デビッドシュワルツ

はい、見ています。しかし、私のスクリプトによるメモリ使用量はどれですか?なぜ2つある51のですか?102メガバイトを消費しますか?それとも51メガバイトだけですか?外側のプロセスRESでは、内部プロセスのRESが含まれている、なぜ318より、すべての少ないですか51
ライ・ユシュアン

2
プロセスが分岐したため、51が2つあります。2つのプロセスがそれぞれ同じ51メガバイトを使用しているため、おそらく102メガバイトを消費しませんが、簡単にはわかりません。そのメモリが他のプロセスにも存在する場合、他のプロセスRESには内部プロセスが含まれ、そうでない場合は含まれません。RESフィールドは、各プロセスが使用している物理メモリの量を示しますが、他のプロセスも同じ物理メモリを使用している場合と使用していない場合があります。
デビッドシュワルツ

1
2つのプロセスが同じメモリを使用しているかどうかを知りたい場合は、pmap -d <プロセスID>
-Sirch

1
@ LaiYu-Hsuan:はい、あなたは間違っています。ページはコピーされず、共有されます。いずれかのプロセスがページに書き込む場合にのみコピーされ、非共有にする必要があります。(これは「コピーオンコピー」または「CoW」と呼ばれます。)
デイビッドシュワルツ

回答:


45

ユーザースレッドを非表示(Shift + H)にしてプロセスツリービュー(F5)を閉じると、目的のプロセスをPIDでソートし、RES列を読み取ることができます(Shift + MまたはF3を押してMEM%でソートして検索します) cmd行で)


4
Shift-Hは私が長年探していたものです。ありがとう!
有料のオタク

4

メモリは難しいものです。ps/ htop / topを実行するだけでは使用済みの物理メモリを計算できません。メモリはプロセス間で共有できます。

このスクリプトで使用法を確認することをお勧めします。

http://www.pixelbeat.org/scripts/ps_mem.py

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