CN101252458A - 一种固件批量升级方法 - Google Patents
一种固件批量升级方法 Download PDFInfo
- Publication number
- CN101252458A CN101252458A CNA2008100660078A CN200810066007A CN101252458A CN 101252458 A CN101252458 A CN 101252458A CN A2008100660078 A CNA2008100660078 A CN A2008100660078A CN 200810066007 A CN200810066007 A CN 200810066007A CN 101252458 A CN101252458 A CN 101252458A
- Authority
- CN
- China
- Prior art keywords
- firmware
- equipment
- upgrading
- data packet
- address
- 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
- 238000000034 method Methods 0.000 title claims abstract description 24
- 125000004122 cyclic group Chemical group 0.000 claims description 3
- 238000004519 manufacturing process Methods 0.000 abstract description 4
- 230000005611 electricity Effects 0.000 abstract 2
- 101150012579 ADSL gene Proteins 0.000 description 3
- 102100020775 Adenylosuccinate lyase Human genes 0.000 description 3
- 108700040193 Adenylosuccinate lyases Proteins 0.000 description 3
- 230000007547 defect Effects 0.000 description 1
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本发明涉及一种固件批量升级方法,设备接电启动后发出请求验证其固件程序版本的UDP数据包,并进入延时等待状态;升级服务器接收设备发出的数据包并对设备固件版本进行比对;如果固件版本不一致,则向设备发送需要升级的UPD数据包回应,给设备分配IP地址,并向该IP地址发送新版的固件程序;设备接收该回应数据包,修改设备IP地址,接收固件升级后重启设备;相反的,如果设备在延时时段内没有收到升级服务器的UPD数据包回应,则设备启动至正常工作状态。实施本发明的固件批量升级方法,设备接入网络,加电后即可自动完成固件升级,可实现流水线方式工作,非常适合设备制造厂商等具有大批量产品固件升级需求的场合。
Description
技术领域
本发明涉及固件(FirmWare)的升级方法,具体的说,是涉及一种固件的批量升级方法。
背景技术
固件是固化在集成电路内部的程序代码,负责控制和协调集成电路的功能。一般来说,担任着一个系统最基础、最底层工作的软件才可以称之为固件,比如我们常说的计算机主板上的BIOS。通常,这些硬件内所保存的程序,即固件,是无法被用户直接读出或修改的。在集成电路运用的早期阶段,电子设备设计上不是很灵活,一般情况下,没有必要对固件进行任何升级操作,即固件代码是在生产过程中固化的。
随着集成电路运用的不断发展,一台由集成电路运作的电子设备,在制造完成后,为了实现系统的扩充或某种功能的需求,需要修改设备中的固件,以适应不断更新的硬件环境。在设备制造完成后修改固件,即固件的升级,是现代电子设备非常普遍的需求。
比如,现代的ADSL Modem设备,对于产品制造厂商来说,为了能够满足客户的需求按时出货,在产品软件,即固件还未编写完成时,需要先进行产品生产;测试完成后,再将产品的固件升级,成为满足客户要求的产品。在这种现实需求下,固件的升级效率就变得非常重要。而之前ADSL Modem产品的固件升级,是通过HTTP方式来实现的,即,ADSL Modem充当一台Web服务器,操作人员需要先登录进Modem的Web主页,再修改页面地址到升级页面地址后进行升级。这种传统升级方式的最大缺陷是,只能一工位一次一台Modem,即只能一台一台的进行固件升级操作,效率非常低,这给制造厂商的出货造成非常大的压力。另外,在实验室或者客户那里,有时也有很多台设备进行固件升级的需求。因此,上述的这种“单台升级”的固件升级方法,已经不能满足设备制造厂商等具有大批量产品固件升级需求的高效率要求。
发明内容
本发明所要解决的技术问题是,现有的固件升级方法效率太低,不适合大批量产品的固件升级。
本发明的固件批量升级方法是这样实现的:
一种固件批量升级方法,包括了设备端和与设备端网络连接的升级服务器,其特征在于,包括了如下步骤:
(1)所述设备端的设备在启动时发出请求验证其固件程序版本的UDP数据包,并进入延时等待状态;
(2)所述升级服务器接收所述UDP数据包,并将所述设备的固件程序与所述升级服务器上的固件程序进行比对:
(2A)如果所述两个固件程序版本不同,所述升级服务器向所述设备发出需要升级固件的UDP数据包回应,给所述设备分配一个IP地址,并向该IP地址发送固件程序;
或者,
(2B)如果所述两个固件程序版本相同,所述升级服务器不向所述设备发出需要升级固件的UDP数据包;
(3)在所述步骤(2A)下,所述设备端的设备接收到UDP数据包回应,更改设备的IP地址为升级服务器分配的地址,并进入等待固件升级状态;
(4)在所述步骤(2B)下,所述设备端的设备等待一个延时后,启动进入正常工作状态;
(5)在所述步骤(3)下,所述设备接收所述升级服务器发送的固件程序,升级其固件后,重新启动设备。
优选实施方式是,在上述步骤(2)中,所述两个固件程序的比对,是两个固件程序的循环冗余校验值(CRC值)的比对。
优选实施方式是,在上述步骤(2A)中,所述升级服务器还记录下所述设备的物理地址(MAC地址)至待升级设备数据库中。
优选实施方式是,在上述步骤(2B)中,所述升级服务器还记录下所述设备的物理地址(MAC地址)至已升级设备数据库中。
实施本发明的固件批量升级方法,多台待升级设备可以同时接入网络,加电后即可自动与网络中的升级服务器完成固件的升级;一台或一批设备升级完成后,可以接入另一台或另一批待升级的设备至网络中,从而如此循环不断的完成所有设备的固件升级工作,效率非常高;从事该项工作任务的工作人员,只需将待升级设备不断的接入网络,以及,将升级完成的设备一台台脱开网络即可,可以实现流水线方式工作,因为,这实际就是将网线插入和拔出设备的网络接口这两个先后的动作。非常适合设备制造厂商等具有大批量产品固件升级需求的场合。
附图说明
图1是本发明固件批量升级方法的流程示意图。
具体实施方式
下面,结合附图对本发明作进一步的详细说明。
如图1所示,本发明的固件批量升级方法,包括了设备端和升级服务器,设备端的一台或多台设备(图1中示出了一台设备的工作流程),是与升级服务器通过网络连接在一起的,比如说由集线器或交换机所连接的局域网络等。本发明的固件批量升级方法包括了如下步骤:
首先,(1)当工作人员将设备接入网络,即将网线插入设备的网络接口,并接通设备电源开机后,设备在原有的固件的控制下启动,向网络发出UDP数据包,这个数据包中包含了设备原有的固件程序的版本、设备的物理地址(MAC地址)等信息,随后,设备进入延时等待状态;
然后,(2)网络中的升级服务器接收到了设备发出的UDP数据包,并将设备的固件程序与升级服务器上预先设置好的固件程序进行比对。本发明的优选实施方式是,两个固件程序的比对,是两个固件程序的循环冗余校验值(CRC值)的比对。
这将产生两种比对结果:
(2A)如果两个固件程序的版本不同:升级服务器即向所述设备发出需要升级固件的UDP数据包回应,为该设备分配一个IP地址,并向该IP地址的设备发送升级服务器上预先设置好的固件程序。本发明的一个优选实施方式是,在本步骤下,升级服务器还记录下该设备的物理地址(MAC地址)至待升级设备数据库中。该待升级设备数据库,可以提供实施了固件升级操作的设备的统计信息。
或者,
(2B)如果两个固件程序的版本相同:升级服务器不向所述设备发出需要升级固件的UDP数据包。本发明的一个优选实施方式是,在本步骤下,所述升级服务器还记录下所述设备的物理地址(MAC地址)至已升级设备数据库中。该已升级设备数据库,可以提供未实施固件升级操作的设备的统计信息。如果将上述待升级设备数据库与这里的已升级设备数据库进行比对,可以进一步的确认某台设备是否已经正确的完成固件的更新升级。
(3)在上述(2A)情况下,设备端的该台设备将接收到升级服务器发出的UDP数据包回应,更改设备的IP地址为升级服务器分配的地址,并进入等待固件升级状态。此时,设备已经处于如背景技术所描述的传统的固件升级方法所实施的准备升级状态。
(4)在上述(2B)情况下,设备端的该台设备在等待一个延时后,比如10秒钟后,还没有收到升级服务器发出的UDP数据包回应,则该设备将在当前的固件程序控制下,启动进入正常工作状态。
(5)在上述步骤(3)下,该台设备接收到升级服务器发送的固件程序,升级其固件后,重新启动设备。显然,该设备将在新的固件程序的控制下,再次执行上述流程;不过,该设备将按照上述步骤(4),即在等待一个延时后,启动进入正常工作状态。此时,工作人员可以将该台设备脱开网络,即将网线拔出设备的网络接口。
从上述升级流程中可以明显的得出,实施本发明的固件批量升级方法,多台待升级设备可以同时接入网络,加电后即可自动与网络中的升级服务器完成固件的升级,不需要人力的额外操作;一台或一批设备升级完成后,可以接入另一台或另一批待升级的设备至网络中,从而循环不断的完成所有设备的固件升级工作,效率非常高。并且,可以将从事该项工作任务的工作人员分成“接入待升级设备”和“取下已升级设备”两个工作组:前一工作组人员只需将待升级设备不断的接入网络,后一工作组人员只需将已升级完成的设备一台台的取下脱开网络,实现流水线方式工作,可以进一步的提高工作效率并降低劳动强度。这种方法非常适合设备制造厂商等具有大批量产品固件升级需求的应用场合。
总之,上述所描述的实施方式,并不代表本发明所有的实现方式;以上实施例不是对本发明的具体限定,所有与本发明相类似的技术方案,都应属于本发明的保护范围。
Claims (4)
1、一种固件批量升级方法,包括了设备端和与设备端网络连接的升级服务器,其特征在于,包括了如下步骤:
(1)所述设备端的设备在启动时发出请求验证其固件程序版本的UDP数据包,并进入延时等待状态;
(2)所述升级服务器接收所述UDP数据包,并将所述设备的固件程序与所述升级服务器上的固件程序进行比对:
(2A)如果所述两个固件程序版本不同,所述升级服务器向所述设备发出需要升级固件的UDP数据包回应,给所述设备分配一个IP地址,并向该IP地址发送固件程序;
或者,
(2B)如果所述两个固件程序版本相同,所述升级服务器不向所述设备发出需要升级固件的UDP数据包;
(3)在上述步骤(2A)下,所述设备端的设备接收到UDP数据包回应,更改设备的IP地址为升级服务器分配的地址,并进入等待固件升级状态;
(4)在上述步骤(2B)下,所述设备端的设备等待一个延时后,启动进入正常工作状态;
(5)在上述步骤(3)下,所述设备接收所述升级服务器发送的固件程序,升级其固件后,重新启动设备。
2、根据权利要求1所述的一种固件批量升级方法,其特征在于,在步骤(2)中,所述两个固件程序的比对,是两个固件程序的循环冗余校验值的比对。
3、根据权利要求1或2所述的一种固件批量升级方法,其特征在于,在步骤(2A)中,所述升级服务器还记录下所述设备的物理地址至待升级设备数据库中。
4、根据权利要求1或2所述的一种固件批量升级方法,其特征在于,在步骤(2B)中,所述升级服务器还记录下所述设备的物理地址至已升级设备数据库中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2008100660078A CN101252458A (zh) | 2008-01-30 | 2008-01-30 | 一种固件批量升级方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2008100660078A CN101252458A (zh) | 2008-01-30 | 2008-01-30 | 一种固件批量升级方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101252458A true CN101252458A (zh) | 2008-08-27 |
Family
ID=39955655
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2008100660078A Pending CN101252458A (zh) | 2008-01-30 | 2008-01-30 | 一种固件批量升级方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101252458A (zh) |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101778378A (zh) * | 2009-01-14 | 2010-07-14 | 英华达(上海)电子有限公司 | 一种固件节点更新方法、装置和系统 |
WO2012075903A1 (zh) * | 2010-12-06 | 2012-06-14 | 华为终端有限公司 | 无线中继设备的升级方法和装置 |
WO2012163026A1 (zh) * | 2011-10-27 | 2012-12-06 | 华为技术有限公司 | 一种服务器上电的方法、装置及系统 |
CN103281295A (zh) * | 2013-04-22 | 2013-09-04 | 深圳市共进电子股份有限公司 | 实现同一ip局域网中多个终端并行升级的系统及方法 |
CN104133715A (zh) * | 2014-08-13 | 2014-11-05 | 杭州华三通信技术有限公司 | 一种以太网供电设备固件升级方法和装置 |
CN104239109A (zh) * | 2014-09-30 | 2014-12-24 | 上海瑞猫自动化控制技术有限公司 | 嵌入式系统固件在线管理方法 |
CN105045611A (zh) * | 2015-06-24 | 2015-11-11 | 深圳市兰丁科技有限公司 | 一种升级方法及装置 |
CN105071953A (zh) * | 2015-07-16 | 2015-11-18 | 复旦大学无锡研究院 | 一种物联网智能设备固件及应用程序升级方法 |
CN105224376A (zh) * | 2015-11-16 | 2016-01-06 | 北京齐尔布莱特科技有限公司 | 一种批量升级asp.net一般处理程序的方法及系统 |
CN105577449A (zh) * | 2016-01-19 | 2016-05-11 | 江苏小牛电动科技有限公司 | 一种基于电动车中控系统的自动升级方法和装置 |
CN106775844A (zh) * | 2016-11-30 | 2017-05-31 | 天脉聚源(北京)传媒科技有限公司 | 一种批量刷固件的方法及装置 |
CN107562622A (zh) * | 2017-08-29 | 2018-01-09 | 郑州云海信息技术有限公司 | 一种验证mcs系统固件自动更新功能的测试方法与系统 |
CN109298879A (zh) * | 2017-07-25 | 2019-02-01 | 深圳市中兴微电子技术有限公司 | 一种高效物联网fota升级的方法 |
CN109768876A (zh) * | 2017-11-09 | 2019-05-17 | 和硕联合科技股份有限公司 | 通信装置更新系统 |
CN110895477A (zh) * | 2018-09-13 | 2020-03-20 | 杭州海康威视数字技术股份有限公司 | 一种设备启动方法、装置及设备 |
CN111130865A (zh) * | 2019-12-13 | 2020-05-08 | 深圳市乙辰科技股份有限公司 | 一种基于二层交换的网络设备固件批量升级方法及系统 |
CN111708558A (zh) * | 2020-06-10 | 2020-09-25 | 深圳大漠大智控技术有限公司 | 一种高并发终端固件更新方法及更新系统 |
-
2008
- 2008-01-30 CN CNA2008100660078A patent/CN101252458A/zh active Pending
Cited By (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101778378B (zh) * | 2009-01-14 | 2013-03-13 | 英华达(上海)电子有限公司 | 一种固件节点更新方法、装置和系统 |
CN101778378A (zh) * | 2009-01-14 | 2010-07-14 | 英华达(上海)电子有限公司 | 一种固件节点更新方法、装置和系统 |
WO2012075903A1 (zh) * | 2010-12-06 | 2012-06-14 | 华为终端有限公司 | 无线中继设备的升级方法和装置 |
WO2012163026A1 (zh) * | 2011-10-27 | 2012-12-06 | 华为技术有限公司 | 一种服务器上电的方法、装置及系统 |
CN103444129A (zh) * | 2011-10-27 | 2013-12-11 | 华为技术有限公司 | 一种服务器上电的方法、装置及系统 |
CN103281295B (zh) * | 2013-04-22 | 2016-07-06 | 深圳市共进电子股份有限公司 | 实现同一ip局域网中多个终端并行升级的系统及方法 |
CN103281295A (zh) * | 2013-04-22 | 2013-09-04 | 深圳市共进电子股份有限公司 | 实现同一ip局域网中多个终端并行升级的系统及方法 |
CN104133715A (zh) * | 2014-08-13 | 2014-11-05 | 杭州华三通信技术有限公司 | 一种以太网供电设备固件升级方法和装置 |
CN104133715B (zh) * | 2014-08-13 | 2018-05-11 | 新华三技术有限公司 | 一种以太网供电设备固件升级方法和装置 |
CN104239109A (zh) * | 2014-09-30 | 2014-12-24 | 上海瑞猫自动化控制技术有限公司 | 嵌入式系统固件在线管理方法 |
CN105045611B (zh) * | 2015-06-24 | 2018-08-07 | 深圳市海蕴新能源有限公司 | 一种升级方法及装置 |
CN105045611A (zh) * | 2015-06-24 | 2015-11-11 | 深圳市兰丁科技有限公司 | 一种升级方法及装置 |
CN105071953A (zh) * | 2015-07-16 | 2015-11-18 | 复旦大学无锡研究院 | 一种物联网智能设备固件及应用程序升级方法 |
CN105071953B (zh) * | 2015-07-16 | 2018-08-28 | 复旦大学无锡研究院 | 一种物联网智能设备固件及应用程序升级方法 |
CN105224376B (zh) * | 2015-11-16 | 2018-06-15 | 北京齐尔布莱特科技有限公司 | 一种批量升级asp.net一般处理程序的方法及系统 |
CN105224376A (zh) * | 2015-11-16 | 2016-01-06 | 北京齐尔布莱特科技有限公司 | 一种批量升级asp.net一般处理程序的方法及系统 |
CN105577449A (zh) * | 2016-01-19 | 2016-05-11 | 江苏小牛电动科技有限公司 | 一种基于电动车中控系统的自动升级方法和装置 |
CN106775844A (zh) * | 2016-11-30 | 2017-05-31 | 天脉聚源(北京)传媒科技有限公司 | 一种批量刷固件的方法及装置 |
CN109298879A (zh) * | 2017-07-25 | 2019-02-01 | 深圳市中兴微电子技术有限公司 | 一种高效物联网fota升级的方法 |
CN107562622A (zh) * | 2017-08-29 | 2018-01-09 | 郑州云海信息技术有限公司 | 一种验证mcs系统固件自动更新功能的测试方法与系统 |
CN109768876A (zh) * | 2017-11-09 | 2019-05-17 | 和硕联合科技股份有限公司 | 通信装置更新系统 |
CN109768876B (zh) * | 2017-11-09 | 2021-09-14 | 和硕联合科技股份有限公司 | 通信装置更新系统 |
CN110895477A (zh) * | 2018-09-13 | 2020-03-20 | 杭州海康威视数字技术股份有限公司 | 一种设备启动方法、装置及设备 |
CN111130865A (zh) * | 2019-12-13 | 2020-05-08 | 深圳市乙辰科技股份有限公司 | 一种基于二层交换的网络设备固件批量升级方法及系统 |
CN111708558A (zh) * | 2020-06-10 | 2020-09-25 | 深圳大漠大智控技术有限公司 | 一种高并发终端固件更新方法及更新系统 |
CN111708558B (zh) * | 2020-06-10 | 2024-03-08 | 深圳大漠大智控技术有限公司 | 一种高并发终端固件更新方法及更新系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101252458A (zh) | 一种固件批量升级方法 | |
EP2163051B1 (en) | Techniques for automatic software provisioning | |
CN101593121B (zh) | 软件在线升级的方法、装置及系统 | |
JP5542796B2 (ja) | モバイル・デバイス・ソフトウェアの管理方法及び装置 | |
US20130152074A1 (en) | Method for automatic consecutive installing operating systems | |
CN105094777B (zh) | 实现应用截屏的方法及装置 | |
CN102457541A (zh) | 无盘工作站启动过程中避免发生资源竞争的系统及方法 | |
CN101170423A (zh) | 一种面向服务的机群部署方法 | |
CN102571860A (zh) | 一种管理插件的方法、装置及系统 | |
CN111427624A (zh) | 一种服务器批量自动部署配置的方法、装置及系统 | |
CN114024853A (zh) | 一种裸金属节点的硬件信息收集方法、系统及相关组件 | |
CN101384063A (zh) | 一种终端设备修复升级的方法与系统及其系统的制作方法 | |
WO2012065464A1 (zh) | 软件安装方法和装置 | |
CN113821220A (zh) | 一种linux操作系统的安装方法和装置 | |
CN111917842A (zh) | 一种汽车仪表的ota升级方法、系统及汽车仪表系统 | |
CN101867484A (zh) | 一种设备升级的方法及系统 | |
CN104077168A (zh) | 一种为终端更新操作系统的方法及设备 | |
CN101854442B (zh) | 网络设备及其固件更新方法 | |
US20060080636A1 (en) | Method of building intelligent platform management interface firmware architecture | |
CN103677928A (zh) | Gnss接收机中实现软件快速串口升级的系统及方法 | |
CN101582038A (zh) | 测试用操作系统安装方法 | |
CN109472131A (zh) | 一种基于bmc带安全认证的胶囊式uefi固件远程管控方法 | |
CN114510259A (zh) | 一种基于bmc导入导出bios配置的方法及装置 | |
CN109933353B (zh) | 一种基于嵌入式Web的控制器固件升级方法 | |
CN104346209A (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 | ||
C53 | Correction of patent for invention or patent application | ||
CB02 | Change of applicant information |
Address after: 518067, Shenzhen, Guangdong province Nanshan District Shekou Nanhai Road 1019, 100 surplus medical instrument Park, two floor Applicant after: Shenzhen Gongjin Electronics Co., Ltd. Address before: 518067, Shenzhen, Guangdong province Nanshan District Shekou Nanhai Road 1019, 100 surplus medical instrument Park, two floor Applicant before: Shenzhen Gongjin Electronics Co., Ltd. |
|
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20080827 |