CN107168750B - 一种固件升级保护方法及系统 - Google Patents
一种固件升级保护方法及系统 Download PDFInfo
- Publication number
- CN107168750B CN107168750B CN201710428926.4A CN201710428926A CN107168750B CN 107168750 B CN107168750 B CN 107168750B CN 201710428926 A CN201710428926 A CN 201710428926A CN 107168750 B CN107168750 B CN 107168750B
- Authority
- CN
- China
- Prior art keywords
- firmware
- upgraded
- identification number
- target chip
- upgrade
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 23
- 238000010586 diagram Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
Images
Abstract
本发明公开了一种固件升级保护方法,方法包括以下步骤:接收固件升级命令;基于固件升级命令读取出待升级固件;识别预先设置在待升级固件中的固件识别号;判断固件识别号是否与目标芯片相对应;当固件识别号与目标芯片相对应时,对待升级固件进行升级。本发明能够在对固件进行实际升级之前判断出待升级的固件是否为需要升级的固件,只有当待升级固件为需要升级的固件时才对待升级固件进行升级,有效的避免了固件升级错误。本发明还公开了一种固件升级保护系统。
Description
技术领域
本发明涉及固件技术领域,更具体地说,涉及一种固件升级保护方法及系统。
背景技术
在嵌入式领域,几乎所有的产品都会涉及到固件升级这一操作。一款产品可能有不止一个芯片,而且这些芯片可能都是相同的型号,只是固件版本不一样。在对这些芯片的固件进行升级时,可能因为固件的数目过多导致混乱,例如,给固件A升级成了固件B的版本了;最终结果是导致整个系统不能正常工作,想要再重新升级,因为相应芯片的固件错误而无法正常运行,不能响应升级命令,所以无法再对该芯片做升级操作,只能用烧录器重新烧录,会造成严重的损失。
目前,有通过在芯片的固件闪存中存放两个镜像的方式来解决固件升级错误的问题,出厂时固件闪存中烧录了两个相同的镜像文件A和B,用一个缺省的镜像来运行,比如A。需要做升级操作时,会将镜像B所在的位置重写,A所在位置的镜像不变。写完后更改标志位,启动引导指向B所在镜像。重启后就会启动新升级的镜像。升级的固件错误的话,会通过引导程序切换到好的那一个镜像。采用这种方法来保护固件升级的正确性,能够达到效果,但是在升级错误后找到正确的固件需要重新再执行升级操作,做了重复操作。
发明内容
有鉴于此,本发明的目的在于提供一种固件升级保护方法及系统,能够有效的实现固件的升级操作。
为实现上述目的,本发明提供如下技术方案:
一种固件升级保护方法,所述方法包括以下步骤:
接收固件升级命令;
基于所述固件升级命令读取出待升级固件;
识别预先设置在所述待升级固件中的固件识别号;
判断所述固件识别号是否与目标芯片相对应;
当所述固件识别号与目标芯片相对应时,对所述待升级固件进行升级。
优选地,当所述固件识别号与目标芯片不对应时,生成固件识别号与目标芯片不相符的提示信息。
优选地,所述当所述固件识别号与目标芯片相对应时,对所述待升级固件进行升级具体为:
将升级文件传送至所述待升级固件对应的目标芯片,等待所述目标芯片写入闪存成功后结束固件升级。
一种固件升级保护系统,包括:
接收模块,用于接收固件升级命令;
读取模块,用于基于所述固件升级命令读取出待升级固件;
识别模块,用于识别预先设置在所述待升级固件中的固件识别号;
判断模块,用于判断所述固件识别号是否与目标芯片相对应;
处理模块,用于当所述固件识别号与目标芯片相对应时,对所述待升级固件进行升级。
优选地,所述系统还包括:
生成模块,用于,当所述固件识别号与目标芯片不对应时,生成固件识别号与目标芯片不相符的提示信息。
优选地,所述处理模块具体用于:
将升级文件传送至所述待升级固件对应的目标芯片,等待所述目标芯片写入闪存成功后结束固件升级。
从上述技术方案可以看出,本发明公开了一种固件升级保护方法,当需要对固件升级进行保护时,首先接收固件升级命令,然后根据接收到的固件升级命令读取出待升级固件,并且识别出预先设置在待升级固件中的固件识别号,然后进一步判断固件识别号是否与目标芯片相对应,当固件识别号与目标芯片相对应时,对待升级固件进行升级处理,在对固件进行升级的过程中,能够在对固件进行实际升级之前判断出待升级的固件是否为需要升级的固件,只有当待升级固件为需要升级的固件时才对待升级固件进行升级,有效的避免了固件升级错误。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本发明公开的一种固件升级保护方法实施例1的流程图;
图2为本发明公开的一种固件升级保护方法实施例2的流程图;
图3为本发明公开的一种固件升级保护系统实施例1的结构示意图;
图4为本发明公开的一种固件升级保护系统实施例2的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
如图1所示,为本发明公开的一种固件升级保护方法的实施例1的流程图,本方法包括以下步骤:
S101、接收固件升级命令;
当需要对固件进行升级时,首选接收用于固件升级的固件升级命令。
S102、基于固件升级命令读取出待升级固件;
然后根据接收到的固件升级命令,根据命令中携带的信息查找到对应的待升级固件。
S103、识别预先设置在待升级固件中的固件识别号;
当读取出待升级固件后,进一步识别待升级固件中的固件识别号,其中,所述的固件识别号为在编译固件时对固件文件添加的头部信息。例如,一个系统中有N个芯片,那么固件的头部信息除去添加日期,名称等信息,在添加一个固件识别号。一个固件识别号对应一个芯片,例如固件识别号1的固件对应第1号芯片,固件识别号2的固件对应第2号芯片,固件识别号为N的固件对应第N号芯片。
S104、判断固件识别号是否与目标芯片相对应;
然后进一步判断固件识别号是否与目标芯片相对应,即判断是否与待升级的芯片的参数相符合。
S105、当固件识别号与目标芯片相对应时,对待升级固件进行升级。
当判断固件识别号与目标芯片相对应时,然后执行对待升级固件的生成处理程序。
综上所述,在上述实施例中,当需要对固件升级进行保护时,首先接收固件升级命令,然后根据接收到的固件升级命令读取出待升级固件,并且识别出预先设置在待升级固件中的固件识别号,然后进一步判断固件识别号是否与目标芯片相对应,当固件识别号与目标芯片相对应时,对待升级固件进行升级处理,在对固件进行升级的过程中,能够在对固件进行实际升级之前判断出待升级的固件是否为需要升级的固件,只有当待升级固件为需要升级的固件时才对待升级固件进行升级,有效的避免了固件升级错误。
如图2所示,为本发明公开的一种固件升级保护方法的实施例2的流程图,本方法包括以下步骤:
S201、接收固件升级命令;
当需要对固件进行升级时,首选接收用于固件升级的固件升级命令。
S202、基于固件升级命令读取出待升级固件;
然后根据接收到的固件升级命令,根据命令中携带的信息查找到对应的待升级固件。
S203、识别预先设置在待升级固件中的固件识别号;
当读取出待升级固件后,进一步识别待升级固件中的固件识别号,其中,所述的固件识别号为在编译固件时对固件文件添加的头部信息。例如,一个系统中有N个芯片,那么固件的头部信息除去添加日期,名称等信息,在添加一个固件识别号。一个固件识别号对应一个芯片,例如固件识别号1的固件对应第1号芯片,固件识别号2的固件对应第2号芯片,固件识别号为N的固件对应第N号芯片。
S204、判断固件识别号是否与目标芯片相对应;
然后进一步判断固件识别号是否与目标芯片相对应,即判断是否与待升级的芯片的参数相符合。
S205、当固件识别号与目标芯片相对应时,将升级文件传送至所述待升级固件对应的目标芯片,等待所述目标芯片写入闪存成功后结束固件升级;
当判断固件识别号与目标芯片相对应时,然后执行对待升级固件的生成处理程序,将升级文件传送至待升级固件对应的目标芯片,等待目标芯片写入闪存成功后完成固件升级。
S206、当固件识别号与目标芯片不对应时,生成固件识别号与目标芯片不相符的提示信息。
当固件识别号与目标芯片不对应时,程序报错,提示固件信息与芯片不符,这样通过一个固件识别号阻断了可能人为导致固件同对应芯片不相符的操作,阻断了因为固件文件搞混了导致系统不能正常运行的可能。
综上所述,在上述实施例中,当需要对固件升级进行保护时,首先接收固件升级命令,然后根据接收到的固件升级命令读取出待升级固件,并且识别出预先设置在待升级固件中的固件识别号,然后进一步判断固件识别号是否与目标芯片相对应,当固件识别号与目标芯片相对应时,对待升级固件进行升级处理,在对固件进行升级的过程中,能够在对固件进行实际升级之前判断出待升级的固件是否为需要升级的固件,只有当待升级固件为需要升级的固件时才对待升级固件进行升级,有效的避免了固件升级错误。
如图3所示,为本发明公开的一种固件升级保护系统的实施例1的结构示意图,本系统包括:
接收模块301,用于接收固件升级命令;
当需要对固件进行升级时,首选接收用于固件升级的固件升级命令。
读取模块302,用于基于固件升级命令读取出待升级固件;
然后根据接收到的固件升级命令,根据命令中携带的信息查找到对应的待升级固件。
识别模块303,用于识别预先设置在待升级固件中的固件识别号;
当读取出待升级固件后,进一步识别待升级固件中的固件识别号,其中,所述的固件识别号为在编译固件时对固件文件添加的头部信息。例如,一个系统中有N个芯片,那么固件的头部信息除去添加日期,名称等信息,在添加一个固件识别号。一个固件识别号对应一个芯片,例如固件识别号1的固件对应第1号芯片,固件识别号2的固件对应第2号芯片,固件识别号为N的固件对应第N号芯片。
判断模块304,用于判断固件识别号是否与目标芯片相对应;
然后进一步判断固件识别号是否与目标芯片相对应,即判断是否与待升级的芯片的参数相符合。
处理模块305,用于当固件识别号与目标芯片相对应时,对待升级固件进行升级。
当判断固件识别号与目标芯片相对应时,然后执行对待升级固件的生成处理程序。
综上所述,在上述实施例中,当需要对固件升级进行保护时,首先接收固件升级命令,然后根据接收到的固件升级命令读取出待升级固件,并且识别出预先设置在待升级固件中的固件识别号,然后进一步判断固件识别号是否与目标芯片相对应,当固件识别号与目标芯片相对应时,对待升级固件进行升级处理,在对固件进行升级的过程中,能够在对固件进行实际升级之前判断出待升级的固件是否为需要升级的固件,只有当待升级固件为需要升级的固件时才对待升级固件进行升级,有效的避免了固件升级错误。
如图4所示,为本发明公开的一种固件升级保护系统的实施例2的结构示意图,本系统包括:
接收模块401,用于接收固件升级命令;
当需要对固件进行升级时,首选接收用于固件升级的固件升级命令。
读取模块402,用于基于固件升级命令读取出待升级固件;
然后根据接收到的固件升级命令,根据命令中携带的信息查找到对应的待升级固件。
识别模块403,用于识别预先设置在待升级固件中的固件识别号;
当读取出待升级固件后,进一步识别待升级固件中的固件识别号,其中,所述的固件识别号为在编译固件时对固件文件添加的头部信息。例如,一个系统中有N个芯片,那么固件的头部信息除去添加日期,名称等信息,在添加一个固件识别号。一个固件识别号对应一个芯片,例如固件识别号1的固件对应第1号芯片,固件识别号2的固件对应第2号芯片,固件识别号为N的固件对应第N号芯片。
判断模块404,用于判断固件识别号是否与目标芯片相对应;
然后进一步判断固件识别号是否与目标芯片相对应,即判断是否与待升级的芯片的参数相符合。
处理模块405,用于当固件识别号与目标芯片相对应时,将升级文件传送至所述待升级固件对应的目标芯片,等待所述目标芯片写入闪存成功后结束固件升级;
当判断固件识别号与目标芯片相对应时,然后执行对待升级固件的生成处理程序,将升级文件传送至待升级固件对应的目标芯片,等待目标芯片写入闪存成功后完成固件升级。
生成模块406,用于当固件识别号与目标芯片不对应时,生成固件识别号与目标芯片不相符的提示信息。
当固件识别号与目标芯片不对应时,程序报错,提示固件信息与芯片不符,这样通过一个固件识别号阻断了可能人为导致固件同对应芯片不相符的操作,阻断了因为固件文件搞混了导致系统不能正常运行的可能。
综上所述,在上述实施例中,当需要对固件升级进行保护时,首先接收固件升级命令,然后根据接收到的固件升级命令读取出待升级固件,并且识别出预先设置在待升级固件中的固件识别号,然后进一步判断固件识别号是否与目标芯片相对应,当固件识别号与目标芯片相对应时,对待升级固件进行升级处理,在对固件进行升级的过程中,能够在对固件进行实际升级之前判断出待升级的固件是否为需要升级的固件,只有当待升级固件为需要升级的固件时才对待升级固件进行升级,有效的避免了固件升级错误。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (6)
1.一种固件升级保护方法,其特征在于,所述方法包括以下步骤:
接收固件升级命令;
基于所述固件升级命令中携带的信息,读取出对应所述信息的待升级固件;
识别预先设置在所述待升级固件中的固件识别号;
判断所述固件识别号是否与目标芯片相对应;
当所述固件识别号与目标芯片相对应时,对所述待升级固件进行升级。
2.根据权利要求1所述的方法,其特征在于,当所述固件识别号与目标芯片不对应时,生成固件识别号与目标芯片不相符的提示信息。
3.根据权利要求2所述的方法,其特征在于,所述当所述固件识别号与目标芯片相对应时,对所述待升级固件进行升级具体为:
将升级文件传送至所述待升级固件对应的目标芯片,等待所述目标芯片写入闪存成功后结束固件升级。
4.一种固件升级保护系统,其特征在于,包括:
接收模块,用于接收固件升级命令;
读取模块,用于基于所述固件升级命令中携带的信息,读取出对应所述信息的待升级固件;
识别模块,用于识别预先设置在所述待升级固件中的固件识别号;
判断模块,用于判断所述固件识别号是否与目标芯片相对应;
处理模块,用于当所述固件识别号与目标芯片相对应时,对所述待升级固件进行升级。
5.根据权利要求4所述的系统,其特征在于,还包括:
生成模块,用于当所述固件识别号与目标芯片不对应时,生成固件识别号与目标芯片不相符的提示信息。
6.根据权利要求5所述的系统,其特征在于,所述处理模块具体用于:
将升级文件传送至所述待升级固件对应的目标芯片,等待所述目标芯片写入闪存成功后结束固件升级。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710428926.4A CN107168750B (zh) | 2017-06-08 | 2017-06-08 | 一种固件升级保护方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710428926.4A CN107168750B (zh) | 2017-06-08 | 2017-06-08 | 一种固件升级保护方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107168750A CN107168750A (zh) | 2017-09-15 |
CN107168750B true CN107168750B (zh) | 2021-03-12 |
Family
ID=59825663
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710428926.4A Active CN107168750B (zh) | 2017-06-08 | 2017-06-08 | 一种固件升级保护方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107168750B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110268386A (zh) * | 2018-01-19 | 2019-09-20 | 深圳市大疆创新科技有限公司 | 一种固件升级方法、装置、电子设备及控制设备 |
CN108920159B (zh) * | 2018-06-29 | 2022-06-24 | 广州视源电子科技股份有限公司 | 一种安全升级方法、装置及电子设备 |
CN110750285B (zh) * | 2019-10-17 | 2023-08-04 | 和美(深圳)信息技术股份有限公司 | 固件升级方法、装置、计算机设备和存储介质 |
CN115469910B (zh) * | 2022-11-15 | 2023-02-03 | 浙江日风电气股份有限公司 | 一种光伏逆变器固件更新的方法、装置、系统及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104506539A (zh) * | 2014-12-26 | 2015-04-08 | 珠海迈越信息技术有限公司 | 一种基于固件更新的服务器识别方法及装置 |
CN106020875A (zh) * | 2016-05-16 | 2016-10-12 | 北京奇虎科技有限公司 | 嵌入式终端的固件更新管理方法和装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102591670A (zh) * | 2011-01-12 | 2012-07-18 | 鸿富锦精密工业(深圳)有限公司 | 固件升级系统及方法 |
CN103984581A (zh) * | 2014-05-30 | 2014-08-13 | 乐视致新电子科技(天津)有限公司 | 芯片的固件升级方法和固件升级装置 |
CN106681766B (zh) * | 2016-12-26 | 2021-04-27 | 广东芬尼克兹节能设备有限公司 | 远程固件升级控制方法及系统 |
-
2017
- 2017-06-08 CN CN201710428926.4A patent/CN107168750B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104506539A (zh) * | 2014-12-26 | 2015-04-08 | 珠海迈越信息技术有限公司 | 一种基于固件更新的服务器识别方法及装置 |
CN106020875A (zh) * | 2016-05-16 | 2016-10-12 | 北京奇虎科技有限公司 | 嵌入式终端的固件更新管理方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN107168750A (zh) | 2017-09-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107168750B (zh) | 一种固件升级保护方法及系统 | |
CN106095620B (zh) | 一种嵌入式Linux存储分区的开发方法 | |
CN109358882B (zh) | 一种电视终端进行固件升级的方法及装置 | |
CN104025047A (zh) | 信息处理装置、信息处理方法以及计算机程序 | |
CN109062790B (zh) | 车载终端蓝牙固件的升级测试方法 | |
CN109358887B (zh) | 一种单片机程序的在线升级方法、装置及系统 | |
CN111142911B (zh) | 具有异常恢复功能的嵌入式系统及其升级方法 | |
CN105468384A (zh) | 车载控制器的烧写系统、方法、服务器和烧写终端 | |
CN102141921A (zh) | 一种终端设备系统升级方法及终端设备 | |
CN104536841B (zh) | 一种Android系统Data分区自修复方法及系统 | |
CN111045713A (zh) | 一种计算机系统的升级方法、系统及装置 | |
CN112540725A (zh) | 非易失性数据存储方法、嵌入式系统以及存储介质 | |
CN111045712A (zh) | 一种具有备份功能的单系统升级方法及系统 | |
CN105320540A (zh) | 一种安卓应用的批量安装方法及系统 | |
CN111190621A (zh) | 固件烧录方法、装置、系统、终端设备及存储介质 | |
CN113656049B (zh) | 一种操作系统部署方法、装置及电子设备和存储介质 | |
CN108170456B (zh) | 电子设备的固件升级方法及装置 | |
CN105045671A (zh) | 一种智能终端的系统升级方法及装置 | |
CN109032612B (zh) | 混合型应用的接口调用方法、装置及计算机可读存储介质 | |
US9659661B2 (en) | EEPROM backup method and device | |
CN113220319A (zh) | 一种数据更新方法、装置及车辆 | |
CN105159714B (zh) | 一种pmic初始化方法和电子设备 | |
CN110928570A (zh) | 一种固件升级的方法及装置、可读存储介质 | |
CN116431186A (zh) | 一种车载ecu的升级方法、装置及介质 | |
CN106020918B (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 | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20210219 Address after: Building 9, No.1, guanpu Road, Guoxiang street, Wuzhong Economic Development Zone, Wuzhong District, Suzhou City, Jiangsu Province Applicant after: SUZHOU LANGCHAO INTELLIGENT TECHNOLOGY Co.,Ltd. Address before: Room 1601, floor 16, 278 Xinyi Road, Zhengdong New District, Zhengzhou City, Henan Province Applicant before: ZHENGZHOU YUNHAI INFORMATION TECHNOLOGY Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |