3

如标题。我尝试阅读 BFD 的 ELF 代码,但阅读起来并不轻松。我也尝试从文档中获取一些东西,但我需要一个示例来了解它是如何工作的。谁能为我指出一些更简单的例子,以了解如何定义可执行格式?

编辑:看起来我没有正确地提出问题。我不是问“如何创建自己的可执行格式规范?”,也不是“哪里有好的 ELF 文档?”,而是“如何使用 GNU BFD 实现我自己的可执行格式?”。

4

3 回答 3

4

你确实看过这里http://sourceware.org/binutils/docs-2.21/bfd/index.html和这里http://sourceware.org/binutils/binutils-porting-guide.txt

还研究了此处提到的 BFD 后端的 MMO 实现http://sourceware.org/binutils/docs-2.21/bfd/mmo.html#mmo(来源:http: //sourceware.org/cgi-bin/cvsweb。 cgi/src/bfd/mmo.c?cvsroot=src ) 可能没有从 ELF 开始复杂... ;-)

于 2011-10-02T10:26:11.190 回答
2

我同意 BFD 文档有些缺乏。这里有一些更好的来源:

以下是一些可读的介绍:

还有一些不使用 libbfd 的例子:

于 2011-09-30T13:43:31.437 回答
1

DOS COM 文件是最简单的格式。

在 seg:0100h 加载最多 64k 少 256 个字节,设置 DS,ES,SS=seg, SP=FFFFh 并跳转到 seg:0100h

于 2011-09-22T21:19:19.873 回答