System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及物联网,具体涉及一种嵌入式设备的升级方法、装置、电子设备及存储介质。
技术介绍
1、目前大多数汽车上都安装有远程控制模块等嵌入式设备,通过网络实现远程升级等功能。
2、但是由于使用的mcu(microcontroller unit,微控制单元)需具备较多的业务功能,导致内部芯片存储资源不足,当进行升级时,出现刷写过程掉电或者下载的升级包校验失败等情况,从而出现因为升级而导致设备的应用程序无法启动及业务功能无法使用的情况。
技术实现思路
1、本申请的目的是提供一种嵌入式设备的升级方法、装置、电子设备及存储介质,能够确保嵌入式设备安全升级。
2、第一方面,本申请实施例提供了 一种嵌入式设备的升级方法,嵌入式设备的内部闪存包括引导程序区域和内部程序区域,将嵌入式设备外挂的外部闪存划分为升级包存储区域、程序备份区域和参数存储区域,所述方法包括:
3、将所述内部程序区域中的数据备份到所述程序备份区域中;
4、将程序升级包远程下载到所述升级包存储区域中,在对所述程序升级包进行完整性校验和非对称私钥验签后,修改升级标志位为下载成功;
5、重启嵌入式设备,检查升级标志位,若升级标志位为下载成功,则将所述程序升级包刷写到所述内部程序区域,修改升级标志位为程序运行;
6、再次将所述内部程序区域中的数据备份到所述程序备份区域中;
7、通过bootloader引导程序运行。
8、在本申请的一些实施方式
9、若在升级过程中发生断电重启,确定程序升级包已远程下载到所述升级包存储区域,则重新将程序升级包刷写到所述内部程序区域。
10、在本申请的一些实施方式中,所述方法还包括:
11、若将程序升级包刷写到所述内部程序区域过程中,升级过程被中断,重新开始升级时发现程序升级包校验异常,此时所述内部程序区域已被刷写中断破坏,则将所述程序备份区域中的数据拷贝到所述内部程序区域中,完成备份恢复功能。
12、在本申请的一些实施方式中,所述方法还包括:
13、若通过bootloader引导程序运行时发现所述内部程序区域中的数据被损坏,则将所述程序备份区域中的数据拷贝到所述内部程序区域中,完成备份恢复功能。
14、第二方面,本申请实施例提供了 一种嵌入式设备的升级装置,嵌入式设备的内部闪存包括引导程序区域和内部程序区域,将嵌入式设备外挂的外部闪存划分为升级包存储区域、程序备份区域和参数存储区域,所述装置包括:
15、备份模块,用于将所述内部程序区域中的数据备份到所述程序备份区域中;
16、下载模块,用于将程序升级包远程下载到所述升级包存储区域中,在对所述程序升级包进行完整性校验和非对称私钥验签后,修改升级标志位为下载成功;
17、刷写模块,用于重启嵌入式设备,检查升级标志位,若升级标志位为下载成功,则将所述程序升级包刷写到所述内部程序区域,修改升级标志位为程序运行;
18、所述备份模块,还用于再次将所述内部程序区域中的数据备份到所述程序备份区域中;
19、运行模块,用于通过bootloader引导程序运行。
20、在本申请的一些实施方式中,所述刷写模块,还用于:
21、若在升级过程中发生断电重启,确定程序升级包已远程下载到所述升级包存储区域,则重新将程序升级包刷写到所述内部程序区域。
22、在本申请的一些实施方式中,所述刷写模块,还用于:
23、若将程序升级包刷写到所述内部程序区域过程中,升级过程被中断,重新开始升级时发现程序升级包校验异常,此时所述内部程序区域已被刷写中断破坏,则将所述程序备份区域中的数据拷贝到所述内部程序区域中,完成备份恢复功能。
24、在本申请的一些实施方式中,所述运行模块,还用于:
25、若通过bootloader引导程序运行时发现所述内部程序区域中的数据被损坏,则将所述程序备份区域中的数据拷贝到所述内部程序区域中,完成备份恢复功能。
26、第三方面,本申请提供了一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器运行所述计算机程序时执行以实现如第一方面所述的方法。
27、第四方面,本申请实提供了一种计算机可读存储介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现如第一方面所述的方法。
28、相较于现有技术,本申请提供的嵌入式设备的升级方法,将所述内部程序区域中的数据备份到所述程序备份区域中;将程序升级包远程下载到所述升级包存储区域中,在对所述程序升级包进行完整性校验和非对称私钥验签后,修改升级标志位为下载成功;重启嵌入式设备,检查升级标志位,若升级标志位为下载成功,则将所述程序升级包刷写到所述内部程序区域,修改升级标志位为程序运行;再次将所述内部程序区域中的数据备份到所述程序备份区域中;通过bootloader引导程序运行。可见,本申请通过外挂闪存可以解决由于嵌入式设备内部存储空间不足导致的程序升级异常问题,从而实现嵌入式设备的安全升级。
本文档来自技高网...【技术保护点】
1.一种嵌入式设备的升级方法,其特征在于,嵌入式设备的内部闪存包括引导程序区域和内部程序区域,将嵌入式设备外挂的外部闪存划分为升级包存储区域、程序备份区域和参数存储区域,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
5.一种嵌入式设备的升级装置,其特征在于,嵌入式设备的内部闪存包括引导程序区域和内部程序区域,将嵌入式设备外挂的外部闪存划分为升级包存储区域、程序备份区域和参数存储区域,所述装置包括:
6.根据权利要求5所述的装置,其特征在于,所述刷写模块,还用于:
7.根据权利要求5或6所述的装置,其特征在于,所述刷写模块,还用于:
8.根据权利要求5所述的装置,其特征在于,所述运行模块,还用于:
9.一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器运行所述计算机程序时以实
10.一种计算机可读存储介质,其特征在于,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现如权利要求1至4任一项所述的方法。
...【技术特征摘要】
1.一种嵌入式设备的升级方法,其特征在于,嵌入式设备的内部闪存包括引导程序区域和内部程序区域,将嵌入式设备外挂的外部闪存划分为升级包存储区域、程序备份区域和参数存储区域,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
5.一种嵌入式设备的升级装置,其特征在于,嵌入式设备的内部闪存包括引导程序区域和内部程序区域,将嵌入式设备外挂的外部闪存划分为升级包存储区域、程序备份区域和参数存储区域,所述...
【专利技术属性】
技术研发人员:隋榕华,林伟,兰成荣,陈晓龙,
申请(专利权)人:慧翰微电子股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。