一、uboot概述
(一)uboot作用
uboot从外存搬到内存
软硬件初始化,linux、dtb、rootfs搬到RAM。
(二)Bootloader
1、在操作系统运行之前运行的一小段代码,用于软硬件环境的初始化。为操作系统的加载和运行做准备(本身不是操作系统)
2、Bootloader基本功能
把linux从外存加载到内存,给linux传参,linux运行时需要的参数由Bootloader提前准备。执行用户命令,类似于shell命令。
3、和uboot的关系
bootloaders是启动引导程序的统称,嵌入式linux常用的bootloader是uboot。
ARM功耗低价格便宜体积小,但是很多Bootloader都不支持ARM,有一些专用的引导程序。linux轻量级,uboot是通用引导程序。
二、SD卡启动盘制作
SD卡本身也是存储器,以扇区为单位,第0块是分区表(目录)。
BLO检测到SD卡启动,默认从第一个扇区开始(除了分区表),搬到内存中。
1、在家目录拷贝镜像
2、制作做一个空镜像
3、将uboot追加到zero.bin之后生成win-u-boot-fs4412.bin
将zero.bin和uboot定向到同一个文件中。
zero.bin会被刷到SD卡的第一个扇区,因此将uboot刷到SD卡中,会刷到第一个位置。
4、制作一个1M的空镜像(用于擦除SD卡中原有的数据)
SD卡之前有可能存储了一些东西,用于清空uboot将要刷新的区域。
5、把生成的win-u-boot-fs4412.bin和clear.bin拷贝到windows下
6、将SD卡插入到电脑上(卡槽/USB读卡器均可),使其在windows下识别(若不识别,可能是已经在ubuntu中识别了,在可移动设备中将其断开即可)
三、作业
简述uboot的作用?
1、初始化软硬件环境
2、引导加载linux内核
3、给linux内核传参
4、执行用户命令