GNU/Linux >> Linux の 問題 >  >> Linux

C++ メソッドの perf プローブを追加できない

回避策として、objdump でメソッド アドレスを取得できます。 と perf probe 受け入れます。

  $ perf probe -x /path/file '0x643f30'
Added new event:
  probe_libfile:abs_643f30 (on 0x643f30 in /path/file)

You can now use it in all perf tools, such as:

    perf record -e probe_libfile:abs_643f30 -aR sleep 1

perf probe に注意してください ファイルからのオフセットが必要で、objdumpreadelf 読み込みアドレスを調整した後、アドレスを返します。 -pie の場合 読み込みアドレスが 0 の場合、アドレスは同じになります。
-pie 以外の場合 実行可能ファイルの readelf -l /path/file の出力を見ると、読み込みアドレスを取得できます オフセット 0x000000 を検索します VirtAddr を見て objdump --syms から取得したシンボル アドレスからその数値を減算します。 または readelf --syms .通常は 0x400000 です


Linux
  1. netplanを使用してUbuntu18.04にIPアドレスを追加するにはどうすればよいですか?

  2. コマンドを使用してUbuntuにIPアドレスを追加するにはどうすればよいですか?

  3. bash でパブリック IP アドレスを検出する方法

  1. スコープ ID を持つ IPv6 アドレスを ssh 構成ファイルに追加するにはどうすればよいですか?

  2. dhcpd で MAC アドレスによって IP を割り当てるにはどうすればよいですか

  3. ntpd の gpsd アドレスを取得しています

  1. シェルドットファイルでできること

  2. ppl –Linux用のコマンドラインアドレスブック

  3. IPアドレスを取得するためのシェルコマンド?