CN108958819B - 多分区系统的启动方法及多分区系统 - Google Patents

多分区系统的启动方法及多分区系统 Download PDF

Info

Publication number
CN108958819B
CN108958819B CN201810697167.6A CN201810697167A CN108958819B CN 108958819 B CN108958819 B CN 108958819B CN 201810697167 A CN201810697167 A CN 201810697167A CN 108958819 B CN108958819 B CN 108958819B
Authority
CN
China
Prior art keywords
data
partition
application
verified
verification
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.)
Active
Application number
CN201810697167.6A
Other languages
English (en)
Other versions
CN108958819A (zh
Inventor
王威
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Continental Automotive Body Electronic System Wuhu Co Ltd
Original Assignee
Continental Automotive Body Electronic System Wuhu Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Continental Automotive Body Electronic System Wuhu Co Ltd filed Critical Continental Automotive Body Electronic System Wuhu Co Ltd
Priority to CN201810697167.6A priority Critical patent/CN108958819B/zh
Publication of CN108958819A publication Critical patent/CN108958819A/zh
Application granted granted Critical
Publication of CN108958819B publication Critical patent/CN108958819B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提供一种多分区系统的启动方法,多分区系统包括引导分区与多个应用分区,其中第一应用分区设置有基准校验数据区,其他应用分区设置有待校验数据区,所述方法包括以下步骤:引导程序启动时,读取第一应用分区的基准校验数据区;对应用分区进行校验,如果存在未通过校验的应用分区,引导程序停止启动;如果所有应用分区通过校验,启动第一应用分区中存储的应用程序。本发明还提供一种多分区系统。本发明提供的多分区系统的启动方法及多分区系统,引导程序启动时,根据基准校验数据区中的数据及相应的待校验数据区中的数据,对应用分区进行校验,如果存在未通过校验的应用分区,引导程序停止启动,以保证多分区系统安全启动。

Description

多分区系统的启动方法及多分区系统
技术领域
本发明涉及汽车领域,具体涉及多分区系统的启动方法及多分区系统。
背景技术
车辆中使用的电子控制单元(Electronic Control Unit,ECU)中使用的系统越来越大,为了实现快速更新,通常采用多个分区的方式存储引导程序、应用程序以及应用数据,更新时可以仅更新相应的分区,而不必全部更新。
具体地,ECU从引导程序开始运行,查看是否有更新请求,如果没有,直接启动应用程序;如果有,更新相应分区的数据,然后启动应用程序。
采用这样的方式,能够实现快速更新,但也会带来一些问题:如果写入非法的分区数据或写入不兼容的分区数据,应用程序可能不能正常工作,严重时会导致ECU或相关外设损伤。
发明内容
针对现有技术中存在的问题,本发明要解决的问题是提供一种多分区系统的启动方法,引导程序启动时,根据基准校验数据区中的数据及相应的待校验数据区中的数据,对应用分区进行校验,如果存在未通过校验的应用分区,引导程序停止启动,以保证多分区系统安全启动。
本发明提供一种多分区系统的启动方法,多分区系统包括引导分区与多个应用分区,其中第一应用分区设置有基准校验数据区,其他应用分区设置有待校验数据区,所述方法包括以下步骤:
-引导程序启动时,读取第一应用分区的基准校验数据区;
-根据基准校验数据区中的数据及相应的待校验数据区中的数据,对应用分区进行校验,如果存在未通过校验的应用分区,引导程序停止启动;
-如果基准校验数据区中包含的所有应用分区通过校验,启动第一应用分区中存储的应用程序。
进一步地,基准校验数据区包括其他应用分区的基准校验数据以及待校验数据存储在对应应用分区中待校验数据区中的地址。
进一步地,根据基准校验数据区中的数据及相应的待校验数据区中的数据,对应用分区进行校验,包括以下步骤:
-读取一个应用分区的基准校验数据;
-读取所述应用分区的待校验数据存储在对应应用分区的待校验数据区中的地址;
-从所述地址中读出待校验数据;
-比较基准校验数据与待校验数据,如果不一致,校验未通过;如果一致,
校验通过。
进一步地,比较基准校验数据与待校验数据,包括以下步骤:
-如果基准校验数据与待校验数据相等,或者基准校验数据包括待校验数据,判断基准校验数据与待校验数据一致。
进一步地,基准校验数据包括分区标识数据和/或应用匹配数据。
进一步地,基准校验数据区包括一条或多条记录,每条记录包括应用分区编号、基准校验数据以及待校验数据存储在对应应用分区的待校验数据区中的地址。
进一步地,引导程序停止启动时,通过诊断指令返回错误信息。
进一步地,基准校验数据区还包括引导分区的基准校验数据,引导分区设置有待校验数据区。
本发明还提供一种多分区系统,包括引导分区与多个应用分区,第一应用分区设置有基准校验数据区,其他应用分区设置有待校验数据区,引导程序启动时,根据基准校验数据区中的数据及相应的待校验数据区中的数据,对应用分区进行校验,如果存在未通过校验的应用分区,引导程序停止启动。
进一步地,多分区系统为车载电子控制单元。
与现有技术相比,本发明提供的多分区系统的启动方法及多分区系统,具有以下有益效果:引导程序启动时,根据基准校验数据区中的数据及相应的待校验数据区中的数据,对应用分区进行校验,如果存在未通过校验的应用分区,引导程序停止启动,以保证多分区系统安全启动。
附图说明
图1是本发明的一个实施例的多分区系统的分区示意图;
图2是应用分区中基准校验数据区与待校验数据区之间的关系示意图;
图3是组合仪表控制器的启动流程图。
具体实施方式
如图1、图2所示,本发明的一个实施例的多分区系统,为车载电子控制单元,具体为组合仪表控制器。
多分区系统包括引导分区与多个应用分区,引导分区用于存储引导程序,应用分区用于存储应用程序与应用数据。
本实施例中,应用分区包括第一、二、三、…、N应用分区,其中第一应用分区存储主应用程序,即组合仪表控制程序,第二、三、…、N应用分区存储应用数据,例如仪表动画数据、菜单数据等。
具体地,引导分区与第一应用分区设置在第一存储器上,第二、三、…、N应用分区设置在第二存储器上。
第一应用分区设置有基准校验数据区,其他应用分区包括待校验数据区,基准校验数据区包括其他应用分区的基准校验数据以及待校验数据存储在对应应用分区中待校验数据区中的地址。
基准校验数据区包括一条或多条记录,每条记录包括应用分区编号、基准校验数据以及待校验数据存储在对应应用分区的待校验数据区中的地址。
本实施例中,基准校验数据包括分区标识数据,用于标识当前应用分区为第一应用分区中的应用有效的分区,例如基准校验数据区包括以下数据:
Figure BDA0001713863790000041
相应地,在第二应用分区的待校验数据区,地址为地址2的存储单元内存储了5A5A,同样地,在第三应用分区与第N应用分区的待校验数据区,地址为地址3和地址N的存储单元内也存储了5A5A。
其中分区标识数据5A5A用来标识分区对于组合仪表控制程序是有效的分区,而如果指定地址对应的存储单元中存储的数据与此不一致,表示对于组合仪表控制程序,该应用分区并不是有效的分区。此时如果不进行校验,直接启动组合仪表控制程序,组合仪表有可能工作不正常。
本实施例中,多分区系统的启动方法,包括以下步骤:
-引导程序启动时,读取第一应用分区的基准校验数据区;
-根据基准校验数据区中的数据及相应的待校验数据区中的数据,对应用分区进行校验,如果存在未通过校验的应用分区,引导程序停止启动;
-如果基准校验数据区中包含的所有应用分区通过校验,启动第一应用分区中存储的组合仪表控制程序。
具体启动过程如图3所示。
根据基准校验数据区中的数据及相应的待校验数据区中的数据,对应用分区进行校验,包括以下步骤:
-读取一个应用分区的基准校验数据;
-读取所述应用分区的待校验数据存储在对应应用分区的待校验数据区中的地址;
-从所述地址中读出待校验数据;
-比较基准校验数据与待校验数据,如果不一致,校验未通过;如果一致,
校验通过。
具体以第二应用分区为例说明,读取第二应用分区的分区标识数据5A5A,读取所述应用分区-第二应用分区-的待校验数据存储在对应应用分区的待校验数据区中的地址-地址2,从地址2中读出待校验数据5A5A,比较基准校验数据与待校验数据,二者相等,校验通过;如果从地址2中读出的待校验数据不是5A5A,二者不相等,校验未通过。
这里当基准校验数据与待校验数据相等时,判断基准校验数据与待校验数据一致。
在另一个实施例中,基准校验数据包括应用匹配数据,用于标识存储在当前分区中的数据内容。
Figure BDA0001713863790000051
Figure BDA0001713863790000061
相应地,在第二应用分区的待校验数据区,地址为地址2’的存储单元内存储了03,同样地,在第三应用分区与第N应用分区的待校验数据区,地址为地址3’的存储单元内存储了04,地址为地址N’的存储单元内01。
当判断第三应用分区的基准校验数据与待校验数据是否一致时,读取的基准校验数据为“03 04 05”,从地址3’读取的待校验数据为“04”,此时基准校验数据包含待校验数据,判断基准校验数据与待校验数据一致,校验通过。
在另一个实施例中,基准校验数据区也可以同时包括分区标识数据与匹配数据。
当引导程序停止启动时,可以通过诊断方式返回错误信息,连接诊断仪即可查看错误信息。根据返回的错误信息,重新刷写相应应用分区的数据内容;重新启动,引导程序检查应用分区的有效性和/或匹配性,保证安全启动组合仪表。
除了对应用分区的有效性和/或匹配性进行校验,还可以对引导分区进行校验。
在另一个实施例中,基准校验数据区还包括引导分区的基准校验数据,引导分区设置有待校验数据区。
基准校验数据同样可以包括分区标识数据和/或应用匹配数据。
采用类似的方式,获取引导分区待校验数据区中的数据,与基准校验数据区中的引导分区的基准校验数据进行对比,如果一致,引导分区校验通过;如果不一致,引导分区校验未通过,引导程序停止启动。
这样,可以检查引导程序与第一应用分区中的应用程序的有效性和/或匹配性,以保证组合仪表安全启动。
虽然本发明已以较佳实施例披露如上,但本发明并非限定于此。任何本领域技术人员,在不脱离本发明的精神和范围内所作的各种更动与修改,均应纳入本发明的保护范围内,因此本发明的保护范围应当以权利要求所限定的范围为准。

Claims (8)

1.一种多分区系统的启动方法,其特征在于,多分区系统包括引导分区与多个应用分区,其中第一应用分区设置有基准校验数据区,其他应用分区设置有待校验数据区,所述方法包括以下步骤:
-引导程序启动时,读取第一应用分区的基准校验数据区;
-根据基准校验数据区中的数据及相应的待校验数据区中的数据,对应用分区进行校验,如果存在未通过校验的应用分区,引导程序停止启动;
-如果基准校验数据区中包含的所有应用分区通过校验,启动第一应用分区中存储的应用程序。
2.如权利要求1所述的多分区系统的启动方法,其特征在于,基准校验数据区包括其他应用分区的基准校验数据以及待校验数据存储在对应应用分区中待校验数据区中的地址。
3.如权利要求2所述的多分区系统的启动方法,其特征在于,根据基准校验数据区中的数据及相应的待校验数据区中的数据,对应用分区进行校验,包括以下步骤:
-读取一个应用分区的基准校验数据;
-读取所述应用分区的待校验数据存储在对应应用分区的待校验数据区中的地址;
-从所述地址中读出待校验数据;
-比较基准校验数据与待校验数据,如果不一致,校验未通过;如果一致,校验通过。
4.如权利要求3所述的多分区系统的启动方法,其特征在于,比较基准校验数据与待校验数据,包括以下步骤:
-如果基准校验数据与待校验数据相等,或者基准校验数据包括待校验数据,判断基准校验数据与待校验数据一致。
5.如权利要求2所述的多分区系统的启动方法,其特征在于,基准校验数据包括分区标识数据和/或应用匹配数据。
6.如权利要求2所述的多分区系统的启动方法,其特征在于,基准校验数据区包括一条或多条记录,每条记录包括应用分区编号、基准校验数据以及待校验数据存储在对应应用分区的待校验数据区中的地址。
7.如权利要求1所述的多分区系统的启动方法,其特征在于,引导程序停止启动时,通过诊断指令返回错误信息。
8.如权利要求1所述的多分区系统的启动方法,其特征在于,基准校验数据区还包括引导分区的基准校验数据,引导分区设置有待校验数据区。
CN201810697167.6A 2018-06-29 2018-06-29 多分区系统的启动方法及多分区系统 Active CN108958819B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810697167.6A CN108958819B (zh) 2018-06-29 2018-06-29 多分区系统的启动方法及多分区系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810697167.6A CN108958819B (zh) 2018-06-29 2018-06-29 多分区系统的启动方法及多分区系统

Publications (2)

Publication Number Publication Date
CN108958819A CN108958819A (zh) 2018-12-07
CN108958819B true CN108958819B (zh) 2021-12-31

Family

ID=64484295

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810697167.6A Active CN108958819B (zh) 2018-06-29 2018-06-29 多分区系统的启动方法及多分区系统

Country Status (1)

Country Link
CN (1) CN108958819B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110764486B (zh) * 2019-09-30 2020-09-29 华人运通(江苏)技术有限公司 车载控制器的运行方法、装置、车载控制器及存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6490722B1 (en) * 1999-03-30 2002-12-03 Tivo Inc. Software installation and recovery system
US8826080B2 (en) * 2011-07-29 2014-09-02 The Boeing Company Methods and systems for preboot data verification
CN103455750B (zh) * 2013-08-26 2016-08-10 北京视博数字电视科技有限公司 一种嵌入式设备的高安验证方法及装置
CN107480007B (zh) * 2017-08-15 2020-09-08 南京南瑞继保电气有限公司 一种程序冗余校验与纠错的方法

Also Published As

Publication number Publication date
CN108958819A (zh) 2018-12-07

Similar Documents

Publication Publication Date Title
US11436002B2 (en) Systems and methods for failsafe firmware upgrades
CN110178114B (zh) 车辆控制装置以及程序更新系统
US20120124419A1 (en) Networked recovery system
US20070226400A1 (en) Information processing apparatus and method of using otp memory
CN107729198B (zh) 一种Android系统固件校验方法及装置
CN107168734A (zh) 一种嵌入式系统升级备份方法
CN105468384A (zh) 车载控制器的烧写系统、方法、服务器和烧写终端
CN107567629A (zh) 在可信执行环境容器中的动态固件模块加载器
CN110737449A (zh) 用于处理设备固件的方法、装置和机器可读存储介质
CN107861746B (zh) 一种车辆电子控制单元的刷新方法及系统
CN113348110B (zh) 电子控制装置、电子控制装置的安全验证方法
CN111158968A (zh) Bios配置信息自检方法、装置及存储介质
CN108958819B (zh) 多分区系统的启动方法及多分区系统
CN109375953B (zh) 一种操作系统启动方法及装置
CN103455750B (zh) 一种嵌入式设备的高安验证方法及装置
US20060129520A1 (en) System and method for automatically updating a program in a computer
CN115828255A (zh) 升级签名固件的方法、电子设备和存储介质
KR101418451B1 (ko) 전자 제어 장치 및 그 업데이트 방법
US7490232B2 (en) Disk device using disk to rewrite firmware and firmware determination method
CN114706608A (zh) 升级固件的方法和电子设备
EP1130499A2 (en) System and method for verifying safety of software
CN104751881B (zh) 快闪存储器烧录方法
CN117574352B (zh) 一种软硬件结合的防伪方法、系统、设备及存储介质
CN109359440B (zh) 一种目标数据合法性验证方法及装置
CN113377421B (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
GR01 Patent grant
GR01 Patent grant