链接器可以输出 ELF 和 MAP 文件。这些文件在嵌入式系统领域尤其重要,因为 ELF 文件通常用于读出变量或函数的地址。此外,ELF 文件由不同的嵌入式测量或分析工具使用。
当我打开一个 MAP 文件时,我可以在其中看到每个全局变量和每个外部函数的以下信息:分配的地址、符号名称、分配的字节、内存单元和内存部分。
另一方面,一旦我打开 ELF 文件,它就是一个二进制文件,不是人类可读的。但是,我使用的一些工具能够读出并解释它。这些工具可以解释 ELF 文件,并获取有关变量/函数的符号名称及其地址的信息,甚至可以显示函数原型。
根据我的理解,ELF和MAP文件基本上包含相同的信息,只是第一个是二进制文件,后一个是文本文件。那么从内容的角度来看,这两个文件之间的实际区别是什么?
先感谢您!