加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Bootloader初识

发布时间:2020-12-15 06:30:19 所属栏目:百科 来源:网络整理
导读:??????????计算机系统从开机上电到操作系统启动需要一个引导过程,由BIOS来完成。同样,linux系统启动也离不开引导程序,负责引导的程序叫做Bootloader。Bootloader是小段程序,但是通过这段小程序,我们可以初始化硬件设备、建立内存空间的映射表,从而建立

??????????计算机系统从开机上电到操作系统启动需要一个引导过程,由BIOS来完成。同样,linux系统启动也离不开引导程序,负责引导的程序叫做Bootloader。Bootloader是小段程序,但是通过这段小程序,我们可以初始化硬件设备、建立内存空间的映射表,从而建立适当的系统软硬件环境,为最终调用操作系统内核做好准备。

????????? 根据体系结构,Bootloader分很多种类,比如,X86平台的LILO和GRUB;ARM处理器的armboot,vivi,常用的标准的是U-Boot;M68K平台的Redboot。由于ARM处理器应用广,所以谈到Bootloader,一般会提及U-Boot,用得比较多。

??????? Bootloader的启动方式:网络,flash,sd卡等。重点谈论下flash,分为nand flash,nor flash。nand flash可读可写,一般容量较大,有点像硬盘,价格贵。nor flash不可写,是rom,比如常用的spi rom,容量可以较小,价格便宜。

??????? nor flash可以支持随机访问,所以代码是可以直接在Flash上执行的。nand flash以I/O 方式来访问(有专制的控制器),不能随机访问,因此引导方式跟NOR Flash也不同。通常,这种引导程序起始的一段代码就把整个引导程序复制到RAM 中运行。

?????? U-Boot是开源的,可以从网站上下载源代码。

?

????? 源码的目录结构:????

board??? 平台依赖??存放电路板相关的目录文件,每一套板子对应一个目录

cpu???????? 平台依赖??? 放CPU相关的目录文件,每一款CPU对应一个目录,例如:arm920t、 xscale、i386等目录CPU相关文件,其中的子目录都是以u-boot所支持的CPU为名,比如有子目录arm926ejs、mips、mpc8260和nios等,每个特定的子目录中都包括cpu.c和interrupt.c和start.S。其中cpu.c初始化cpu、设置指令cache和数据cache等;interrupt.c设置系统的各种终端和异常,比如快速中断,开关中断、时钟中断、软件中断、预取中止和未定义指令等;start.S是u-boot启动时执行的第一个文件,它主要是设置系统堆栈和工作方式,为进入C程序奠定基础

common???? 通用??????????通用的多功能函数实现,如环境,命令,控制台相关的函数实现。

include??????? 通用?????????头文件和开发板配置文件,所有开发板的配置文件都在configs目录下??

lib_generic????通用?????????通用库函数的实现

net?????????????????通用?????????存放网络协议的程序

Drivers???? 通用 ????通用设备驱动程序,比如各种网卡、支持CFI的flash、串口和USB总线等

Dtt??????? ?通用 ???数字温度测量器或者传感器的驱动

Examples?? ?通用 ???一些独立运行的应用程序的例子

Fs?? ???????通用? ??支持文件系统的文件,u-boot现在支持cramfs、fat、fdos、jffs2、yaffs和registerfs

lib_arm???? 平台依赖????存放对ARM体系结构通用的文件,主要用于实现ARM平台通用的函数,如软件浮点

Lib_ppc?? 平台依赖 ?存放对PowerPC体系结构通用的文件,主要用于实现PowerPC平台通用的函数,与PowerPC体系结构相关的代码。?
Lib_i386 ?平台依赖 ?存放对X86体系结构通用的文件,主要用于实现X86平台通用的函数,与X86体系结构相关的代码

Post ?????通用 ?上电自检。

Rtc? ?????通用 ?实时时钟驱动。

Tools ?????通用 ?创建S-Record格式文件和U-BOOT images的工具

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读