论文摘要
本课题源自于电子科技大学国家精品课程“嵌入式系统及应用”的建设,旨在进一步完善该精品课程实验系统。嵌入式Boot Loader是嵌入式系统中一个很重要的组成部分。市面上的书籍和教材中涉及到嵌入式BootLoader相关内容较少,同时该部分内容也比较抽象。对于大部分学生来说,在理解和掌握上存在一定的难度。因此,本人经过“嵌入式实时内核移植及应用开发”该项目中所积累的知识,并通过对当前流行的几种嵌入式Boot Loader进行了相关的探索和分析,设计了一个简单的易用理解和掌握的嵌入式Boot Loader——Core-Boot。基于Core-Boot设计了相关的实验内容,期望通过该内容能够使Boot Loader在嵌入式学习变得易于理解和掌握。在Core-Boot设计中,借鉴了当前流行的一些Boot Loader的最基本的内容,摒弃了它们的大量复杂的、难以理解的、或与特定应用相关的内容,同时也考虑了功能上的可扩充性。这使Core-Boot成为一个精简的、易于理解的、易于功能扩充Boot Loader,配合于LambdaEDU3的高可配置性,使其可以满足于教学实验的要求。并作为电子科技大学国家精品课程“嵌入式系统及应用”的建设中嵌入式BootLoader相关内容的一个重要的补充。
论文目录
摘要ABSTRACT第1章 引言1.1 嵌入式系统概念1.2 嵌入式系统的发展的情况1.3 嵌入式BOOT LOADER 简介1.4 本文背景1.5 本论文结构第2章 实验系统介绍2.1 硬件环境2.1.1 W90P710 学习板2.1.2 LambdaICE JTAG2.2 软件环境2.2.1 LambdaEDU32.2.2 GCC 工具链2.2.2.1 程序的编译和链接2.2.2.2 GCC 常用模式2.2.2.3 常用选项2.2.2.4 警告功能2.2.3 连接脚本2.2.3.1 基本概念2.2.3.2 链接脚本2.2.3.3 简单例子2.2.3.4 暗含的连接脚本2.2.4 Makefile2.2.4.1 Makefile 结构2.2.4.2 一个简单的Makefile 示例2.2.4.3 Makefile 的一个改进版本:使用变量2.2.4.4 Makefile 的一个改进版本:使用自动推导2.2.4.5 Makefile 的一个改进版本:自动变量($$< $@)的应用2.3 总结第3章 嵌入式应用程序映像3.1 ELF 文件3.1.1 elf 文件简介3.1.2 elf 目标文件格式3.1.3 elf Header 部分3.1.4 elf 节区(Sections)3.1.5 字符串表(String Table)3.1.6 符号表(Symbol Table)3.1.7 重定位信息3.1.7.1 重定位表项3.1.7.2 重定位类型3.1.8 程序加载和动态链接3.2 其他文件格式3.2.1 S-Record 文件3.2.2 HEX 文件格式3.2.3 BIN 文件格式3.3 部分可执行文件格式的区别3.4 总结第4章 主流嵌入式BOOTLOADER 分析4.1 主流嵌入式BOOTLOADER 比较4.1.1 Blob(Boot Loader Object)4.1.2 ARMBoot4.1.3 U-Boot4.1.4 Redboot4.1.5 vivi4.1.6 Bios-lt4.2 U-BOOT 源代码分析4.2.1 第一阶段(Stage 1)4.2.2 第二阶段(Stage 2)4.2.3 U-boot 的初始化data'>4.2.3.1 私有数据globaldatasequence'>4.2.3.2 初始化序列initsequence4.2.3.3 环境变量重定位4.2.3.4 初始化设备4.2.3.5 控制台初始化4.2.4 命令处理4.2.4.1 命令数据结构4.2.4.2 命令查找4.2.4.3 主循环4.3 总结第5章 CORE-BOOT 设计与实现5.1 ARM 处理器启动原理5.2 CORE-BOOT 组织结构设计5.2.1 LambdaEDU3 目录结构5.2.2 Core-Boot 目录结构5.2.2.1 /target/tool/bsps/boards 目录5.2.2.2 /target/tool/bsps/drivers 文件夹5.2.2.3 /target/tool/bsps/include 文件夹5.2.2.4 /target/tool/bsps/shared 文件夹5.3 CORE-BOOT 代码设计5.3.1 Boot Loader 与应用的关系5.3.1.1 RAM Boot Loader5.3.1.2 Boot Loader 和应用一体化结构5.3.1.3 Boot Loader 与应用分离的结构5.3.2 地址规划设计(ROM 与RAM 的内存关系)5.3.2.1 内存不重新映射5.3.2.2 内存进行一次映射5.3.2.3 内存进行两次映射5.3.2.4 系统初始化5.3.3 Core-Boot 源代码设计5.3.3.1 Core-Boot 第一阶段(Stage 1)5.3.3.2 Core-Boot 第二阶段(Stage 2)5.3.4 Core-boot 的初始化sequence'>5.3.4.1 Core-Boot 初始化序列initsequencesequence 中的函数'>5.3.4.2 initsequence 中的函数5.3.4.3 NOR Flash 初始化5.3.4.4 NAND FLASH 初始化5.3.4.5 控制台初始化5.4 小结第6章 CORE-BOOT 测试以及实验设计6.1 基于RAM 的BOOT LOADER 实验RAM”'>6.1.1 创建项目“BootRAM”6.1.2 项目设置6.1.3 项目编译6.1.4 下载运行6.1.5 验证结果6.2 基于ROM 的BOOT LOADER 实验App”'>6.2.1 创建项目“BootApp”6.2.2 项目设置6.2.3 项目编译6.2.4 烧写6.2.5 验证结果6.3 基于ROMRAM 的BOOT LOADER 的实验6.3.1 创建项目“Core-Boot”6.3.2 项目配置6.3.3 项目编译6.3.4 烧写6.3.5 验证结果6.4 总结第7章 结论7.1 本课题研究的主要内容7.2 CORE-BOOT 的移植简述7.3 CORE-BOOT 的优缺点7.4 课题中的学习和工作情况致谢参考文献附录在学期间的研究成果
相关论文文献
- [1].World Book Day 2017:Teachers Dress Up——In Pictures[J]. 英语文摘 2017(04)
- [2].基于S3C2410的Windows CE 5.0 Boot Loader的设计[J]. 电脑知识与技术 2008(S2)
- [3].Porting U-Boot to the Control Computer Based on MPC8349[J]. 微计算机信息 2009(26)
- [4].一种小型嵌入式Linux Boot Loader的设计与实现[J]. 计算机应用与软件 2008(01)
- [5].浅谈Spring Boot框架下如何快速进行后台开发[J]. 海峡科技与产业 2019(02)
- [6].基于U-Boot的嵌入式系统双启动设计与实现[J]. 物联网技术 2018(11)
- [7].Spring Boot研究和应用[J]. 信息通信 2016(10)
- [8].基于三星S3C2440 Boot Loader的研究[J]. 兵工自动化 2008(06)
- [9].Clarks:奇遇点亮生活——Trace Boot全新上市[J]. 中外鞋业 2017(10)
- [10].构建基于Dubbo框架的Spring Boot微服务[J]. 计算机与数字工程 2018(12)
- [11].U-Boot原理分析与TX2440A开发板上的移植[J]. 广播电视信息 2017(S1)
- [12].基于Spring Boot的web设计与实现[J]. 轻工科技 2016(07)
- [13].一种U-Boot压缩和自解压实现方法[J]. 计算机光盘软件与应用 2014(05)
- [14].基于S3C2410的U-Boot移植[J]. 电子技术 2012(01)
- [15].基于Spring Boot与Vue的系统管理模块开发探究[J]. 电声技术 2019(02)
- [16].U-Boot在S5PV210上的启动及编译过程分析[J]. 电脑知识与技术 2018(05)
- [17].基于ARM嵌入式系统的Boot Loader启动分析与移植[J]. 信息通信 2018(07)
- [18].虚拟化环境下应用SAN Boot的研究[J]. 信息技术 2014(11)
- [19].U-Boot在Embest ATEB9200开发板上的移植与分析[J]. 计算机与现代化 2009(09)
- [20].U-Boot在Mini6410上的移植[J]. 工业控制计算机 2013(09)
- [21].基于U-Boot构建的嵌入式系统程序烧录方法的研究[J]. 河南机电高等专科学校学报 2010(06)
- [22].ARM平台下U-Boot的移植[J]. 电脑知识与技术 2009(04)
- [23].U-Boot在嵌入式系统上的移植分析与实现[J]. 机械工程与自动化 2009(04)
- [24].U-Boot的启动及移植分析[J]. 微计算机信息 2008(11)
- [25].嵌入式平台S3C6410的U-Boot分析与移植[J]. 单片机与嵌入式系统应用 2017(11)
- [26].支持多种闪存启动的U-Boot实现方法的改进[J]. 微计算机信息 2012(02)
- [27].基于S3C44B0X的U-Boot分析与移植[J]. 微计算机信息 2008(14)
- [28].U-Boot在S3C44B0上的移植[J]. 科技情报开发与经济 2010(04)
- [29].U-Boot的启动分析及基于S3C44B0的移植[J]. 机械工程与自动化 2010(01)
- [30].基于Linux嵌入式系统的Boot Loader研究与实现[J]. 自动化应用 2010(07)
标签:嵌入式论文;