完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
题西林壁 朝代:宋代 作者:苏轼 横看成岭侧成峰 远近高低各不同 不识庐山真面目 只缘身在此山中 回头看看,和280相处的日子已经不短了,1个月的时间,一年才有12个,和280玩耍的日子里,每天都有一位雷锋式的好人默默地陪伴我们,他就是----------------uboot。是什么原因,让一坨冷冰冰的金属和半导体热舞起来,有童鞋说是通了电,当然需要电,然而电只能让这些东西群魔乱舞,乱舞对我们毫无意义,我们需要的是有节奏有步骤有计划有激情地热舞,做这个事的就是uboot. 说起uboot,不得不从bootloader开始,在嵌入式操作系统中,BootLoader是在操作系统内核运行之前运行。负责初始化硬件设备、建立内存空间映射图,从而将系统的软硬件环境带到一个合适状态,以便为最终调用操作系统内核准备好正确的环境。童鞋们都装过机,知道BIOS,在嵌入式系统中,通常并没有像BIOS那样的固件程序(注,有的嵌入式CPU也会内嵌一段短小的启动程序),因此整个系统的加载启动任务就完全由BootLoader来完成。在一个基于ARM7TDMI core的嵌入式系统中,系统在上电或复位时通常都从地址0x00000000处开始执行,而在这个地址处安排的通常就是系统的BootLoader程序。 可见,BootLoader是一个小程序,在我们尽情玩耍之前,默默地做好了暖场工作,BootLoader家庭里有很多兄弟姐妹: Redboot是Redhat公司随eCos发布的一个BOOT方案,支持的处理器构架有ARM,MIPS,MN10300,PowerPC, Renesas SHx,v850,x86等,是一个完善的嵌入式系统Boot Loader。 ARMboot是一个ARM平台的开源固件项目,它特别基于PPCBoot,一个为PowerPC平台上的系统提供类似功能的姊妹项目。鉴于对PPCBoot的严重依赖性,已经与PPCBoot项目合并,新的项目为U-Boot。支持的处理器构架有StrongARM ,ARM720T ,PXA250 等,是为基于ARM或者StrongARM CPU的嵌入式系统所设计的。 U-Boot,也就是我们灰常灰常熟悉的,是由开源项目PPCBoot发展起来的,ARMboot并入了PPCBoot,和其他一些arch的Loader合称U-Boot。2002年12月17日第一个版本U-Boot-0.2.0发布,同时PPCBoot和ARMboot停止维护。U-Boot自发布以后已更新6次,最新版本为U-Boot-1.1.1,U-Boot的支持是持续性的。支持的处理器构架包括PowerPC (MPC5xx,MPC8xx,MPC82xx,MPC7xx,MPC74xx,4xx), ARM (ARM7,ARM9,StrongARM,Xscale),MIPS (4Kc,5Kc),x86等等, U-Boot(Universal Bootloader)从名字就可以看出, 它是在GPL下资源代码最完整的一个通用Boot Loader(注:Universal,普遍的,一般的; 通用的,万能的; 全世界的; 宇宙的),uboot真的很好很强大! 其他兄弟还有,Blob,Jan-Derk Bakker and Erik Mouw发布的,这个我真没听说过, Bios-lt,专门支持三星(Samsung)公司ARM构架处理器S3C4510B的Loader, Bootldr,是康柏(Compaq)公司发布的, 支持SA1100芯片。支持串口Y-modem协议以及jffs文件系统。 vivi是大---韩民国mizi 公司开发的bootloader, 适用于ARM9处理器, 还有DSP的bootloader...... 向这些不可或缺、默默工作的bootloader们致敬! U-Boot是怎么工作的呢? 启动内核的过程可以分为两个阶段,两个阶段的功能如下: (1)第一阶段的功能 硬件设备初始化 加载U-Boot第二阶段代码到RAM空间 设置好栈 跳转到第二阶段代码入口 (2)第二阶段的功能 初始化本阶段使用的硬件设备 检测系统内存映射 将内核从Flash读取到RAM中 为内核设置启动参数 调用内核 用图来说事,第一阶段:
第二阶段:
bsls2.jpg
(29.24 KB, 下载次数: 14)
|
|
|
相关推荐
|
|
|
好
|
|
|
|
|
|
|
|
|
感谢楼主分享,写的非常好!大神啊!赞!学习了
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
只有小组成员才能发言,加入小组>>
2135个成员聚集在这个小组
加入小组我的项目我做主,使用GN+Ninja来完成构建系统(VSCode开发RT106X)
37376 浏览 0 评论
NXP IMX8应用处理器快速入门必备:技巧、使用、设计指南
6775 浏览 1 评论
7793 浏览 1 评论
7642 浏览 0 评论
NXP i.MX6UL开发板(linux系统烧录+规格+硬件+模块移植)使用手册
5071 浏览 0 评论
1556浏览 2评论
关于NINA-W132 Wi-Fi模块SPI通信遇到的疑问求解
1209浏览 2评论
如何在MPC PowerPC MCU上首次刷写后禁用BDM?
749浏览 1评论
将HFREFR和LFREFR寄存器值设置为错误的值来将故障注入CMU,但CMU_ISR值始终为零,为什么?
735浏览 1评论
将SPSDK for FRDM-MCX-W71 SDK与VS一起安装时出现hidapi构建错误怎么解决?
678浏览 1评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-2 09:17 , Processed in 0.534489 second(s), Total 42, Slave 33 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖