首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
offer啥来
成都理工大学 嵌入式软件开发
发布于四川
关注
已关注
取消关注
bootloader
@HellowordX:
嵌入式基础(四)之BootLoader
专栏地址:嵌入式面经地址 1.什么是BootLoader?⭐⭐⭐ Bootloader(引导加载器)是启动计算机或嵌入式系统时执行的第一个程序,位于固件中。它主要负责初始化系统硬件、加载操作系统,并将控制权转移到操作系统的启动过程。 Bootloader的作用: 初始化硬件:Bootloader检查硬件设备,包括处理器、内存、外设等,并进行必要的初始化操作,以确保系统在启动时处于正常工作状态。 加载操作系统:Bootloader从存储设备(如硬盘、闪存等)中读取操作系统的引导程序,将其加载到内存中。 启动操作系统:一旦操作系统引导程序加载到内存,Bootloader会将控制权转交给引导程序,从而启动操作系统。 提供启动选项:有些Bootloader还提供启动选项,允许用户选择不同的操作系统或操作系统的不同启动模式。这对于多系统或双重启动设置很有用。 提供固件升级机制:Bootloader还提供固件升级功能,允许系统固件的更新和升级,以支持新的功能、修复漏洞或提高系统性能。 bootloader作用 说明 硬件初始化 检测和初始化计算机或嵌入式系统的硬件设备,如处理器、内存、外部设备等。 加载操作系统 从存储设备中读取操作系统的引导程序,并将其加载到内存中。 启动操作系统 将控制权转移到操作系统的引导程序,以启动操作系统的执行。 提供启动选项 提供用户选择不同操作系统或不同启动模式的选项,支持多系统启动等。 提供固件升级 支持固件的更新和升级,以提供新功能、修复漏洞或提高系统性能。 处理错误检测 在启动过程中检测和处理硬件或软件错误,提供错误消息和故障排除功能。 支持设备引导 支持从不同的存储设备(如硬盘、闪存、网络等)引导操作系统。 自定义配置 允许用户自定义启动配置、参数和引导顺序,以满足特定需求。 2.BootLoader的启动的两个阶段?⭐⭐⭐ Stage 1(引导加载器的第一阶段): 硬件设备初始化:BootLoader的第一阶段负责初始化计算机或嵌入式系统的硬件设备,包括处理器、内存控制器、外部设备等。 为加载Stage 2准备RAM空间:在Stage 1中,BootLoader会为加载Stage 2而准备好内存空间(RAM),通常通过栈(stack)的方式进行分配。 加载Stage 2:BootLoader的Stage 1会从预定义的存储设备(例如硬盘、闪存)中读取Stage 2的引导程序,并将其加载到预先分配的内存空间(RAM)中。 设置堆栈:BootLoader在加载Stage 2之前会设置好堆栈指针,以确保在后续的执行过程中能正确地进行函数调用和返回操作。 跳转到Stage 2的C入口点:在加载完Stage 2之后,BootLoader会将控制权转移到Stage 2的C入口点,即Stage 2中的C语言代码执行的起始位置。 Stage 2(引导加载器的第二阶段): 初始化硬件设备:BootLoader的Stage 2进一步初始化硬件设备,例如外部设备(键盘、鼠标、显示器等)和各种总线(如USB、PCI等)。 检测内存映像:Stage 2会对系统的内存进行检测,确定可用的内存容量和位置,并为操作系统的加载做好准备。 从存储设备读取内核映像和根文件系统映像:BootLoader的Stage 2从预定义的存储设备中(通常是硬盘或闪存)读取操作系统内核映像和根文件系统映像到事先准备好的内存区域。 设置启动参数:Stage 2有责任为内核设置启动参数,这些参数包括内核命令行参数、映像加载地址等,以便操作系统能够正确地进行初始化和配置。 调用内核:最后,BootLoader的Stage 2会通过跳转或者函数调用的方式将控制权转交给操作系统内核的入口点,以启动操作系统的执行。 启动流程分析: 上电之后,系统会取执行ROM或者Flash里面的Bootloader启动代码,启动代码用来在初始化电路以及用来为高级语言编写的软件做好运行前准备的一小段汇编语言。商业实时操作系统中,启动代码部分一般叫板级支持包(BSP)。Bootloader启动具体流程如下: 1.第一步设置中断和异常向量 2.完成处理器芯片一些寄存器的系统启动的最初配置 3.设置看门狗 4.配置系统存储器,包括Flash、SRAM、和DRAM等,并为它们分配地址空间 5.为处理器的每个工作模式设置栈指针,ARM处理器有多种工作模式,每种工作模式都需要设置单独的占空间 6.变量初始化,软件中已经赋值的全局变量,启动过程把这部分变量从只读区域复制到读写区域,已经赋值的静态全局变量直接固化在只读Flash或EEPROM中 7.数据区准备,软件所有未赋值的全局变量,启动过程中需要把这部分变量所在区域清零 8.调用高级语言入口,比如main函数 3.在ARM架构中,常用的Bootloader有哪些?请分别介绍它们的特点。⭐⭐ 以下是一个关于常用ARM架构的Bootloader的特点的表格: Bootloader 特点 U-Boot - 开源,通用的Bootloader- 支持多种处理器架构和嵌入式平台- 功能丰富、灵活性高- 用于启动操作系统、加载内核映像和文件系统等 Das U-Boot - 在U-Boot基础上进行定制和改进- 提供更多功能和特定优化- 快速启动、多协议支持和硬件平台兼容性等 barebox - 轻量级、模块化的Bootloader- 小巧、可靠、高度可定制- 适用于资源受限的嵌入式平台 TF-A (Trust
点赞 0
评论 3
全部评论
推荐
最新
楼层
HellowordX
英特尔_Software_engineer
不是哥们,你干啥呢
点赞
回复
分享
发布于 2024-08-01 15:35
北京
暂无评论,快来抢首评~
相关推荐
11-11 19:15
正浩创新EcoFlow_电力电子软件工程师(准入职员工)
正浩创新内推,正浩创新内推码
一整个面试下来,感觉正浩的技术面真的很扎实!趁热乎整理一波面经(纯干货版),希望能帮到准备面试的学弟学妹们~ 【结尾有血泪总结建议!】🔧 【一面 · 硬核技术面】面试官问的非常细致深入🔥,主要围绕电源知识,我总结出的题目供参考:1为什么相同载波频率下,单相全桥用单极性倍频比双极性调制,变压器发热少?2为什么光靠软件死区不够可靠?(死区门道多啊!)3MOSFET vs IGBT,优缺点怎么选?(器件基础)4LCL滤波器咋设计?(公式忘了,幸好说清了关键参数影响😅)5LC vs LCL滤波器区别?6逆变器输出电流THD从3%降到2%以下,你会改啥?7Boost拓扑和输入输出关系?(基础中的基...
点赞
评论
收藏
分享
11-15 14:05
长春理工大学 算法工程师
法罗力壁挂炉推出24小时售后客服受理中心(2026更新上线)
法罗力壁挂炉报修400统一受理中心:400-663-1676;专业维修报告:维修完成后提供详细维修报告,让您了解维修过程和结果。7天24小时全天候客服支持,随时为您解答家电使用中的任何问题。 法罗力壁挂炉水压低怎么看 壁挂炉作为现代家庭供暖和热水供应的重要设备,其正常运行对于家庭舒适度至关重要。法罗力壁挂炉作为市场上知名品牌,其性能稳定,但有时也会出现水压低的问题。那么,当法罗力壁挂炉水压低时,我们应该怎么看待这个问题?下面将围绕这一主题展开讨论。 法罗力壁挂炉水压低怎么看故障 我们需要明确法罗力壁挂炉水压低可能出现的故障原因。水压低可能是由于以下几个原因造成的: 1. 水压表故障:法罗力壁挂...
点赞
评论
收藏
分享
09-26 19:45
门头沟学院 Java
学院本秋招
今日份OC * 10
饿魔:
恭喜恭喜
点赞
评论
收藏
分享
10-09 12:54
沈阳化工大学 Java
双非本 为啥面试这么少呢
8月份投递了好多 有一个中小厂面试 9月份实习太忙 就把大厂都投递了一下 笔试都做了 但是为啥面试几乎没有呢 简历没有那么差把.... 难道是笔试太烂了?
cruelgh:
玫瑰哥不是转正了么
点赞
评论
收藏
分享
11-15 11:31
深信服_技术服务工程师(准入职员工)
深信服内推,深信服内推码
深信服客经一站式面经1⃣️总体感受:一天全部面完,结果通知很快,群面和业务一面感觉很轻松但是业务二面孩子真的被压力坏了😭😭😭😭,汗流浃背了,以为自己凉了,但出来的时候hr跟我说过了。我两场业务面大约都面了四五十分钟,嘴巴都说干了,但是面试现场提供水,饮料,咖啡等本人今天凌晨两点睡的觉,七点起床,上午面一场,下午面三场还要被压力,已经快死了—————————————————————————2⃣️群面1.题目:三个候选人 选择一位当销售经理(题目是随机抽取的)2.流程:①读题3min②讨论30min③汇报2min3.本场bg一半以上都是985硕,我抢到了reporter的位置,讨论过程可能...
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
java零基础斩获4大厂offer
4766
2
...
避雷贝壳找房
3274
3
...
【奖】别再瞎猜!26校招真实薪资大揭秘,帮你快速避坑!
2828
4
...
月薪多少才能过上"体面生活"
2383
5
...
《办公室恋情,被我抓住了》
2336
6
...
我父母让我忍受所有工作上的欺辱
1953
7
...
进大厂是因为老家找不到工作
1891
8
...
在京东实习一周花了0元
1726
9
...
27届学院本两段实习后的职业规划再思考
1721
10
...
奋战两个月,双非仔的校招终于结束了
1410
创作者周榜
更多
正在热议
更多
#
我的职场社死时刻
#
2252次浏览
40人参与
#
你最满意的offer薪资是哪家公司?
#
49908次浏览
248人参与
#
百度秋招
#
40599次浏览
341人参与
#
职场中那些令人叹为观止的八卦
#
2341次浏览
51人参与
#
中科曙光工作体验
#
3504次浏览
19人参与
#
月薪多少能在一线城市生存
#
84090次浏览
565人参与
#
那些年,我收到的‘奇葩’回复
#
1480次浏览
25人参与
#
秋招吐槽大会
#
17903次浏览
190人参与
#
聊聊你的职场新体验
#
292370次浏览
1799人参与
#
秋招你经历过哪些无语的事
#
2125次浏览
37人参与
#
你找工作想离家近 or 离家远?
#
3075次浏览
59人参与
#
秋招遇到的奇葩面试题
#
95523次浏览
397人参与
#
如何拒绝/反向PUA
#
80424次浏览
365人参与
#
京东工作体验
#
20302次浏览
117人参与
#
你秋招最后悔的选择
#
2306次浏览
32人参与
#
交通银行工作体验
#
19642次浏览
68人参与
#
XX请雇我工作
#
2173次浏览
43人参与
#
虾皮开奖
#
47829次浏览
223人参与
#
哪些公司开始补录了
#
2265次浏览
44人参与
#
百度工作体验
#
281384次浏览
2155人参与
#
你父母给过你哪些不靠谱的职场建议?
#
3638次浏览
54人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务