top、ps、/proc/pid/statm、/proc/pid/status、/proc/pid/smaps で報告されたさまざまなプロセス属性の接続 [閉じる]

top、ps、/proc/pid/statm、/proc/pid/status、/proc/pid/smaps で報告されたさまざまなプロセス属性の接続 [閉じる]

私が見つけたいくつかの一般的なプロパティは次のとおりです。

top(VIRT), smem(VSS), /proc/pid/statm(ページの最初の項目), /proc/pid/status(VmSize), ps(VSZ)

top(RES), smem(RSS), /proc/pid/statm (ページの 2 番目のエントリ), /proc/pid/status(VmRSS), すべての Rss を追加: プロセスマップの /proc/pid/smaps 値、追加すべての/proc/pid/smapsプロセスマップのPrivate_.* + Shared_.*値、ps(RSS)

上部(データ)、報告されていない smem、/proc/pid/statm(ページの6番目の項目)、/proc/pid/status(VmData)、psは報告されていません

トップ(コード),報告されていない smem、/proc/pid/statm(ページの4番目の項目)、/proc/pid/status が報告されないpsは報告されていません

トップ(SHR)、報告されていない smem、/proc/pid/statm(ページの3番目の項目)、/proc/pid/status が報告されないpsは報告されていません

smem(USS), /proc/pid/smaps プロセスマップにすべての Private_.* 値を追加します。

smem(PSS), /proc/pid/smaps プロセスマップにすべての Pss: 値を追加します。

smem(Swap), /proc/pid/smaps プロセスマップにすべての Swap: 値を追加します。

上(SWAP) = 上(VIRT) - 上(RES)

質問: 上記のように、私が上記に逃した他の関係はありますか?共有できますか?

ベストアンサー1

ps、top、およびsmemプログラムはすべて/ procからデータを取得します。たぶん正確な詳細を得るためにソースコードを見たいかもしれません。これらの詳細は長年にわたって変更され、引き続き変更される可能性があります。

smemプログラムはPythonスクリプトです。以下は smem のフィールドのリストです。http://selenic.com/repo/smem/file/43b299004079/smem#l271

Linuxはprocpsパッケージからtopとpsを取得します。上部のフィールドのリストは次のとおりです。http://procps.cvs.sourceforge.net/viewvc/procps/procps/top.c?revision=1.134&view=markup#l1223

psのフィールドのリストは次のとおりです。http://procps.cvs.sourceforge.net/viewvc/procps/procps/ps/output.c?revision=1.65&view=markup#l1286

おすすめ記事