1 / 15
文档名称:

嵌入式系统实验报告.doc

格式:doc   大小:408KB   页数:15页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

嵌入式系统实验报告.doc

上传人:mh900965 2017/11/16 文件大小:408 KB

下载得到文件列表

嵌入式系统实验报告.doc

相关文档

文档介绍

文档介绍:嵌入式系统实验报告

Linux之BootLoader实验

学院测量与通信工程学院
专业信号与信息处理
学生姓名姜元
学号 1320600050
指导教师董静薇
实验目的
了解BootLoader的基本概念和框架结构
了解BootLoader引导操作系统的过程
掌握bootloader程序的编译方法
掌握BootLoader程序的使用方法
实验内容
熟悉嵌入式linux环境下的开发工具,包括make、gcc、超级终端等
bootLoader程序的编译和下载
内核和文件系统的编译和下载
实验分析bootLoader程序的实现原理和结构
观察程序运行情况
完成实验手册题2和题5
实验原理
BootLoader的功能与结构
嵌入式Linux系统软件结构如图1所示:
图1 嵌入式Linux系统软件结构
什么是BootLoader?
简单地说,BootLoader 就是在操作系统内核运行之前运行的一段小程序。通过这段小程序,我们可以初始化硬件设备、建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核准备好正确的环境。
由于硬件结构差别较大,不同的目标板需要不同的BootLoader。
BootLoader 的主要功能
初始化系统在启动阶段必需的硬件设备;
准备后续软件系统(如操作系统)运行所需的软件环境,如复制操作系统内核代码到RAM中等;
向内核传递启动参数;
[可选] 配置系统各种参数;
[可选] 支持各种协议来下载BootLoader、内核、文件系统等;
[可选] 在线烧写系统firmware(固件),如启动参数、BootLoader、内核、文件系统等;
[可选] 支持在线调试;
引导内核启动。
固态存储设备的空间分配
在固态存储设备中的典型空间分配情况如图2所示:
图2 固态存储设备中的典型空间分配情况
典型BootLoader的启动流程
典型的BootLoader启动流程如图3所示
图3 典型的BootLoader启动流程
BootLoader的工作模式
功能完善的BootLoader一般包含2种工作模式:
启动加载模式(loading)
从最终用户的角度看,BootLoader的功能就是加载操作系统。
下载更新模式(downloading)
主要用于嵌入式系统开发人员。
启动加载模式(loading)
这种模式也称为“自主”(Autonomous)模式;
BootLoader从目标机上的某个固态存储设备上将操作系统加载到RAM中运行,整个过程并没有用户的介入;
BootLoader的正常工作模式,在嵌入式产品发布的时侯,BootLoader 必须工作在该模式下。
下载更新(Downloading)模式
该模式下,目标机上的 BootLoader将通过串口或USB、网络连接等从主机(Host)下载文件,比如:下载内核映像和根文件系统映像等。
下载的文件通常被BootLoader保存到目标机的 RAM 中,然后再被写到目标机上的FLASH 类固态存储设备中。
该模式在第一次安装内核与根文件系统时会被使用;系统更新也会用到。
该模式下的 BootLoader通常都会为用户提供一个简单的命令行接口。
此次实验过程中即使用下载模式。
BootLoader的典型结构框架
大多数Bootloader的执行分为两个阶段:
第一阶段/也称FlashLoader
--运行于Flash的一段BootLoader代码
特点:
代码量小,往往不会超过256B;
汇编写成;
运行于Flash;
由于加载BootLoader后,需要运行BootLoader,因此最后往往是一条跳转语句。
主要操作步骤:
硬件设备初始化。
为加载BootLoader准备RAM空间。
拷贝BootLoader到RAM空间中。
设置好堆栈。
跳转到BootLoader的C语言入口点。
第二阶段/也称BootLoader
--运行于RAM中的BootLoader主要代码
特点:
BootLoader是操作系统内核运行前的核心程序,它具有如下特点:
代码量大;
由C语言写成,大多数时候需要嵌入式汇编语言;
运行于SDRAM等随机存储器
由于它是启动内核前运行的最后一个程序,它必须把控制权交给内核,因此它最后是一条跳转到系统内核的语句。
主要操作步骤:
初始化本阶段要使用到的硬件设备。
检测系统内存映射(memory map)。
将kernel映像和根文件系统映像从flash上读到RAM空间中。
为内核设置启动参数。
启动内核。
PXA270开发板Flash和

最近更新

旅游度假区场地购置合同范例 3页

旅游景区场地租赁合同协议书 3页

旅游景区车位租赁与收益分配合同协议书 3页

旅游消费贷款保证担保合同 2页

2025年新生军训闭幕式演讲稿 9页

2021年中国移动浙江公司宽带装维人员应知考试.. 44页

旅游风景区保安服务与管理合同范本 3页

无人驾驶技术研发与应用合作协议 3页

2025年新生儿为什么总是打嗝 3页

星级酒店客房保洁承包协议 3页

智慧办公家具供应商采购合同 3页

智慧城市交通工程——城区隔离护栏采购合同 3页

智慧城市建设人民币担保合同 3页

智慧城市建设安防系统运维合同 3页

扬尘治理专项施工方案样本 40页

幸福人生讲堂:心灵与情感管理系列计划书 30页

行业交流会的组织与实施策略 47页

智慧物流中心场与客户双重认可服务合同 3页

模拟卷化学化工基础实验中心管理规章制度汇编.. 30页

智能交通流量监控系统施工合同 3页

智能仓储备货合作协议范本 3页

新能源汽车充电设备使用手册 37页

智能低压配电箱采购与安装一体化服务合同 3页

蒸汽管道综合项目施工组织设计 22页

项目部安全事故应急救援预案样本样本 34页

2025年法律法规题库带答案(新) 41页

国家电网公司企业文化手册 18页

单孔腹腔镜右半结肠切除术6例 2页

钢铁工业废水处理 130页

人教版三年级数学下册第七单元小数的初步认识.. 17页