嵌入式linux模板,嵌入式Linux作业模板_Bootloader

祁杰0843041404 嵌入式Linux的Bootloader

1. 嵌入式Linux的Bootloader的概述

Bootloader简介

引入:对于计算机系统来说,从开机上电到操作系统启动需要一个引导过程。嵌入式Linux 系统同样离不开引导程序,这个引导程序就叫做BootLoader。

对比:回忆一下PC的体系结构我们可以知道,PC机中的引导加载程序由BIOS(其本质就是一段固件程序)和位于硬盘MBR中的引导程序一起组成。

BIOS在完成硬件检测和资源分配后,将硬盘MBR中的引导程序读到系统的RAM中,然后将控制权交给引导程序。

引导程序的主要运行任务就是将内核映象从硬盘上读到RAM中然后跳转到内核的入点去运行,也即开始启动操作系统。

?而在嵌入式系统中,通常并没有像BIOS那样的固件程序。

?因此整个系统的加载启动任务就完全由BootLoader来完成.

比如在一个基于ARM7TDMI core的嵌入式系统中,系统在上电或复位时都从地址

0x00000000开始执行.而在这个地址处安排的通常就是系统的BootLoader程序。

1.1Bootloader的概念和功能

BootLoader是一段汇编代码,存放在MBR中,它的主要作用就是将操作系统启动代码读入内存。

从功能上看,Bootloader就是在操作系统内核或用户应用程序运行之前运行的一段小程序。通过这段小程序可以初始化硬件设备、建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核或用户应用程序准备好正确的环境。

设置程序入口

建立异常中断向量表

初始化CPU(堆栈、寄存器、模式…)

初始化硬件设备(SDRAM、Flash、串口…)

初始化目标板(数据搬移、Flash擦除和编程…)

引导和加载内核镜像

(升级)支持开发和调试。从这个层面上看,

功能扩展后bootloader可以虚拟地看成是一个微小的系统级的代码包。

1.2Bootloader 的启动

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值