博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
BootLoader
阅读量:4081 次
发布时间:2019-05-25

本文共 775 字,大约阅读时间需要 2 分钟。

烧写飞控固件时接触到了这个词

 

在嵌入式操作系统中,BootLoader是在内核运行之前运行。可以初始化硬件设备、建立内存空间映射图,从而将系统的软硬件环境带到一个合适状态,以便为最终调用准备好正确的环境。在中,通常并没有像BIOS那样的程序(注,有的嵌入式CPU也会内嵌一段短小的启动程序),因此整个系统的加载启动任务就完全由BootLoader来完成。在一个基于ARM7TDMI core的中,系统在上电或复位时通常都从地址0x00000000处开始执行,而在这个地址处安排的通常就是系统的BootLoader程序 [1] 。

 

Bootloader是嵌入式系统在加电后执行的第一段代码,在它完成CPU和相关硬件的初始化之后,再将操作系统映像或固化的嵌入式应用程序装在到内存中然后跳转到操作系统所在的空间,启动操作系统运行 [2] 。

对于嵌入式系统,Bootloader是基于特定硬件平台来实现的。因此,几乎不可能为所有的嵌入式系统建立一个通用的Bootloader,不同的处理器架构都有不同的Bootloader。Bootloader不但依赖于CPU的体系结构,而且依赖于嵌入式系统板级设备的配置。对于2块不同的嵌入式板而言,即使它们使用同一种处理器,要想让运行在一块板子上的Bootloader程序也能运行在另一块板子上,一般也都需要修改Bootloader的源程序 [2]  。

反过来,大部分Bootloader仍然具有很多共性,某些Bootloader也能够支持多种体系结构的嵌入式系统。例如,U-Boot就同时支持PowerPC、ARM、MIPS和X86等体系结构,支持的板子有上百种。通常,它们都能够自动从存储介质上启动,都能够引导操作系统启动,并且大部分都可以支持串口和以太网接口 。

 

 

 

华清在系统移植那里也有讲Bootloader

 

 

 

转载地址:http://ytoni.baihongyu.com/

你可能感兴趣的文章
react-native 实现条码扫描(ios&android)
查看>>
react + redux 完整的项目
查看>>
React Native使用fetch实现图片上传
查看>>
React Native 网络请求封装:使用Promise封装fetch请求
查看>>
React Native BLE蓝牙通信
查看>>
React-Native高校图书馆APP
查看>>
react-navigation使用技巧
查看>>
使用React模仿大众点评
查看>>
营养品类商城
查看>>
微信小程序ofo-applet
查看>>
React Native未来导航者:react-navigation 使用详解
查看>>
ReactNative仿《ONE》APP
查看>>
iOS开发UI篇
查看>>
iOS开发UI篇
查看>>
iOS开发网络篇
查看>>
React Native实战系列第十四篇——购物车
查看>>
React Native FlatList的使用
查看>>
react-native-image-crop-picker学习
查看>>
React Native进行签名打包成Apk
查看>>
React Native相机 相册 定位 设备信息
查看>>