本发明属于汽车,尤其涉及一种ota升级方法、系统、电子设备及存储介质。
背景技术:
1、autosar(即汽车开放系统架构)中的ucm(update and configurationmanagement)是专门负责ota(over the air)的组件,其分为ucm主节点和ucm从节点,主节点用于编排升级活动,从节点用于执行升级操作。ota客户端调用ucm主节点传输车包,ota客户端经过主节点的转发向从节点传输软件包。尽管autosar规范中允许软件包可以并行传输,但是所有从节点的软件包都要经过主节点的转发,会极大限制软件升级速度,使得车辆ota升级较慢。
技术实现思路
1、有鉴于此,本发明实施例提供了一种ota升级方法、系统、电子设备及存储介质,用于解决现有oat升级速度慢的问题。
2、在本发明实施例的第一方面,提供了一种ota升级方法,包括:
3、ota节点接收云端升级包,并将升级包存储至预定位置,所述升级包包括车辆包和软件包;
4、调用api将车辆包从ota节点发送至ucm主节点,ucm主节点解析所述车辆包,读取软件包名称列表;
5、ota节点调用传输启动函数,将软件包的存储路径作为传输启动函数的入参;
6、ucm主节点根据软件包名称列表和存储路径,在对应存储路径下读取软件包,并设置多线程并行传输,将软件包从ucm主节点传输至ucm从节点。
7、在本发明实施例的第二方面,提供了一种ota升级系统,包括:
8、ota节点处理模块,用于接收云端升级包,并将升级包存储至预定位置,调用api将车辆包从ota节点发送至ucm主节点,以及调用传输启动函数,将软件包的存储路径作为传输启动函数的入参;其中,所述升级包中包括车辆包和软件包;
9、ucm主节点处理模块,用于接收并解析所述车辆包,读取软件包名称列表,根据软件包名称列表和传输启动函数传入的存储路径,在对应存储路径下读取软件包,并设置多线程并行传输软件包;
10、ucm从节点处理模块,用于接收并存储多线程传输的软件包。
11、在本发明实施例的第三方面,提供了一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器运行的计算机程序,所述处理器执行所述计算机程序时实现如本发明实施例第一方面所述方法的步骤。
12、在本发明实施例的第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现本发明实施例第一方面提供的所述方法的步骤。
13、本发明实施例中,基于ucm主节点解析车辆包获取软件包名列表,再通过将软件包的存储路径直接传递给ucm主节点,由ucm主节点发起多线程数据传输,将软件包传输至ucm从节点,从而能够有效提高ucm主节点软件包的传输速度,减少软件包复杂的转发过程,进而可以提高ota升级速度。
1.一种ota升级方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述ota节点接收云端升级包,并将升级包存储至预定位置之前还包括:
3.根据权利要求1所述的方法,其特征在于,所述设置多线程并行传输,将软件包从ucm主节点传输至ucm从节点包括:
4.一种ota升级系统,其特征在于,包括:
5.根据权利要求4所述的系统,其特征在于,所述接收云端升级包,并将升级包存储至预定位置前还包括:
6.根据权利要求4所述的系统,其特征在于,所述设置多线程并行传输软件包包括:
7.一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至3任一项所述的一种ota升级方法的步骤。
8.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被执行时实现如权利要求1至3任一项所述的一种ota升级方法的步骤。