一种Linux车载信息系统快速启动方法技术方案

技术编号:16455760 阅读:31 留言:0更新日期:2017-10-25 19:51
本发明专利技术提供Linux车载信息系统快速启动方法,方法包括:UBOOT优化的步骤;内核优化的步骤;Systemd优化的步骤;在Systemd服务中启动应用管理进程及依赖的底层服务的步骤;启动关机前的应用程序的步骤;加载GUI的步骤;启动其它中间件的步骤;连接中间件的步骤。本发明专利技术实现了Linux车载信息系统的快速启动。

【技术实现步骤摘要】
一种Linux车载信息系统快速启动方法
本专利技术涉及嵌入式系统
,尤其涉及一种Linux车载信息系统快速启动方法。
技术介绍
随着汽车技术的飞速发展,行业内的竞争也越发激烈,除了成本价格的竞争之外,功能和性能的也是竞争的关键因素。在产品同质化日益严重的情况下,车载产品的竞争开始转移到性能的竞争上,尤其是对产品可靠性要求高的前装车厂客户,对产品的性能更为重视。车载产品的性能表现在多个方面,目前行业比较关注的有:系统的启动时间、快速倒车响应时间等。其中,系统启动时间一直被认为是衡量系统优化程度的一个标志,体现了对操作系统掌控程度。目前,Linux操作系统以较低的成本但较高的安全性和可靠性、开源和广泛的芯片厂商驱动支持受到各车载产品厂商的青睐,从而得到了非常广阔的应用。然而,目前基于Linux操作系统的车载产品普遍存在系统启动时间较长的问题,一般在15秒左右,降低了用户体验。因此,现有技术有待进一步改进。
技术实现思路
本专利技术提供一种Linux车载信息系统快速启动方法,旨在解决现有技术中的缺陷,实现Linux车载信息系统的快速启动,提高用户体验。为达到上述目的,本专利技术所采取的技术方案为:本专利技术提供一种Linux车载信息系统快速启动方法,包括:UBOOT优化的步骤:根据第一预设优化规则对UBOOT进行优化;内核优化的步骤:根据第二优化规则对内核进行优化;Systemd优化的步骤:根据第三优化规则对Systemd进行优化;在Systemd服务中启动应用管理进程及依赖的底层服务的步骤:在Systemd服务加载过程中,当监测到系统初始化和文件系统挂载服务已启动完成,则启动应用管理进程及依赖的底层服务;启动关机前的应用程序的步骤:所述应用管理进程读取上一次关机前的应用程序ID,并启动所述ID对应的应用程序;加载GUI的步骤:所述应用程序启动完成后,加载GUI进行显示;启动其它中间件的步骤:所述GUI加载完成后,所述应用管理进程启动除所述上一次关机前的应用程序之外的应用程序的中间件服务进程及应用服务进程;连接中间件的步骤:所述中间件服务进程启动完成后,所述应用管理进程通知所述应用程序连接中间件服务进程,获取接口服务。具体地,所述第一预设优化规则包括:预先配置UBOOT初始化模块及环境变量;根据配置后的UBOOT初始化模块及环境变量生成启动配置文件;UBOOT根据所述启动配置文件加载启动文件。进一步地,所述第一预设优化规则还包括:关闭启动文件加载的日志打印。具体地,所述第二预设优化规则包括:预先配置内核驱动;根据配置后的内核驱动生成启动驱动加载文件;根据所述启动驱动加载文件加载内核。进一步地,第二预设优化规则还包括:关闭内核日志打印。进一步地,第二预设优化规则还包括:关闭内核驱动的延时。具体地,所述第三预设优化规则包括:预先配置系统服务;根据配置后的系统服务生成系统服务加载文件;根据所述系统服务加载文件加载系统服务。进一步地,所述第三预设优化规则还包括:关闭系统服务延时。进一步地,所述第三预设优化规则还包括:延时加载CPU资源占用率超过预设阈值的系统服务。具体地,所述延时加载CPU资源占用率超过预设阈值的系统服务的步骤包括:通过预设指令读取各系统服务加载时的CPU资源占用率;对CPU资源占用率超过超过预设阈值的系统服务延时到应用程序启动完成后加载。本专利技术的有益效果在于:本专利技术通过对UBOOT、内核、Systemd进行优化,并将应用管理进程的启动脚本嵌入到Systemd中运行,使应用程序启动的时间提前,大大缩短了应用程序的启动时间和GUI显示时间,最终实现了Linux车载信息系统的快速启动。附图说明图1是本专利技术的Linux车载信息系统快速启动方法的流程示意图。具体实施方式下面结合附图具体阐明本专利技术的实施方式,附图仅供参考和说明使用,不构成对本专利技术专利保护范围的限制。如图1所示,本专利技术的实施例提供一种Linux车载信息系统快速启动方法,包括:步骤1、UBOOT优化的步骤:根据第一预设优化规则对UBOOT进行优化。所述第一预设优化规则包括:步骤101、预先配置UBOOT初始化模块及环境变量;步骤102、根据配置后的UBOOT初始化模块及环境变量生成启动配置文件;步骤103、UBOOT根据所述启动配置文件加载启动文件。系统上电执行Romcode后加载UBOOT到内存。UBOOT首先执行汇编指令硬件初始化,后跳转到C中的main函数,进行第一阶段相关硬件初始化和第二阶段硬件初始化;最后运行UBOOT命令参数,加载kernel(内核)和dtb到内存,并最终跳转到kernel内存的起始地址。如果不进行优化,整个过程耗时在300ms以上。BSP里面包含了各种驱动模块和原始环境变量,例如板级初始化模块、备份和恢复模块,这就导致了UBOOT加载启动文件的时间较长。例如,BSP自带的备份和恢复模块并不适合所有的产品,因此这个模块会重复加载,增加了启动文件加载的时间。而BSP提供的原始环境变量占用空间较大,也进一步增加了启动文件加载的时间。通过对UBOOT初始化模块及环境变量进行配置,禁止无用的模块和环境变量加载,简化了UBOOT的加载量,从而减少了启动文件的加载时间。为进一步减少启动文件加载的时间,在步骤103之后还包括:步骤104、关闭启动文件加载的日志打印。日志打印是通过printk函数来实现的,该函数在进行字符拷贝时,一次只拷贝一个字节,并且调用console命令输出还可能产生中断,不仅效率低,而且无用信息的输出直接影响系统性能。因此,关闭内核日志打印,可以进一步减少内核加载的时间。步骤2、内核优化的步骤:根据第二优化规则对内核进行优化。所述第二预设优化规则包括:步骤201、预先配置内核驱动;步骤202、根据配置后的内核驱动生成启动驱动加载文件;步骤203、根据所述启动驱动加载文件加载内核。在Kernel阶段,先解压内核到内存,并重定位解压后的内核,对传入uboot参数进行ID等检查,设置kernel的C运行环境,最后跳转到start_kernel函数,在此函数中运行内核初始化、加载驱动和文件系统加载。Linux内核包含了各种驱动,例如硬盘驱动、网络驱动、键盘鼠标驱动等,而车载信息系统对这些驱动并无硬件支持,通过对这些无硬件支持的驱动进行配置,禁止其加载,简化了启动驱动加载次数,从而减少了内核的加载时间。为进一步减少内核加载的时间,在步骤203之后还包括:步骤204、关闭内核日志打印。为进一步减少内核加载的时间,在步骤204之后还包括:步骤205、关闭内核驱动的延时。内核驱动的延时是为了保证硬件初始化的时序,在保证硬件的时序正确的前提下,减少或关闭驱动中的延时可以缩短启动时间。步骤3、Systemd优化的步骤:根据第三优化规则对Systemd进行优化。所述第三预设优化规则包括:步骤301、预先配置系统服务;步骤302、根据配置后的系统服务生成系统服务加载文件;步骤303、根据所述系统服务加载文件加载系统服务。Systemd是Linux系统工具,用来启动守护进程。文件系统启动第一个init进程,并行启动各种系统服务、挂载点、定时任务、系统设备和socket等。Linux包含了各种系统服务,例如电源管理、ssh连接服务、硬件时本文档来自技高网...
一种Linux车载信息系统快速启动方法

【技术保护点】
一种Linux车载信息系统快速启动方法,其特征在于,包括:UBOOT优化的步骤:根据第一预设优化规则对UBOOT进行优化;内核优化的步骤:根据第二优化规则对内核进行优化;Systemd优化的步骤:根据第三优化规则对Systemd进行优化;在Systemd服务中启动应用管理进程及依赖的底层服务的步骤:在Systemd服务加载过程中,当监测到系统初始化和文件系统挂载服务已启动完成,则启动应用管理进程及依赖的底层服务;启动关机前的应用程序的步骤:所述应用管理进程读取上一次关机前的应用程序ID,并启动所述ID对应的应用程序;加载GUI的步骤:所述应用程序启动完成后,加载GUI进行显示;启动其它中间件的步骤:所述GUI加载完成后,所述应用管理进程启动除所述上一次关机前的应用程序之外的应用程序的中间件服务进程及应用服务进程;连接中间件的步骤:所述中间件服务进程启动完成后,所述应用管理进程通知所述应用程序连接中间件服务进程,获取接口服务。

【技术特征摘要】
1.一种Linux车载信息系统快速启动方法,其特征在于,包括:UBOOT优化的步骤:根据第一预设优化规则对UBOOT进行优化;内核优化的步骤:根据第二优化规则对内核进行优化;Systemd优化的步骤:根据第三优化规则对Systemd进行优化;在Systemd服务中启动应用管理进程及依赖的底层服务的步骤:在Systemd服务加载过程中,当监测到系统初始化和文件系统挂载服务已启动完成,则启动应用管理进程及依赖的底层服务;启动关机前的应用程序的步骤:所述应用管理进程读取上一次关机前的应用程序ID,并启动所述ID对应的应用程序;加载GUI的步骤:所述应用程序启动完成后,加载GUI进行显示;启动其它中间件的步骤:所述GUI加载完成后,所述应用管理进程启动除所述上一次关机前的应用程序之外的应用程序的中间件服务进程及应用服务进程;连接中间件的步骤:所述中间件服务进程启动完成后,所述应用管理进程通知所述应用程序连接中间件服务进程,获取接口服务。2.根据权利要求1所述的Linux车载信息系统快速启动方法,其特征在于,所述第一预设优化规则包括:预先配置UBOOT初始化模块及环境变量;根据配置后的UBOOT初始化模块及环境变量生成启动配置文件;UBOOT根据所述启动配置文件加载启动文件。3.根据权利要求2所述的Linux车载信息系统快速启动方法,其特征在于,第一预设优化规则还包括:关闭启...

【专利技术属性】
技术研发人员:丘英方唐英才丁欣
申请(专利权)人:惠州华阳通用电子有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1