建设银行商城网站,浙江建站管理系统价格,鹤岗网站建设,南昌建设厅网站一、uboot概述
1.1 开发板启动过程 开发板上电后首先运行SOC内部iROM中固化的代码(BL0)#xff0c;这段代码先对基本的软硬件环境(时钟等...)进行初始化#xff0c;然后再检测拨码开关位置获取启动方式#xff0c;然后再将对应存储器中的uboot搬移到内存#xff0c;然后跳…一、uboot概述
1.1 开发板启动过程 开发板上电后首先运行SOC内部iROM中固化的代码(BL0)这段代码先对基本的软硬件环境(时钟等...)进行初始化然后再检测拨码开关位置获取启动方式然后再将对应存储器中的uboot搬移到内存然后跳转到uboot运行。 uboot开始运行后首先对开发板上的软硬件环境做进一步初始化然后将linux内核、设备树(dtb)、根文件系统(rootfs)从外部存储器或网络搬移到内存然后跳转到linux运行。 linux开始运行后先对系统环境做初始化当系统启动完成后Linux再从内存中或网络挂载根文件系统 。
所以首先需要在SD卡中刷一个uboot。 1.2 Bootloader
Bootloader 在操作系统运行之前运行的一小段代码用于将软硬件环境初始化到 一个合适的状态为操作系统的加载和运行做准备其本身不是操作系统
Bootloader基本功能 - 初始化软硬件环境 - 引导加载linux内核 - 给linux内核传参 - 执行用户命令
注bootloader是启动引导程序的统称,嵌入式linux常用的bootloader是uboot 1.3 常用的Bootloader 二、SD卡启动盘制作
2.1 SD卡存储结构 SD卡的存储以扇区为单位,每个扇区的大小为512Byte, 其中零扇区存储分区表即分区信息,后续的扇区可自行分区和格式化 若选择SD卡启动处理器上电后从第一个扇区开始将其中的内容搬移到内存所以我们把uboot放到从第一个扇区开始之后的空间 之后的空间根据个人需求可进行分区和格式化 2.2 实验步骤 1 、将资料中“ u-boot 镜像”中的 u-boot-fs4412.bin 拷贝到 ubuntu 的家目录下 2 、在终端输入如下命令制作一个 512 字节的空镜像 $ sudo dd if/dev/zero ofzero.bin count1 显示如下信息则表示制作成功 3 、 执行如下命令将 uboot 追加到 zero.bin 之后生成 win-u-boot-fs4412.bin $ cat zero.bin u-boot-fs4412.bin win-u-boot-fs4412.bin 把zero.bin和u-boot-fs4412.bin输出重定向到win-u-boot-fs4412.bin中。我们希望把uboot烧到1扇区之后所以前面需要加一个空的zero.bin。 4 、 再执行如下命令制作一个 1M 的空镜像用于擦除 SD 卡中原有的数据 $ sudo dd if/dev/zero ofclear.bin count2048 5、 把生成的 win-u-boot-fs4412.bin 和 clear.bin 拷贝到 windows 下 6 、 将 SD 卡插入到电脑上卡槽 /USB 读卡器均可使其在 windows 下识别若不识别 可能是已经在 ubuntu 中识别了在可移动设备中将其断开即可 7 、双击打开资料中“ ImageWriter ”下的“ Win32DiskImager ” 8 、 在弹出的界面中先选择要烧写的镜像文件 clear.bin 然后选择要烧写的设备 SD 卡 最后单击“ Write ”进行烧写 9 、 在弹出的对话框中单击“ Yes ” 10 、在弹出的对话框中单击“ OK ”完成烧写 因为 clear.bin 为空镜像所以写入后 SD 卡中的前 2048 个扇区中的数据被擦除 11 、再选择 uboot 镜像完 win-u-boot-fs4412.bin 然后单击“ Write ”进行烧写 12 、在弹出的对话框中单击“ Yes ” 13 、在弹出的对话框中单击“ OK ”完成烧写 14 、将 SD 卡插入开发板的卡槽调整拨码开关为 SD 卡启动查看 uboot 是否能正常启动 注 uboot 正常启动后 LED2 灯会点亮且终端上也会打印 uboot 相关的信息