JP5113700B2 - ファームウェア更新装置及び方法 - Google Patents
ファームウェア更新装置及び方法 Download PDFInfo
- Publication number
- JP5113700B2 JP5113700B2 JP2008244754A JP2008244754A JP5113700B2 JP 5113700 B2 JP5113700 B2 JP 5113700B2 JP 2008244754 A JP2008244754 A JP 2008244754A JP 2008244754 A JP2008244754 A JP 2008244754A JP 5113700 B2 JP5113700 B2 JP 5113700B2
- Authority
- JP
- Japan
- Prior art keywords
- update
- firmware
- file
- normal
- emergency
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 112
- 238000012545 processing Methods 0.000 claims description 33
- 230000006870 function Effects 0.000 claims description 11
- 230000004913 activation Effects 0.000 description 6
- 238000013500 data storage Methods 0.000 description 5
- 230000007257 malfunction Effects 0.000 description 4
- 230000002950 deficient Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000013404 process transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/66—Updates of program code stored in read-only memory [ROM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Description
図1は本発明の実施形態による組込み装置の概略構成を示す図である。本発明において、この組込み装置として想定しているものは例えばTVなどの家電機器である。
図2は、本発明の実施形態による通常ファームウェアブロック1302の起動直後の動作を説明するためのフローチャートである。
緊急用ファームウェアブロックの起動後の動作としては、例えば、図3(a)及び(b)に示されるように2種類考えられる。
図4は、ファームウェアの更新処理の詳細について説明するためのフローチャートである。
本発明の実施形態では、不揮発性メモリ内に、ファームウェアを読み込むためのブートローダ、通常動作する通常ファームウェアと通常ファームウェア書き換え失敗時など緊急時に動作する緊急用ファームウェア、両ファームウェアからアクセス可能な更新プログラム、通常ファームウェアのうち変更のあるファイルのみで構成される更新データ、更新方法を記した更新手順、更新途中経過を記録する更新状況、ファイル更新中にその前のファイルまたは更新後のファイルを一時的に格納する更新ファイル一時退避領域を保有する。そして、更新データを通常ファームウェアのうち変更のあるファイルのみで構成することと、更新ファイル一時退避領域をあらかじめ決めた最大ファイルサイズの容量にすること、更新前のファイルを該ファイル更新後に更新後ファイルが占有していた領域に格納することで、不揮発性メモリ容量を小さく抑える。
11・・MPU
12・・・RAM
13・・・FROM
14・・・入力装置
15・・・表示装置
16・・・通信装置
1301・・・ブートブロック
1301・・・通常ファームウェアブロック
1302・・・更新ファームウェアブロック
1303・・・緊急用ファームウェアブロック
1304・・・更新プログラム保存ブロック
1305・・・更新データ保存ブロック
1306・・・更新ファイル一時退避ブロック
1301A・・・ブートローダ
1302A・・・通常基盤ソフトウェア
1302B・・・通常応用ソフトウェア
1303A・・・緊急用基盤ソフトウェア
1304A・・・更新プログラム
1305A・・・更新データ
1305B・・・更新手順書
1305C・・・更新状況
Claims (8)
- ファームウェアを有し、このファームウェアを更新する機能を備えるファームウェア更新装置であって、
更新プログラムに従って、ファイル単位でファームウェアの更新処理を実行する演算処理部と、
一時的にデータを保存する揮発性メモリと、
持続的にデータを保存する不揮発性メモリと、を備え、
前記不揮発性メモリは、通常時に動作する通常ファームウェアと、この通常ファームウェア書き換え失敗時を含む緊急時に動作する緊急用ファームウェアと、を保持し、
前記緊急用ファームウェアは、前記通常ファームウェアよりサイズが小さく、前記更新プログラムを実行できる状態にする機能を有し、
前記不揮発性メモリは、更新前のファイルを一時的に格納するための一時退避領域と、更新ファイルを格納する更新データ領域と、を有し、
前記演算処理部は、前記通常ファームウェアの更新処理をする場合には、前記更新処理の前に次回のブート先を前記緊急用ファームウェアに設定して前記更新処理を実行し、前記更新処理の後に次回ブート先を前記通常ファームウェアに設定し、
前記演算処理部は、ファイルの更新処理を実行する前に、更新前のファイルを前記一時退避領域に格納し、前記更新処理を実行した後、前記一時退避領域に格納した前記更新前のファイルを前記一時退避領域から削除すると共に、対応する前記更新ファイルと入れ替えて前記更新データ領域に格納することを特徴とするファームウェア更新装置。 - 前記不揮発性メモリは、更新手順を記載した更新手順記載領域と、前記通常ファームウェアを構成する各ファイルについての更新状況を記載した更新状況記載領域と、を有し、
前記演算処理部は、前記更新手順に従って前記更新プログラムを実行し、更新のログを前記更新状況記載領域に記述することを特徴とする請求項1に記載のファームウェア更新装置。 - 前記更新手順は、前記通常ファームウェアを構成する各ファイルについて、更新処理が完了した場合に再起動が必要か否かについての情報を含み、
前記演算処理部は、前記更新処理終了後に、再起動が必要とされるファイルを再起動することを特徴とする請求項2に記載のファームウェア更新装置。 - 前記演算処理部は、前記緊急用ファームウェアを起動した場合に、前記更新処理において、前記通常ファームウェアのブートに必要なファイルの破損の有無をチェックし、前記通常ファームウェアを構成するファイルの更新を実行した後に、次回ブート先を前記通常ファームウェアに設定することを特徴とする請求項1に記載のファームウェア更新装置。
- ファームウェアを組込んだ組込み装置において、前記ファームウェアを更新するファームウェア更新方法であって、
前記組込み装置は、更新プログラムに従って、ファイル単位でファームウェアの更新処理を実行する演算処理部と、一時的にデータを保存する揮発性メモリと、持続的にデータを保存する不揮発性メモリと、を備え、
前記不揮発性メモリは、通常時に動作する通常ファームウェアと、この通常ファームウェア書き換え失敗時を含む緊急時に動作する緊急用ファームウェアと、を保持し、
前記緊急用ファームウェアは、前記通常ファームウェアよりサイズが小さく、前記更新プログラムを実行できる状態にする機能を有し、
前記不揮発性メモリは、更新前のファイルを一時的に格納するための一時退避領域と、更新ファイルを格納する更新データ領域と、を有し、
前記演算処理部が、前記通常ファームウェアの更新処理をする場合には、前記更新処理の前に次回のブート先を前記緊急用ファームウェアに設定して前記更新処理を実行し、前記更新処理の後に次回ブート先を前記通常ファームウェアに設定するステップと、
前記演算処理部が、ファイルの更新処理を実行する前に、更新前のファイルを前記一時退避領域に格納し、前記更新処理を実行した後、前記一時退避領域に格納した前記更新前のファイルを前記一時退避領域から削除すると共に、対応する前記更新ファイルと入れ替えて前記更新データ領域に格納するステップと、
を備えることを特徴とするファームウェア更新方法。 - 前記不揮発性メモリは、更新手順を記載した更新手順記載領域と、前記通常ファームウェアを構成する各ファイルについての更新状況を記載した更新状況記載領域と、を有し、
前記演算処理部が、前記更新手順に従って前記更新プログラムを実行し、更新のログを前記更新状況記載領域に記述するステップを備えることを特徴とする請求項5に記載のファームウェア更新方法。 - 前記更新手順は、前記通常ファームウェアを構成する各ファイルについて、更新処理が完了した場合に再起動が必要か否かについての情報を含み、
前記演算処理部が、前記更新処理終了後に、再起動が必要とされるファイルを再起動するステップを備えることを特徴とする請求項6に記載のファームウェア更新方法。 - 前記演算処理部が、前記緊急用ファームウェアを起動した場合に、前記更新処理において、前記通常ファームウェアのブートに必要なファイルの破損の有無をチェックし、前記通常ファームウェアを構成するファイルの更新を実行した後に、次回ブート先を前記通常ファームウェアに設定するステップを備えることを特徴とする請求項5に記載のファームウェア更新方法。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008244754A JP5113700B2 (ja) | 2008-09-24 | 2008-09-24 | ファームウェア更新装置及び方法 |
PCT/JP2009/064603 WO2010035596A1 (ja) | 2008-09-24 | 2009-08-21 | ファームウェア更新装置及び方法 |
CN200980137476.7A CN102165422B (zh) | 2008-09-24 | 2009-08-21 | 固件更新装置以及方法 |
US13/054,943 US8549510B2 (en) | 2008-09-24 | 2009-08-21 | Firmware update apparatus and method |
EP09816013A EP2330507A4 (en) | 2008-09-24 | 2009-08-21 | DEVICE AND METHOD FOR FIRMWARE UPDATE |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008244754A JP5113700B2 (ja) | 2008-09-24 | 2008-09-24 | ファームウェア更新装置及び方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010079440A JP2010079440A (ja) | 2010-04-08 |
JP5113700B2 true JP5113700B2 (ja) | 2013-01-09 |
Family
ID=42059603
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008244754A Expired - Fee Related JP5113700B2 (ja) | 2008-09-24 | 2008-09-24 | ファームウェア更新装置及び方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US8549510B2 (ja) |
EP (1) | EP2330507A4 (ja) |
JP (1) | JP5113700B2 (ja) |
CN (1) | CN102165422B (ja) |
WO (1) | WO2010035596A1 (ja) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8495618B1 (en) * | 2010-03-31 | 2013-07-23 | American Megatrends, Inc. | Updating firmware in a high availability enabled computer system |
JP5439400B2 (ja) * | 2011-01-31 | 2014-03-12 | 京セラドキュメントソリューションズ株式会社 | 画像形成装置 |
US8745614B2 (en) * | 2011-05-13 | 2014-06-03 | Lsi Corporation | Method and system for firmware upgrade of a storage subsystem hosted in a storage virtualization environment |
JP5939896B2 (ja) * | 2012-06-12 | 2016-06-22 | キヤノン株式会社 | 画像形成装置 |
TWI480799B (zh) * | 2012-07-05 | 2015-04-11 | Wistron Neweb Corp | 嵌入式系統之韌體更新方法及設備 |
FR2993682B1 (fr) * | 2012-07-20 | 2014-08-22 | Oberthur Technologies | Mise a jour d'un systeme d'exploitation pour element securise |
JP2015146102A (ja) * | 2014-02-03 | 2015-08-13 | 株式会社ワコム | センサコントローラ、センサコントローラを備えたセンサデバイス、センサデバイスが搭載された電子機器およびアプリケーションソフトウェアの復旧方法 |
JP6482211B2 (ja) * | 2014-09-03 | 2019-03-13 | キヤノン株式会社 | 情報処理装置、その制御方法、及びプログラム |
KR102261815B1 (ko) | 2014-10-30 | 2021-06-07 | 삼성전자주식회사 | 펌웨어 업데이트 시간을 줄일 수 있는 데이터 저장 장치, 및 이를 포함하는 데이터 처리 시스템 |
JP6073854B2 (ja) * | 2014-12-26 | 2017-02-01 | 京セラドキュメントソリューションズ株式会社 | 電子機器及びファームウェア復旧プログラム |
US9524158B2 (en) * | 2015-02-23 | 2016-12-20 | Apple Inc. | Managing firmware updates for integrated components within mobile devices |
JP2017068790A (ja) * | 2015-10-02 | 2017-04-06 | 株式会社リコー | 制御装置および制御方法 |
JP6408450B2 (ja) * | 2015-10-26 | 2018-10-17 | 日立オートモティブシステムズ株式会社 | 自動車用電子制御装置 |
EP3220262B1 (en) * | 2016-03-15 | 2018-06-13 | Axis AB | Device which is operable during firmware upgrade |
KR20170126230A (ko) * | 2016-05-09 | 2017-11-17 | 한국전자통신연구원 | 펌웨어 업데이트 장치 및 방법, 그리고 펌웨어 업데이트 시스템 |
TWI615705B (zh) * | 2016-05-31 | 2018-02-21 | 瑞昱半導體股份有限公司 | 於電腦系統中重置記憶體的方法 |
JP6740789B2 (ja) * | 2016-08-03 | 2020-08-19 | 富士通株式会社 | ストレージ制御装置および記憶装置管理プログラム |
JP6760813B2 (ja) * | 2016-10-14 | 2020-09-23 | 日立オートモティブシステムズ株式会社 | ソフトウェア更新装置、ソフトウェア更新方法、ソフトウェア更新システム |
CN107391304B (zh) * | 2017-07-26 | 2020-06-16 | 四川秘无痕科技有限责任公司 | 一种获取日立硬盘可用nv-ram的方法 |
EP3447636B1 (en) | 2017-08-21 | 2020-09-30 | Carrier Corporation | Fire and security system including addressable loop and automatic firmware upgrade |
JP2019040376A (ja) * | 2017-08-25 | 2019-03-14 | 株式会社明電舎 | 局所的データの書換方法 |
JP7069826B2 (ja) * | 2018-02-27 | 2022-05-18 | 株式会社リコー | 情報処理装置、ファームウェア更新方法、プログラム |
US11301229B2 (en) | 2018-03-29 | 2022-04-12 | Nec Corporation | System update device and system update method |
JP2020017059A (ja) * | 2018-07-25 | 2020-01-30 | 日本電気株式会社 | 情報処理装置、情報処理システム、情報処理方法及びプログラム |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01110218A (ja) | 1987-10-24 | 1989-04-26 | Denki Kagaku Keiki Co Ltd | 気体流量計及び気体流量制御装置 |
JPH11110218A (ja) | 1997-10-03 | 1999-04-23 | Hitachi Ltd | ファームウェア書き換え装置 |
JP4258579B2 (ja) * | 1998-12-21 | 2009-04-30 | 株式会社ニコン | プログラム書き換え装置 |
US6311322B1 (en) | 1998-03-09 | 2001-10-30 | Nikon Corporation | Program rewriting apparatus |
US6640334B1 (en) * | 1999-09-27 | 2003-10-28 | Nortel Networks Limited | Method and apparatus of remotely updating firmware of a communication device |
US6574754B1 (en) | 2000-02-14 | 2003-06-03 | International Business Machines Corporation | Self-monitoring storage device using neural networks |
JP2001331379A (ja) * | 2000-05-22 | 2001-11-30 | Nec Microsystems Ltd | フラッシュメモリ更新プログラムの書き換え方法及び装置 |
US7200845B2 (en) * | 2001-12-03 | 2007-04-03 | Hewlett-Packard Development Company, L.P. | System and method for high availability firmware load |
AU2003287532A1 (en) * | 2002-11-05 | 2004-06-07 | Bitfone Corporation | Firmware update system for facilitating firmware update in mobile handset related applications |
FI116641B (fi) * | 2003-10-24 | 2006-01-13 | Nokia Corp | Menetelmä elektronisessa laitteessa olevan pikavalinnan muuttamiseksi, laitteen näyttöyksikkö sekä elektroninen laite |
US7809836B2 (en) * | 2004-04-07 | 2010-10-05 | Intel Corporation | System and method for automating bios firmware image recovery using a non-host processor and platform policy to select a donor system |
ATE525827T1 (de) * | 2005-06-15 | 2011-10-15 | Huawei Tech Co Ltd | Verfahren und system zur automatischen wiederherstellung nach einem geräteausfall |
JP5112787B2 (ja) * | 2006-09-01 | 2013-01-09 | 株式会社リコー | 情報処理装置、プログラム更新方法及びプログラム |
US8286156B2 (en) * | 2006-11-07 | 2012-10-09 | Sandisk Technologies Inc. | Methods and apparatus for performing resilient firmware upgrades to a functioning memory |
JP4227641B2 (ja) * | 2006-11-20 | 2009-02-18 | キヤノン株式会社 | 情報処理装置及び情報処理装置の制御方法 |
US8776037B2 (en) * | 2007-01-04 | 2014-07-08 | International Business Machines Corporation | Apparatus and method to update multiple devices disposed in a computing system |
US20080168435A1 (en) * | 2007-01-05 | 2008-07-10 | David Tupman | Baseband firmware updating |
US9112891B2 (en) * | 2007-02-02 | 2015-08-18 | Sharp Laboratories Of America, Inc. | Remote firmware management for electronic devices |
US20090271780A1 (en) * | 2008-04-24 | 2009-10-29 | Moschip Semiconductor Technology Limited | Automatic complete firmware upgrade |
US8245214B2 (en) * | 2008-06-05 | 2012-08-14 | International Business Machines Corporation | Reliably updating computer firmware while performing command and control functions on a power/thermal component in a high-availability, fault-tolerant, high-performance server |
US8136108B2 (en) * | 2008-09-03 | 2012-03-13 | Computime, Ltd | Updating firmware with multiple processors |
US8892699B2 (en) * | 2008-12-31 | 2014-11-18 | Schneider Electric USA, Inc. | Automatic firmware updates for intelligent electronic devices |
-
2008
- 2008-09-24 JP JP2008244754A patent/JP5113700B2/ja not_active Expired - Fee Related
-
2009
- 2009-08-21 CN CN200980137476.7A patent/CN102165422B/zh not_active Expired - Fee Related
- 2009-08-21 US US13/054,943 patent/US8549510B2/en not_active Expired - Fee Related
- 2009-08-21 EP EP09816013A patent/EP2330507A4/en not_active Withdrawn
- 2009-08-21 WO PCT/JP2009/064603 patent/WO2010035596A1/ja active Application Filing
Also Published As
Publication number | Publication date |
---|---|
CN102165422B (zh) | 2014-06-04 |
EP2330507A4 (en) | 2012-05-02 |
US20110131563A1 (en) | 2011-06-02 |
JP2010079440A (ja) | 2010-04-08 |
EP2330507A1 (en) | 2011-06-08 |
WO2010035596A1 (ja) | 2010-04-01 |
US8549510B2 (en) | 2013-10-01 |
CN102165422A (zh) | 2011-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5113700B2 (ja) | ファームウェア更新装置及び方法 | |
KR100750132B1 (ko) | 부팅, 소프트웨어 자동 업데이트 및 에러 복원 방법과 그시스템, 그 방법을 기록한 컴퓨터 판독 가능한 기록매체 | |
JP5346253B2 (ja) | ファームウェア更新システム、及び情報機器、並びにプログラム | |
US8639973B2 (en) | System reset | |
KR101636870B1 (ko) | 최소 부트 이미지의 생성 방법 및 장치 | |
US20070055969A1 (en) | System and method for updating firmware | |
US7739490B2 (en) | Control apparatus, upgrade method and program product of the same | |
CN101188516B (zh) | 一种网络设备软件系统高可靠性自适应远程更新的方法 | |
CN104915226B (zh) | 一种网络设备软件启动方法、装置及网络设备 | |
CN112463191A (zh) | 一种文件更新方法及装置、设备、存储介质 | |
CN113157303A (zh) | 升级方法、嵌入式系统、终端及计算机存储介质 | |
US20140156943A1 (en) | Information processing apparatus, information processing method, and program | |
WO2011158367A1 (ja) | 実行中のプログラムの更新技術 | |
JP5279981B2 (ja) | 更新制御プログラム、更新制御方法および更新制御装置 | |
CN114780122A (zh) | 嵌入式设备固件更新方法以及嵌入式设备 | |
KR102423056B1 (ko) | 부팅 디스크 변경 방법 및 시스템 | |
KR20130040636A (ko) | 빠른 부팅을 위한 부트 이미지를 생성하는 방법 및 이를 수행하는 화상형성장치, 부트 이미지를 이용하여 빠른 부팅을 수행하는 방법 및 이를 수행하는 화상형성장치 | |
KR101850272B1 (ko) | 빠른 부팅을 위한 부트 이미지를 업데이트하는 방법 및 이를 수행하는 화상형성장치 | |
KR101845467B1 (ko) | 빠른 부팅을 위한 부트 이미지의 에러를 복구하는 방법 및 이를 수행하는 화상형성장치 | |
CN113190244A (zh) | 无线模组升级的方法、装置、计算机设备和存储介质 | |
CN109976940A (zh) | 一种软启动网络设备 | |
CN119046249B (zh) | 一种镜像文件处理方法、系统及产品 | |
CN119248571A (zh) | 一种基于双引导分区的设备恢复方法 | |
CN118656101A (zh) | 基板管理控制器固件升级方法、装置、设备及介质 | |
CN114138305A (zh) | 一种可靠的mcu固件升级的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110112 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120710 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120910 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20121002 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20121012 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20151019 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |