网站大量收购独家精品文档,联系QQ:2885784924

UBOOT基础知识课件.ppt

  1. 1、本文档共71页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
UBOOT基础知识课件

UBOOT 提 纲 理论: BootLoader介绍 Uboot介绍 Uboot命令 Uboot工作流程 Uboot移植 Uboot烧写 实验: 移植Uboot Uboot使用 第一节 BootLoader介绍 概念 什么是BootLoader? 软件层次 一个嵌入式系统从软件角度来看分为三个层次: 1. 引导加载程序 包括固化在固件(firmware)中的 boot 代码(可选),和 BootLoader 两大部分。 2. Linux 内核 特定于嵌入式平台的定制内核。 3. 文件系统 包括了系统命令和应用程序。 软件层次 一个同时装有 BootLoader、内核的启动参数、内核映像和根文件系统映像的固态存储设备的典型空间分配结构图: 回忆PC PC机中的引导加载程序由BIOS(其本质是一段固件程序)和位于硬盘MBR中的引导程序(GRUB或LILO)一起组成。BIOS在完成硬件检测和资源分配后,将硬盘中的引导程序读到系统内存中然后将控制权交给引导程序。引导程序的主要任务是将内核从硬盘上读到内存中,然后跳转到内核的入口点去运行,即启动操作系统。 定义 在嵌入式系统中,通常没有像BIOS那样的固件程序,因此整个系统的加载启动任务就完全由BootLoader来完成。比如在一个基于?ARM7TDMI?core的嵌入式系统中,系统在上电或复位时都从地址?0始执行。而在这个地址处安排的通常就是系统的BootLoader程序。 定义 简单地说,BootLoader就是在操作系统运行之前运行的一段小程序。通过这段小程序,可以初始化硬件设备,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统做好准备。 功能 BootLoader 的主要任务是初始化硬件(如:串口,内存),然后将内核映象从 Flash 中读到 RAM 中,然后跳转到内核的入口点去运行,也就是启动操作系统。 安装 系统加电或复位后,所有的CPU通常都从CPU制造商预先安排地址开始执行。比如,S3C2410在复位后从地址0开始执行。而嵌入式系统则将固态存储设备(比如:FLASH)安排在这个地址上,而bootloader程序又安排在固态存储器的最前端,这样就能保证在系统加电后,CPU首先执行BootLoader程序。 移植 Q:什么叫bootloader移植? Q:为什么需要移植? 移植 ? 每种不同的CPU体系结构都有不同的BootLoader。除了依赖于CPU的体系结构外,BootLoader 还依赖于具体的嵌入式板级设备的配置,比如板卡的硬件地址分配,外设芯片的类型等。这也就是说,对于两块不同的开发板而言,即使它们是基于同一种CPU而构建的,但如果他们的硬件资源或配置不一致的话,要想在一块开发板上运行的BootLoader程序也能在另一块板子上运行,还是需要作修改。 流程 BootLoader 的启动过程可分为单阶段(Single-Stage)和多阶段(Multi-Stage)两种,通常多阶段的 BootLoader 具有更复杂的功能,更好的可移植性。从固态存储设备上启动的 BootLoader 大多采用两阶段,即启动过程可以分为 stage 1和 stage2:stage1完成初始化硬件,为stage2准备内存空间,并将stage2复制到内存中,设置堆栈,然后跳转到stage2。 流程 BootLoader 的 stage1 通常包括以下步骤: ·硬件设备初始化 ·为加载 BootLoader 的 stage2 准备 RAM 空间 ·拷贝 BootLoader 的 stage2 到 RAM 空间中 ·设置好堆栈(why??) ·跳转到 stage2 的 C 入口点 流程 BootLoader 的 stage2 通常包括以下步骤: ·初始化本阶段要使用到的硬件设备 ·将内核映像和根文件系统映像从 flash 上读到 RAM 中 ·调用内核 内存分布 第二节 UBOOT介绍 作用 Uboot是德国DENX小组开发的用于多种嵌入式CPU( MIPS、x86、ARM、XScale等)的bootloader程序, UBoot不仅支持嵌入式Linux系统的引导,还支持VxWorks, QNX等多种嵌入式操作系统。 下载 从下面地址可以下载到uboot的源代码:/projects/uboot 目录树 进入到UBOOT目录,可以得到如下的目录结构: |--?board |--?common |--?cpu |--?disk |--?doc |--?drivers |--?dtt |--?examples |--?fs |--?include

您可能关注的文档

文档评论(0)

jiayou10 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档