JP2006023970A - 装置異常復旧方式 - Google Patents
装置異常復旧方式 Download PDFInfo
- Publication number
- JP2006023970A JP2006023970A JP2004201289A JP2004201289A JP2006023970A JP 2006023970 A JP2006023970 A JP 2006023970A JP 2004201289 A JP2004201289 A JP 2004201289A JP 2004201289 A JP2004201289 A JP 2004201289A JP 2006023970 A JP2006023970 A JP 2006023970A
- Authority
- JP
- Japan
- Prior art keywords
- cpu
- program
- information
- control circuit
- abnormality
- 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
Landscapes
- Debugging And Monitoring (AREA)
Abstract
【課題】 従来のWDTではCPUの動作の復旧にあたって、プログラムの停止箇所等の情報が記録に残らないので、不具合の原因を追求するのが困難である。
【解決手段】 CPUからプログラムの実行個所の情報をI/O出力と共に出力する機能を設け、WDT回路のタイムアウト時に、前記I/O出力に伴って得られたプログラム実行個所をバックアップメモリ回路に記録して参照可能な構成とした。
【選択図】 図1
【解決手段】 CPUからプログラムの実行個所の情報をI/O出力と共に出力する機能を設け、WDT回路のタイムアウト時に、前記I/O出力に伴って得られたプログラム実行個所をバックアップメモリ回路に記録して参照可能な構成とした。
【選択図】 図1
Description
本発明は装置異常検出方式に関し、特に中央演算処理装置(以降、CPUと称す。)とウォッチ・ドッグ・タイマ(Watch Dog Timer。以下、WDTと称す。)を用いた装置において、装置内で発生する異常を検出し、迅速に復旧し、かつ当該異常に関する情報を記録して参照可能に構成したことにより原因を容易に解析できるようにしたシステム異常復旧方式に関するものである。
従来から装置内の異常を検出する装置にはWDTを用いたものが一般に使われている。この種の装置では、WDTは常時カウントアップしており、CPUが正常動作をしている間は内蔵のカウンタがカウント停止信号を発信して一定間隔でカウントアップをクリアさせるので、CPUの異常を判定する為の予め決められた所定のカウント数をオーバーせず、結果としてCPUが正常に動作しているものと判定するしくみになっている。
また、該装置ではCPUが異常になって停止した場合には、カウント停止信号が発信されなくなり、カウントはクリアされずカウントアップを継続するので、所定のカウント数をオーバーすることとなり、CPUの動作が異常であると判定してアラーム発信する。
特開平6−318159
しかしながら、従来のWDTを用いた装置内の異常検出方式ではCPUで実行中のプログラムが途中で異常停止した場合、システムの復旧は装置に設けられたリセットスイッチを押してリセットしたり、重度のエラーであれば、強制的に電源スイッチを切るなど比較的容易である。しかしながら、この方法では、実行していたプログラムのどの部分が原因で異常停止しているのか記録が残らず、プログラムを解析してCPUの停止の原因を本質的に究明するのは容易ではない。
また、従来のWDTでは復旧に装置に設けられたリセットスイッチを押してCPUの動作をリセットするのが一般的であるが、このようなリセットスイッチによる復旧方法においてもまれにではあるが復旧不可能な異常が起こることがあり装置の操作上、使い難いものとなっていた。
このような課題を解決するために、本発明では装置内においてある期間内にプログラム実行個所情報をI/Oに出力するプログラムと、I/O入力によってクリアされるWDT回路と、WDT回路のタイムアウト時にプログラム実行個所を記録するバックアップメモリ回路を設け、プログラム停止時の実行情報を記録する構成とした。
バックアップメモリに、タイムアウト発生日時時刻データ、停止時のプログラム実行個所、CPUの動作回復状況を保存することにより、障害発生時にこれらの障害情報を利用でき障害解析が容易となる。また、リセットにより復旧できなかった場合に電源をON/OFFさせる機構を組み込むことによりリセットでは復旧不可能な障害をも復旧することができる。
さらに、障害発生時に即座に記録した障害情報を読み込みネットワークを通じてホスト端末に表示する構成としたので障害対応を迅速に行えるという効果が得られる。
(構成)
以下に本発明の実施の形態について図面を参照して説明する。図1は本発明の実施の形態の装置内異常検出方式の構成図である。
以下に本発明の実施の形態について図面を参照して説明する。図1は本発明の実施の形態の装置内異常検出方式の構成図である。
本発明の装置1には内部にCPU2が備えられており、該CPU2でプログラムを実行するのであるがCPU2にはI/Oバスで制御回路3が接続されており各種制御信号を生成しシステムを制御する。特にCPU2が正常に動作している時はI/Oバスを介してI/O出力21が常に制御回路3に発信されている。
また、制御回路3には、メモリで構成されたCPUリセットログ10と電源ON/OFFログ10の二つの記憶領域が接続されている。また、装置1は電源部4で電源供給されており、電源部4には装置外部から押下可能な電源スイッチ14が接続されている。
CPU2はリセットスイッチ13によって装置1の外部からもリセットすることができるようになっており、制御回路3には日付時刻をカウントして記録しているRTC回路5が、日付情報が読み出し可能に接続されている。WDT6は制御回路3を介してCPUの動作を監視し停止を検出する。また、障害情報を記録するバックアップメモリ7、障害発生時にバックアップメモリ7から取得した障害情報をホスト9に伝える通知回路8からなっている。
(動作)
次に、本発明の実施の形態の動作について説明する。図2は本装置の動作のフローチャートである。当該フローの各ステップS1〜S12を順を追って以下に説明する。
次に、本発明の実施の形態の動作について説明する。図2は本装置の動作のフローチャートである。当該フローの各ステップS1〜S12を順を追って以下に説明する。
先ず、作業者が装置の電源を入力して作業を開始する(S1)と同時にCPUリセットログ10と電源ON/OFFログ11の記憶内容を初期化する(S2)。具体的には、制御回路3からの信号を受けて、2つのログにともに「0」のデータが書き込まれる。
作業者は装置上で任意のプログラムを実行して作業を行うのであるが、装置が正常に動作している時は、CPU2は所定の時間毎に実行中のプログラムの実行個所(たとえば行番号など)の情報をI/O出力21と共に制御回路3に断続的に出力している。
制御回路3はI/O出力21を受け取るとプログラム実行個所情報をデータバス35を通じてバックアップメモリ7に送信すると共に、クリア信号33をWDT6に送信する。WDT6はCPU2が動作をしている間は内蔵のタイマにより常にカウントアップしているが、クリア信号33を受信することによりカウントアップを停止する。つまり、CPU2が正常な動作をしている間は、WDT6はクリア信号33を受信し続けることになりタイムアウトとなることはない。
いま、この状態からCPU2上で実行されているプログラムが暴走して異常が発生したとする(S3)。この時、CPU2のI/O出力21が停止されることにより、制御回路3ではCPU2から常時入力されていたI/O出力21の信号が受信されなくなる。それとともに制御回路3はクリア信号33をWDT6に対し発信しなくなるので、WDT6でカウントアップが開始される。WDT6は、カウント数が所定の数以上になるとCPU2に異常が発生したとして制御回路3にタイムアウト信号61を送信する。
制御回路3はタイムアウト信号61を受信するとライト信号27をバックアップメモリ7に送信し、このときRTC回路5から得られる日付時刻データ29を受信し、直前にCPU2からI/O出力21にあわせて送信されたプログラム停止個所情報を日付時刻データ29とともにバックアップメモリ7に書き込む。図3はバックアップメモリ7に書き込まれるデータのフォーマット形式を示したものであり、後に障害の履歴が参照可能なように、障害発生日時のデータをプログラム停止箇所のデータがセットで書き込まれる。
続いて、制御回路3はバックアップメモリ7に書き込み指示をおくるとともに、CPU2にCPUリセット信号22を発信する。CPUリセット信号を発信するときは、CPUリセットログ10の所定ビット位置に「1」のデータを書き込む。このとき電源ON/OFFログ11にはデータを書き込まないので、該データは「0」として記録されたままの状態である。
CPUリセット信号22がCPU2で受信されるとリセットスイッッチを押すことなく自動的にCPU2は実行中のプログラムをリセット(S4)し再びプログラム先頭から実行を開始する。そしてCPU2は制御回路3を介してCPUリセットログ10および電源ON/OFFログ11の状態を確認する。
CPUリセットログ10には既に「1」のデータが記憶されており、かつ電源ON/OFFログ11には「0」のデータが記憶されているので、前回のCPUエラー時にはCPUリセットにより復旧したものと判断して制御回路3からCPUリセットでの復旧の旨を記録した回復情報をバックアップメモリ7に発信するとともに制御回路3からライト信号27をバックアップメモリ7へ発信する。(S5)
バックアップメモリ7に回復情報のデータとライト信号27が受信されると、図3に示したバックアップメモリ7のデータ構造において予め決められた所定の領域に当該回復情報が書き込まれる(S6)。書き込みが終了すると、図示しないログ情報リセットが制御回路3から、CPUリセットログ10及び電源ON/OFFログ11に送信され、両ログのデータに「0」が書き込まれて初期化される。その後、通知回路8は制御回路3から障害通知26を受け取ると、バックアップメモリ7をアクセスして記録されている障害情報を読み込み、障害表示通知28と共に、読み込んだ障害情報をホスト9へ送信する。ホスト9では図示しない表示画面が備えられており、CPUリセットにより装置が復旧した旨の回復情報が記録され、正常に復旧したことを知らせるメッセージがホスト9に設けられた図示しない画面に表示され作業者に通知される(S7)。
しかしながら、既に説明した図3のS6のCPUリセットを実行した後に、再びWDT6がタイムアウトとなってしまう場合は、CPUリセットでは復旧不能な動作異常であるとして強制的に電源のOFFすることによって装置を復旧させる。制御回路3はWDT6のタイムアウト信号を受信するとCPUリセットログ10と電源ON/OFFログ11を参照する。(S8)
CPUリセットログ10のデータビットがすでに「1」となっているので、制御回路3はCPUリセットログ10の「1」を読み取って、CPUリセット後すぐにタイムアウトを起こしたものと判定し、電源ON/OFF信号23を電源部4に送信して装置の電源を強制的にOFFする(S9)。このとき同時に電源ON/OFFログ11に「1」のデータを書き込むとともに、CPUリセットログ10のデータをクリアして「0」のデータに書き換える。
制御回路3から電源ON/OFFでの復旧の旨を記録した回復情報をバックアップメモリ7に発信する。ともに制御回路3からライト信号27をバックアップメモリ7へ発信する。バックアップメモリ7に回復情報のデータとライト信号27が受信されると、図3に示したバックアップメモリ7のデータ構造の所定の領域に回復情報が書き込まれる(S10)。
書き込みが終了すると、図示しないログ情報リセットを通知回路8は制御回路3から障害通知26を受け取り、バックアップメモリ7をアクセスして記録されている障害情報を読み込み、障害表示通知28と共に、読み込んだ障害情報をホスト9へ送信する。その後、正常に復旧したことを知らせるメッセージがホスト9の画面に表示され作業者に通知される。
電源をOFFした後、再度ONして電源の再投入を実行した場合でも、WDT6がタイムアウトとなってしまう場合はこれを、復旧不可能な最重度な動作異常であると判断(S11)して復旧不可能である旨を示すアラームを図示しない装置に付属のLEDを点灯させるなどして操作者に通知する(S12)。このような場合には、もはや通常の処理では復旧は困難であるので操作者はマニュアル等を元に特別な復旧作業を行うのであるが、本願とは無関係な内容であり、ここでは詳述しない。
なお、本発明におけるホスト9での画面表示では、作業者へのメッセージを表示するようにしているが、バックアップメモリ7に記憶された情報の履歴をリストとして表示してもよい。
また、異常の原因となるプログラムの実行個所をプログラムリストと合わせて表示して具体的に指示するようにしてもよい。
さらに、本発明では、ウォッチドッグタイマを用いた装置として説明しているが、CPU等の装置内部品の出力信号を時間監視して異常を検出するものであれば、これに限定されない。
1 装置
2 CPU
3 制御回路
4 電源部
5 RTC回路
6 ウォッチ・ドッグ・タイマ
7 バックアップメモリ
8 通知回路
9 ホスト
10 CPUリセットログ
11 電源ON/OFFログ
12 リセットスイッチ
13 電源スイッチ
2 CPU
3 制御回路
4 電源部
5 RTC回路
6 ウォッチ・ドッグ・タイマ
7 バックアップメモリ
8 通知回路
9 ホスト
10 CPUリセットログ
11 電源ON/OFFログ
12 リセットスイッチ
13 電源スイッチ
Claims (3)
- CPUとウォッチドックタイマを使用した装置の装置内異常検出方式において、
前記CPUはプログラムの正常動作時にI/O信号とともに、プログラムの実行箇所についてのデータを発信し、
前記CPUの動作異常時に、前記ウオッチドックタイマが所定のカウント数を超えると、前記プログラムの実行箇所のデータを記憶し、
異常についての情報を装置の外部に表示することを特徴とする装置内異常検出方式。 - 前記装置内の異常についての情報を異常発生時刻とともに
記録することを特徴とする請求項1記載の装置異常検出方式。 - CPUとウォッチドックタイマを使用した装置の装置内異常検出方式において、
前記CPUの動作異常時に、CPUの復旧方法についての情報を記録した後、前記プログラムを再び実行し、
前記情報を参照して、復旧方法を切り替えることを特徴とする装置内異常検出方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004201289A JP2006023970A (ja) | 2004-07-08 | 2004-07-08 | 装置異常復旧方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004201289A JP2006023970A (ja) | 2004-07-08 | 2004-07-08 | 装置異常復旧方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006023970A true JP2006023970A (ja) | 2006-01-26 |
Family
ID=35797200
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004201289A Pending JP2006023970A (ja) | 2004-07-08 | 2004-07-08 | 装置異常復旧方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006023970A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008176682A (ja) * | 2007-01-22 | 2008-07-31 | Renesas Technology Corp | 半導体集積回路及びデータ処理システム |
JP2013061841A (ja) * | 2011-09-14 | 2013-04-04 | Fujitsu Ltd | 情報処理装置および情報処理装置の試験方法 |
JP2017207903A (ja) * | 2016-05-18 | 2017-11-24 | Necプラットフォームズ株式会社 | 処理装置、方法及びプログラム |
-
2004
- 2004-07-08 JP JP2004201289A patent/JP2006023970A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008176682A (ja) * | 2007-01-22 | 2008-07-31 | Renesas Technology Corp | 半導体集積回路及びデータ処理システム |
JP2013061841A (ja) * | 2011-09-14 | 2013-04-04 | Fujitsu Ltd | 情報処理装置および情報処理装置の試験方法 |
JP2017207903A (ja) * | 2016-05-18 | 2017-11-24 | Necプラットフォームズ株式会社 | 処理装置、方法及びプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6333410B2 (ja) | 障害処理方法、関連装置、およびコンピュータ | |
US5864656A (en) | System for automatic fault detection and recovery in a computer system | |
JP2006309760A (ja) | データプロセッサの異常動作を検出するためのモニタリング論理及びモニタリング方法 | |
CN101221518B (zh) | 一种防止硬件看门狗的定时器溢出的方法、装置与*** | |
JP2006338445A (ja) | 異常情報格納装置 | |
JP2006023970A (ja) | 装置異常復旧方式 | |
CN115599617B (zh) | 总线检测方法、装置、服务器及电子设备 | |
JP2008129669A (ja) | ハードウェア異常記録装置及びハードウェア異常記録方法 | |
WO2014112039A1 (ja) | 情報処理装置、情報処理装置制御方法及び情報処理装置制御プログラム | |
JP5509651B2 (ja) | ログ採取装置、ログ採取方法、プログラム | |
JP2002182951A (ja) | 情報処理装置のメンテナンス方法および情報処理装置 | |
JPS6115239A (ja) | プロセツサ診断方式 | |
JPH01205244A (ja) | ロギング情報収集方式 | |
JP2003067220A (ja) | コンピュータシステム | |
JP2009205633A (ja) | 情報処理システム及び情報処理方法 | |
JP4348161B2 (ja) | 火災受信機 | |
JP2009301079A (ja) | 電子計算機装置及びソフトウェア処理遅延検出時のデータ保存方法 | |
JPH0433138A (ja) | Cpu暴走監視方式 | |
JP2009020545A (ja) | コンピュータの異常監視装置 | |
JP2006011991A (ja) | コンピュータ制御装置およびこのソフトウェア実行記録方式 | |
JP2002063051A (ja) | ソフトウェア動作監視システムおよびその記録媒体およびソフトウェア動作監視方法 | |
JPH02231650A (ja) | マイクロプログラム制御式データ処理装置 | |
JP2019215742A (ja) | マルチcpuシステムにおける異常検知と状態記録 | |
JP6410015B2 (ja) | 情報処理装置 | |
JP4830796B2 (ja) | ディジタル保護継電装置の自動監視方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20060923 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20060929 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20061013 |