开发者

GNU Binutils' Binary File Descriptor library - format example

开发者 https://www.devze.com 2023-04-07 00:58 出处:网络
As in title. I tried reading the BFD\'s ELF\'s code, but it\'s rather not a light reading. I also tried to get something from the documentation, but I would need an example to see how it works. Could

As in title. I tried reading the BFD's ELF's code, but it's rather not a light reading. I also tried to get something from the documentation, but I would need an example to see how it works. Could anyone point me some easier example for me, to know how to define an executable format?

Edit: Looks like I didn't formulate the question properly. I don't ask "how to create own executable format specification?", nor "where is good ELF documentation?", 开发者_C百科but "how can I implement my own executable format using GNU BFD?".


You did look here http://sourceware.org/binutils/docs-2.21/bfd/index.html and here http://sourceware.org/binutils/binutils-porting-guide.txt?

Also studying the MMO implementation of a BFD backend as mentioned here http://sourceware.org/binutils/docs-2.21/bfd/mmo.html#mmo (source: http://sourceware.org/cgi-bin/cvsweb.cgi/src/bfd/mmo.c?cvsroot=src) might be less complex than starting with ELF ... ;-)


I agree that BFD documentation is somewhat lacking. Here are some better sources:

  • ELF Format
  • System V ABI (section 4)

Here are a couple of readable introductions:

  • Linux Journal
  • Dr. Dobbs

And some examples that don't use libbfd:

  • ELF IO
  • ELF Toolchain
  • LibELF


The DOS COM file is the simplest possible format.

Load up to 64k less 256 bytes at seg:0100h, set DS,ES,SS=seg, SP=FFFFh and jump to seg:0100h

0

精彩评论

暂无评论...
验证码 换一张
取 消