objdump または readelf を使用せずに、ELF 実行可能ファイル (a.out) のプログラム ヘッダーの数を見つける必要があります。hexdumpを介して実行できると思います。しかし、私はそれについて何も知りません。計算方法を教えてください。
ありがとう
objdump または readelf を使用せずに、ELF 実行可能ファイル (a.out) のプログラム ヘッダーの数を見つける必要があります。
これは簡単なことです。
(または 64 ビット マシンの場合は Elf64_Ehdr) の定義/usr/include/elf.h
を探します。Elf32_Ehdr
そこに表示されているものと からの出力を比較してくださいreadelf -h a.out
。それと、すべてのバイナリが始まるという事実だけELF
でElf{32,64}_Ehdr
十分です。
プログラムは次のようになります。
a.out
ファイルを開くElf32_Ehdr
(またはElf64_Ehdr
).e_phnum