pmap

pmap は「他のオブジェクト」のマッピングを示しています。これらのオブジェクトが何であるかをどうやって知ることができますか?
pmap

pmap は「他のオブジェクト」のマッピングを示しています。これらのオブジェクトが何であるかをどうやって知ることができますか?

私のRustアプリケーションで一種のメモリリークを調査しています。メモリは着実に増加します(約30Mから始まり、毎日50Mずつ増加します)。アプリケーションはRustで書かれており、XDP / BPFプログラムをいくつかのインターフェースに接続し、いくつかのデータを読み取り、BPFマップを介していくつかの指標を公開します。 興味深いことに、「リーク」はテスト環境でのみ発生します(本番環境でのメモリ使用量はこれまで非常に安定しています)。 以下はいくつかのpmap出力です(出力が多く、問題の一部ではない*.soためフィルタリングしました)。anon_inode...

Admin

「root」権限を持つカーネルのメモリマップを確認するには?
pmap

「root」権限を持つカーネルのメモリマップを確認するには?

ユーザーpmap <pid>空間プロセスのメモリマップを確認するために使用します<pid>。 「root」権限(つまり、すべての機能)が付与されたカーネルのメモリマップを確認する方法は? 私が興味を持っているのはカーネルモジュールを開発しているので、シンボルがどのメモリセグメント/セクションにあるのかを知りたいからです。 ボーナス: また、この情報を「オフライン」にインポートするために、次のことを試みました。 $ sudo readelf -a /boot/vmlinuz-5.8.0-50-generic readelf: Error...

Admin

大きなコードセグメントを処理するためのメモリマッピング
pmap

大きなコードセグメントを処理するためのメモリマッピング

pmap私はメモリマッピングがどのように行われるかを示すプロセスを知っています。たとえば、pmap 出力の最初の行は、プロセス実行可能ファイルのテキストセグメントのメモリマップを示しています。非常に大きな実行ファイルがあり、コードサイズが大きいとしましょう。小さなテキストセグメント(小さな実行可能ファイル)の場合、pmampは400000 - 401000 - 4096 B - 4 KiBマップされたテキストセグメントを表示します。 (1)テキストセグメントが本当に大きい場合、どのようにマッピングされますか? (2)コードの実行が進むにつれて、必要な...

Admin

ページの開始アドレスを取得する
pmap

ページの開始アドレスを取得する

関数を含むメモリページの先頭を取得したいと思います。 私の場合は、ページの先頭にメイン機能を実装してみました。そのうち0x400a80メモリのコード部分に位置しているようです。これが本当かどうか確認していただければ幸いです。 私が知っているのは、アドレスが0x400a80ページにあります。 プロセスのメモリセグメント表示を使用すると、pmap8Kサイズで始まるセグメントと4Kサイズで始まる次の0x400000セグメントが表示されます。0x601000 0x400000関数のアドレスがあるので、アドレスを取得したいと思いますmain()。ページに住所が...

Admin

PSはPmapやSmemとは異なるRSS値を表示します。
pmap

PSはPmapやSmemとは異なるRSS値を表示します。

プロセスのメモリ消費量を取得したい。使っていますRSSこれを決定するパラメータです。 私もRSSツール使用時のpmap -xx <PID>値ですsmem。ただし、RSSを取得しようとすると、ps v <PID>他の値が表示されます。 私はpmap彼らがファイルをsmem使用しています/proc/pid/smapsRSSps価値はありますが、ツールがわかりません。 psツールでこの計算の基礎は何ですか?どちらが正しいですかps?pmapsmem ...

Admin

プロセスのメモリ使用量を取得する:pmapをtopと比較する
pmap

プロセスのメモリ使用量を取得する:pmapをtopと比較する

プロセスのメモリ使用量を確認したいのですが、pmapこれができるようです。ただし、返される値はtopコマンドで見た値とは異なります。 # pmap 22080 | grep total total 6588952K # top | grep 22080 22080 ghatee 20 0 6588948 5.873g 11936 R 100.0 9.4 1120:17 pw.x なぜですか? ...

Admin