-4

objdump または readelf を使用せずに、ELF 実行可能ファイル (a.out) のプログラム ヘッダーの数を見つける必要があります。hexdumpを介して実行できると思います。しかし、私はそれについて何も知りません。計算方法を教えてください。

ありがとう

4

1 に答える 1

1

objdump または readelf を使用せずに、ELF 実行可能ファイル (a.out) のプログラム ヘッダーの数を見つける必要があります。

これは簡単なことです。

(または 64 ビット マシンの場合は Elf64_Ehdr) の定義/usr/include/elf.hを探します。Elf32_Ehdrそこに表示されているものと からの出力を比較してくださいreadelf -h a.out。それと、すべてのバイナリが始まるという事実だけELFElf{32,64}_Ehdr十分です。

プログラムは次のようになります。

  • a.outファイルを開く
  • 最初から読むElf32_Ehdr(またはElf64_Ehdr
  • 印刷する.e_phnum
  • 出口
于 2013-03-02T16:37:59.850 に答える