IAP,APP1和APP2两个应用程序交替更新的问题

2019-12-10 18:13发布

本帖最后由 vjcmain 于 2018-5-3 17:26 编辑

如题,想实现交替升级的方式来解决变砖的问题,booloader 主要做app 完整性诊断以及app 切换的功能,不知道原理上是否可行。
因为这个MCU比较特殊,控制着整个板卡的电源,板卡上跑X86PC host(COME)  想通过host给BMC 升级,因此升级的过程中不能断电。
IP.PNG (40.71 KB, 下载次数: 0) 下载附件 2018-5-3 16:50 上传



退而求其次的方案是 Application B 规划为固件暂存区,app 收到升级指令时往固件暂存区 写入新固件,然后下次重启的时候bootloader 把暂存区的固件搬运到 Application A 区。

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
29条回答
skype
1楼-- · 2019-12-12 16:36
只要保证IAP正常,其他参考操作系统装应用软件!
skype
2楼-- · 2019-12-12 19:46
 精彩回答 2  元偷偷看……
gonboy
3楼-- · 2019-12-13 00:53
boot不坏,怎么就变砖了。
自己升级自己才容易变砖。
一心2013
4楼-- · 2019-12-13 03:26
感觉大家都没理解楼主的想法,我也遇到这个问题,就是两个APP交替升级,BOOTLOADER判断哪个APP为新的,跳转过去运行,

但这样会有一个问题,两个APP的初始地址都不一样, 那是否在编译HEX的时候 ,需要知道APP的初始地址来设置HEX的基地址,

早上主管说可能 会有这样问题,我想了半天,也没解决,最后主管说貌似他跳转都是PC+偏移量,应该可以直接交替升级。
KongQuan
5楼-- · 2019-12-13 08:13
一个引导区,一个应用区,一个下载区方便,这样,应用区只用一个配置编译就可以了。
重启时检查应用区是否完整正确就可以了。即使升级过程断电,再启动也能从下载区得到程序重新写入。
vjcmain
6楼-- · 2019-12-13 11:42
KongQuan 发表于 2018-5-5 10:49
一个引导区,一个应用区,一个下载区方便,这样,应用区只用一个配置编译就可以了。
重启时检查应用区是否 ...

谢谢,综合评估下下来还是这种方式比较好。

一周热门 更多>