启动加载程序更新方法和装置制造方法及图纸

技术编号:23190658 阅读:35 留言:0更新日期:2020-01-24 16:10
本申请实施例提供一种启动加载程序更新方法和装置,启动加载程序更新方法包括:接收外部更新请求;判断第一启动加载程序是否有效,若第一启动加载程序有效,则根据更新请求对第二启动加载程序进行更新,若第一启动加载程序无效,则判断第二启动加载程序是否有效,若第二启动加载程序是有效,则根据更新请求对第一启动加载程序进行更新,能够通过设置第一启动加载程序和第二启动加载程序,改善启动加载程序更新失败导致的车载电脑刷死的问题。

【技术实现步骤摘要】
启动加载程序更新方法和装置
本申请涉及汽车安全领域,具体而言,涉及一种启动加载程序更新方法和装置。
技术介绍
目前,车载电脑(ElectronicControlUnit,简称ECU)已经普及,在ECU运行之前,都会运行启动加载程序(Bootloader)来初始化硬件设备、建立内存空间映射图,从而将ECU的软硬件环境带到一个合适状态。然而现有的ECU大多都是具备单层的Bootloader,当在开发阶段或者量产阶段软件因缺陷、法规等原因,需要升级Bootloader时,更新过程中若出现断电或其他故障导致更新中断,会使ECU刷死,无法自行恢复,只能将ECU拆卸返厂维修,十分不便。有鉴于此,如何提供一种可靠的Bootloader更新方案,是本领域技术人员需要解决的。
技术实现思路
本申请一种启动加载程序更新方法、装置、计算机设备和可读存储介质。本申请的实施例可以这样实现:第一方面,本申请实施例提供一种启动加载程序更新方法,应用于车载电脑,所述车载电脑的内存中存储有第一启动加载程序和第二启动加载程序,所述方法包括:接收外部更新请求;判断所述第一启动加载程序是否有效,若所述第一启动加载程序有效,则根据所述更新请求对所述第二启动加载程序进行更新,若所述第一启动加载程序无效,则判断所述第二启动加载程序是否有效,若所述第二启动加载程序有效,则根据所述更新请求对所述第一启动加载程序进行更新。在可选的实施方式中,判断所述第一启动加载程序是否有效的步骤包括:判断所述第一启动加载程序的标识信息是否有效,若所述标识信息有效,则判断所述第一启动加载程序是否完整;若所述标识信息无效,则判断所述第二启动加载程序是否有效;若所述第一启动加载程序完整,则判断所述第一启动加载程序的程序地址是否正确;若所述第一启动加载程序不完整,则判断所述第二启动加载程序是否有效;若所述第一启动加载程序的程序地址正确,则判定所述第一启动加载程序有效;若所述第一启动加载程序的程序地址不正确,则判断所述第二启动加载程序是否有效。在可选的实施方式中,所述车载电脑的内存中存储有第一启动加载程序的第一数据头,所述第一数据头中包括第一启动加载程序的启动确认码,所述判断所述第一启动加载程序的标识信息是否有效的步骤包括:判断所述第一启动加载程序的启动确认码是否与预设启动确认码一致,若是,则判定所述第一启动加载程序的标识信息有效,若否,则判定所述第一启动加载程序的标识信息无效。在可选的实施方式中,所述第一数据头中还包括第一启动加载程序的校验起始地址和校验结束地址,所述判断所述第一启动加载程序是否完整的步骤包括:根据所述第一启动加载程序的校验起始地址和校验结束地址计算得到所述第一启动加载程序的程序循环冗余校验值,判断所述第一启动加载程序的程序循环冗余校验值与预设的程序校验循环冗余校验值是否一致,若是,则判定所述第一启动加载程序完整,若否,则判定所述第一启动加载程序不完整。在可选的实施方式中,所述第一数据头中还包括第一启动加载程序的程序起始地址,所述判断所述第一启动加载程序的程序地址是否正确的步骤包括:根据所述第一启动加载程序的程序起始地址,计算得到所述第一启动加载程序的地址循环冗余校验值,判断所述第一启动加载程序的地址循环冗余校验值与预设的地址校验循环冗余校验值是否一致,若是,则判定所述第一启动加载程序的程序地址正确,若否,则判定所述第一启动加载程序的程序地址不正确。在可选的实施方式中,所述车载电脑的内存中存储有第二启动加载程序的第二数据头,所述根据所述更新请求对所述第二启动加载程序进行更新的步骤包括:擦除所述第二数据头的数据;接收程序更新文件,并用所述程序更新文件覆盖所述第二启动加载程序原有的文件,并更新所述第二数据头,得到更新后的第二启动加载程序。在可选的实施方式中,所述方法还包括:获取所述第一启动加载程序和所述更新后的第二启动加载程序的版本号,判断所述第一启动加载程序的版本号和所述更新后的第二启动加载程序的版本号是否不一致,若是,则根据版本号较高的启动加载程序更新版本号较低的启动加载程序。第二方面,本申请实施例提供一种启动加载程序更新装置,应用于车载电脑,所述车载电脑的内存中存储有第一启动加载程序和第二启动加载程序,所述装置包括:接收模块,用于接收外部更新请求;更新模块,用于判断所述第一启动加载程序是否有效,若所述第一启动加载程序有效,则根据所述更新请求对所述第二启动加载程序进行更新,若所述第一启动加载程序无效,则判断所述第二启动加载程序是否有效,若所述第二启动加载程序有效,则根据所述更新请求对所述第一启动加载程序进行更新。第三方面,本申请实施例提供一种计算机设备,所述计算机设备与终端设备通信连接,所述计算机设备包括处理器及存储有计算机指令的非易失性存储器,所述计算机指令被所述处理器执行时,所述计算机设备执行前述实施方式中任意一项所述的启动加载程序更新方法。第四方面,本申请实施例提供一种可读存储介质,所述可读存储介质包括计算机程序,所述计算机程序运行时控制所述可读存储介质所在计算机设备执行前述实施方式中任意一项所述的启动加载程序更新方法。本申请实施例的有益效果包括,例如:采用本申请实施例提供的启动加载程序更新方法、装置、计算机设备及可读存储介质,通过将启动加载程序巧妙地分层,改善了现有技术中单层启动加载程序在更新过程中出现意外导致车载电脑刷死,用户无法自行恢复的问题。附图说明为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。图1为本申请实施例提供的启动加载程序更新方法的步骤流程示意图;图2为图1中步骤S202的子步骤流程示意图;图3为本申请实施例提供的启动加载程序更新装置的结构示意框图;图4为本申请实施例提供的计算机设备的结构示意框图。图标:100-计算机设备;110-启动加载程序更新装置;1101-接收模块;1102-更新模块;111-存储器;112-处理器;113-通信单元。具体实施方式为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。本文档来自技高网...

【技术保护点】
1.一种启动加载程序更新方法,其特征在于,应用于车载电脑,所述车载电脑的内存中存储有第一启动加载程序和第二启动加载程序,所述方法包括:/n接收外部更新请求;/n判断所述第一启动加载程序是否有效,若所述第一启动加载程序有效,则根据所述更新请求对所述第二启动加载程序进行更新,若所述第一启动加载程序无效,则判断所述第二启动加载程序是否有效,若所述第二启动加载程序有效,则根据所述更新请求对所述第一启动加载程序进行更新。/n

【技术特征摘要】
1.一种启动加载程序更新方法,其特征在于,应用于车载电脑,所述车载电脑的内存中存储有第一启动加载程序和第二启动加载程序,所述方法包括:
接收外部更新请求;
判断所述第一启动加载程序是否有效,若所述第一启动加载程序有效,则根据所述更新请求对所述第二启动加载程序进行更新,若所述第一启动加载程序无效,则判断所述第二启动加载程序是否有效,若所述第二启动加载程序有效,则根据所述更新请求对所述第一启动加载程序进行更新。


2.根据权利要求1所述的方法,其特征在于,判断所述第一启动加载程序是否有效的步骤包括:
判断所述第一启动加载程序的标识信息是否有效,若所述标识信息有效,则判断所述第一启动加载程序是否完整;若所述标识信息无效,则判断所述第二启动加载程序是否有效;
若所述第一启动加载程序完整,则判断所述第一启动加载程序的程序地址是否正确;若所述第一启动加载程序不完整,则判断所述第二启动加载程序是否有效;
若所述第一启动加载程序的程序地址正确,则判定所述第一启动加载程序有效;若所述第一启动加载程序的程序地址不正确,则判断所述第二启动加载程序是否有效。


3.根据权利要求2所述的方法,其特征在于,所述车载电脑的内存中存储有第一启动加载程序的第一数据头,所述第一数据头中包括第一启动加载程序的启动确认码,所述判断所述第一启动加载程序的标识信息是否有效的步骤包括:
判断所述第一启动加载程序的启动确认码是否与预设启动确认码一致,若是,则判定所述第一启动加载程序的标识信息有效,若否,则判定所述第一启动加载程序的标识信息无效。


4.根据权利要求3所述的方法,其特征在于,所述第一数据头中还包括第一启动加载程序的校验起始地址和校验结束地址,所述判断所述第一启动加载程序是否完整的步骤包括:
根据所述第一启动加载程序的校验起始地址和校验结束地址计算得到所述第一启动加载程序的程序循环冗余校验值,判断所述第一启动加载程序的程序循环冗余校验值与预设的程序校验循环冗余校验值是否一致,若是,则判定所述第一启动加载程序完整,若否,则判定所述第一启动加载程序不完整。


5.根据权利要求3所述的方法,其特征在于,所述第一数据头中还包括第一启动...

【专利技术属性】
技术研发人员:车彦锋朱列铭姜辛王耀轩王端丁旭施赛健宋木森
申请(专利权)人:上海元城汽车技术有限公司
类型:发明
国别省市:上海;31

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

1