本公开涉及信息交互,尤其涉及一种启动方法、装置、设备及存储介质。
背景技术:
1、soc(system on chip,片上系统)芯片通常使用emmc(embedded multi mediacard,内嵌式存储器)作为存储介质以进行系统启动操作。对于部署于多核芯片的各个软件系统的启动问题,由于多核芯片上的emmc控制器通常被固定于多核芯片中的一个处理器核上,因此,当需要启动部署于多核芯片不同处理器核上的各个软件系统时,需要在emmc控制器从属的处理器核上利用emmc同时完成多核芯片中所有软件系统的加载,进而实现部署于多核芯片的多个软件系统的启动。其中,多核芯片是指具有多个处理器核的芯片。
2、然而,有些部署于多核芯片上的软件系统比较复杂庞大,采用现有的多核芯片的软件系统启动方法同时启动这些软件系统需要很大的内存需求。而emmc由于很难满足同时启动这些软件系统所需要的内存需求,因此,会导致软件系统启动效率变低。
3、所以,如何提高多核芯片上软件系统的启动效率成为了一个亟待解决的问题。
技术实现思路
1、本公开提供了一种启动方法、装置、设备及存储介质,以至少解决现有技术中存在的以上技术问题。
2、根据本公开的第一方面,提供了一种启动方法,应用于多核异构芯片,所述多核异构芯片的每个处理器核与该处理器核所连接的硬件资源构成一个硬件域,所述多核异构芯片中的各个硬件域之间存在物理隔离,所述方法包括:
3、所述多核异构芯片的第一处理器核获取目标存储介质在所述多核异构芯片中对应的控制器的控制权限,基于所述控制权限控制所述控制器从所述目标存储介质中读取第一预加载启动数据和第一启动数据,并根据所述第一启动数据启动第一软件系统,将所述第一预加载启动数据发送至所述多核异构芯片的第二处理器核,其中,所述第一软件系统为被配置部署于所述第一处理器核上的软件系统,所述第一处理器核和所述第二处理器核为架构不同的处理器核,所述第一处理器核所在的硬件域为所述多核异构芯片中的安全域;
4、在所述第一处理器核将所述控制权限释放给所述第二处理器核后,所述第二处理器核接收所述第一预加载启动数据,并根据所述第一预加载启动数据启动第二软件系统,其中,所述第二软件系统为被配置部署于所述第二处理器核上的软件系统。
5、在一可实施方式中,所述根据所述第一预加载启动数据启动第二软件系统,包括:
6、基于所述第一预加载启动数据对第二软件系统进行预启动;
7、所述第二处理器核基于所述控制权限从所述目标存储介质中获取剩余的第二启动数据;
8、根据所述第二启动数据完成针对所述第二软件系统的启动。
9、在一可实施方式中,所述目标存储介质为所述多核异构芯片的各个处理器核共同对应的存储单元。
10、在一可实施方式中,所述基于所述控制权限,控制所述控制器从所述目标存储介质中读取第一预加载启动数据和第一启动数据,包括:
11、从所述目标存储介质中各个存储数据分区中确定目标存储数据分区;
12、根据所述控制权限,控制所述控制器从所述目标存储数据分区中读取所述第一预加载启动数据和所述第一启动数据。
13、在一可实施方式中,所述方法还包括:
14、所述多核异构芯片的第n-1处理器核,基于所述控制权限从所述目标存储介质中获取第二预加载启动数据,并将所述第二预加载启动数据发送至所述第n处理器核,其中,n为大于2的整数;
15、在监测到所述第n-1处理器核将所述控制权限释放给所述第n处理器核后,所述第n处理器核根据所述第二预加载启动数据启动第n软件系统,其中,所述第n软件系统为被配置部署于所述第n处理器核上的软件系统,所述第n-1处理器核和所述第n处理器核为架构不同的处理器核。
16、在一可实施方式中,在所述第一处理器核将所述控制权限释放给所述第二处理器核之前,所述方法还包括:
17、所述第一处理器核根据所述控制权限从所述目标存储介质中获取第三预加载启动数据,并将所述第三预加载启动数据发送至所述多核异构芯片的第n处理器核,其中,n为大于2的整数;
18、在所述根据所述第一预加载启动数据启动第二软件系统之后,所述方法还包括:
19、第n-1处理器核将所述控制权限释放给所述第n处理器核;
20、所述第n处理器核根据所述第三预加载启动数据启动第三软件系统,其中,所述第三软件系统为被配置部署于所述第n处理器核上的软件系统,所述第n-1处理器核和所述第n处理器核为架构不同的处理器核。
21、在一可实施方式中,所述将所述第一预加载启动数据发送至所述多核异构芯片的第二处理器核,包括:
22、所述第一处理器核将所述第一预加载启动数据存储至指定内存,并将所述指定内存的存储地址发送至所述多核异构芯片的第二处理器核;
23、所述第二处理器核接收所述第一预加载启动数据,包括:
24、所述第二处理器核接收所述存储地址,并基于所述存储地址调取所述第一预加载启动数据。
25、在一可实施方式中,所述方法还包括:
26、针对所述多核异构芯片的每个处理器核,该处理器核在获取到所述控制权限后,根据所述控制权限初始化所述目标存储介质。
27、根据本公开的第二方面,提供了一种启动装置,其特征在于,应用于多核异构芯片,所述多核异构芯片的每个处理器核与该处理器核所连接的硬件资源构成一个硬件域,所述多核异构芯片中的各个硬件域之间存在物理隔离,所述装置包括:
28、第一启动模块,用于所述多核异构芯片的第一处理器核获取目标存储介质在所述多核异构芯片中对应的控制器的控制权限,基于所述控制权限控制所述控制器从所述目标存储介质中读取第一预加载启动数据和第一启动数据,并根据所述第一启动数据启动第一软件系统,将所述第一预加载启动数据发送至所述多核异构芯片的第二处理器核,其中,所述第一软件系统为被配置部署于所述第一处理器核上的软件系统,所述第一处理器核和所述第二处理器核为架构不同的处理器核,所述第一处理器核所在的硬件域为所述多核异构芯片中的安全域;
29、第二启动模块,用于在所述第一处理器核将所述控制权限释放给所述第二处理器核后,所述第二处理器核接收所述第一预加载启动数据,并根据所述第一预加载启动数据启动第二软件系统,其中,所述第二软件系统为被配置部署于所述第二处理器核上的软件系统。
30、根据本公开的第三方面,提供了一种电子设备,包括:
31、至少一个处理器;以及
32、与所述至少一个处理器通信连接的存储器;其中,
33、所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本公开所述的方法。
34、根据本公开的第四方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行本公开所述的方法。
35、采用本公开的启动方法、装置、设备及存储介质,多核异构芯片的第一处理器核获取目标存储介质在多核异构芯片中对应的控制器的控制权限,基于控制权限控制控制器从目标存储介质中读取第一预加载启动数据和第一启动数据,并根据第一启动数据启动第一软件系统,将第一预加载启动数据发送至多核异构芯片的第二处理器核,在第一处理器核将目标存储介质的控制器的控制权限释放给第二处理器核后,第二处理器核接收第一预加载启动数据,并根据第一预加载启动数据启动第二软件系统,其中,第一软件系统为被配置部署于第一处理器核上的软件系统,第二软件系统为被配置部署于第二处理器核上的软件系统,第一处理器核和第二处理器核为架构不同的处理器核。即本公开中,对于被配置部署于多核芯片各个处理器核上复杂庞大的各个软件系统,可以通过切换多核异构芯片中各个处理器核对目标存储介质的控制器的控制权限,分批次从目标存储介质加载不同软件系统的启动数据实现软件系统的启动,这不仅提高了存储设备的可操作性增加了软件系统启动方式的灵活性,也解决了由于存储设备难以满足同时启动多个复杂软件系统所需要的内存需求导致软件系统启动效率低的问题。
36、应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。