2017-12-13 20 views
1

私は現在、CPU使用量/メモリ使用量/開かれたFD /などについて統計情報を追加したいが、プロセスレベルごとに小さなサイドプロジェクトを進めている。MacOSでプロセスごとのメモリ使用量を計算する

私は正しく動作していますが、私が実行している問題はメモリにあります。プロセスの情報セクションで 'Activity Monitor'と同様のメモリ使用量を取得または計算するためのAPIが見つかりません。

'Real/Virtual/Shared/Private'メモリの使用量を計算するために使用できるAPIは何ですか?私はhost_statistics()を使用していますが、これは私に伝えることのできる基本的なVM情報だけを提供します。私もtask_info()を見てきましたが、これも私が探しているメモリが壊れているようには見えません。

答えて

1

Appleはsource code for the top utilityを利用できます。それは少なくとも表示されるすべてのプロセス情報にアクセスする方法を理解するのに役立ちます。これには、さまざまなメモリ統計が含まれます。

+0

私はこれを見てみましたが、プロセスのプライベート/共有メモリ値の計算方法はわかりません。 – slagathor

+1

それを傷つける。 Private/Sharedの計算を処理するコードのセクションを見つけました。 Mach_vm_region()を使って仮想メモリ領域を歩かなければならないことが分かります。 – slagathor

+0

それは右のように聞こえる。私はあなたがそれらを歩いている間にプロセスがその地域を修正することができるようにそれが100%信頼できるとは思わないが、表示統計の目的のためにそれは十分であるはずです。 (申し訳ありませんが、私は完全な答えを提供していませんが、私は精通していないので、実際に自分自身を研究する時間はありませんでした。何もありません!) – pmdj

関連する問題