Bootloader程序

Bootloader是在操作系统运行前的初始化程序,负责硬件设备初始化、内存映射,并为加载系统内核做好准备。它依赖于CPU体系结构和开发板,通常分为单阶段和多阶段,有启动加载和下载两种模式。启动流程包括stage1和stage2,前者负责基本硬件初始化和拷贝stage2到RAM,后者执行复杂功能并加载内核。
摘要由CSDN通过智能技术生成

1.概念

简单的说,Bootloader就是在操作系统运行之前运行的一程序,它类似于PC中的BIOS程序。通过这段程序,可以完成硬件设备的初始化,并建立内存空间的映射图功能,从而将系统的软硬件环境带到一个合适的状态,为最终调用系统内核做好准备。

通常,Bootloader是严重依赖硬件的,特别是在嵌入式当中。因此,在嵌入式中建立一个通用的Bootloader是几乎不可能的事情。但是还是可以对Bootloader归纳出一些通用的概念来进行学习。

  (1).Bootloader所支持的CPU和嵌入式开发板

每种不同的CPU体系结构都有不同的Bootloader。有些Bootloader也支持多种体系结构的CPU,比如U-Boot就同时支持ARM和MIPS结构体系。除了依赖于CPU的体系结构外,Bootloader实际上也依赖于实际的嵌入式开发板设备的配置。

  (2).Bootloader的安装媒介

系统加电或复位后,所有的CPU都会从某个由CPU制造厂商预先安排的地址上取指令。而基于CPU构建的嵌入式系统都有某种类型的固态存储设备(如ROM,EEPROM,或FLASH等)被映射到这个预先安排的地址上,因此在系统加电后,CPU将首先执行Bootloader程序。

  (3).Bootloader的启动过程分为单阶段和多阶段,通常多阶段的Bootloader能提供更为复杂的功能,以及更好的可移植性。

  (4).Bootloader的操作模式。大多数的Bootloader都有两种不同的操作模式,分别是“启动加载”模式和“下载”模式,这种区别仅对于开发人员才有意义。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值