嵌入式开发中的.bin文件和.elf文件的区别

Posted 代二毛

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了嵌入式开发中的.bin文件和.elf文件的区别相关的知识,希望对你有一定的参考价值。

前言

在嵌入式开发中,会遇到.bin文件和.elf文件,两者都可以下载到嵌入式设备里运行,但是却有区别。一般情况下我们都是用的.elf文件,这是Linux系统里的可执行文件,而.bin文件是可烧录文件。

.bin文件和.elf文件之间的联系

简单来说,.bin文件是由.elf文件为原材料生成,制作工具是交叉工具编译链里的arm-linux-objcopy。.bin文件在.elf的基础上,去掉了相关的符号信息,CPU读取到.bin文件里的内容就可以直接运行。

.bin文件和.elf文件的区别

.bin文件不需要依赖操作系统,直接烧录进去,CPU读取就能执行;.elf文件需要操作系统的解读,因为还包含符号信息,操作系统处理后才能由CPU去执行。

以上是关于嵌入式开发中的.bin文件和.elf文件的区别的主要内容,如果未能解决你的问题,请参考以下文章

ELF 文件和 bin 文件有啥区别?

STM32 | hex文件bin文件axf文件的区别?

自己动手写一个操作系统——elf 和 bin 文件区别

自己动手写一个操作系统——elf 和 bin 文件区别

自己动手写一个操作系统——elf 和 bin 文件区别

QT应用程序 - 替换嵌入式资源