CN115062310A - 车载应用程序的启动方法、装置、电子设备及存储介质 - Google Patents
车载应用程序的启动方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN115062310A CN115062310A CN202210697008.2A CN202210697008A CN115062310A CN 115062310 A CN115062310 A CN 115062310A CN 202210697008 A CN202210697008 A CN 202210697008A CN 115062310 A CN115062310 A CN 115062310A
- Authority
- CN
- China
- Prior art keywords
- vehicle
- operating system
- application program
- starting
- mounted application
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/575—Secure boot
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4406—Loading of operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
Abstract
本发明公开了一种车载应用程序的启动方法、装置、电子设备及存储介质。在整车上电后,启动所述目标控制器中虚拟化的第一操作系统和第二操作系统;通过所述第一操作系统启动所述目标车辆中待快速启动的第一车载应用程序,并通过所述第二操作系统启动所述目标车辆中待安全启动的第二车载应用程序;在所述第二操作系统已启动与所述第一车载应用程序相同的第二车载应用程序的情况下,关闭第一操作系统;其中,所述第二操作系统在引导程序启动过程中对预设目标校验对象进行安全校验。能够通过第一操作系统和第二操作系统启动不同的车载应用程序,第二操作系统进行安全校验。启动的应用程序相同后再关闭第一操作系统。避免了冲突,提升了用户体验感。
Description
技术领域
本发明涉及智能车俩技术领域,尤其涉及一种车载应用程序的启动方法、装置、电子设备及存储介质。
背景技术
在当前智能车辆领域中,智能车辆普遍需搭载内置大算力SOC芯片的控制器,控制器运行Linux、QNX、AOS等操作系统,由于是车载控制器,需要满足极严格的功能安全等级。
当前技术领域,在系统启动过程中会对系统镜像文件、文件系统、应用程序、内存等做安全校验。常见操作系统启动阶段进行安全校验大约需要4~5秒,内核启动需要1秒左右,硬盘初始化、文件系统启动、驱动加载、内存检测等大约需要6~7秒,应用程序启动需要3秒左右,整个系统从上电到正常工作需要15秒左右。而全息影像、驻车雷达等功能通常要在6~7秒就需要启动。因此,使车载控制器的安全校验与需要快速启动的应用程序之间有冲突,用户体验感较差。
发明内容
本发明提供了一种车载应用程序的启动方法、装置、电子设备及存储介质,以解决车载控制器的安全校验与需要快速启动的应用程序之间有冲突,用户体验感较差。
根据本发明的一方面,提供了一种车载应用程序的启动方法,其中,该方法包括:
在整车上电后,启动所述目标控制器中虚拟化的第一操作系统和第二操作系统;
通过所述第一操作系统启动所述目标车辆中待快速启动的第一车载应用程序,并通过所述第二操作系统启动所述目标车辆中待安全启动的第二车载应用程序;
在所述第二操作系统已启动与所述第一车载应用程序相同的第二车载应用程序的情况下,关闭第一操作系统;
其中,所述第二操作系统在引导程序启动过程中对预设目标校验对象进行安全校验。
根据本发明的另一方面,提供了一种车载应用程序的启动装置,其中,该装置包括:
操作系统启动模块,用于在整车上电后,启动所述目标控制器中虚拟化的第一操作系统和第二操作系统;
车载应用程序启动模块,用于通过所述第一操作系统启动所述目标车辆中待快速启动的第一车载应用程序,并通过所述第二操作系统启动所述目标车辆中待安全启动的第二车载应用程序;
第一操作系统关闭模块,用于在所述第二操作系统已启动与所述第一车载应用程序相同的第二车载应用程序的情况下,关闭第一操作系统。
其中,所述第二操作系统在引导程序启动过程中对预设目标校验对象进行安全校验。
根据本发明的另一方面,提供了一种电子设备,所述电子设备包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例所述的车载应用程序的启动方法。
根据本发明的另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本发明任一实施例所述的车载应用程序的启动方法。
在整车上电后,启动所述目标控制器中虚拟化的第一操作系统和第二操作系统;
通过所述第一操作系统启动所述目标车辆中待快速启动的第一车载应用程序,并通过所述第二操作系统启动所述目标车辆中待安全启动的第二车载应用程序;
在所述第二操作系统已启动与所述第一车载应用程序相同的第二车载应用程序的情况下,关闭第一操作系统;
其中,所述第二操作系统在引导程序启动过程中对预设目标校验对象进行安全校验。
本发明实施例的技术方案,通过在整车上电后,启动所述目标控制器中虚拟化的第一操作系统和第二操作系统后;再通过所述第一操作系统启动所述目标车辆中待快速启动的第一车载应用程序,并通过所述第二操作系统启动所述目标车辆中待安全启动的第二车载应用程序;最后,在所述第二操作系统已启动与所述第一车载应用程序相同的第二车载应用程序的情况下,关闭第一操作系统;其中,所述第二操作系统在引导程序启动过程中对预设目标校验对象进行安全校验。解决了车载控制器的安全校验与需要快速启动的应用程序之间会有冲突的问题,能够通过启动的所述目标控制器中虚拟化的第一操作系统和第二操作系统并行运行,通过第一操作系统实现车载应用程序的快速启动,通过第二操作系统实现车载应用程序的安全启动,待第二操作系统安全启动的车载应用程序后再关闭第一操作系统,从而避免了车载控制器的安全校验与需要快速启动的应用程序之间的冲突,达到提升用户体验感的效果。
应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例一提供的一种车载应用程序的启动方法的流程图;
图2是根据本发明实施例二提供的一种车载应用程序的启动方法的流程图;
图3为本发明实施例提供的一种用于执行本发明实施例的车载应用程序的启动方法的场景示意图;
图4是根据本发明实施例三提供的一种车载应用程序的启动装置的结构示意图;
图5是实现本发明实施例四提供的一种车载应用程序的启动方法的电子设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例一
图1为本发明实施例一提供了一种车载应用程序的启动方法的流程图,本实施例可适用于智能车俩车载应用程序启动的情况,该方法可以由车载应用程序的启动装置来执行,该车载应用程序的启动装置可以采用硬件和/或软件的形式实现,该车载应用程序的启动装置可配置于智能车辆中。
如图1所示,该方法包括:
S110、在整车上电后,启动所述目标控制器中虚拟化的第一操作系统和第二操作系统。
其中,控制器是指配置于目标车辆,可用于运行操作系统的装置。目标控制器可以理解为包含有虚拟化的第一操作系统和第二操作系统的控制器。所述虚拟化是指在同一硬件设备上运行多个操作系统的技术,可以提高开发效率,并且维护成本低。示例性地,目标控制器可以包含大算力的SoC(System on Chip,系统级芯片)。在本实施例中,所述目标控制器的SoC上可以虚拟化出两个目标操作系统,即第一操作系统和第二操作系统。可选地,所述第一操作系统和所述第二操作系统也可以基于相同类型的操作系统实现也可以基于不同类型的操作系统实现。示例性地,所述操作系统可以是Linux、QNX、AOS等类型的操作系统。在本发明实施例中,为了节约开发成本,第一操作系统和和所述第二操作系统也可以基于相同类型的操作系统实现。
具体的,在整车上电后,启动所述目标控制器并运行所述目标控制器虚拟化程序,在目标控制器主芯片上启动两个同类型的操作系统第一操作系统和第二操作系统。在本实施例中,所述第一操作系统在引导程序阶段不进行安全校验,以最快速度启动,第二操作系统是指具备安全启动的操作系统,在引导程序阶段进行镜像及应用程序等校验。需要说明的是,需要进行安全校验的对象可以根据实际需求进行设定,在此不做具体限定。
S120、通过所述第一操作系统启动所述目标车辆中待快速启动的第一车载应用程序,并通过所述第二操作系统启动所述目标车辆中待安全启动的第二车载应用程序。
其中,所述目标车辆中待快速启动的第一车载应用程序是指需要通过所述第一操作系统快速启动的车载应用程序。所述目标车辆中待安全启动的第二车载应用程序是指通过所述第二操作系统安全启动的车载应用程序。可以理解的是,一个车载应用程序可以既是需要快速启动的程序又是需要安全启动的车载应用程序。换言之,一个车载应用程序可以同时写到所述第一操作系统和所述第二操作系统中。在本实施例中,启动一个快速启动的系统(即,第一操作系统),一个安全启动的系统(即,第二操作系统),第一操作系统保证全息影像和驻车雷达等功能快速启动。第二操作系统保证镜像、应用程序、内存等是经过安全验证的,以达到相关功能安全要求。
可选的,所述第一车载应用程序,包括但不仅限于:与影像采集关联的应用程序和/或与雷达检测关联的应用程序。
可选的,所述第二车载应用程序,可以包括但不仅限于与软件支付关联的应用程序与文件存储关联的应用程序以及与数据访问关联的应用程序等。
可选的,所述通过所述第一操作系统启动所述目标车辆中待快速启动的第一车载应用程序,包括:
通过所述第一操作系统,按照所述第一操作系统的预设启动流程,启动所述目标车辆中待快速启动的第一车载应用程序;
其中,所述第一操作系统的预设启动流程包括启动所述第一操作系统的引导程序,加载第一镜像文件并引导所述第一操作系统的内核启动,初始化硬盘,挂载第一文件系统,加载所述目标车辆中待快速启动的第一车载应用程序的驱动的操作以及启动所述第一车载应用程序。
其中,所述第一操作系统的引导程序是指位于所述目标车辆应用上,可以引导所述第一操作系统的程序。所述第一镜像文件是指在所述第一操作系统加载,可以将特定的一系列文件按照一定的格式制作成单一的文件,以方便用户下载和使用,并可以被特定的软件识别并可直接刻录到光盘上,且可以包含较多的信息。所述内核是指所述第一操作系统的核心,可以基于硬件的第一层软件扩充,提供所述第一操作系统的最基本的功能,是所述第一操作系统工作的基础,可以负责管理系统的进程、内存、设备驱动程序、文件和网络系统。所述硬盘指的是主要的存储设备。所述第一文件系统是指在所述第一操作系统中负责管理和存储文件信息的软件机构的文件管理系统。第一车载应用程序的驱动指的是设备的驱动程序,是一种可以使计算机和设备进行相互通信的特殊程序。
具体的,在所述第一操作系统启动后,通过第一操作系统预设的启动流程启动引导程序,加载第一镜像文件,引导所述第一操作系统的内核启动,初始化硬盘,挂载第一文件系统,加载所述目标车辆中待快速启动的第一车载应用程序的驱动的操作以及启动所述第一车载应用程序。其中,挂载第一文件系统是指由所述第一操作系统使所述硬盘上的计算机文件和目录可供用户通过计算机的所述第一文件系统访问的一个过程。初始化硬盘是指导入或激活硬盘。
示例性地,在所述目标控制器中虚拟化第一操作系统和第二操作系统后,所述第一操作系统进行快速启动,引导程序直接加载系统镜像并引导启动内核,初始化硬盘,挂载文件系统,加载全息影像和雷达功能相关的驱动,启动所述目标车辆中待快速启动的第一车载应用程序,采集摄像头图像数据,显示到显示屏。在所述第一操作系统开始启动的同时,所述第二操作系统进行安全启动,引导程序启动过程中对内核镜像、应用程序等进行安全校验,校验通过之后加载镜像并启动内核,进行硬盘初始化,挂载文件系统,进行内存检测,检测成功之后加载系统所有驱动,启动所述目标车辆中待安全启动的第二车载应用程序,采集摄像头图像数据。其中,摄像头用于采集车辆周围图形数据,所述第一操作系统和所述第二操作系统都能够驱动该摄像头。显示屏用于显示车辆周围景象,所述第一车载应用程序和所述第二车载应用程序都可以将摄像头采集的数据显示到显示屏上。
S130、在所述第二操作系统已启动与所述第一车载应用程序相同的第二车载应用程序的情况下,关闭第一操作系统。
具体的,在所述第二操作系统已启动与所述第一车载应用程序相同的第二车载应用程序,所述第二车载应用程序发送操作系统切换指令给所述第一车载应用程序,所述第一车载应用程序停止发送图像数据到显示屏,所述第二车载应用程序将采集到的数据显示到显示屏,所述第一车载应用程序控制所述第一操作系统关机并释放资源。
可选的,所述在所述第二操作系统已启动与所述第一车载应用程序相同的第二车载应用程序的情况下,关闭第一操作系统,包括:在所述第二操作系统已启动与所述第一车载应用程序相同的第二车载应用程序的情况下,通过所述第二车载应用程序向所述第一车载应用程序发送的系统切换指令,以停止所述第一车载应用程序对程序响应设备的控制,采用所述第二车载应用程序控制所述程序响应设备,通过所述第二车载应用程序关闭所述第一操作系统。
其中,所述第二操作系统在引导程序启动过程中对预设目标校验对象进行安全校验。
本发明实施例的技术方案,通过在整车上电后,启动所述目标控制器中虚拟化的第一操作系统和第二操作系统后;再通过所述第一操作系统启动所述目标车辆中待快速启动的第一车载应用程序,并通过所述第二操作系统启动所述目标车辆中待安全启动的第二车载应用程序;最后,在所述第二操作系统已启动与所述第一车载应用程序相同的第二车载应用程序的情况下,关闭第一操作系统;其中,所述第二操作系统在引导程序启动过程中对预设目标校验对象进行安全校验。解决了车载控制器的安全校验与需要快速启动的应用程序之间会有冲突的问题,能够通过启动的所述目标控制器中虚拟化的第一操作系统和第二操作系统并行运行,通过第一操作系统实现车载应用程序的快速启动,通过第二操作系统实现车载应用程序的安全启动,待第二操作系统安全启动的车载应用程序后再关闭第一操作系统。从而避免了车载控制器的安全校验与需要快速启动的应用程序之间的冲突,达到提升用户体验感的效果。
实施例二
图2为本发明实施例二提供的一种车载应用程序的启动方法的流程图,本实施例与上述实施例的区别在于,对如何对通过所述第二操作系统启动所述目标车辆中待安全启动的第二车载应用程序进行细化。如图2所示,该方法包括:
S210、在整车上电后,启动所述目标控制器中虚拟化的第一操作系统和第二操作系统。
S220、通过所述第一操作系统启动所述目标车辆中待快速启动的第一车载应用程序。
S230、通过所述第二操作系统,按照所述第二操作系统的预设启动流程,启动所述目标车辆中待安全启动的第二车载应用程序。
其中,所述第二操作系统的预设启动流程包括在启动引导程序,并在引导程序启动过程中对预设目标校验对象进行安全校验,如果安全校验通过,则加载第二镜像文件并引导所述第二操作系统的内核启动,初始化硬盘,挂载第二文件系统,加载所述目标车辆中待安全启动的第二车载应用程序的驱动的操作,启动所述第二车载应用程序。
其中,所述第二操作系统的引导程序是指位于所述目标车辆应用上,可以引导所述第二操作系统的程序。所述第二镜像文件是指在所述第二操作系统加载,可以将特定的一系列文件按照一定的格式制作成单一的文件,以方便用户下载和使用,并可以被特定的软件识别并可直接刻录到光盘上,且可以包含较多的信息。所述内核是指所述第二操作系统的核心,可以基于硬件的第一层软件扩充,提供所述第二操作系统的最基本的功能,是所述第二操作系统工作的基础,可以负责管理系统的进程、内存、设备驱动程序、文件和网络系统。所述硬盘指的是主要的存储设备。所述第二文件系统是指在所述第二操作系统中负责管理和存储文件信息的软件机构的文件管理系统。第二车载应用程序的驱动指的是设备的驱动程序,是一种可以使计算机和设备进行相互通信的特殊程序。
其中,所述预设目标校验对象可以理解为预先设定的在所述第二操作系统中预设的需要进行安全校验的应用程序。需要说明的是,需要进行安全校验的应用程序可以根据实际需求在所述第二操作系统中预先设置,在此不做具体限定。可选的,所述预设目标校验对象,包括但不仅限于:待加载的第二镜像文件以及待安全启动的第二车载应用程序等。
具体的,在所述第二操作系统启动后,通过第二操作系统预设的启动流程启动引导程序,引导程序启动过程中对预设目标校验对象进行安全校验,如果安全校验通过,则加载第二镜像文件,引导所述第二操作系统的内核启动,初始化硬盘,挂载第二文件系统,加载所述目标车辆中待快速启动的第二车载应用程序的驱动的操作以及启动所述第二车载应用程序。
其中,挂载第二文件系统是指由所述第二操作系统使所述硬盘上的计算机文件和目录可供用户通过计算机的所述第二文件系统访问的一个过程。初始化硬盘是指导入或激活硬盘。引导程序启动与对预设目标校验对象进行安全校验同时进行。
如果安全校验未通过,则生成用于提示安全校验失败的第一提示信息。具体地,可以在所述第一提示信息中展示安全校验失败的预设目标校验对象,以便用户进行问题排查,及时修复安全校验失败的预设目标校验对象。
可选的,在所述执行初始化硬盘,挂载第二文件系统之后,所述加载所述目标车辆中待安全启动的第二车载应用程序的驱动的操作之前,还包括:
对所述第二操作系统进行内存检测,如果检测通过,则执行加载所述目标车辆中待安全启动的第二车载应用程序的驱动的操作。
具体的,在启动引导程序,安全校验预设目标校验对象,加载第二镜像文件和引导所述第二操作系统的内核启动,初始化硬盘,挂载第二文件系统后,所述第二操作系统的部分使用的资源已经占用,加载所述目标车辆中待安全启动的第二车载应用程序的驱动的操作,启动所述第二车载应用程序也需要占用所述第二操作系统的使用的资源,因此,需要对所述第二操作系统进行内存检测。可选地,所述第二操作系统进行内存检测可以是内存在生产过程中经历的多次检测,检测加载所述目标车辆中待安全启动的第二车载应用程序的驱动的操作和启动所述第二车载应用程序的最大内存等资源的占用率,防止使用的资源超出所述第二操作系统的限制。同时还需要检测所述第二操作系统资源在极端情况下,如内存资源被别的应用程序消耗时程序长时间运行后的情况等。如果内存检测通过,则是指使用的资源未超出所述第二操作系统的限制,则执行加载所述目标车辆中待安全启动的第二车载应用程序的驱动的操作。如果内存检测未通过则是指使用的资源超出所述第二操作系统的限制,则无法执行加载所述目标车辆中待安全启动的第二车载应用程序的驱动的操作。此时,可以生成内存校验失败的第二提示信息。以便用户根据第二提示信息优化内存资源配置。
S240、在所述第二操作系统已启动与所述第一车载应用程序相同的第二车载应用程序的情况下,关闭第一操作系统。
本发明实施例的技术方案,通过在整车上电后,启动所述目标控制器中虚拟化的第一操作系统和第二操作系统;再通过所述第一操作系统启动所述目标车辆中待快速启动的第一车载应用程序;通过所述第二操作系统,按照所述第二操作系统的预设启动流程,启动所述目标车辆中待快速启动的第二车载应用程序;最后,在所述第二操作系统已启动与所述第一车载应用程序相同的第二车载应用程序的情况下,关闭第一操作系统。避免了车载控制器的安全校验与需要快速启动的应用程序之间的冲突。能够使所述第一车载应用程序按照所述第一操作系统预设启动流程启动,使所述第二车载应用程序按照所述第二操作系统预设启动流程启动,已启动应用程序相同情况下,关闭第一操作系统。既能对有安全需求的应用程序进行安全校验又能使又快速启动需求的应用程序快速启动,避免了在安全与用户体验方面的冲突的效果。
图3为本发明实施例提供的一种用于执行本发明实施例的车载应用程序的启动方法的场景示意图。以启动目标车辆的全息影像以及驻车雷达功能为例,对本发明实施例中的车载应用程序的启动方法进行介绍。其中,第一操作系统用操作系统B表示,第二系统用操作系统A表示,第一车载应用程序用应用程序2表示,与第一车载应用程序相同的第二车载应用程序用应用程序1表示。
如图3所示,在整车上电后,对目标控制器进行初始化。进一步的,所述目标控制器虚拟化程序运行,在控制器主芯片上启动两个同类型的操作系统(如Linux)操作系统B和操作系统A。其中,目标控制器包括智能驾驶相关软件,如影像采集、雷达等。虚拟化是在同一硬件设备上运行多个操作系统的技术。目标控制器上包含大算力的SOC芯片,为虚拟化提供硬件支持。示例性地,可以在智能驾驶控制器的SOC芯片上虚拟化出两个目标操作系统。其中,操作系统A具备安全启动的操作系统,通常在引导程序阶段进行镜像、应用程序等校验,这些校验也是最为耗时的。操作系统B是与操作系统A相同类型的操作系统,但是区别于操作系统A,操作系统B在该系统引导程序阶段不进行安全校验,以最快速度启动。
具体的,操作系统B进行非安全启动,按照所述操作系统B的预设的快速启动流程,启动所述目标车辆中的与全息影像和雷达功能相关的应用程序2,其中,快速启动流程包括引导程序直接加载系统镜像并引导内核启动,硬盘初始化,挂载文件系统,加载应用程序2依赖的驱动,启动应用程序2,采集摄像头图像数据,显示到显示屏,此时全息影像以及驻车雷达功能启动。
在操作系统B开始启动的同时,操作系统A进行安全启动,按照操作系统A的预设的安全启动流程,启动与全息影像和雷达功能相关的应用程序1,其中,引导程序启动过程中对内核镜像、应用程序等进行安全校验,校验通过之后加载镜像并启动内核,进行硬盘初始化,挂载文件系统,进行内存检测,检测成功之后加载系统所有驱动,启动应用程序1,采集摄像头图像数据。在本实施例中,应用程序1和应用程序2是相同的程序,分别烧写到操作系统A和操作系统B。摄像头用于采集目标车辆周围的图像数据,操作系统A和操作系统B都能够驱动该摄像头。显示屏用于显示采集到的图像数据,应用程序1和应用程序2都可以将摄像头采集的数据显示到显示屏上。最后,在操作系统A已启动与应用程序2相同的应用程序1的情况下,获取摄像头采集数据,接管整车全息影像及驻车雷达等功能。应用程序1发送操作系统切换指令(如,关机命令)给应用程序2,应用程序2停止发送图像数据到显示屏,应用程序1将采集到的数据显示到显示屏,应用程序2控制操作系统B关机并释放资源。
本发明实施例的技术方案,通过虚拟化出2个相同类型的操作系统,第一操作系统和第二操作系统,并且运行相同的应用程序,第二车载应用程序和第二车载应用程序,提高开发效率,并且维护成本低。启动一个快速启动的系统,一个安全启动的系统,快速启动的系统保证全息影像和驻车雷达等功能快速启动。安全启动的系统保证镜像、应用程序、内存等是经过安全验证的,以达到相关功能安全要求。
实施例三
图4为本发明实施例三提供的一种车载应用程序的启动装置的结构示意图。如图4所示,该装置包括:操作系统启动模块310、车载应用程序启动模块320和第一操作系统关闭模块330。
其中,操作系统启动模块310,用于在整车上电后,启动所述目标控制器中虚拟化的第一操作系统和第二操作系统;车载应用程序启动模块320,用于通过所述第一操作系统启动所述目标车辆中待快速启动的第一车载应用程序,并通过所述第二操作系统启动所述目标车辆中待安全启动的第二车载应用程序;第一操作系统关闭模块330,用于在所述第二操作系统已启动与所述第一车载应用程序相同的第二车载应用程序的情况下,关闭第一操作系统;其中,所述第二操作系统在引导程序启动过程中对预设目标校验对象进行安全校验。
本发明实施例的技术方案,通过在整车上电后,启动所述目标控制器中虚拟化的第一操作系统和第二操作系统后;再通过所述第一操作系统启动所述目标车辆中待快速启动的第一车载应用程序,并通过所述第二操作系统启动所述目标车辆中待安全启动的第二车载应用程序;最后,在所述第二操作系统已启动与所述第一车载应用程序相同的第二车载应用程序的情况下,关闭第一操作系统;其中,所述第二操作系统在引导程序启动过程中对预设目标校验对象进行安全校验。解决了车载控制器的安全校验与需要快速启动的应用程序之间会有冲突的问题,能够通过启动的所述目标控制器中虚拟化的第一操作系统和第二操作系统并行运行,通过第一操作系统实现车载应用程序的快速启动,通过第二操作系统实现车载应用程序的安全启动,待第二操作系统安全启动的车载应用程序后再关闭第一操作系统。从而避免了车载控制器的安全校验与需要快速启动的应用程序之间的冲突,达到提升用户体验感的效果。
可选的,车载应用程序启动模块320包括:第一车载应用程序启动单元,用于
通过所述第一操作系统,按照所述第一操作系统的预设启动流程,启动所述目标车辆中待快速启动的第一车载应用程序;
其中,所述第一操作系统的预设启动流程包括启动所述第一操作系统的引导程序,加载第一镜像文件并引导所述第一操作系统的内核启动,初始化硬盘,挂载第一文件系统,加载所述目标车辆中待快速启动的第一车载应用程序的驱动的操作以及启动所述第一车载应用程序。
可选的,车载应用程序启动模块320包括:第二车载应用程序启动单元,用于通过所述第二操作系统,按照所述第二操作系统的预设启动流程,启动所述目标车辆中待安全启动的第二车载应用程序;
其中,所述第二操作系统的预设启动流程包括在启动引导程序,并在引导程序启动过程中对预设目标校验对象进行安全校验,如果安全校验通过,则加载第二镜像文件并引导所述第二操作系统的内核启动,初始化硬盘,挂载第二文件系统,加载所述目标车辆中待安全启动的第二车载应用程序的驱动的操作,启动所述第二车载应用程序。
可选的,车载应用程序启动模块320还包括:第二操作系统内存检测单元,用于对所述第二操作系统进行内存检测,如果检测通过,则执行加载所述目标车辆中待安全启动的第二车载应用程序的驱动的操作。
可选的,所述预设目标校验对象,包括:
待加载的第二镜像文件以及待安全启动的第二车载应用程序。
可选的,所述第一操作系统关闭模块330,包括:第一车载应用程序停止单元和第一操作系统关闭单元。
其中,第一车载应用程序停止单元,用于在所述第二操作系统已启动与所述第一车载应用程序相同的第二车载应用程序的情况下,通过所述第二车载应用程序向所述第一车载应用程序发送的系统切换指令,以停止所述第一车载应用程序对程序响应设备的控制;第一操作系统关闭单元,用于采用所述第二车载应用程序控制所述程序响应设备,通过所述第二车载应用程序关闭所述第一操作系统。
可选的,所述第一车载应用程序,包括:与影像采集关联的应用程序和/或与雷达检测关联的应用程序。
本发明实施例所提供的车载应用程序的启动装置可执行本发明任意实施例所提供的车载应用程序的启动方法,具备执行方法相应的功能模块和有益效果。
实施例四
图5示出了可以用来实施本发明的实施例的电子设备10的结构示意图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备(如头盔、眼镜、手表等)和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。
如图5所示,电子设备10包括至少一个处理器11,以及与至少一个处理器11通信连接的存储器,如只读存储器(ROM)12、随机访问存储器(RAM)13等,其中,存储器存储有可被至少一个处理器执行的计算机程序,处理器11可以根据存储在只读存储器(ROM)12中的计算机程序或者从存储单元18加载到随机访问存储器(RAM)13中的计算机程序,来执行各种适当的动作和处理。在RAM 13中,还可存储电子设备10操作所需的各种程序和数据。处理器11、ROM 12以及RAM 13通过总线14彼此相连。输入/输出(I/O)接口15也连接至总线14。
电子设备10中的多个部件连接至I/O接口15,包括:输入单元16,例如键盘、鼠标等;输出单元17,例如各种类型的显示器、扬声器等;存储单元18,例如磁盘、光盘等;以及通信单元19,例如网卡、调制解调器、无线通信收发机等。通信单元19允许电子设备10通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
处理器11可以是各种具有处理和计算能力的通用和/或专用处理组件。处理器11的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的处理器、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。处理器11执行上文所描述的各个方法和处理,例如车载应用程序的启动方法。
在一些实施例中,车载应用程序的启动方法可被实现为计算机程序,其被有形地包含于计算机可读存储介质,例如存储单元18。在一些实施例中,计算机程序的部分或者全部可以经由ROM 12和/或通信单元19而被载入和/或安装到电子设备10上。当计算机程序加载到RAM 13并由处理器11执行时,可以执行上文描述的车载应用程序的启动方法的一个或多个步骤。备选地,在其他实施例中,处理器11可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行车载应用程序的启动方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本发明的方法的计算机程序可以采用一个或多个编程语言的任何组合来编写。这些计算机程序可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,使得计算机程序当由处理器执行时使流程图和/或框图中所规定的功能/操作被实施。计算机程序可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本发明的上下文中,计算机可读存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的计算机程序。计算机可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。备选地,计算机可读存储介质可以是机器可读信号介质。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在电子设备上实施此处描述的系统和技术,该电子设备具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给电子设备。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、区块链网络和互联网。
计算系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务中,存在的管理难度大,业务扩展性弱的缺陷。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发明中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本发明的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
Claims (10)
1.一种车载应用程序的启动方法,其特征在于,包括:
在整车上电后,启动所述目标控制器中虚拟化的第一操作系统和第二操作系统;
通过所述第一操作系统启动所述目标车辆中待快速启动的第一车载应用程序,并通过所述第二操作系统启动所述目标车辆中待安全启动的第二车载应用程序;
在所述第二操作系统已启动与所述第一车载应用程序相同的第二车载应用程序的情况下,关闭第一操作系统;
其中,所述第二操作系统在引导程序启动过程中对预设目标校验对象进行安全校验。
2.根据权利要求1所述的方法,其特征在于,所述通过所述第一操作系统启动所述目标车辆中待快速启动的第一车载应用程序,包括:
通过所述第一操作系统,按照所述第一操作系统的预设启动流程,启动所述目标车辆中待快速启动的第一车载应用程序;
其中,所述第一操作系统的预设启动流程包括启动所述第一操作系统的引导程序,加载第一镜像文件并引导所述第一操作系统的内核启动,初始化硬盘,挂载第一文件系统,加载所述目标车辆中待快速启动的第一车载应用程序的驱动的操作以及启动所述第一车载应用程序。
3.根据权利要求1所述的方法,其特征在于,所述通过所述第二操作系统启动所述目标车辆中待安全启动的第二车载应用程序,包括:
通过所述第二操作系统,按照所述第二操作系统的预设启动流程,启动所述目标车辆中待安全启动的第二车载应用程序;
其中,所述第二操作系统的预设启动流程包括在启动引导程序,并在引导程序启动过程中对预设目标校验对象进行安全校验,如果安全校验通过,则加载第二镜像文件并引导所述第二操作系统的内核启动,初始化硬盘,挂载第二文件系统,加载所述目标车辆中待安全启动的第二车载应用程序的驱动的操作,启动所述第二车载应用程序。
4.根据权利要求3所述的方法,其特征在于,在所述执行初始化硬盘,挂载第二文件系统之后,所述加载所述目标车辆中待安全启动的第二车载应用程序的驱动的操作之前,还包括:
对所述第二操作系统进行内存检测,如果检测通过,则执行加载所述目标车辆中待安全启动的第二车载应用程序的驱动的操作。
5.根据权利要求3所述的方法,其特征在于,所述预设目标校验对象,包括:
待加载的第二镜像文件以及待安全启动的第二车载应用程序。
6.根据权利要求1所述的方法,其特征在于,所述在所述第二操作系统已启动与所述第一车载应用程序相同的第二车载应用程序的情况下,关闭第一操作系统,包括:
在所述第二操作系统已启动与所述第一车载应用程序相同的第二车载应用程序的情况下,通过所述第二车载应用程序向所述第一车载应用程序发送的系统切换指令,以停止所述第一车载应用程序对程序响应设备的控制,采用所述第二车载应用程序控制所述程序响应设备,通过所述第二车载应用程序关闭所述第一操作系统。
7.根据权利要求1所述的方法,其特征在于,所述第一车载应用程序,包括:
与影像采集关联的应用程序和/或与雷达检测关联的应用程序。
8.一种车载应用程序的启动装置,其特征在于,包括:
操作系统启动模块,用于在整车上电后,启动所述目标控制器中虚拟化的第一操作系统和第二操作系统;
车载应用程序启动模块,用于通过所述第一操作系统启动所述目标车辆中待快速启动的第一车载应用程序,并通过所述第二操作系统启动所述目标车辆中待安全启动的第二车载应用程序;
第一操作系统关闭模块,用于在所述第二操作系统已启动与所述第一车载应用程序相同的第二车载应用程序的情况下,关闭第一操作系统。
其中,所述第二操作系统在引导程序启动过程中对预设目标校验对象进行安全校验。
9.一种电子设备,其特征在于,所述电子设备包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-7中任一项所述的车载应用程序的启动方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现权利要求1-7中任一项所述的车载应用程序的启动方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210697008.2A CN115062310A (zh) | 2022-06-20 | 2022-06-20 | 车载应用程序的启动方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210697008.2A CN115062310A (zh) | 2022-06-20 | 2022-06-20 | 车载应用程序的启动方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115062310A true CN115062310A (zh) | 2022-09-16 |
Family
ID=83203209
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210697008.2A Pending CN115062310A (zh) | 2022-06-20 | 2022-06-20 | 车载应用程序的启动方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115062310A (zh) |
-
2022
- 2022-06-20 CN CN202210697008.2A patent/CN115062310A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102356316B1 (ko) | 차량 시스템, 차량 및 이러한 차량 시스템을 동작시키기 위한 방법 | |
US8904159B2 (en) | Methods and systems for enabling control to a hypervisor in a cloud computing environment | |
CN107589994B (zh) | 应用进程优先级管理的方法、设备、系统及存储介质 | |
US9910664B2 (en) | System and method of online firmware update for baseboard management controller (BMC) devices | |
WO2007071116A1 (en) | Managing device models in a virtual machine cluster environment | |
CN109408122B (zh) | 一种设备启动方法、电子设备和计算机存储介质 | |
US10572434B2 (en) | Intelligent certificate discovery in physical and virtualized networks | |
US20210225096A1 (en) | Power off and power on method and apparatus for an in-vehicle system | |
CN114461287B (zh) | 操作系统启动方法、装置、电子设备和存储介质 | |
CN112486522A (zh) | 含智能网卡OpenStack裸机的部署方法及装置 | |
CN112506534A (zh) | 一种物理机启动qcow2格式系统镜像的方法及系统 | |
EP3701373B1 (en) | Virtualization operations for directly assigned devices | |
US8429322B2 (en) | Hotplug removal of a device in a virtual machine system | |
CN115357310A (zh) | 系统启动方法、装置、电子设备和存储介质 | |
WO2019079128A1 (en) | REMAPPING VIRTUAL DEVICES FOR VIRTUAL MACHINES | |
US9852028B2 (en) | Managing a computing system crash | |
US10268466B2 (en) | Software installer with built-in hypervisor | |
CN115062310A (zh) | 车载应用程序的启动方法、装置、电子设备及存储介质 | |
US10810032B2 (en) | System and method for dynamic guest-controlled halt polling using a CPU governor | |
CN111930502A (zh) | 一种服务器管理方法、装置、设备及存储介质 | |
CN114090329A (zh) | 一种全卸载架构下的服务器重启方法及相关设备 | |
KR102292211B1 (ko) | 전자기기 | |
CN113656085A (zh) | 仪表启动方法、装置、设备、存储介质及程序产品 | |
CN117407109A (zh) | 一种界面显示方法、装置、设备及存储介质 | |
CN114228745A (zh) | 驾驶系统模块控制方法、装置、设备、介质、产品及车辆 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |