过早客
  • 首页
  • 节点
  • 成员
  • 广告投放
  • 登录
  • 注册

bootloader的工作流程是怎么样的呢?

IT技术 • da007 • 发表于 3 年前 • 最后回复来自 flyingpig4945 • 3 年前

如题

加入收藏 新浪微博 分享到微信 ❤赞 1383 次点击 0 人赞 0 人收藏

打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

共收到2条回复
woyouzui 3 年前 #1 赞 0

以uboot为例,开头部分裸机程序日常,根据soc的要求设置复位向量,然后做些基本的初始化设置,设置堆栈地址,开始执行c程序,做些串口,设备驱动管理,环境变量初始化之后,把自己搬运到内存高地址空间,然后再执行些具体功能化的驱动。最后就开始找操作系统镜像和相关的信息,找到后就跳转到操作系统的entry addr执行。大概这样吧

flyingpig4945 3 年前 #2 赞 0

补充一下楼上的朋友,如果是MCU程序中和App对应的Bootloader(执行程序升级),可能在初始化必要的通信接口(向量表是否处理看需不需要支持中断,业务少的时候查询效率和中断差不了多少)之后,通过通信接口(CAN/UART/I2C等)与外部升级主机(可能是设备或PC端GUI)通信,接收升级包并写入存储器指定地址。处理完成后跳转到升级包的入口处执行App。当然根据具体的设计和协议实现过程或有不同。

请绑定手机号后,再发言,点击此处
Guozaoke.com—源自武汉的高端交流分享社区
相关主题
iOS 过早客没有数据,大佬们求教!
GPT-5
寻有K12教育行业软件开发经验的同学合作
你们都用哪些AI工具,求分享下~
过早客flutter版来了
亲测,鸿蒙开发奖励到手了
感觉gemini已经是一骑绝尘
分享一个拥有很多好看壁纸的插件
作为后端开发工程师,你们有中途转向机器学习/深度学习的吗?
写了个过早客的暗色插件,个人感觉很好用嘿嘿

过早客微信公众号:guozaoke • 过早客新浪微博:@过早客 • 广告投放合作微信:fullygroup50 鄂ICP备2021016276号-2 • 鄂公网安备42018502001446号