JP2009151384A - リカバリー制御装置、制御方法、プログラム及びコンピュータ読み取り可能な記憶媒体 - Google Patents
リカバリー制御装置、制御方法、プログラム及びコンピュータ読み取り可能な記憶媒体 Download PDFInfo
- Publication number
- JP2009151384A JP2009151384A JP2007326498A JP2007326498A JP2009151384A JP 2009151384 A JP2009151384 A JP 2009151384A JP 2007326498 A JP2007326498 A JP 2007326498A JP 2007326498 A JP2007326498 A JP 2007326498A JP 2009151384 A JP2009151384 A JP 2009151384A
- Authority
- JP
- Japan
- Prior art keywords
- bit area
- block
- lower bit
- upper bit
- recovery
- 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
Links
Images
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Debugging And Monitoring (AREA)
- Stored Programmes (AREA)
Abstract
【解決手段】フラッシュROM2を論理的に上位ビット領域と下位ビット領域に分割し、同一データとする。ROM2の最上位アドレス信号をスイッチSWで切り替えることで各領域を論理的に入れ換えることができる。CPU1にSWより反転・非反転選択信号BOOT_RESCUEを入力する。主電源ONによりブートが開始され、SWオフではROM2の最上位アドレス信号A21は非反転で、上位ビット領域よりブートが開始される。SWオンではA21が反転されて下位ビット領域よりブートが開始される。CPU1はBOOT_RESCUEが1であれば、通常のシステム起動処理を実行する。BOOT_RESCUEが0であれば、ROM2に問題が発生したのでSWを操作する。この場合は下位ビット領域のデータを上位ビット領域に全てコピーして上位ビット領域を修復する。
【選択図】図1
Description
なお、本発明によるリカバリー制御装置に関する従来技術が提案されている(例えば、特許文献1,2,3参照)。
また、ソフトの暴走によるブートエリア書換えや、フラッシュROM自体のデータ化け等の可能性も皆無ではなく、そのような事態が発生すると、ソフトウェアの書換え失敗と同様、電源ONを行っても立ち上げることができず、また、ソフトの再書込みもできなくなる。また、ユーザでは修復不可能なことが一般的であり、サービスマンによる修復まで機器が使用できなくなり、マシンのデッドタイムの増大に至る結果となる。
特許文献3は、画像形成装置で用いられるカード型メモリに関するものであり、本発明とは関係がない。
本発明は、上記のような問題を解決するもので、ブートプログラム破壊時におけるマシンのデッドタイムを軽減することを目的とする。
図1は第1の実施の形態によるリカバリー制御装置を示す。
図1において、CPU1、スイッチSW及びNOR回路3は、ブートプログラムが格納された不揮発メモリとしてのフラッシュROM2のブート時のリカバリー動作を制御する。この回路は、フラッシュROM2の最上位アドレス信号(この例では4MB容量、×16bitデータ幅なので、A21)を、スイッチSWにより反転・非反転を選択できるように構成されている。
上記構成によれば、フラッシュROM2の最上位アドレス信号をスイッチSWを切り替えることにより、各ビット領域を論理的に入れ換えることができる。
主電源ONによる起動時、ブートベクタよりブートが開始される(ステップS1、以下ステップ略)。SWがオフの時はフラッシュROM2の最上位アドレス信号A21は非反転なので、Boot Block4よりブートが開始される。SWがオンの時はA21が反転されるため、Recovery Block5よりブートが開始される。ブートが開始されると、CPU1は上記選択信号BOOT_RESCUEをリードし、判断する(S2、S3)。BOOT_RESCUEが1であれば、通常のシステム起動(Normalモード)であると判断し、通常のシステム起動処理を実行する。
図2(b)にSWオン・オフによるBoot Block4とRecovery Block5の関係を示す。
このフローチャートにおいても、主電源ONによるブート時(S11)に、BOOT_RESCUEをリードし、NormalモードかRecoveryモードかを判断する(S12、S13)。第1の実施の形態と同様に、Normalモードであれば、通常のシステム起動を行い、Recoveryモードであれば、Boot Block4のリカバリー処理要求と判断する。
即ち、BOOT_RESCUE=0のとき(S14)、Boot Block4、Recovery Block5の各先頭ブロックから各ブロックのSUM値をそれぞれ計算して(S15)、比較する(S16)。不一致が発生した場合は、Recovery Block5のそのブロックのデータをBoot Block4の対応するブロックにコピーする(S17)。全てのブロックに対してBoot Block4とRecovery Block5について同様の比較を行い(S18、S19、S15)、最後のブロックまで処理が終了すると、Boot Block4のリカバリー処理を完了する。そこでSWをオフし、電源ONにより正常に起動することができる。
このフローチャートにおいても、第1,2の実施の形態と同様に、主電源ONによるブート時にBOOT_RESCUEをリードし、NormalモードかRecoveryモードかを判断する(S21、S22、S23)。Normalモードであれば通常のシステム起動を行う。
このフローチャートにおいても、第1〜3の実施の形態と同様に、主電源ONによるブート時にBOOT_RESCUEをリードし、NormalモードかRecoveryモードかを判断する(S31、S32、S33)。Normalモードであれば通常のシステム起動を行う。
このフローチャートにおいても、第1〜4の実施の形態と同様に、主電源ONによるブート時にBOOT_RESCUEをリードし、NormalモードかRecoveryモードかを判断する(S51、S2、S53)。そして、Recoveryモードであると判断した場合は、上記第1〜4の実施の形態の何れかに示すリカバリー処理を行う。
第1〜5の実施の形態と同様に、主電源ONによるブート時にBOOT_RESCUEをリードし、NormalモードかRecoveryモードかを判断し(S71、S72、S73)、Recoveryモードであると判断した場合、第1〜4の実施の形態の何れかのリカバリー処理を行う。
上記の制御を行うことで、サービスマン等によりソフトのバージョンアップ作業においてBoot Block、Recovery Blockを意識する必要が排除され、また、サービスマンによるソフトのバージョンアップはBoot Blockのみに処置すればよく、作業時間を短縮することができる。
本実施の形態は、図1の回路構成に監視回路6を追加したものである。監視回路6は、パワーオンリセット回路7によるパワーオンリセット解除後、CPU1から一定期間アクセスがなければフラッシュROM2への最上位アドレスを反転させると共に、リセット出力を行うものである。
この監視回路7は、フラッシュROM2への最上位アドレス信号を反転/非反転させるアドレス反転回路(ADDRESS反転回路)8、タイマ(TIMER)9、それらを制御する制御部10と、監視回路7自体をリセットするパワーオンリセット器11からなる。inv/noninv#信号はアドレスの反転/非反転を制御する信号で、初期値はnoninv(非反転)である。また、start信号はタイマの起動信号、clear信号は、タイマのストップ#とクリア、timeup信号は所定の時間が経過したことを示す信号である。
パワーオンリセット回路6によるパワーオンリセット解除後、タイマ9を起動する。タイマ8からtimeup信号がアサートする前にCPU1からACCESS信号のアサートがあった場合は、タイマ9を停止し、監視回路6の動作は停止する。
主電源ONにてシステムのブートが開始され(S81)、各デバイスの初期設定等が行われる。その後、監視回路7のACCESSポートに接続されているCPU1のIOポート2から出力されるACCESS信号をアサートする(S82)。このような処理を行うことで、システムが正常に起動したことを監視回路6に認識させる。続いてBOOT_RESCUEをリードする(S83)。ここでBOOT_RESCUEが0であれば(S82、No)、Normalモードであると判断し、通常のシステム起動処理が行われる。監視回路6はACCESSポートへの信号アサートにより既に停止しており、システムは正常な起動状態となる。
2 フラッシュROM
3 NOR回路
SW スイッチ
6 パワーオンリセット回路
7 監視回路
8 ADDRESS反転回路
9 タイマ
Claims (16)
- ブートプログラムを格納し、メモリ空間を論理的に上位ビット領域と下位ビット領域とに2分割し、各ビット領域に同一データを格納する不揮発メモリと、
前記不揮発メモリの最上位アドレス信号を反転・非反転させて前記各ビット領域を論理的に入れ換え可能にする選択手段と、
前記選択手段の状態を検出する検出手段と、
電源ONによるソフトウエア起動時に、前記選択手段が非反転を選択したことを前記検出手段が検出した場合は、通常のシステム起動を行い、前記選択手段が反転を選択したことを前記検出手段が検出した場合は、前記下位ビット領域の全データを前記上位ビット領域の全領域にコピーする制御手段とを設けたことを特徴とするリカバリー制御装置。 - ブートプログラムを格納し、メモリ空間を論理的に上位ビット領域と下位ビット領域とに2分割し、各ビット領域に同一データを格納した不揮発メモリと、
前記不揮発メモリの最上位アドレス信号を反転・非反転させて前記各ビット領域を論理的に入れ換え可能にする選択手段と、
前記選択手段の状態を検出する検出手段と、
電源ONによるソフトウエア起動時に、前記選択手段が非反転を選択したことを前記検出手段が検出した場合は、通常のシステム起動を行い、前記選択手段が反転を選択したことを前記検出手段が検出した場合は、前記上位ビット領域を構成する全てのブロックと前記下位ビット領域を構成する全てのブロックについてブロック単位でSUM値を計算し、前記上位ビット領域のブロックと前記下位ビット領域のブロックのSUM値が一致しないとき、その下位ビット領域のブロックのデータを上位ビット領域のブロックにコピーする制御手段とを設けたことを特徴とするリカバリー制御装置。 - 前記選択手段が反転を選択したことを前記検出手段が検出した場合に、前記制御手段に前記コピーを行わせるか、前記通常のシステム起動を行わせるかをユーザが選択して入力する入力手段を設けたことを特徴とする請求項1記載のリカバリー制御装置。
- 前記第1の選択手段が反転を選択したことを前記検出手段が検出した場合に、前記制御手段に前記SUM値を用いたコピーを行わせるか、前記通常のシステム起動を行わせるかをユーザが選択して入力させる入力手段を設けたことを特徴とする請求項2記載のリカバリー制御装置。
- 前記制御手段は、前記通常のシステム起動をした後、CPU処理の負荷が軽い時にバックグラウンドで、前記上位ビット領域を構成する全てのブロックと下位ビット領域を構成する全てのブロックについてブロック単位でSUM値を計算し、前記上位ビット領域のブロックと前記下位ビット領域のブロックのSUM値が一致しないとき、内部エラーを記録すると共に、正規のSUM値を用いて上位ビット領域のブロックと下位ビット領域のブロックのどちらが正しいのかを判別し、正しい方のブロックのデータを誤った方のブロックにコピーすることを特徴とする請求項1又は2記載のリカバリー制御装置。
- 前記制御手段は、前記通常のシステム起動時に、前記上位ビット領域と下位ビット領域のバージョンチェックを行い、下位ビット領域のバージョンが上位ビット領域より古いバージョンの場合、バックグラウンドで上位ビット領域のデータを下位ビット領域にコピーすることを特徴とする請求項1から5の何れか1項記載のリカバリー制御装置。
- パワーオンリセット解除後、前記制御手段から一定期間内にアクセスが無かった場合にアドレスを反転させると共に、リセット出力を発生する監視手段を設け、電源ONによるソフトウエア起動時、前記制御手段が前記監視手段にアクセスするようになし、前記一定期間内に前記アクセスが無かった場合に、前記監視手段が前記不揮発メモリの前記最上位アドレス信号を反転させ、リセット出力を発生することにより、システムを起動することを特徴とする請求項1又は2記載のリカバリー制御装置。
- 不揮発メモリにブートプログラムを格納し、メモリ空間を論理的に上位ビット領域と下位ビット領域とに2分割して各ビット領域に同一データを格納し、
前記不揮発メモリの最上位アドレス信号を反転・非反転させることにより、前記各ビット領域を論理的に入れ換え可能になし、
前記反転又は非反転の状態を検出するようになし、
電源ONによるソフトウエア起動時に、前記非反転状態を検出した場合は、通常のシステム起動を行い、前記反転状態を検出した場合は、前記下位ビット領域の全データを前記上位ビット領域の全領域にコピーすることを特徴とするリカバリー制御方法。 - 不揮発メモリにブートプログラムを格納し、メモリ空間を論理的に上位ビット領域と下位ビット領域とに2分割して各ビット領域に同一データを格納し、
前記不揮発メモリの最上位アドレス信号を反転・非反転させることにより、前記各ビット領域を論理的に入れ換え可能になし、
前記反転又は非反転の状態を検出するようになし、
電源ONによるソフトウエア起動時に、前記非反転状態を検出した場合は、通常のシステム起動を行い、前記反転状態を検出した場合は、前記上位ビット領域を構成する全てのブロックと前記下位ビット領域を構成する全てのブロックについてブロック単位でSUM値を計算し、前記上位ビット領域のブロックと前記下位ビット領域のブロックのSUM値が一致しないとき、その下位ビット領域のブロックのデータを上位ビット領域のブロックにコピーすることを特徴とするリカバリー制御方法。 - 前記反転状態を検出した場合に、前記コピーを行わせるか、前記通常のシステム起動を行わせるかをユーザに選択させることを特徴とする請求項8記載のリカバリー制御方法。
- 前記反転状態を選択したことを検出した場合に、前記SUM値を用いたコピーを行わせるか、前記通常のシステム起動を行わせるかをユーザに選択させることを特徴とする請求項9記載のリカバリー制御方法。
- 前記通常のシステム起動をした後、CPU処理の負荷が軽い時にバックグラウンドで、前記上位ビット領域を構成する全てのブロックと下位ビット領域を構成する全てのブロックについてブロック単位でSUM値を計算し、前記上位ビット領域のブロックと前記下位ビット領域のブロックのSUM値が一致しないとき、内部エラーを記録すると共に、正規のSUM値を用いて上位ビット領域のブロックと下位ビット領域のブロックのどちらが正しいのかを判別し、正しい方のブロックのデータを誤った方のブロックにコピーすることを特徴とする請求項8又は9記載のリカバリー制御方法。
- 前記通常のシステム起動時に、前記上位ビット領域と下位ビット領域のバージョンチェックを行い、下位ビット領域のバージョンが上位ビット領域より古いバージョンの場合、バックグラウンドで上位ビット領域のデータを下位ビット領域にコピーすることを特徴とする請求項8から12の何れか1項記載のリカバリー制御方法。
- パワーオンリセット解除後、CPUから一定期間内にアクセスが無かった場合にアドレスを反転させると共に、リセット出力を発生するようになし、電源ONによるソフトウエア起動時、前記一定期間内に前記アクセスが無かった場合に、前記不揮発メモリの前記最上位アドレス信号を反転させ、リセット出力を発生することにより、システムを起動することを特徴とする請求項8又は9記載のリカバリー制御方法。
- 請求項8から14の何れか1項に記載されたリカバリー制御方法をコンピュータに実行させるプログラム。
- 請求項15記載のプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007326498A JP5072092B2 (ja) | 2007-12-18 | 2007-12-18 | リカバリー制御装置、制御方法、プログラム及びコンピュータ読み取り可能な記憶媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007326498A JP5072092B2 (ja) | 2007-12-18 | 2007-12-18 | リカバリー制御装置、制御方法、プログラム及びコンピュータ読み取り可能な記憶媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009151384A true JP2009151384A (ja) | 2009-07-09 |
JP5072092B2 JP5072092B2 (ja) | 2012-11-14 |
Family
ID=40920508
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007326498A Expired - Fee Related JP5072092B2 (ja) | 2007-12-18 | 2007-12-18 | リカバリー制御装置、制御方法、プログラム及びコンピュータ読み取り可能な記憶媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5072092B2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012198876A (ja) * | 2011-03-18 | 2012-10-18 | Denso Corp | メモリデバイスにおける読み出し不可状態を解決するための装置及び方法 |
US9471435B2 (en) | 2012-01-05 | 2016-10-18 | Mitsubishi Electric Corporation | Information processing device, information processing method, and computer program |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02297237A (ja) * | 1989-05-11 | 1990-12-07 | Toshiba Corp | 電子計算機システムの自動再起動装置 |
JPH06348504A (ja) * | 1993-06-04 | 1994-12-22 | Sharp Corp | マイクロプロセッサシステム |
JPH09146767A (ja) * | 1995-11-27 | 1997-06-06 | Nec Corp | プログラム書き換え方法 |
JP2000148467A (ja) * | 1998-11-05 | 2000-05-30 | Sharp Corp | 情報処理装置、情報処理装置の基本システムプログラム書換方法及び情報処理装置の基本システムプログラム書換プログラムを記録した記録媒体 |
JP2001195260A (ja) * | 2000-01-12 | 2001-07-19 | Nec Yonezawa Ltd | ブートプログラム書き換えシステム |
JP2002108724A (ja) * | 2000-10-03 | 2002-04-12 | Auto Network Gijutsu Kenkyusho:Kk | Romのデータチェック方法 |
JP2004038529A (ja) * | 2002-07-03 | 2004-02-05 | Nec Corp | 情報処理装置 |
JP2004199277A (ja) * | 2002-12-17 | 2004-07-15 | Fujitsu Ltd | Biosの冗長管理方法、データ処理装置及びストレージシステム |
JP2007164392A (ja) * | 2005-12-13 | 2007-06-28 | Yaskawa Electric Corp | 計算機 |
-
2007
- 2007-12-18 JP JP2007326498A patent/JP5072092B2/ja not_active Expired - Fee Related
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02297237A (ja) * | 1989-05-11 | 1990-12-07 | Toshiba Corp | 電子計算機システムの自動再起動装置 |
JPH06348504A (ja) * | 1993-06-04 | 1994-12-22 | Sharp Corp | マイクロプロセッサシステム |
JPH09146767A (ja) * | 1995-11-27 | 1997-06-06 | Nec Corp | プログラム書き換え方法 |
JP2000148467A (ja) * | 1998-11-05 | 2000-05-30 | Sharp Corp | 情報処理装置、情報処理装置の基本システムプログラム書換方法及び情報処理装置の基本システムプログラム書換プログラムを記録した記録媒体 |
JP2001195260A (ja) * | 2000-01-12 | 2001-07-19 | Nec Yonezawa Ltd | ブートプログラム書き換えシステム |
JP2002108724A (ja) * | 2000-10-03 | 2002-04-12 | Auto Network Gijutsu Kenkyusho:Kk | Romのデータチェック方法 |
JP2004038529A (ja) * | 2002-07-03 | 2004-02-05 | Nec Corp | 情報処理装置 |
JP2004199277A (ja) * | 2002-12-17 | 2004-07-15 | Fujitsu Ltd | Biosの冗長管理方法、データ処理装置及びストレージシステム |
JP2007164392A (ja) * | 2005-12-13 | 2007-06-28 | Yaskawa Electric Corp | 計算機 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012198876A (ja) * | 2011-03-18 | 2012-10-18 | Denso Corp | メモリデバイスにおける読み出し不可状態を解決するための装置及び方法 |
US9471435B2 (en) | 2012-01-05 | 2016-10-18 | Mitsubishi Electric Corporation | Information processing device, information processing method, and computer program |
Also Published As
Publication number | Publication date |
---|---|
JP5072092B2 (ja) | 2012-11-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5575338B2 (ja) | 情報処理装置、情報処理方法、およびコンピュータプログラム | |
TWI515660B (zh) | 韌體變量更新方法 | |
TWI514408B (zh) | 於裝置開機期間處置來自非揮發性記憶體之錯誤 | |
TWI525542B (zh) | Uefi bios開機及更新之系統及方法、記錄媒體及電腦程式產品 | |
US7900036B2 (en) | System and method for implementing boot/recovery on a data processing sysem | |
TWI382346B (zh) | 保護雙基本輸出入系統程式之電腦系統及其控制方法 | |
CN108304282B (zh) | 一种双bios的控制方法及相关装置 | |
TWI710952B (zh) | 韌體更新方法及電腦系統 | |
US20060107031A1 (en) | Portable terminal | |
TW201520895A (zh) | Bios自動恢復系統及方法 | |
JP2009134692A (ja) | 単一キー制御を使用するシステム構成の自動修復方法 | |
US10223217B2 (en) | Information processing device, method for booting information processing device, and non-transitory recording medium | |
JP6698467B2 (ja) | 電子回路システム及び制御装置の起動方法 | |
TW201512831A (zh) | 電腦開機啟動偵測系統及方法 | |
WO2012149774A1 (zh) | 一种处理器启动方法及装置 | |
CN105786545B (zh) | 基于异构混合内存的断点恢复方法和系统 | |
JP4836732B2 (ja) | 情報処理装置 | |
US20160062838A1 (en) | Information processing apparatus, method of controlling the same, and storage medium | |
JP5072092B2 (ja) | リカバリー制御装置、制御方法、プログラム及びコンピュータ読み取り可能な記憶媒体 | |
JP6021597B2 (ja) | 情報処理装置、情報処理方法、およびコンピュータプログラム | |
TW202223655A (zh) | 可自我監視及恢復作業系統運作的電腦系統及方法 | |
JP2005234872A (ja) | コンピュータ、コンピュータ起動方法、biosプログラムおよび情報記憶媒体 | |
JP2008052354A (ja) | 外部基本入出力システムデバイス | |
US11467898B2 (en) | Information processing apparatus and method of controlling the same | |
JP2004054616A (ja) | ファームウェア自動修復機能を有する情報処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100804 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120528 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120626 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120713 |
|
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: 20120814 |
|
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: 20120820 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5072092 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150831 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |