嵌入式实验报告4编译Bootloader实验.pdfVIP

  • 29
  • 0
  • 约2.51千字
  • 约 8页
  • 2020-09-17 发布于江西
  • 举报
实验四 编译Bootloader实验的实验报告 一 实验目的 1、掌握编译Bootloader 的过程。 2、了解Bootloader 的作用及在嵌入式系统中的应用; 3、制作一个Bootloader。 二 实验环境 预装Linux 的pc 机一台,CVT-A8 嵌入式实验箱一台 (已构建嵌入式Linux 系 统),以太网线一根,交叉编译工具链,u-boot-s5pv210.tar.gz 源码包。 三 实验步骤 1、启动S5PV210 的Linux 宿主机,在主目录下,能找到uoot 的源码包文件 夹/home/cvtech/u-uoot-s5pv210 ,有则直接用cd 命令切换到源码目录下。如 果没有,可以拷贝 u-boot-s5pv210.tar.gz 源码包到主目录后,通过解压命令 解压源码包;解压命令:tar –zxvf u-boot-s5pv210.tar.gz Cd /home/cvtech/u-uoot-s5pv210 : 2、用cd 命令切换到uboot 源码目录下 命令: cd u-boot-s5pv210 3、执 make clean 命令,清除之前编译生成的文件。 4 、执 make 命令编译出uboot.bin 文件。命令: make 如果编译成功,则在uboot 源码目录下生成uboot.bin 文件。 生成uboot.bin 文件: 5、烧写uboot 把uboot.bin文件,复制到SD卡中,切换实验板为sd卡启动,并通过指导 书上的操作步骤,通过sdfuse命令把uboot.bin文件烧写到flash 中。再切换实验 板为nand启动,之后操作uboot的命令。 SD卡启动: 6、使用和验 Bootloader 命令 help --打印uboot 提供的所有可用命令,以及命令的简介 help 某个命令名 --打印出此命令的具体使用方法 根据某个命令的具体使用方法,使用这个命令 四 实验思考 1. bootloader的作用? bootloader就是在操作系统内核运行之前运行的一小段程序。通过这个小程 序我们主要完成以下内容: 1)初始化硬件设备。 2)建立内存空间的映射。 3)创建内核需要的一些信息,并将这些信息通过相关机制,传递个给内核。 4)将系统的软硬件环境设置成一个合适的状态。 5)为最终调用操作系统内核准备好正确环境,真正起到引导和加载内核的作 用。 2、理解bootloader的启动过程? 在嵌入式系统,整个系统的加载启动完全由bootloader来完成。Bootloader 是 CPU 上电后运行的第一段程序。不同的 CPU 体系结构有不同的 bootloader, 有些bootloader支持多种体系结构的CPU,比如U-Boot就同时支持ARM和MIPS 体系结构。除了依赖于 CPU 的体系结构外,Bootloader 实际上也依赖于具体的 嵌入式版级设备的配置。也就是两块不同的嵌入式版,即使他们是基于同一种 CPU而建,但是要想让运行在一块板子上的 bootloader也运行到另一块板子上, 通常需要修改Bootloader源程序。 当一个嵌入式开发板上电时,即使执行最简单的程序,都要初始化很多硬件。 每种体系结构、处理器都有一组预定义的动作和配置,他们包含从单板的存储设 备获取初始化代码的功能。最初的初始化代码是Bootloader的一部分,它负责启 动处理器和相关硬件设备。上电复位时,大多数处理器都有一个获取第一条指令 的默认初始地址。硬件设计人员利用该信息来进行存储空间的布局。这样以来, 上电的时候,可从一个通用的已知地址获取代码,然后建立软件的控制。 Bootloader 提供初始化代码,并初始化单板,这样就可以执行其他程序,最初的 初始化程序都是给体系结构下汇编语言写成的。在初始化相应的硬件信息之后, Bootloader 会引导完整的操作系统,他会定位加载操作系统,并将控制权交给操 作系统。当操作系统获取控制权之后,嵌入式下的Bootloader 将不复存在。 3、如何修改bootloader? 1)安装cross compiler 2 )解压缩u-boot-1.1.6.tar.bz2 3 )make smdk

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档