




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第十章第十章 内容回顾内容回顾 为什么需要交叉编译 交叉调试 主要工具 u-boot的编译和使用的编译和使用第11章本章目标本章目标 理解什么是bootloader,它的作用是什么; u-boot的结构; 掌握如何编译u-boot; 掌握使用u-boot的命令、工具。本章结构本章结构嵌入式系统的引导代码嵌入式系统的引导代码u-boot的编译和使用的编译和使用u-boot配置与编译配置与编译u-boot简介简介把把u-boot烧入烧入flashu-boot主要功能主要功能u-boot主要目录结构主要目录结构tftp工具使用工具使用u-boot的命令使用的命令使用初拾初拾boot-loaderbo
2、ot-loader 启动流程启动流程uboot 命令的介绍命令的介绍常用命令使用说明常用命令使用说明命令简写说明命令简写说明把文件写入把文件写入nandflash11.1.1 初识初识bootloader嵌入式linux系统从软件的角度看通常可以分为4个层次:1、引导加载程序。包括固化在固件(firmware)中的 boot 代码 (可选),和 boot loader 两大部分2、linux 内核。特定于嵌入式板子的定制内核以及内核的启动参数。 3、文件系统。包括根文件系统和建立于 flash 内存设备之上文件系统。 4、用户应用程序。大多数 boot loader 都包含两种不同的操作模式:
3、“启动加载”模式下载”模式这种区别仅对于开发人员才有意义。但从最终用户的角度看,boot loader 的作用就是用来加载操作系统,而并不存在所谓的启动加载模式与下载工作模式的区别。 11.1.1 初识初识bootloader11.1.2 bootloader启动流程启动流程 boot loader 的 stage1 通常包括以下步骤(以执行的先后顺序): 硬件设备初始化。为加载 boot loader 的 stage2 准备 ram 空间。 拷贝 boot loader 的 stage2 到 ram 空间中。 设置好堆栈。 跳转到 stage2 的 c 入口点。 11.1.2 bootloa
4、der启动流程启动流程 boot loader 的 stage2 通常包括以下步骤(以执行的先后顺序): 初始化本阶段要使用到的硬件设备。 检测系统内存映射(memory map)。 将 kernel 映像和根文件系统映像从 flash 上读到 ram 空间中。 为内核设置启动参数。 调用内核。 bootloader的启动流程的启动流程11.1.2 bootloader启动流程启动流程11.2 u-boot简介简介 u-boot,全称universal boot loader,是遵循gpl条款的开放源码项目 支持netbsd、vxworks、qnx、rtems、artos、lynxos嵌入式操
5、作系统. 其目前要支持的目标操作系统包括openbsd、netbsd、freebsd、4.4bsd、linux、svr4、esix、solaris、irix、sco、dell、ncr、vxworks、lynxos、psos、qnx、rtems和artos。 支持的处理器结构: powerpc,mips、x86、arm、nios、xscale11.3 u-boot配置与编译配置与编译make distclean 清除与平台相关的文件make smdk2440_config 配置使用smdk2440make cross_compile=arm-linux- 交叉编译 11.4 u-boot烧录烧录
6、 通过仿真器烧入uboot通过仿真器uboot烧写到flash中就可以从nand flash启动了。通过jtag接口,由工具烧入flash jtag简介简介 jtag(joint test action group)是ieee制定的用于检测pcb和ic的标准。 通过这个标准,可对具有jtag接口芯片的硬件电路进行边界扫描和故障检测。 详细内容可查阅ieee1149.1协议。目前,很多高档微处理器都带有jtag接口,像arm7,arm9,dsp等。11.4 u-boot烧录烧录简易简易jtag介绍介绍 简易jtag是在pc上用软件来模拟jtag时序与包含jtag接口的arm开发板进行通讯的工具。
7、 常用的配合简易jtag的烧写flash的工具软件有flasgpgm,fluted,sjf2410/2440等。 使用s3c2440开发板时可以用配套开发工具sjf2440。11.4 u-boot烧录烧录11.5 u-boot主要目录主要目录目录树|-board|-common|-cpu|-disk|-doc|-drivers|-dtt|-examples|-fs|-include|-lib_arm|-lib_generic|-lib_i386|-lib_m68k|-lib_microblaze|-lib_mips|-lib_nios|-lib_nios2|-lib_ppc|-net|-pos
8、t|-rtc-tools11.6 u-boot主要功能主要功能系统引导支持nfs挂载、ramdisk 系统引导 (压缩或非压缩)形式的根文件系统支持从flash中引导压缩或非压缩系统内核基本辅助 强大的操作系统接口功能,可灵活设置、传递多个关键参数给操作系统, 适合系统在不同开发阶段的调试要求与产品发布,尤其对linux支持最为功能强劲支持目标板环境参数的多种存储方式,如flash、nvram、eepromcrc32校验,可校验flash中内核、ramdisk镜像文件是否完好设备驱动串口、sdram、flash、以太网、lcd、nvram、eeprom、键盘、usb、pcmcia、pci、rt
9、c等驱动支持上电自检功能sdram、flash大小自动检测;sdram 故障检测;cpu型号特殊功能xip内核引导11.7 u-boot主要命令主要命令? - alias for helpautoscr - run script from memorybase - print or set address offsetbdinfo - print board info structureboot - boot default, i.e., run bootcmdbootd - boot default, i.e., run bootcmdbootelf - boot from an elf i
10、mage in memorybootm - boot application image from memorybootp - boot image via network using bootp/tftp protocolbootvx - boot vxworks from an elf imagecmp - memory compareconinfo - print console devices and informationcp - memory copy11.7 u-boot主要命令主要命令crc32 - checksum calculationdate - get/set/rese
11、t date & timedcache - enable or disable data cacheecho - echo args to consoleerase - erase flash memoryflinfo - print flash memory informationgo - start application at address addrhelp - print online helpicache - enable or disable instruction cacheiminfo - print header information for application im
12、ageimls - list all images found in flashitest - return true/false on integer comparemw - memory write (fill)11.7 u-boot主要命令主要命令mw - memory write (fill)nand - nand sub-systemnboot - boot from nand devicenfs - boot image via network using nfs protocolnm - memory modify (constant address)ping - send ic
13、mp echo_request to network hostprintenv- print environment variablesprotect - enable or disable flash write protectionrarpboot- boot image via network using rarp/tftp protocolreset - perform reset of the cpurun - run commands in an environment variablesaveenv - save environment variables to persiste
14、nt storage11.7 u-boot主要命令主要命令setenv - set environment variablessleep - delay execution for some timetftpboot- boot image via network using tftp protocolversion - print monitor version11.8 tftp工具使用工具使用 tftp协议是简单的文件传输协议,适合目标板bootloader的使用。 tftp文件传输基于udp。 我们通过tftp来传输目标板启动需要的内核映象文件zimage和ramdisk。11.8 tf
15、tp工具使用工具使用u-boot tftp 21000000 zimagetftp from server ; our ip address is 00filename zimage.load address: 0 x21000000loading: # # # #donebytes transferred = 1324260 (1434e4 hex)本章本章总结总结嵌入式系统的引导代码嵌入式系统的引导代码u-boot的编译和使用的编译和使用u-boot配置与编译配置与编译u-boot简介简介把把u-boot烧入烧入flashu-boot主要功能主要功能u-boot主要目录结构主要目录结构tftp工具使用工具使用u-boot的命令使用的命令使用初拾初拾boot-loaderboot-loader 启动流程启动流程uboot 命令的介绍命令的介绍常用命令使用说明常用命令使用说明命令简写说明命令简写说明把文件写入把文件写入nandflashboot loaderboot loader不但可以支不但可以支持持linux linux 还支持很多其他还支持很多其他的操作系统的操作系统boot loader boot loader 有系统引有系统引导导, ,设备驱动设备驱动, ,基
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高三试卷:江浙皖高中(县中)发展共同体2024-2025学年高三上学期10月联考数学试题
- 二零二五年度物联网设备购销合同物联网应用
- 二零二五年度房屋买卖垫资借款及贷款利率调整合同
- 二零二五年度工人工资支付与环境保护合同
- 2025版离婚后共同财产分割及债务处理三方协议书
- 二零二五年度电动四轮车总代理服务合同样本
- 二零二五年度稻谷种植保险代理服务合同
- 二零二五年度创新型科技公司股权投资合同范本
- 二零二五年度鲜活海鲜冷链物流运输合同
- 2025版农业产业链无息贷款合作协议范本
- 办公室文秘岗试题带答案
- 2025年河南疾控中心考试题库
- 2025-2026学年人教精通版四年级英语上册(全册)教学设计(附目录)
- 2025年【高压电工】模拟试题及答案
- 养老护理员竞赛理论试卷答案(含答案)
- 2025年四川省能源投资集团有限责任公司人员招聘笔试备考题库及答案详解(新)
- 2025年国家工业信息安全发展研究中心招聘考试笔试试题
- 广东省公路服务区管理系统升级及运维项目
- 2024年泰山文化旅游集团有限公司权属企业招聘真题
- 学术刊物管理办法
- 造林后续管理办法
评论
0/150
提交评论