CN101770372A - 固件更新系统、方法以及固件更新系统之固件建构方法 - Google Patents

固件更新系统、方法以及固件更新系统之固件建构方法 Download PDF

Info

Publication number
CN101770372A
CN101770372A CN200810187737A CN200810187737A CN101770372A CN 101770372 A CN101770372 A CN 101770372A CN 200810187737 A CN200810187737 A CN 200810187737A CN 200810187737 A CN200810187737 A CN 200810187737A CN 101770372 A CN101770372 A CN 101770372A
Authority
CN
China
Prior art keywords
firmware
reflection
information
update
module
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.)
Granted
Application number
CN200810187737A
Other languages
English (en)
Other versions
CN101770372B (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.)
Askey Computer Corp
Original Assignee
Askey Computer Corp
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 Askey Computer Corp filed Critical Askey Computer Corp
Priority to CN 200810187737 priority Critical patent/CN101770372B/zh
Publication of CN101770372A publication Critical patent/CN101770372A/zh
Application granted granted Critical
Publication of CN101770372B publication Critical patent/CN101770372B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

一种固件更新系统、方法以及固件更新系统之固件建构方法,是于电子装置中设置具有第一固件及第二固件之固件储存模组,且该第一固件及第二固件具有至少包含循环冗余校验总和资讯及映像标头文件建置时间资讯之标头文件资料,俾于执行新固件之更新时,分别依据该第一固件及第二固件中之循环冗余校验总和资讯判断两者是否异常,若其中一者经判断为异常时,则将异常之固件替换为该新固件,若经判断两者均正常,则比对两者中之映像标头文件建置时间资讯,以将建置时间较早之固件替换为该新固件,藉此确保即使固件更新作业失败,也可以保留一个正常之固件进行后续的固件更新作业。

Description

固件更新系统、方法以及固件更新系统之固件建构方法
技术领域
本发明关于一种固件更新技术,更详而言之,是关于一种能确保固件更新作业失败时,也可以保留一个正常之固件进行后续的固件更新作业之固件更新系统、方法以及固件更新系统之固件建构方法。
背景技术
于现今各种电脑应用设备中,许多硬件的运作均由固件(Firmware)来负责启动及执行,例如光碟机、数据机等等,而固件的储存装置也由早期无法更新的装置逐步发展为可更新的装置,例如快闪唯读内存(以下简称Flash ROM)、电子可抹除式唯读内存(EEPROM)等非挥发性内存,由是,固件更新作业亦已由早期必须将设备送回原厂以执行固件更新的方式,逐渐转变为使用者可透过网路系统自行下载更新程式以进行固件更新的方式。
目前使用者自行将固件更新的通用做法是由原制造厂商于网路服务器端提供固件之更新文件,而后使用者透过网路系统下载该固件之更新文件,并经由固件更新程式将该固件更新文件写入至用于储存固件之内存中,以覆盖原先之固件,进而完成固件之更新作业。
采用上述方式执行固件更新作业时,必须确定使用者电脑端已呈开机状态且处于诸如DOS、Window或Linux等作业系统环境之中,方可正常执行该固件更新作业。
然而,前述由使用者操作控制之固件在更新时可能发生无法预期的异常状况,例如,在固件更新的过程中,发生系统断电之状况,而使固件更新产生无法预期的错误,或者如windows或Linux等作业系统自身存在一些错误(bug),而在固件更新过程中突显出来(如系统突然重启),从而导致固件在更新时产生错误。
当固件更新的过程中发生异常情形时,因原有之固件已于固件更新过程中被覆盖而清除,则使得固件所在的设备(例如光碟机等)或系统无法继续运行,如此使用者则无法再次写入由网路上下载的更新文件至该设备或系统中,导致固件所在的设备或系统必须送回原厂进行维修及更新,造成使用者的不便以及原制造厂商处理上的困扰。
因此,在固件由使用者自行进行更新的必然趋势下,如何提供一种固件更新技术以及固件更新之固件建构技术,于固件更新时,即使发生固件更新异常的状况仍可使设备或系统得以于后续执行固件更新作业,实为目前亟欲解决之技术问题。
发明内容
鉴于上述现有技术之缺点,本发明之一目的在于提一种固件更新系统、方法以及固件更新系统之固件建构方法,于固件更新时,即使发生固件更新异常的状况仍可使设备或系统得以于后续执行固件更新作业。
为达上述目的及其他相关目的,本发明提供一种固件更新系统,用以对具有固件电子装置执行固件之更新作业,该固件更新系统包括:固件储存模组、接收模组、判断模组、以及更新模组。其中,该固件储存模组设置于该电子装置中,至少用以储存第一固件以及第二固件,该第一固件及该第二固件具有映像标头文件资料,且该映像标头文件资料至少包含循环冗余校验总和资讯以及映像标头文件建置时间资讯;该接收模组用于接收固件更新执行指令,以获取新固件;该判断模组用以接收固件更新执行指令,以依据该接收模组获取之新固件中之循环冗余校验总和资讯判断该新固件是否异常,若判断为异常则结束该固件之更新程序,若判断为正常则分别依据该固件储存模组所储存之该第一固件以及该第二固件中之循环冗余校验总和资讯判断该第一固件以及该第二固件是否异常,若判断该第一固件以及该第二固件之其中一者发生异常,则锁定该发生异常之固件为目标固件,若判断该第一固件以及该第二固件均为正常,则比对该固件储存模组所储存之该第一固件以及该第二固件中之映像标头文件建置时间资讯,以锁定映像标头文件建置时间较早之固件为目标固件,若该第一固件以及该第二固件均发生异常,则结束该固件更新程序;该更新模组用以将该判断模组所锁定之目标固件替换为该新固件,俾完成该电子装置之固件更新作业。
此外,本发明之该固件更新系统还包括固件执行模组,该固件执行模组用以重新执行该电子装置中之可执行固件。
需要特别指明的是,该判断模组还用以于该固件执行模组重新启动执行该固件前,分别依据该固件储存模组所储存之该第一固件以及该第二固件中之循环冗余校验总和资讯判断经固件更新后之该第一固件或该第二固件是否异常,若判断该第一固件以及该第二固件之其中一者发生异常,则锁定正常之固件为可执行固件,若判断该第一固件以及该第二固件均为正常,则比对该固件储存模组所储存之该第一固件以及该第二固件中之映像标头文件建置时间资讯,锁定映像标头文件建置时间较晚之固件为可执行固件,若判断该第一固件以及该第二固件均发生异常,则结束该系统启动。
为达上述相同目的,本发明还提供固件更新方法,用以对具有固件电子装置执行固件之更新作业,该电子装置中具有固件储存模组,该固件储存模组储存有第一固件以及第二固件,其中,该第一固件及第二固件中分别至少具有包含循环冗余校验总和资讯以及映像标头文件建置时间资讯之映像标头文件资料,该固件更新方法包括:首先,于接收到固件更新执行指令时,获取该新固件;其次,对该新固件中之循环冗余校验总和资讯进行判断,于该循环冗余校验总和资讯吻合时,进至下一步骤;再次,分别依据该第一固件以及该第二固件中之循环冗余校验总和资讯判断该第一固件以及该第二固件是否异常,若判断该第一固件以及该第二固件之其中一者发生异常,则锁定该发生异常之固件为目标固件,若判断该第一固件以及该第二固件均为正常,则比对该第一固件以及该第二固件中之映像标头文件建置时间资讯,以锁定映像标头文件建置时间较早之固件为目标固件,若判断该第一固件以及该第二固件均发生异常,则结束该固件更新过程;最后,将锁定之目标固件替换为该新固件,以完成该电子装置之固件更新作业。
于本发明之固件更新方法,还包括以下步骤:将该目标固件替换为新固件后重启,并分别依据该第一固件以及该第二固件中之循环冗余校验总和资讯判断该第一固件以及该第二固件是否异常,若判断该第一固件以及该第二固件之其中一者发生异常,则执行正常之固件,若判断该第一固件以及该第二固件均为正常,则比对该第一固件以及该第二固件中之映像标头文件建置时间资讯,以执行该映像标头文件建置时间较晚之固件,若判断该第一固件以及该第二固件均发生异常,则结束该固件启动程序。
于本发明之固件更新方法,于该识别码资讯比对步骤之前还包括:依据该新固件中之循环冗余校验总和资讯判断该新固件是否异常,若是,则结束该固件更新程序,若否,则进至该识别码资讯比对步骤。
再者,本发明亦提供一种固件更新系统之固件建构方法,包括:首先,设定固件存储之最大文件长度;其次,合并内核文件资料与文件系统资料为临时文件资料;再次,建置映像标头文件资料,其中,该映像标头文件资料至少包含循环冗余校验总和资讯以及该映像标头文件建置时间资讯;接着,加入该映像标头文件资料至该临时文件资料,以生成固件;最后,判断该固件实际文件长度是否小于该设定固件存储之最大文件长度,若是,则增加该临时文件资料之文件长度至该固件实际文件长度符合设定固件存储之最大文件长度。
相较于现有技术,本发明提供一种固件更新系统、方法以及固件更新系统之固件建构方法,主要接收到固件更新执行指令时,获取该新固件,对该新固件中之循环冗余校验总和资讯判断,以于该循环冗余校验总和资讯吻合时,分别依据该第一固件以及该第二固件中之循环冗余校验总和资讯判断该第一固件以及该第二固件是否异常,若判断该第一固件以及该第二固件之其中一者发生异常,则锁定该发生异常之固件为目标固件,若判断该第一固件以及该第二固件均为正常,则比对该第一固件以及该第二固件中之映像标头文件建置时间资讯,并锁定映像标头文件建置时间较早之固件为目标固件,若判断该第一固件以及该第二固件均发生异常,则结束该固件的更新程序,最后将锁定之目标固件替换为该新固件,藉此以在固件更新时,确保电子装置中有一个正常之固件,得以于后续再次执行固件更新作业时能防止因固件更新失败所造成系统无法启动之情事,即有效克服了现有技术中之种种缺失。
附图说明
第1图为本发明之固件更新系统的基本架构方块之示意图;
第2A及2B图为本发明之固件更新方法之实施例流程示意图;以及
第3图显示本发明之固件更新系统之固件建构方法的流程示意图。
主要元件符号说明
1    电子装置        10   固件更新系统
100  固件储存模组    110  接收模组
120  判断模组        130  更新模组
140  固件执行模组    2    服务器端
S100~S150、S300~S318步骤
具体实施方式
以下是藉由特定的具体实例说明本发明之实施方式,熟悉此技艺之人士可由本说明书所揭示之内容轻易地了解本发明之其他优点与功效。本发明也可以藉由其他不同的具体实例加以施行或应用,本说明书中的各项细节也可以基于不同观点与应用,在不悖离本发明之精神下进行各种修饰与变更。
请参阅第1图,为本发明之固件更新系统的基本架构方块之示意图。如图所示,本创作提供一种固件更新系统10,用以对具有固件电子装置执行固件之更新作业,具体地,应用于例如路由器之电子装置1中,用以依据前述固件更新文件之建构方法于服务器端2所生成之固件更新文件对电子装置1执行固件之更新作业。
如图所示,本发明之固件更新系统10包括固件储存模组100、接收模组110、判断模组120、更新模组130、以及固件执行模组140,以下即对上揭各物件进行详细的说明。
该固件储存模组100设置于该电子装置1中,至少用以储存第一固件以及第二固件,该第一固件及该第二固件具有映像标头文件资料,且该映像标头文件资料至少包含循环冗余校验总和资讯、以及映像标头文件建置时间资讯;在本实施例中,该循环冗余校验总和资讯包括标头校验总和资讯、文件长度资讯、以及资料校验总和资讯,在本实施例中,该固件储存模组100为快闪唯读内存(Flash ROM),但不以此为限,该固件储存模组100也可以为电子可抹除式唯读内存(EEPROM)或者其他非挥发性内存。
该接收模组110用以接收固件更新执行指令,而获取新固件,在本实施例中,该接收模组110透过网路传输方式自该服务器端2下载该固件更新文件,但不以此为限,该接收模组110也可以透过光碟读取方式或USB读取方式等资料传输方式予以下载。
该判断模组120用以接收固件更新执行指令,对该接收模组110获取之新固件中之循环冗余校验总和资讯判断该新固件是否异常时,若异常则结束该固件更新过程,若正常则分别依据该固件储存模组100所储存之该第一固件以及该第二固件中之循环冗余校验总和资讯判断该第一固件以及该第二固件是否异常,若判断该第一固件以及该第二固件之其中一者发生异常,则锁定该发生异常之固件为目标固件,若判断该第一固件以及该第二固件均为正常,则比对该固件储存模组100所储存之该第一固件以及该第二固件中之映像标头文件建置时间资讯,并锁定映像标头文件建置时间较早之固件为目标固件,若判断该第一固件以及该第二固件均发生异常,则结束该固件更新程序。
该更新模组130用以依据该判断模组120所锁定之目标固件,以将该固件储存模组100中之目标固件替换为该新固件,俾完成该电子装置1之固件更新作业。
该固件执行模组140用以重新执行该电子装置1中可执行固件。
在本实施例中,该判断模组120还用以于该固件执行模组140重新启动执行该固件前,分别依据该固件储存模组140所储存之该第一固件以及该第二固件中之循环冗余校验总和资讯判断经固件更新后之该第一固件或该第二固件是否异常,若判断该第一固件以及该第二固件之其中一者发生异常,则锁定正常之固件为可执行固件,若判断该第一固件以及该第二固件均为正常,则比对该固件储存模组100所储存之该第一固件以及该第二固件中之映像标头文件建置时间资讯,锁定映像标头文件建置时间较晚之固件为可执行固件,若判断该第一固件以及该第二固件均发生异常,则结束该系统启动。
因此,应用本发明之固件更新系统,则可在固件更新过程中选择异常或文件建置时间最早的固件进行更新,从而可让电子装置中始终都具有一个较新版本之固件,倘若固件更新的作业成功,电子装置则会依据固件之文件建置时间资讯执行最新之固件,反之,若固件更新的作业失败,则执行原先建置时间较早的(即旧的)固件,亦不会因固件更新的作业失败而让电子装置无法启用,而需送回原制造厂商进行维修及更新,如此,本发明即可避免使用者的不便及原制造厂商处理上的困扰。
透过上述固件更新系统,执行本发明之固件更新方法之实施例流程,呈如第2A及2B图所示。该固件更新方法用以对具有固件电子装置1执行固件之更新作业,该电子装置1中具有固件储存模组100,该固件储存模组100储存有第一固件以及第二固件,其中,该第一固件及第二固件中分别至少具有包含循环冗余校验总和资讯以及映像标头文件建置时间资讯之映像标头文件资料,该固件更新方法包括以下步骤:
首先进行步骤S300,于该电子装置1接收到固件更新执行指令时,透过网路传输方式自该服务器端2获取该新固件,并产生启动讯号,而该新固件之获取方式并不局限于网路传输方式,在其他实施例中,也可以透过光碟读取方式、USB读取方式或其他资料传输方式予以进行。接着进至步骤S301。
在步骤S301中,由于获取新固件过程中,可能会因网路传输故障造成新固件下载不完全等异常,则需依据该新固件中之循环冗余校验总和资讯判断该新固件是否异常,若是,则进至步骤S302,若否,则进至步骤S303。
在步骤S302中,判断是否重新获取该新固件,若是,返回步骤S301。若否,则结束。在本实施例中,即重新透过网路传输方式自该服务器端2下载该新固件。
在步骤S303中,由于在服务器端2提供之新固件之版本可能不止一种(即同时提供多种对应不同制造厂商之固件更新文件),使用者可能在下载该新固件前未详尽了解该新固件之应用对象,而下载错误版本之新固件,于此判断对该新固件中之循环冗余校验总和资讯是否吻合,若是,则进至步骤S305,若否,则进至步骤S304。
在步骤S304中,重新获取另一版本之新固件,在本实施例中,即重新透过网路传输方式自该服务器端2下载另一版本之新固件。接着,返回至步骤S301。
在步骤S305中,依据该第一固件中之循环冗余校验总和资讯判断该第一固件是否异常,若是,则进至步骤S306,若否,则进至步骤S308。
在步骤S306中,依据该第二固件中之循环冗余校验总和资讯判断该第二固件是否异常,若是(表示该第一固件以及该第二固件均发生异常),则结束该固件更新过程,若否(表示仅该第一固件发生异常),则进至步骤S307。
在步骤S307中,锁定该第一固件为目标固件。接着进行步骤S311。
在步骤S308中,依据该第二固件中之循环冗余校验总和资讯判断该第二固件是否异常,若是(表示仅该第二固件发生异常),则进至步骤S310,若否(表示该第一固件以及该第二固件均正常),则进至步骤S309。
在步骤S309中,比对该第一固件中之文件建置时间资讯是否早于该第二固件中之文件建置时间资讯,若是,则进至S307,若否,则进至步骤S310。
在步骤S310中,锁定该第二固件为目标固件。接着进行步骤S311。
在步骤S311中,依据所锁定之目标固件,将该目标固件替换为该新固件,以完成该电子装置之固件更新作业。接着进行步骤S312。
在步骤S312中,启动该电子装置,以使固件更新作业生效。接着进行步骤S313。
在步骤S313中,依据该第一固件中之循环冗余校验总和资讯判断该第一固件是否异常,若是,则进至步骤S317,若否,则进至步骤S314。
在步骤S314中,依据该第二固件中之循环冗余校验总和资讯判断该第二固件是否异常,若是(表示仅该第二固件发生异常),则进至步骤S315,若否(表示该第一固件以及该第二固件均正常),则进至步骤S316。
在步骤S315中,执行该第一固件,此时,即完成该固件更新过程。
在步骤S316中,比对该第一固件中之文件建置时间资讯是否早于该第二固件中之文件建置时间资讯,若是,则进至S318,若否,则进至步骤S315。
在步骤S317中,依据该第二固件中之循环冗余校验总和资讯判断该第二固件是否异常,若是(表示该第一固件以及该第二固件均发生异常),则结束该固件更新过程,若否(表示仅该第一固件发生异常),则进至步骤S318。
在步骤S318中,执行该第二固件,此时,即完成该固件更新过程。
此处须予以说明的是,上述步骤S305、S306、S308与步骤S313、S314、S317中关于第一固件以及第二固件是否异常之判断次序以第一固件作为优先判断对象,但并非以此为限,也可以以第二固件作为优先判断对象,而以第一固件作为第二判断对象。
请参阅第3图,第3图显示本发明之固件更新系统之固件建构方法的流程示意图;在本实施例中,本发明之固件更新系统之固件建构方法搭建于服务器端并由制造厂商构建完成,以生成新固件供使用者于电子装置自行更新使用,如图所示,首先执行步骤S100,设定固件存储之最大文件长度;接着进行步骤S110。
在步骤S110中,合并内核文件资料与文件系统资料为临时文件资料;接着进至步骤S120。
在步骤S120中,建置映像标头文件资料,其中,该映像标头文件资料至少包含循环冗余校验总和资讯、以及该映像标头文件建置时间资讯;在本实施例中,该映像标头文件资料还包括识别码资讯;该循环冗余校验总和资讯包括标头校验总和(header CRC checksum)资讯、文件长度(data size)资讯、以及资料校验总和(data CRC checksum)资讯。接着进至步骤S130。
需要说明的是,该固件更新文件至少包含内核(kernel)文件资料以及文件系统(file system)资料;该识别码资讯为包含制造厂商资讯之产品序列号,该循环冗余校验总和资讯用以提供验证该资讯所在文件是否发生异常之用,惟,以循环冗余校验总和资讯验证文件是否异常之技术应为所属领域熟知之技术,在此不再为文赘述,此外,由于内核文件资料之实际文件长度会因编译时间以及版本的不同而有不同的长度,如此,则会影响后续欲与该内核文件资料合并之文件系统资料之起始位元位址的配置,而且,通常该文件系统资料之执行从固定之起始位址开始,是故,在该步骤中还设定该内核文件资料之最大文件长度,以确保该文件系统资料之起始位址在固定位址段,即为(内核文件资料起始位址)+(最大文件长度)+1之位址。
在步骤S130中,加入该映像标头文件资料至该临时文件资料,以生成固件,俾供电子装置的使用者自行依需求来使用;接着进至步骤S140。
在步骤S140中,判断该固件实际长度是否小于该设定固件存储之最大长度,若是,接着进至步骤S150;若否,则完成构建。
在步骤S150中,则增加该临时文件资料之长度至该固件实际长度符合设定固件存储之最大长度,即可完成构建作业。
承上所述,本发明提供一固件更新系统、方法以及固件更新系统之固件建构方法,本发明提供一种固件更新系统、方法以及固件更新系统之固件建构方法,主要接收到固件更新执行指令时,获取该新固件,对该新固件中之循环冗余校验总和资讯判断,并于该循环冗余校验总和资讯吻合时,分别依据该第一固件以及该第二固件中之循环冗余校验总和资讯判断该第一固件以及该第二固件是否异常,若判断该第一固件以及该第二固件之其中一者发生异常,则锁定该发生异常之固件为目标固件,若判断该第一固件以及该第二固件均为正常,则比对该第一固件以及该第二固件中之映像标头文件建置时间资讯,并锁定映像标头文件建置时间较早之固件为目标固件,若判断该第一固件以及该第二固件均发生异常,则结束对该固件的更新程序,最后依据锁定之目标固件,将该目标固件替换为该新固件。
藉此,本发明可在固件更新过程中选择异常或文件建置时间较早的固件进行更新,从而可让电子装置中始终都具有一个较新版本之固件,倘若固件更新的作业成功,电子装置则会依据固件之文件建置时间资讯执行最新之固件,反之,若固件更新的作业失败,则执行原先建置时间较早的固件,亦不会因固件更新的作业失败而让电子装置无法启用,更无法再次进行固件更新的作业,而需送回原制造厂商进行维修及更新,如此,本发明即可避免现有技术中,因客户端无法自行排除在固件更新的作业中所产生的错误,而导致使用者的不便及原制造厂商处理上的困扰。
上述实施例仅例示性说明本创作之原理及其功效,而非用于限制本发明。任何熟习此项技艺之人士均可在不违背本发明之精神及范畴下,对上述实施例进行修饰与改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示之精神与技术思想下所完成之一切等效修饰或改变,仍应由后述之申请专利范围所涵盖。

Claims (10)

1.一种固件更新系统,用以对具有固件电子装置执行固件之更新作业,其特征在于,该固件更新系统包括:
固件储存模组,设置于该电子装置中,至少用以储存第一固件以及第二固件,该第一固件及该第二固件具有映像标头文件资料,且该映像标头文件资料至少包含循环冗余校验总和资讯以及映像标头文件建置时间资讯;
接收模组,用于接收固件更新执行指令,以获取新固件;
判断模组,用以接收固件更新执行指令,以依据该接收模组获取之新固件中之循环冗余校验总和资讯判断该新固件是否异常,若经判断为异常则结束该固件更新程序,若经判断为正常则分别依据该固件储存模组所储存之该第一固件以及该第二固件中之循环冗余校验总和资讯判断该第一固件以及该第二固件是否异常,若判断该第一固件以及该第二固件之其中一者发生异常,则锁定该发生异常之固件为目标固件,若判断该第一固件以及该第二固件均为正常,则比对该固件储存模组所储存之该第一固件以及该第二固件中之映像标头文件建置时间资讯,以锁定映像标头文件建置时间较早之固件为目标固件,若判断该第一固件以及该第二固件均发生异常,则结束该固件更新程序;以及
更新模组,用以将该判断模组所锁定之目标固件替换为该新固件,俾完成该电子装置之固件更新作业。
2.如申请专利范围第1项之固件更新系统,其特征在于:还包括固件执行模组,用以重新执行该电子装置中之可执行固件。
3.如申请专利范围第2项之固件更新系统,其特征在于:该判断模组还用以于该固件执行模组重新执行该可执行固件前,分别依据该固件储存模组所储存之该第一固件以及该第二固件中之循环冗余校验总和资讯判断经固件更新后之该第一固件或该第二固件是否异常,若判断该第一固件以及该第二固件之其中一者发生异常,则锁定正常之固件为可执行固件,若判断该第一固件以及该第二固件均为正常,则比对该固件储存模组所储存之该第一固件以及该第二固件中之映像标头文件建置时间资讯,锁定映像标头文件建置时间较晚之固件为可执行固件,若判断该第一固件以及该第二固件均发生异常,则结束该系统启动。
4.如申请专利范围第1项之固件更新系统,其特征在于:该循环冗余校验总和资讯包括标头校验总和资讯、文件长度资讯、以及资料校验总和资讯。
5.如申请专利范围第1项之固件更新系统,其特征在于:该新固件之获取方式是透过网路传输方式、光碟读取方式以及USB读取方式之其中一者。
6.一种固件更新方法,用以对具有固件电子装置执行固件之更新作业,该电子装置中具有固件储存模组,该固件储存模组储存有第一固件以及第二固件,其中,该第一固件及第二固件中分别至少具有包含循环冗余校验总和资讯以及映像标头文件建置时间资讯之映像标头文件资料,该固件更新方法包括:
于接收到固件更新执行指令时,获取该新固件;
对该新固件中之循环冗余校验总和资讯判断,并于该循环冗余校验总和资讯吻合时,进至下一步骤;
分别依据该第一固件以及该第二固件中之循环冗余校验总和资讯判断该第一固件以及该第二固件是否异常,若判断该第一固件以及该第二固件之其中一者发生异常,则锁定该发生异常之固件为目标固件,若判断该第一固件以及该第二固件均为正常,则比对该第一固件以及该第二固件中之映像标头文件建置时间资讯,并锁定映像标头文件建置时间较早之固件为目标固件,若判断该第一固件以及该第二固件均发生异常,则结束该固件更新程序;以及
依据所锁定之目标固件,将该目标固件替换为该新固件,以完成该电子装置之固件更新作业。
7.如申请专利范围第6项之固件更新方法,其特征在于:在该电子装置启动后还包括:
分别依据该第一固件以及该第二固件中之循环冗余校验总和资讯判断该第一固件以及该第二固件是否异常,若判断该第一固件以及该第二固件之其中一者发生异常,则执行正常之固件,若判断该第一固件以及该第二固件均为正常,则比对该第一固件以及该第二固件中之映像标头文件建置时间资讯,以执行该映像标头文件建置时间较晚之固件,若判断该第一固件以及该第二固件均发生异常,则结束该固件启动程序。
8.如申请专利范围第6项之固件更新方法,其特征在于:该映像标头标头资料还包括识别码资讯,用以判断该新固件中之识别码资讯与该第一固件或该第二固件中之识别码资讯不相同时,则重新获取另一版本之新固件。
9.如申请专利范围第6项之固件更新方法,其特征在于:于该识别码资讯比对步骤之前还包括:
依据该新固件中之循环冗余校验总和资讯判断该新固件是否异常,若是,则结束该固件更新程序,若否,则进至该识别码资讯比对步骤。
10.一种固件更新系统之固件建构方法,其特征在于,包括:
设定固件存储之最大文件长度;
合并内核文件资料与文件系统资料为临时文件资料;
建置映像标头文件资料,其中,该映像标头文件资料至少包含循环冗余校验总和资讯以及该映像标头文件建置时间资讯;
加入该映像标头文件资料至该临时文件资料,以生成固件;
判断该固件实际长度是否小于该设定固件存储之最大长度,若是,则增加该临时文件资料之长度至该固件实际长度符合设定固件存储之最大长度。
CN 200810187737 2008-12-31 2008-12-31 固件更新系统、方法以及固件更新系统的固件建构方法 Expired - Fee Related CN101770372B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 200810187737 CN101770372B (zh) 2008-12-31 2008-12-31 固件更新系统、方法以及固件更新系统的固件建构方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 200810187737 CN101770372B (zh) 2008-12-31 2008-12-31 固件更新系统、方法以及固件更新系统的固件建构方法

Publications (2)

Publication Number Publication Date
CN101770372A true CN101770372A (zh) 2010-07-07
CN101770372B CN101770372B (zh) 2012-12-05

Family

ID=42503251

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200810187737 Expired - Fee Related CN101770372B (zh) 2008-12-31 2008-12-31 固件更新系统、方法以及固件更新系统的固件建构方法

Country Status (1)

Country Link
CN (1) CN101770372B (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102857358A (zh) * 2011-06-29 2013-01-02 环旭电子股份有限公司 可修复固件的客户端设备及其固件修复方法
CN103136127A (zh) * 2011-11-28 2013-06-05 启碁科技股份有限公司 电子装置、电子装置识别系统及电子装置的识别方法
CN103455354A (zh) * 2013-09-06 2013-12-18 南京南自信息技术有限公司 一种防止固件升级失败的方法和设备
CN104765628A (zh) * 2015-03-10 2015-07-08 惠州Tcl移动通信有限公司 一种移动终端更新触摸屏固件的方法及系统
CN105912355A (zh) * 2016-01-29 2016-08-31 北京云迹科技有限公司 一种智能机器人硬件程序升级的方法及系统
CN106201439A (zh) * 2016-09-09 2016-12-07 深圳怡化电脑股份有限公司 一种异常处理的方法及装置
CN106484475A (zh) * 2016-10-09 2017-03-08 珠海全志科技股份有限公司 固件启动方法、装置及嵌入式设备
CN109885430A (zh) * 2019-02-20 2019-06-14 广州视源电子科技股份有限公司 系统安全隐患的修复方法、装置、修复系统、设备和介质
CN109947439A (zh) * 2017-12-15 2019-06-28 库币科技有限公司 封闭式储存装置的韧体更新方法
CN111367538A (zh) * 2018-12-25 2020-07-03 技嘉科技股份有限公司 免开机更新在板数据的电子装置
CN112601075A (zh) * 2020-12-07 2021-04-02 上海商米科技集团股份有限公司 一种基于双镜像的网络摄像机升级故障恢复系统及方法

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9965270B2 (en) * 2015-07-01 2018-05-08 Quanta Computer Inc. Updating computer firmware

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6907602B2 (en) * 2000-08-10 2005-06-14 Mustek Systems Inc. Method for updating firmware of computer device
CN100410901C (zh) * 2003-10-31 2008-08-13 华硕电脑股份有限公司 固件更新的方法及执行此方法的系统
CN100346299C (zh) * 2004-01-05 2007-10-31 华硕电脑股份有限公司 固件更新处理方法及应用程序
KR20080090939A (ko) * 2007-04-06 2008-10-09 삼성전자주식회사 펌웨어의 업데이트 파일 생성 방법, 펌웨어 업데이트파일을 이용한 업데이트 방법 및 그 장치

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102857358A (zh) * 2011-06-29 2013-01-02 环旭电子股份有限公司 可修复固件的客户端设备及其固件修复方法
CN103136127A (zh) * 2011-11-28 2013-06-05 启碁科技股份有限公司 电子装置、电子装置识别系统及电子装置的识别方法
CN103455354A (zh) * 2013-09-06 2013-12-18 南京南自信息技术有限公司 一种防止固件升级失败的方法和设备
CN103455354B (zh) * 2013-09-06 2017-04-12 南京南自信息技术有限公司 一种防止固件升级失败的方法和设备
CN104765628A (zh) * 2015-03-10 2015-07-08 惠州Tcl移动通信有限公司 一种移动终端更新触摸屏固件的方法及系统
CN105912355A (zh) * 2016-01-29 2016-08-31 北京云迹科技有限公司 一种智能机器人硬件程序升级的方法及系统
CN106201439A (zh) * 2016-09-09 2016-12-07 深圳怡化电脑股份有限公司 一种异常处理的方法及装置
CN106201439B (zh) * 2016-09-09 2019-09-20 深圳怡化电脑股份有限公司 一种异常处理的方法及装置
CN106484475A (zh) * 2016-10-09 2017-03-08 珠海全志科技股份有限公司 固件启动方法、装置及嵌入式设备
CN109947439A (zh) * 2017-12-15 2019-06-28 库币科技有限公司 封闭式储存装置的韧体更新方法
CN109947439B (zh) * 2017-12-15 2022-04-08 库币科技有限公司 封闭式储存装置的韧体更新方法
CN111367538A (zh) * 2018-12-25 2020-07-03 技嘉科技股份有限公司 免开机更新在板数据的电子装置
CN111367538B (zh) * 2018-12-25 2023-05-02 技钢科技股份有限公司 免开机更新在板数据的电子装置
CN109885430A (zh) * 2019-02-20 2019-06-14 广州视源电子科技股份有限公司 系统安全隐患的修复方法、装置、修复系统、设备和介质
CN112601075A (zh) * 2020-12-07 2021-04-02 上海商米科技集团股份有限公司 一种基于双镜像的网络摄像机升级故障恢复系统及方法
CN112601075B (zh) * 2020-12-07 2023-06-20 上海商米科技集团股份有限公司 一种基于双镜像的网络摄像机升级故障恢复系统及方法

Also Published As

Publication number Publication date
CN101770372B (zh) 2012-12-05

Similar Documents

Publication Publication Date Title
CN101770372B (zh) 固件更新系统、方法以及固件更新系统的固件建构方法
EP2641175B1 (en) Networked recovery system
US8874892B1 (en) Assessing BIOS information prior to reversion
US9507604B2 (en) Boot method and boot system
US20100169709A1 (en) System Of Updating Firmware And Method Thereof, And Method Of Creating Firmware
CN102667716A (zh) 使用固件更新应用程序更新部件的固件的方法及装置
CN110321170B (zh) 开机方法
CN101923473A (zh) 嵌入式电子装置及更新其固件的方法
WO2012071852A1 (zh) 引导程序的升级方法和装置
CN103092659A (zh) 脱离仿真器支持环境的dsp软件升级系统及其升级方法
CN101807149B (zh) 可安全复原的固件更新方法及其嵌入式电子装置
CN109375953B (zh) 一种操作系统启动方法及装置
CN101326515A (zh) 元数据驱动的应用程序部署
CN113238790A (zh) 基于sd卡和eeprom的固件程序更新方法及系统
CN100472449C (zh) 使用双Bootrom启动引导CPU的工程应用方法和装置
US6772364B1 (en) Fault tolerant field updating with alternation of memory areas
CN104991805A (zh) 智能设备及其系统灾备控制方法
CN112433769A (zh) 一种bmc启动方法、装置、计算机设备及存储介质
CN100363893C (zh) 加载系统及方法
CN106528114A (zh) 安卓固件应用、安卓固件和固件升级方法
CN115481405A (zh) 一种嵌入式系统的安全启动和优化升级方法
CN114237722A (zh) 一种系统的启动方法、装置、设备及工程车辆
US11768669B2 (en) Installing application program code on a vehicle control system
CN115437674B (zh) 一种固件升级方法、装置、介质及电子设备
CN104216797A (zh) 嵌入式系统设定值设定系统、方法及电子装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20121205

Termination date: 20131231