一种关键点控制的嵌入式设备自动在线升级
系统运行过程中检测到有新版本需要升级正常运行系统,则判断基本运行系统的关键点状态,如果为SUV状态,则直接在正常运行系统中升级该升级包,否则需要设置从基本运行系统启动,并重启终端后在基本运行系统中升级该升级包。如果检测到需要升级基本运行系统,则判断正常运行系统关键点状态,如果为SUV状态,则直接在基本运行系统中升级该升级包,升级完成后设置正常运行系统的关键点状态为SSNV状态,否则忽略该升级包(如图4所示)。在基本运行系统启动成功,如果此时基本运行系统的关键点状态为SSNV状态,则设置为SUNV状态(如图5所示)。基本运行系统的主要功能就是完成正常运行系统的升级。启动后如果检测到有新版本需要升级正常运行系统,则下载该升级包进行升级业务,升级完成后设置正常运行系统的关键点状态为SSNV状态,并表示基本运行系统的关键点状态为SUV状态(如图6所示)。
通过上述的关键点控制,该升级方案保证了任何情况下都有一个系统是能够正常运行升级系统,不会出现终端因为升级过程断电等因素造成升级失败后,不能再自动恢复的问题,对终端升级的安全性有较大的提升。例如在正常运行系统中升级正常运行系统时,基本运行系统保证是SUV状态,如果出现断电情况,终端重启后进入基本运行系统中可以把正常运行系统升级;在正常运行系统中升级基本运行系统时,正常运行系统保证是SUV状态,如果出现断电情况,终端重启后进入正常运行系统可以继续升级基本运行系统;在基本运行系统中升级正常运行系统时,基本运行系统保证是SUV状态,如果出现断电情况,终端重启后进入基本运行系统可以继续升级正常运行系统。该升级方案中不允许在基本运行系统中升级自身。
评论