私のプロセスを監視するためにhtopを使用していますが、実行中のほとんどのサービスはマルチスレッドなので、場合によってはすべてのサービスに対して同じであり、時には差があるメモリ使用率と数行で表示されます。
Firefox を例にすると、それぞれ 13% のメモリを消費する 15 個のプロセスをリストできます。
Firefox、MySQL、いくつかのfcgiスクリプト、または他のものがどのくらいのメモリを占めているかを知ることができますか? htop出力が誤解を招くように見えるからです。
答え1
ほとんどのトップレベルの実装には、スレッド表示をオンまたはオフにする方法があります。
- htop:設定/表示オプションメニューの「Hide Userland Threads」。
- Linuxの上部:
H
スレッド表示を切り替えるにはタップします(ただしデフォルトではオフになっています)。 - OpenBSD Top:
T
スレッド表示を切り替えるにはタップします(ただし、デフォルトではオフになっています)。
メモリマップとメモリ使用スペースはプロセスの属性なので、プロセスの各スレッドに対して常に同じ数字が表示されます。数値が異なる場合は、複数のプロセスがあることを意味します。
概念が明確に定義されていないため、一連のプロセスの総メモリ消費量を把握する簡単な方法はありません。一部のメモリは共有できます。これは共有ライブラリで頻繁に発生し、関連プロセス(サーバーの複数のインスタンスなど)が共有メモリを使用してデータを交換する可能性が高くなります。数字だけを加えると、通常、実際に使用されているメモリよりもはるかに大きい数字が得られます。