我刚刚编译了U-Boot bootloader,我在u-boot程序目录中看到了一些文件名,它们是:
u-boot.bin u-boot.img u-boot.lds u-boot.srec
基本上,我对扩展名为.img和.bin的文件感兴趣.他们之间有什么不同?
用于SD卡的u-boot.img和用于闪存到NAND的u-boot.bin?
解决方法
u-boot.bin是二进制编译的U-Boot引导加载程序.
u-boot.img包含u-boot.bin以及引导ROM使用的附加头,以确定加载和执行U-Boot的方式和位置.
部署这些文件的方式取决于设备的性质,引导ROM以及文件的加载位置.
Boot ROM通常由SoC/C++PU供应商提供.目前,许多引导ROM都能够加载u-boot.img,读取文件的头文件,将u-boot.bin加载到内存中并最终执行它.某些引导ROM非常复杂,可以直接加载u-boot.bin,甚至可以加载OS内核.其他人可能首先加载中间引导加载程序(MLO / X-Loader),然后在外部存储器初始化后负责将U-Boot加载为辅助引导加载程序.
此图描绘了一些TI OMAP处理器实现的后一种情况:
某些设备通过将许多X-Loader任务移动到U-Boot并将引导参数(例如内存地址)放入u-boot.img的头部来减少此引导过程,从而无需中间引导加载程序.
您需要调查设备的属性,以确定如何部署U-Boot.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。