【技术实现步骤摘要】
终端升级方法、终端及系统
[0001]本申请涉及通信
,更具体地,涉及一种终端升级方法、终端及系统。
技术介绍
[0002]OTA(Over
‑
the
‑
Air Technology,空间下载技术)是能够实现对终端及SIM(Subscriber Identity Module,用户身份模块)卡存储的数据进行远程管理的技术。基于OTA的应用,通过移动通信可以提供语音和数据服务以及提供新业务下载等。终端通常具有OTA升级功能,通过此功能下载升级包并且能够在线完成升级,从而能够修复漏洞、更新软件或升级系统。
[0003]例如,OTA服务器将系统升级包发送给智能终端或者将系统升级包进行复制和分割后逐一发送给智能终端;智能终端接收到完整的系统升级包后进行OTA升级(参见专利文件:申请公布号CN111142905A)。又例如,OTA服务器筛选出终端(如智能家电)的休息时间或使用频率最低的时间作为系统升级的执行时间;智能家电从服务器完成软件升级包的下载后,在最近一次的执行时间到达时进行升级,且升级过程在后台自动静默执行(参见专利文件:申请公布号CN114356376A)。
[0004]现有技术中针对OTA服务器端的升级功能做出了改进,而终端下载完升级包后执行升级操作。可见,即使OTA服务器的功能再稳定,也无法解决终端因升级失败而导致终端服务不可用的技术问题。例如,终端接收到一个不匹配甚至错误的升级包,终端升级后就可能变成“砖头”。这样,甚至需要维修人员到现场拆机才能解决,大 ...
【技术保护点】
【技术特征摘要】
1.一种终端升级方法,其特征在于,包括:根据引导程序的启动标识从终端的至少两个存储空间中确定一个存储空间作为待启动存储空间,所述待启动存储空间为所述终端在空间下载技术OTA升级过程中用于固件重启的一个存储分区;和在所述待启动存储空间中启动固件;其中,所述至少两个存储空间分别具有不同的存储地址,所述至少两个存储空间包括第一存储空间和第二存储空间,所述第一存储空间用于存储来自服务器的待升级固件以及所述第二存储空间用于存储第一原固件,所述待升级固件的版本比所述第一原固件的版本更新。2.根据权利要求1所述的方法,其特征在于,在所述根据引导程序的启动标识从至少两个存储空间中确定一个存储空间作为待启动存储空间之前,所述方法还包括:将所述待升级固件存储到所述第一存储空间。3.根据权利要求2所述的方法,其特征在于,在所述将所述待升级固件存储到所述第一存储空间之前,所述方法还包括:接收服务器发送的所述待升级固件;对所述待升级固件的完整性进行校验;以及所述将所述待升级固件存储到所述第一存储空间,包括:根据校验的结果确定是否将所述待升级固件存储到所述第一存储空间。4.根据权利要求3所述的方法,其特征在于,所述根据校验的结果确定是否将所述待升级固件存储到所述第一存储空间,包括:在所述待升级固件的校验为完整的情况下,将所述待升级固件存储到所述第一存储空间;优选地,设置所述引导程序的启动标识为用于指示所述第一存储空间为所述待启动存储空间,根据所述引导程序的启动标识从所述至少两个存储空间中确定所述第一存储空间为所述待启动存储空间,以及在所述第一存储空间中启动所述待升级固件。5.根据权利要求3或4所述的方法,其特征在于,在所述接收所述服务器发送的待升级固件之后,所述方法还包括:将所述待升级固件存储到缓存区;所述根据校验的结果确定是否将所述待升级固件存储到所述第一存储空间,包括:根据所述校验的结果确定是否将所述待升级固件从所述缓存区复制到所述第一存储空间。6.根据权利要求5所述的方法,其特征在于,在所述待升级固件从所述缓存区复制到所述第一存储空间失败的情况下,所述引导程序的启动标识为用于指示所述第二存储空间为所述待启动存储空间,所述根据引导程序的启动标识从至少两个存储空间中确定一个存储空间作为待启动存储空间,包括:根据所述引导程序的启动标识从所述至少两个存储空间中确定所述第二存储空间为所述待启动存储空间;以及
所述在所述待启动存储空间中启动固件,包括:在所述第二存储空间中启动所述第一原固件。7.根据权利要求2所述的方法,其特征在于,在所述将所述待升级固件存储到所述第一存储空间之前,所述方法还包括:接收服务器发送的待升级固件;在所述将所述待升级固件存储到所述第一存储空间之后,所述根据引导程序的启动标识从至少两个存储空间中确定一个存储空间作为待启动存储空间之前,所述方法还包括:在所述第一存储空间中对所述待升级固件的完整性进行校验;根据所述校验的结果确定是否将所述引导程序的启动标识设置为用于指示从所述第一存储空间启动。8.根据权利要求3
‑
7任一项所述的方法,其特征在于,在对所述待升级固件的完整性校验失败的情况下或者在所述终端从所述服务器接收所述待升级固件失败的情况下,所述引导程序的启动标识为用于指示所述第二存储空间为所述待启动存储空间,所述根据引导程序的启动标识从至少两个存储空间中确定一个存储空间作为待启动存储空间,包括:根据所述引导程序的启动标识从所述至少两个存储空间中确定所述第二存储空间为所述待启动存储空间;以及所述在所述待启动存储空间中启动固件,包括:在所述第二存储空间中启动所述第一原固件;优选地,所述终端从所述服务器接收所述待升级固件失败的情况包括:在所述终端从所述服务器接收所述待升级固件的过程中网络中断或掉电的情况下。9.根据权利要求3
‑
8任一项所述的方法,其特征在于,所述接收服务器发送的待升级固件,包括:接收所述服务器发送的所述待升级固件的一个或多个数据包;对所述待升级固件的一个或多个数据包中的每个数据包进行正确性校验;以及在正确性校验不通过的次数超过第一阈值的情况下,停止从所述服务器接收所述待升级固件,其中所述第一阈值为大于或等于1的正整数。10.根据权利要求3
‑
9任一项所述的方法,其特征在于,所述接收服务器发送的待升级固件,包括:接收所述服务器发送的所述待升级固件的头文件信息,所述待升级固件的头文件信息包括所述待升级固件的版本信息
‘
对所述待升级固件的头文件信息的进行解析
‘
在解析所述头文件信息为合法和/或所述头文件信息与所述终端当前的版本信息匹配的情况下,接收所述服务器发送的所述待升级固件的一个或多个数据包。11.根据权利要求3
‑
10任一项所述的方法,其特征在于,所述方法还包括:接收所述服务器发送的第一MD5校验码
‘
所述对所述待升级固件的完整性进行校验,包括:计算所述待升级固件的第二MD5校验码
‘
比较所述第一MD5校验码与所述第二MD5校验码是否一致;以及
若所述第一MD5校验码与所述第二MD5校验码一致,则确定校验成功,若所述第一MD5校验码与所述第二MD5校验码不一致,则确定校验失败。12.根据权利要求1
‑
11任一项所述的方法,其特征在于,所述在所述待启动存储空间中启动固件,包括:在所述第一存储空间中启动所述待升级固件;在启动失败的情况下,所述方法还包括:将所述引导程序的启动标识从用于指示所述第一存储空间作为所述待启动存储空间设置成用于指示所述第二存储空间作为所述待启动存储空间;以及根据所述引导程序的启动标识在所述第二存储空间中重启所述第一原固件。13.根据权利要求12所述的方法,其特征在于,所述方法还包括:若所述第二存储空间中重启所述第一原固件失败的次数超过第二阈值,将所述引导程序的启动标识从用于指示所述第二存储空间作为所述待启动存储空间设置成用于指示所述至少两个存储空间中的第三存储空间作为所述待启动存储空间
‘
以及根据所述引导程序的启动标识在所述第三存储空间重启第二原固件
‘
其中,所述第三存储空间用于存储所述第二原固件,所述待升级固件的版本比所述第二原固件的版本更新,所述第二阈值为大于或等于1的正整数;优选地,所述第三存储空间为所述第一存储空间的备份,所述第二原固件与所述第一原固件的版本相同,或者所述第二原固件与所述第一原固件具有不同的版本。14.根据权利要求12或13所述的方法,所述方法还包括:向所述服务器发送用于指示升级失败的信息,以便所述服务器根据所述用于指示升级失败的信息检测所述待升级固件的有效性;优选地,所述用于指示升级失败的信息包括所述终端启动成功的固件版本信息。15.根据权利要求1
‑
14任一项所述的方法,其特征在于,所述在所述待启动存储空间中启动固件,包括:在所述第一存储空间中启动所述待升级固件
‘
在启动成功的情况下,所述方法还包括:向所述服务器发送用于指示升级成功的信息
‘
优选地,所述用于指示升级成功的信息包括所述终端启动成功的固件版本信息。16.根据权利要求1
‑
15任一项所述的方法,所述根据引导程序的启动标识从至少两个存储空间中确定一个存储空间作为待启动存储空间,包括:在所述引导程序的启动标识用于指示所述...
【专利技术属性】
技术研发人员:李明明,许鹏,覃琴,刘金胜,苑京立,
申请(专利权)人:北京驭光科技发展有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。