本技术涉及通信,尤其涉及自动驾驶嵌入式应用软件开发,具体涉及一种软件部署方法、装置、设备及存储介质。
背景技术:
1、随着自动行车驾驶技术的发展,系统级芯片(system on chip,soc)对软件部署、开发难度和精细度等方面的要求越来越高。通常软件系统是由底层硬件启动后由固定逻辑自动加载,更改升级不灵活、代价大。
2、在实际应用中,自动行车驾驶技术中的多个软件系统的功能不同,对应的需求不同,例如控制模块要求实时性较高,数据分析模块需要大量算力资源等。因此如何在soc中灵活部署多个软件系统,以实现各个系统在场景中的应用,是发展过程中需要解决的问题。
技术实现思路
1、本技术提供一种软件部署方法、装置、设备及存储介质,以至少解决相关技术中软件系统的部署与需求不匹配的技术问题。本技术的技术方案如下:
2、根据本技术涉及的第一方面,提供一种软件部署方法,应用于多核处理器,其中,多核处理器包括多个核类型的系统核。上述方法包括:获取目标软件系统的功能类型;根据功能类型,确定与目标软件系统对应的目标核类型;目标核类型为多个核类型中的任意一个;在目标核类型的系统核上,部署目标软件系统。
3、根据上述技术手段,本技术可以基于目标软件系统的功能类型,确定多核处理器中部署目标软件系统的系统核,从而使得每个系统核可以适应对应的功能需求,实现在多核处理器上灵活部署多个软件系统。
4、在一种可能的实施方式中,多个核类型包括大核和小核;上述根据功能类型,确定与目标软件系统对应的目标核类型的方法包括:当功能类型表示目标软件系统对应的资源消耗量大于预设值时,确定目标核类型为大核;当功能类型表示目标软件系统对应的响应时长小于预设时长时,确定目标核类型为小核。
5、根据上述技术手段,由于大核的处理量较大,对应消耗的算力和内存资源较多,相应的,小核的处理量较小,但是处理速度快。因此,本技术可以分别针对资源消耗量和响应时长为目标软件系统匹配对应的核类型,以实现系统核可以适应对应的功能需求。
6、在一种可能的实施方式中,上述方法,还包括:获取目标软件系统的应用进程的目标配置信息;根据目标配置信息,调度多核处理器的共享资源,并运行应用进程。
7、根据上述技术手段,本技术可以调度多核处理器的共享资源,在运行应用进程时,可以避免资源复制的过程,从而可以减少拷贝时间,提高资源调度的效率。
8、在一种可能的实施方式中,上述获取目标软件系统的应用进程的目标配置信息的方法,具体包括:根据应用进程预设的初始配置信息,运行应用进程,获取应用进程的运行信息;当运行信息表示应用进程运行异常时,根据运行信息,确定应用进程的目标异常类型;向调试终端发送异常告知消息;异常告知消息包括:运行信息和目标异常类型;接收调试终端响应于异常告知消息,发送的配置更新消息;配置更新消息用于指示更新初始配置信息。
9、根据上述技术手段,本技术可以在应用进程运行异常时,运行信息和目标异常类型的告知,以使得调试终端可以指示更新初始配置信息,以实现配置信息的调试,使得应用进程可以在多核处理器中正常运行。
10、在一种可能的实施方式中,上述方法,还包括:当运行信息表示应用进程在运行时刻运行异常时,获取预设时间段内,应用进程的运行信息集合;预设时间段包括运行时刻;在非易失性存储器中存储运行信息集合。
11、根据上述技术手段,本技术可以将包括异常时刻的运行信息集合存储在非易失性存储器中,便于后续进行数据查看和故障分析。
12、在一种可能的实施方式中,上述方法,还包括:当共享资源的已占用资源超过预设的正常范围时,将共享资源的初始资源数量更新为目标资源数量;当已占用资源恢复至正常范围时,将目标资源数量更新为初始资源数量。
13、根据上述技术手段,本技术可以根据已占用资源是否超过预设的正常范围,确定共享资源的资源数量的调节策略,以便根据该调节策略对共享资源的资源数量进行调节处理,能够自动地、快速地实现对共享资源的动态调整。
14、在一种可能的实施方式中,多核处理器的通信信道包括主用信道和备用信道;上述方法,还包括:通过主用信道传输数据,并获取传输状态信息;当传输状态信息表示主用信道传输异常时,切换至备用信道传输数据。
15、根据上述技术手段,本技术可以通过当主用信道异常时,切换至备用信道进行传输,不会影响数据传输的连续性,进而提高了用户使用体验。
16、根据本技术提供的第二方面,提供一种软件部署装置,应用于多核处理器;多核处理器包括多个核类型的系统核;上述装置,包括:获取单元以及处理单元;获取单元,用于获取目标软件系统的功能类型;处理单元,用于根据功能类型,确定与目标软件系统对应的目标核类型;目标核类型为多个核类型中的任意一个;处理单元,还用于在目标核类型的系统核上,部署目标软件系统。
17、在一种可能的实施方式中,多个核类型包括大核和小核;上述处理单元,具体用于当功能类型表示目标软件系统对应的资源消耗量大于预设值时,确定目标核类型为大核;当功能类型表示目标软件系统对应的响应时长小于预设时长时,确定目标核类型为小核。
18、在一种可能的实施方式中,上述装置还包括调度单元;调度单元,用于获取目标软件系统的应用进程的目标配置信息;根据目标配置信息,调度多核处理器的共享资源,并运行应用进程。
19、在一种可能的实施方式中,上述调度单元,具体用于:根据应用进程预设的初始配置信息,运行应用进程,获取应用进程的运行信息;当运行信息表示应用进程运行异常时,根据运行信息,确定应用进程的目标异常类型;向调试终端发送异常告知消息;异常告知消息包括:运行信息和目标异常类型;接收调试终端响应于异常告知消息,发送的配置更新消息;配置更新消息用于指示更新初始配置信息。
20、在一种可能的实施方式中,上述装置还包括存储单元,存储单元用于:当运行信息表示应用进程在运行时刻运行异常时,获取预设时间段内,应用进程的运行信息集合;预设时间段包括运行时刻;在非易失性存储器中存储运行信息集合。
21、在一种可能的实施方式中,上述调度单元,还用于当共享资源的已占用资源超过预设的正常范围时,将共享资源的初始资源数量更新为目标资源数量;当已占用资源恢复至正常范围时,将目标资源数量更新为初始资源数量。
22、在一种可能的实施方式中,多核处理器的通信信道包括主用信道和备用信道;上述装置还包括通信单元,通信单元用于:通过主用信道传输数据,并获取传输状态信息;当传输状态信息表示主用信道传输异常时,切换至备用信道传输数据。
23、根据本技术提供的第三方面,提供一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,处理器被配置为执行指令,以实现上述第一方面及其任一种可能的实施方式的方法。
24、根据本技术提供的第四方面,提供一种计算机可读存储介质,当计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行上述第一方面中及其任一种可能的实施方式的方法。
25、根据本技术提供的第五方面,提供一种计算机程序产品,计算机程序产品包括计算机指令,当计算机指令在电子设备上运行时,使得电子设备执行上述第一方面及其任一种可能的实施方式的方法。
26、根据本技术提供的第六方面,提供一种车辆,包括:处理器;用于存储处理器可执行指令的存储器;其中,处理器被配置为执行指令,以实现上述第一方面及其任一种可能的实施方式的方法。
27、由此,本技术的上述技术特征具有以下有益效果:
28、(1)可以基于目标软件系统的功能类型,确定多核处理器中部署目标软件系统的系统核,从而使得每个系统核可以适应对应的功能需求,实现在多核处理器上灵活部署多个软件系统。
29、(2)由于大核的处理量较大,对应消耗的算力和内存资源较多,相应的,小核的处理量较小,但是处理速度快。因此,可以分别针对资源消耗量和响应时长为目标软件系统匹配对应的核类型,以实现系统核可以适应对应的功能需求。
30、(3)可以调度多核处理器的共享资源,在运行应用进程时,可以避免资源复制的过程,从而可以减少拷贝时间,提高资源调度的效率。
31、(4)可以在应用进程运行异常时,运行信息和目标异常类型的告知,以使得调试终端可以指示更新初始配置信息,以实现配置信息的调试,使得应用进程可以在多核处理器中正常运行。
32、(5)可以将包括异常时刻的运行信息集合存储在非易失性存储器中,便于后续进行数据查看和故障分析。
33、(6)可以根据已占用资源是否超过预设的正常范围,确定共享资源的资源数量的调节策略,以便根据该调节策略对共享资源的资源数量进行调节处理,能够自动地、快速地实现对共享资源的动态调整。
34、(7)可以通过当主用信道异常时,切换至备用信道进行传输,不会影响数据传输的连续性,进而提高了用户使用体验。
35、需要说明的是,第二方面至第六方面中的任一种实现方式所带来的技术效果可参见第一方面中对应实现方式所带来的技术效果,此处不再赘述。
36、应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本技术。