CN103617246A - 一种固件版本更新方法及系统 - Google Patents
一种固件版本更新方法及系统 Download PDFInfo
- Publication number
- CN103617246A CN103617246A CN201310619668.XA CN201310619668A CN103617246A CN 103617246 A CN103617246 A CN 103617246A CN 201310619668 A CN201310619668 A CN 201310619668A CN 103617246 A CN103617246 A CN 103617246A
- Authority
- CN
- China
- Prior art keywords
- firmware
- newly
- increased
- file size
- file
- 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
- 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/44568—Immediately runnable code
- G06F9/44578—Preparing or optimising for loading
Abstract
本发明公开一种固件版本更新方法及系统。所述方法包括以下步骤:A、移动终端检测到存储卡中有新增固件或通过网络检测到服务器上新增固件信息,获取该新增固件的文件大小信息;B、将所获取的新增固件文件大小信息与预先存储的当前固件的文件大小信息进行比较判断,若所获取的新增固件文件大小大于当前固件的文件大小,则执行步骤C;C、将固件更新为所述新增固件。本发明通过设置固件版本与固件文件大小的对应关系,进而实现固件更新时只需根据固件文件大小就能标识出固件版本,避免了因存储版本信息造成的文件增大或者是远程无法获取最新固件版本的问题。方便了固件的及时更新。
Description
技术领域
本发明涉及固件更新技术,尤其涉及一种固件版本更新方法及系统。
背景技术
移动终端经常需要更新固件,而更新之前需要先获取固件的版本,与正在使用的固件版本进行比较,若固件的版本比正在使用的固件版本新则更新固件,否则不更新固件。因此,对于固件中版本信息的标识非常重要,在现有的技术方案中,需要在固件中专门划出一块区域用于保存固件版本,这种方案使固件文件无形中增加了文件大小;另外,当使用网络等远程方式进行固件更新时,现有技术方案需要先下载固件,然后从固件中获取版本信息,而有可能下载的固件版本比正在使用的要旧,造成了一次多余的下载。
因此,现有技术还有待于改进和发展。
发明内容
鉴于上述现有技术的不足,本发明的目的在于提供一种固件版本更新方法及系统,旨在解决目前固件版本信息存储增加固件文件大小以及远程固件更新出现的无用下载问题。
本发明的技术方案如下:
一种固件版本更新方法,其中,所述方法包括以下步骤:
A、移动终端检测到存储卡中有新增固件或通过网络检测到服务器上新增固件信息,获取该新增固件的文件大小信息;
B、将所获取的新增固件文件大小信息与预先存储的当前固件的文件大小信息进行比较判断,若所获取的新增固件文件大小大于当前固件的文件大小,则执行步骤C;
C、将固件更新为所述新增固件。
所述的固件版本更新方法,其特征在于,所述步骤C还包括:将所述新增固件的文件大小信息进行保存。
所述的固件版本更新方法,其中,所述步骤A具体为:移动终端检测存储卡中文件的文件类型是否存在固件文件类型,若存在,则获取该固件文件的文件大小信息。
所述的固件版本更新方法,其中,所述步骤A具体为:移动终端通过网络接收到服务器发送的新增固件信息后,向服务器发送获取该新增固件文件大小信息的命令,服务器接收该命令并按照命令获取所述新增固件的文件大小信息,并将该新增固件的文件大小信息发送至移动终端。
所述的固件版本更新方法,其中,若所获取的新增固件文件大小小于或等于当前固件的文件大小,则不进行固件更新。
所述的固件版本更新方法,其中,所述步骤A之前还包括:按照预先设置的固件版本与固件文件大小的对应表设置所述新增固件的文件大小,在所述新增固件中添加一定大小的冗余字段使添加冗余字段后的新增固件的文件大小与该固件版本所对应的文件大小一致。
所述的固件版本更新方法,其中,所述固件版本与固件文件大小的对应表中,固件版本越高、固件文件越大。
所述的固件版本更新方法,其中,所述步骤C具体为:提取所述新增固件中的原始固件,将固件更新为该原始固件。
一种具有如上所述的固件版本更新方法的系统,其中,所述系统包括:
固件检测模块,用于检测到存储卡中有新增固件或通过网络检测到服务器上新增固件信息;
固件文件大小信息获取模块,用于获取该新增固件的文件大小信息;
固件文件大小比较模块,用于将所获取的新增固件文件大小信息与预先存储的当前固件的文件大小信息进行比较判断;
固件更新模块,用于将固件更新为所述新增固件。
所述的固件版本更新系统,其中,所述系统还包括:
固件文件大小信息保存模块,用于将所述新增固件的文件大小信息进行保存。
有益效果:本发明提供一种固件版本更新方法及系统,通过设置固件版本与固件文件大小的对应关系,进而实现固件更新时只需根据固件文件大小就能标识出固件版本,避免了因存储版本信息造成的文件增大或者是远程无法获取最新固件版本的问题。方便了固件的及时更新。
附图说明
图1为本发明的固件版本更新方法流程图。
图2为较佳实施例中移动终端显示固件检测操作界面示意图。
图3为固件文件结构示意图。
图4为本发明的固件版本更新系统的原理框图。
图5为本发明的固件更新模块的原理框图。
图6为本发明的较佳实施例中固件版本更新系统的原理框图。
图7为本发明的较佳实施例的固件版本更新方法流程图。
具体实施方式
本发明提供一种固件版本更新方法及系统,为使本发明的目的、技术方案及效果更加清楚、明确,以下对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示的一种固件版本更新方法,其中,所述方法包括以下步骤:
S100、移动终端检测到存储卡中有新增固件或通过网络检测到服务器上新增固件信息,获取该新增固件的文件大小信息。
移动终端检测到新增固件信息一般有两条途径,其中之一是移动终端检测存储卡中文件的文件类型是否存在固件文件类型,若存在,则获取该固件文件的文件大小信息。具体实施例中,以文件名后缀来.fw确定文件是否为固件文件,因此,当检测到fw文件时,则认为该文件就是固件文件。
检测新增固件的另一条途径是:移动终端通过网络接收到服务器发送的新增固件信息后,向服务器发送获取该新增固件文件大小信息的命令,服务器接收该命令并按照命令获取所述新增固件的文件大小信息,并将该新增固件的文件大小信息发送至移动终端。
较佳实施例中,新增固件的检测是通过接收用户的指令触发的,移动终端屏幕显示如图2所示的操作界面,操作界面上设置有检测SD卡中的固件或者检测网络新增固件两个选择,用户点选其中一个则触发相应的固件检测过程,例如当选择“检测SD卡中的固件”的ON选项时,开始检测SD卡中的是否存在固件文件。方法如上所述。
另一较佳实施例中,移动终端周期性检测存储卡中的文件或服务器主动向移动终端发送新增固件信息,当检测到存储卡或服务器中有相应的新增固件信息时,向用户显示该新增固件信息并询问是否进一步对该新增固件的版本进行判断,即进行步骤S200。
S200、将所获取的新增固件文件大小信息与预先存储的当前固件的文件大小信息进行比较判断,若所获取的新增固件文件大小大于当前固件的文件大小,则执行步骤S300。
移动终端将当前(即正在使用的)固件的文件大小信息存储在相应存储区域,该文件大小信息其实就是文件大小的值。移动终端将所获取的新增固件的文件大小的值与所存储的当前固件的文件大小值进行比较,如果所获取的新增固件文件大小值小于或等于当前固件的文件大小,则不进行固件更新。如果相反,则执行步骤S300。
S300、将固件更新为所述新增固件。并将所述新增固件的文件大小信息进行保存。即将该新增固件的文件大小保存到存储区域,也可直接替换掉更新之前的固件的文件大小。
在实施本发明的固件更新方法之前需要对个版本固件的文件大小进行处理。按照预先设置的固件版本与固件文件大小的对应表设置所述新增固件的文件大小,所述固件版本与固件文件大小的对应表中,固件版本越高、固件文件越大。这样按照该对应表制作的固件才能通过判断固件文件大小来识别固件版本。
固件处理的具体实施例中,根据上述的对应表,在所述新增固件中添加一定大小的冗余字段使添加冗余字段后的新增固件的文件大小与该固件版本所对应的文件大小一致。
目前,固件文件结构如图3所示1包括以下部分,原始固件,尾码,冗余字段;原始固件为固件文件中实际有用的部分,尾码为一定长度的码,尾码之前部分为原始固件,尾码之后部分为冗余字段,冗余字段为无任何意义,只为了填充进固件文件使该固件文件的大小为指定大小。
因此,正如前述,固件提供者按照固件版本与固件文件大小的对应表,在原始固件之后加上尾码再加上相应大小的冗余字段使固件文件的大小为该固件版本对应的文件大小即可。当移动终端需在更新固件时,将该固件中的尾码与冗余字段去除即为原始固件。例如,具体实施例中,尾码为0xDEADBEAF,依次判断固件文件的每一个字节,当识别到连续四个字节依次为0xDE、0xAD、0xBE、0xEF时,提取0xDE、0xAD、0xBE、0xEF四个字节之前为原始固件,更新固件时只更新为原始固件,而上述四个字节之后的为冗余字段,用0xFF来填充。如果固件提供者本次需要提供一个文件大小为X字节的固件,而原始固件大小为Y字节,则在这Y字节的原始固件之后添加0xDEADBEAF再添加X-Y-4字节的0xFF便生成最终发布的固件。
如图4所示的一种具有如上所述的固件版本更新方法的系统,其中,所述系统包括:
固件检测模块110,用于检测到存储卡中有新增固件或通过网络检测到服务器上新增固件信息,具体如步骤S100所述;
固件文件大小信息获取模块120,用于获取该新增固件的文件大小信息,具体如步骤S100所述;
固件文件大小比较模块130,用于将所获取的新增固件文件大小信息与预先存储的当前固件的文件大小信息进行比较判断,具体如步骤S200所述;
固件更新模块140,用于将固件更新为所述新增固件。由于固件更新时只更新原始固件,所以如图5所示,所述固件更新模块140中还进一步设置有原始固件提取模块用于提取固件文件中的原始固件来进行更新,具体如步骤S300所述。
较佳实施例中,所述系统还包括:
固件文件大小信息保存模块150,用于将所述新增固件的文件大小信息进行保存。
具体实施例中,本发明的用于检测SD卡上固件的固件版本更新系统如图6所示,该系统包括中央处理器100、SD卡200、触摸屏300,中央处理器100分别与SD卡200和触摸屏300相连接。
中央处理器100包括固件检测模块110、固件文件大小信息获取模块120、固件文件大小比较模块130、固件更新模块140、固件文件大小信息保存模块150;
通过手动触发固件检测模块110启动,例如利用如图2所示操作界面来启动,固件检测模块110将检测SD卡中是否存在文件名后缀为.fw的固件文件,若检测到.fw的文件,便知道该文件就是固件文件。
固件检测模块110将所获取的新增固件信息发送给固件文件大小信息获取模块120、固件文件大小信息获取模块120获取固件检测模块110检测到的固件的文件大小。
固件文件大小信息获取模块120将所获取的固件文件大小信息发送到固件文件大小比较模块130,比较固件文件大小信息获取模块120获取的固件文件大小与固件文件大小信息保存模块150中保存的正在使用的固件的文件大小,若大于则通知固件更新模块140更新固件,若小于或等于则不更新固件。
当固件更新模块140更新固件后会将所更新的固件的文件大小信息存储在固件文件大小信息保存模块150中。
如图7是基于如图6所示的固件版本更新系统的较佳方法流程图,方法步骤如下:
S1、用户选择固件更新功能,之后执行步骤S2;
S2、固件检测模块检测SD卡中是否存在后缀为.fw的文件,如果存在则执行步骤S3,否则执行步骤S7;
S3、固件文件大小信息获取模块获取步骤S2中获取的.fw文件的文件大小,之后执行步骤S4;
S4、固件文件大小比较模块比较所获取的.fw文件的文件大小与固件文件大小信息保存模块中保存的正在使用的固件的文件大小,如果大于则执行步骤S5,否则执行步骤S7;
S5、原始固件提取模块提取固件文件中的原始固件,并由固件更新模块将触摸屏更新为该原始固件,之后执行步骤S6;
S6、将该固件文件的文件大小写入固件文件大小信息保存模块中;
S7、固件未更新。
本发明提供一种固件版本更新方法及系统,通过设置固件版本与固件文件大小的对应关系,进而实现固件更新时只需根据固件文件大小就能标识出固件版本,避免了因存储版本信息造成的文件增大或者是远程无法获取最新固件版本的问题。方便了固件的及时更新。
应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。
Claims (10)
1.一种固件版本更新方法,其特征在于,所述方法包括以下步骤:
A、移动终端检测到存储卡中有新增固件或通过网络检测到服务器上新增固件信息,获取该新增固件的文件大小信息;
B、将所获取的新增固件文件大小信息与预先存储的当前固件的文件大小信息进行比较判断,若所获取的新增固件文件大小大于当前固件的文件大小,则执行步骤C;
C、将固件更新为所述新增固件。
2.根据权利要求1所述的固件版本更新方法,其特征在于,所述步骤C还包括:将所述新增固件的文件大小信息进行保存。
3.根据权利要求1所述的固件版本更新方法,其特征在于,所述步骤A具体为:移动终端检测存储卡中文件的文件类型是否存在固件文件类型,若存在,则获取该固件文件的文件大小信息。
4.根据权利要求1所述的固件版本更新方法,其特征在于,所述步骤A具体为:移动终端通过网络接收到服务器发送的新增固件信息后,向服务器发送获取该新增固件文件大小信息的命令,服务器接收该命令并按照命令获取所述新增固件的文件大小信息,并将该新增固件的文件大小信息发送至移动终端。
5.根据权利要求1所述的固件版本更新方法,其特征在于,若所获取的新增固件文件大小小于或等于当前固件的文件大小,则不进行固件更新。
6.根据权利要求1所述的固件版本更新方法,其特征在于,所述步骤A之前还包括:按照预先设置的固件版本与固件文件大小的对应表设置所述新增固件的文件大小,在所述新增固件中添加一定大小的冗余字段使添加冗余字段后的新增固件的文件大小与该固件版本所对应的文件大小一致。
7.根据权利要求6所述的固件版本更新方法,其特征在于,所述固件版本与固件文件大小的对应表中,固件版本越高、固件文件越大。
8.根据权利要求1所述的固件版本更新方法,其特征在于,所述步骤C具体为:提取所述新增固件中的原始固件,将固件更新为该原始固件。
9.一种采用权利要求1-8任一项所述的固件版本更新方法的系统,其特征在于,所述系统包括:
固件检测模块,用于检测到存储卡中有新增固件或通过网络检测到服务器上新增固件信息;
固件文件大小信息获取模块,用于获取该新增固件的文件大小信息;
固件文件大小比较模块,用于将所获取的新增固件文件大小信息与预先存储的当前固件的文件大小信息进行比较判断;
固件更新模块,用于将固件更新为所述新增固件。
10.根据权利要求9所述的固件版本更新系统,其特征在于,所述系统还包括:
固件文件大小信息保存模块,用于将所述新增固件的文件大小信息进行保存。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310619668.XA CN103617246A (zh) | 2013-11-29 | 2013-11-29 | 一种固件版本更新方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310619668.XA CN103617246A (zh) | 2013-11-29 | 2013-11-29 | 一种固件版本更新方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103617246A true CN103617246A (zh) | 2014-03-05 |
Family
ID=50167949
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310619668.XA Pending CN103617246A (zh) | 2013-11-29 | 2013-11-29 | 一种固件版本更新方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103617246A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104978222A (zh) * | 2015-06-25 | 2015-10-14 | 上海卓易科技股份有限公司 | 一种检测系统更新的方法及装置 |
CN105511908A (zh) * | 2015-11-26 | 2016-04-20 | Tcl移动通信科技(宁波)有限公司 | 一种基于移动终端的cpu参数升级方法及系统 |
CN106326048A (zh) * | 2016-08-11 | 2017-01-11 | 广东欧珀移动通信有限公司 | 外部存储设备的检测方法和装置 |
CN106502453A (zh) * | 2016-10-14 | 2017-03-15 | 惠州Tcl移动通信有限公司 | 一种基于移动终端防止触摸屏失灵的方法及系统 |
CN107678762A (zh) * | 2017-09-26 | 2018-02-09 | 杭州中天微系统有限公司 | 一种系统版本升级方法及装置 |
US11640288B2 (en) | 2017-09-26 | 2023-05-02 | C-Sky Microsystems Co., Ltd. | System version upgrading method and apparatus |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1469252A (zh) * | 2002-06-21 | 2004-01-21 | �Ҵ���˾ | 在数据处理系统中保持固件版本的方法和系统 |
CN1675628A (zh) * | 2002-08-19 | 2005-09-28 | 讯宝科技公司 | 自动化固件维护系统及方法 |
CN101026464A (zh) * | 2006-02-25 | 2007-08-29 | 宇龙计算机通信科技(深圳)有限公司 | 无线终端的无线升级方法和无线升级系统 |
CN101141729A (zh) * | 2006-09-07 | 2008-03-12 | 三星电子株式会社 | 移动终端的固件更新方法及使用该方法的移动终端 |
CN102693135A (zh) * | 2011-03-21 | 2012-09-26 | 国基电子(上海)有限公司 | 具系统升级文件传送功能的计算机及方法 |
-
2013
- 2013-11-29 CN CN201310619668.XA patent/CN103617246A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1469252A (zh) * | 2002-06-21 | 2004-01-21 | �Ҵ���˾ | 在数据处理系统中保持固件版本的方法和系统 |
CN1675628A (zh) * | 2002-08-19 | 2005-09-28 | 讯宝科技公司 | 自动化固件维护系统及方法 |
CN101026464A (zh) * | 2006-02-25 | 2007-08-29 | 宇龙计算机通信科技(深圳)有限公司 | 无线终端的无线升级方法和无线升级系统 |
CN101141729A (zh) * | 2006-09-07 | 2008-03-12 | 三星电子株式会社 | 移动终端的固件更新方法及使用该方法的移动终端 |
CN102693135A (zh) * | 2011-03-21 | 2012-09-26 | 国基电子(上海)有限公司 | 具系统升级文件传送功能的计算机及方法 |
Non-Patent Citations (1)
Title |
---|
廖德娟: "用C#实现C/S模式下软件自动在线升级", 《电脑开发与应用》 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104978222A (zh) * | 2015-06-25 | 2015-10-14 | 上海卓易科技股份有限公司 | 一种检测系统更新的方法及装置 |
CN105511908A (zh) * | 2015-11-26 | 2016-04-20 | Tcl移动通信科技(宁波)有限公司 | 一种基于移动终端的cpu参数升级方法及系统 |
CN106326048A (zh) * | 2016-08-11 | 2017-01-11 | 广东欧珀移动通信有限公司 | 外部存储设备的检测方法和装置 |
CN106502453A (zh) * | 2016-10-14 | 2017-03-15 | 惠州Tcl移动通信有限公司 | 一种基于移动终端防止触摸屏失灵的方法及系统 |
CN106502453B (zh) * | 2016-10-14 | 2020-08-11 | 惠州Tcl移动通信有限公司 | 一种基于移动终端防止触摸屏失灵的方法及系统 |
CN107678762A (zh) * | 2017-09-26 | 2018-02-09 | 杭州中天微系统有限公司 | 一种系统版本升级方法及装置 |
US11640288B2 (en) | 2017-09-26 | 2023-05-02 | C-Sky Microsystems Co., Ltd. | System version upgrading method and apparatus |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103617246A (zh) | 一种固件版本更新方法及系统 | |
CN103942058B (zh) | 一种嵌入式电子设备软件升级方法及系统 | |
CN102065118A (zh) | 一种网络设备升级方法及装置 | |
CN104933020A (zh) | 基于模板生成目标文档的方法及装置 | |
CN102946600B (zh) | 一种移动终端参数固件升级方法及系统 | |
CN104778057A (zh) | 终端系统升级方法、装置及服务器 | |
US20130254527A1 (en) | Bios firmware updating method and electronic device | |
CN102722392B (zh) | 软件运行方法和系统 | |
CN103268239B (zh) | 移动终端中应用程序的管理方法、装置和移动终端 | |
CN102567053A (zh) | 一种软件版本回退的方法及装置 | |
CN103036706A (zh) | 应用升级异常的本地处理方法 | |
CN105912340A (zh) | 一种主设备、遥控器及对其空中升级的方法 | |
CN105159691A (zh) | 更新元数据的方法及装置 | |
CN103905441A (zh) | 数据获取方法及装置 | |
CN103024067A (zh) | 向智能终端推送信息的方法及服务器 | |
CN103634665A (zh) | 一种版本升级方法和装置 | |
CN104572212A (zh) | 一种终端更新系统及其更新方法 | |
CN105447061A (zh) | 下载完成后自动重命名文件的方法及系统 | |
CN109617950B (zh) | 一种数据更新方法、装置、设备及可读存储介质 | |
CN103927201A (zh) | 一种游戏文件的更新方法及装置 | |
CN103716695A (zh) | 一种升级系统软件的方法及智能电视 | |
CN108572839A (zh) | 智能冰箱系统升级方法、系统、智能冰箱和云端服务器 | |
CN108664255B (zh) | 一种软件升级方法及装置 | |
CN110244968B (zh) | 充电站管理系统及方法 | |
CN105975321A (zh) | 一种应用程序安装包的图标替换方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20140305 |
|
RJ01 | Rejection of invention patent application after publication |