JPH03230254A - マルチプロセッサシステムの障害検出方法 - Google Patents
マルチプロセッサシステムの障害検出方法Info
- Publication number
- JPH03230254A JPH03230254A JP2681990A JP2681990A JPH03230254A JP H03230254 A JPH03230254 A JP H03230254A JP 2681990 A JP2681990 A JP 2681990A JP 2681990 A JP2681990 A JP 2681990A JP H03230254 A JPH03230254 A JP H03230254A
- Authority
- JP
- Japan
- Prior art keywords
- processor
- processors
- multiprocessor system
- timer
- failure
- 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
Landscapes
- Multi Processors (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は共通メモリを有する密結合のマルチプロセッサ
システムの各プロセッサにおける障害発生を相互監視す
る方法に関する。
システムの各プロセッサにおける障害発生を相互監視す
る方法に関する。
マルチプロセッサシステムにおいては、システムを構成
する各プロセッサそれぞれが障害を発生した場合に可及
的速やかに検出する必要がある。
する各プロセッサそれぞれが障害を発生した場合に可及
的速やかに検出する必要がある。
このような技術として、たとえば特開昭62−2433
0号公報に開示されている発明がある。
0号公報に開示されている発明がある。
この特開昭62−24330号公報に開示されている発
明は、第3図に示す如きシステム構成において第4図の
フローチャートに示す如き手順で動作する。
明は、第3図に示す如きシステム構成において第4図の
フローチャートに示す如き手順で動作する。
第3図に示す構成のシステムは、2個のプロセッサPI
、 P2及びそれぞれのローカルメモリLMI、LM2
と両プロセッサPL、 P2の共通メモリ側とにて構成
されている。
、 P2及びそれぞれのローカルメモリLMI、LM2
と両プロセッサPL、 P2の共通メモリ側とにて構成
されている。
共通メモリ側内には、プロセッサ動作状態表示領域ST
及び障害コード表示領域FCが設けられており、またそ
れぞれのプロセッサPi、 P2のローカルメモリLM
I、 LM2にはそれぞれ相手プロセツサ障害検出回数
カウンタCNTl、CNT2が設けられている。
及び障害コード表示領域FCが設けられており、またそ
れぞれのプロセッサPi、 P2のローカルメモリLM
I、 LM2にはそれぞれ相手プロセツサ障害検出回数
カウンタCNTl、CNT2が設けられている。
このような構成の特開昭62−24330号公報のマル
チプロセッサシステムにおいて、二つのプロセッサPI
、 P2の内の一方のプロセッサPi (たとえばプロ
セッサPl)の動作及び他のプロセッサ(P2)の障害
検出のための動作を第4図のフローチャートに示す。
チプロセッサシステムにおいて、二つのプロセッサPI
、 P2の内の一方のプロセッサPi (たとえばプロ
セッサPl)の動作及び他のプロセッサ(P2)の障害
検出のための動作を第4図のフローチャートに示す。
この第4同のフローチャートに示す処理はそれぞれのプ
ロセッサにおいて周期的に起動され実行される。
ロセッサにおいて周期的に起動され実行される。
まずステップS21においてプロセッサPi (Pi)
は共通メモリCFI中のプロセッサ動作状態表示領域S
Tの内容を判定する。このプロセツサ動作状態表示領域
STが他のプロセッサ(P2)の番号を示している場合
(≠1=1))は他のプロセツサ(P2)は動作中、即
ちそのプロセッサ(P2)には障害は発生していないと
見做す。
は共通メモリCFI中のプロセッサ動作状態表示領域S
Tの内容を判定する。このプロセツサ動作状態表示領域
STが他のプロセッサ(P2)の番号を示している場合
(≠1=1))は他のプロセツサ(P2)は動作中、即
ちそのプロセッサ(P2)には障害は発生していないと
見做す。
そして、ステップS22において、プロセッサPi(P
l)は障害コード表示領域FCの内容を判定する。
l)は障害コード表示領域FCの内容を判定する。
この結果、障害発生が示されていれば後述するステップ
S29へ、正常であることが示されていればステップ3
23へそれぞれ処理が移される。
S29へ、正常であることが示されていればステップ3
23へそれぞれ処理が移される。
ステップ323では、プロセッサPi (Pi)は自己
の動作状態を判定し、障害が発生していなければ直ちに
ステップS25へ処理を移し、障害が発生していればス
テップS24にて障害内容に対応した障害コードを障害
コート表示領域FCにセットした後、ステップ325へ
処理を移す。
の動作状態を判定し、障害が発生していなければ直ちに
ステップS25へ処理を移し、障害が発生していればス
テップS24にて障害内容に対応した障害コードを障害
コート表示領域FCにセットした後、ステップ325へ
処理を移す。
なお、ステップ325ではプロセッサPi (Pi)は
自己が動作中であることを他のプロセッサ(P2)に通
知するためにプロセッサ動作状態表示領域STに自己の
プロセッサ番号“1(1)”を書込み、次のステップS
26において相手プロセッサ障害検出回数カウンタCN
T iを“0″ クリアする。
自己が動作中であることを他のプロセッサ(P2)に通
知するためにプロセッサ動作状態表示領域STに自己の
プロセッサ番号“1(1)”を書込み、次のステップS
26において相手プロセッサ障害検出回数カウンタCN
T iを“0″ クリアする。
一方、ステップ321においてプロセッサ動作状態表示
領域STの判定結果が自己のプロセッサ番号(1) を
示していれば(・121)、プロセッサPi(PL)は
次のステップS27において相手プロセッサ障害検出回
数カウンタCNTi (CNTI)の値を判定し、その
結果が“0”であれば他のプロセッサが動作を停止した
可能性があると見做す。そして、プロセッサPi(Pl
)はステップS28において相手ブロモ、す障害検出回
数カウンタCNTi(CNTI)に°1”を加算して次
の起動に備える。
領域STの判定結果が自己のプロセッサ番号(1) を
示していれば(・121)、プロセッサPi(PL)は
次のステップS27において相手プロセッサ障害検出回
数カウンタCNTi (CNTI)の値を判定し、その
結果が“0”であれば他のプロセッサが動作を停止した
可能性があると見做す。そして、プロセッサPi(Pl
)はステップS28において相手ブロモ、す障害検出回
数カウンタCNTi(CNTI)に°1”を加算して次
の起動に備える。
また、ステップS27において相手プロセッサ障害検出
回数カウンタCNTi (CNTI)が“ビであれば2
周期の間は他のプロセッサ(P2)が動作していないこ
とを示しているので、この場合は他のプロセッサ(P2
)が動作を停止したと見做す。そして、プロセッサPi
(PL)はステップS29において障害処理、たとえば
1重系システムであれば障害処理の収集と共に再立上げ
の初期設定を、また2重系システムであれば障害情報の
収集並びに系の切換えを行う。
回数カウンタCNTi (CNTI)が“ビであれば2
周期の間は他のプロセッサ(P2)が動作していないこ
とを示しているので、この場合は他のプロセッサ(P2
)が動作を停止したと見做す。そして、プロセッサPi
(PL)はステップS29において障害処理、たとえば
1重系システムであれば障害処理の収集と共に再立上げ
の初期設定を、また2重系システムであれば障害情報の
収集並びに系の切換えを行う。
なお、ステップS27において相手プロセッサ障害検出
回数カウンタCN’ri (CNTI)の内容を判定し
た際に、相手プロセッサ障害検出回数カウンタCNTi
(CNTI)−“l”、即ち連続して2周期の間、他の
プロセッサ(P2)が動作していない場合にのみそのプ
ロセッサ(P2)が停止していたと見做すのは、第4図
に示すプログラムの各プロセッサPI、 P2間での実
行周期誤差による過剰の障害検出を回避するためである
。
回数カウンタCN’ri (CNTI)の内容を判定し
た際に、相手プロセッサ障害検出回数カウンタCNTi
(CNTI)−“l”、即ち連続して2周期の間、他の
プロセッサ(P2)が動作していない場合にのみそのプ
ロセッサ(P2)が停止していたと見做すのは、第4図
に示すプログラムの各プロセッサPI、 P2間での実
行周期誤差による過剰の障害検出を回避するためである
。
また、プロセッサ間で障害コードを排他的に割当てるよ
うにすれば、プロセッサ動作状態表示領域STに障害コ
ードも表示することが出来るので、障害コード表示領域
FCは不要になる。
うにすれば、プロセッサ動作状態表示領域STに障害コ
ードも表示することが出来るので、障害コード表示領域
FCは不要になる。
[発明が解決しようとする課題〕
上述のような特開昭62−24330号公報に開示され
ている従来の技術では、プロセッサ間の情報の授受に共
用メモリのみを使用しているので、各プロセッサが常時
他のプロセッサを監視する必要があり、また他のプロセ
ッサがそれぞれのプロセッサ番号をプロセッサ動作状態
表示領域STにセントした場合には、他のプロセッサに
障害が発生して停止した場合でもそれぞれのプロセッサ
はプロセッサ動作状態表示領域STを書換え更に次のル
ーチンにならなければ異常発生が判定されない。このた
め、異常発生の検出が遅れ、また監視ルーチンのソフト
ウェアが複雑化する等の問題がある。
ている従来の技術では、プロセッサ間の情報の授受に共
用メモリのみを使用しているので、各プロセッサが常時
他のプロセッサを監視する必要があり、また他のプロセ
ッサがそれぞれのプロセッサ番号をプロセッサ動作状態
表示領域STにセントした場合には、他のプロセッサに
障害が発生して停止した場合でもそれぞれのプロセッサ
はプロセッサ動作状態表示領域STを書換え更に次のル
ーチンにならなければ異常発生が判定されない。このた
め、異常発生の検出が遅れ、また監視ルーチンのソフト
ウェアが複雑化する等の問題がある。
本発明はこのような事情に鑑みてなされたものであり、
簡単なソフトウェアにて迅速に障害発生が検出可能なマ
ルチプロセッサシステムの障害検出方法の提供を目的と
する。
簡単なソフトウェアにて迅速に障害発生が検出可能なマ
ルチプロセッサシステムの障害検出方法の提供を目的と
する。
本発明に係るマルチプロセッサシステムの障害検出方法
は、各プロセッサ共用のタイマを設け、各プロセッサが
順次自己診断を行い、正常であれば上述の共用タイマを
リセットし、障害が発生している場合は共用タイマをリ
セットせずに放置すると共に自己のプロセッサ番号と対
応させて障害の種類を表すことによりを共通のメモリに
書込む。
は、各プロセッサ共用のタイマを設け、各プロセッサが
順次自己診断を行い、正常であれば上述の共用タイマを
リセットし、障害が発生している場合は共用タイマをリ
セットせずに放置すると共に自己のプロセッサ番号と対
応させて障害の種類を表すことによりを共通のメモリに
書込む。
そして、共用タイマが所定時間を経時し終わると他のプ
ロセッサに対して割込み処理が起動される。
ロセッサに対して割込み処理が起動される。
本発明のマルチプロセッサシステムの障害検出方法では
、各プロセッサが自己診断を行った場合に、正常であれ
ば共用タイマをリセットするので、他の各プロセッサに
は割込みが掛けられずに自己の処理に専念することが可
能になり、また障害が発生した場合またはプロセッサ停
止状態になると共用タイマがリセットされないので、共
用タイマが働いて他のプロセッサに割込みが掛けられ、
障害処理が行われる。
、各プロセッサが自己診断を行った場合に、正常であれ
ば共用タイマをリセットするので、他の各プロセッサに
は割込みが掛けられずに自己の処理に専念することが可
能になり、また障害が発生した場合またはプロセッサ停
止状態になると共用タイマがリセットされないので、共
用タイマが働いて他のプロセッサに割込みが掛けられ、
障害処理が行われる。
以下、本発明をその実施例を示す図面に基づいて詳述す
る。
る。
第1図は本発明に係るマルチプロセッサシステムの障害
検出方法が適用されるマルチプロセッサシステムの一構
成例を示すブロック図である。
検出方法が適用されるマルチプロセッサシステムの一構
成例を示すブロック図である。
このマルチプロセッサシステムは、2個のマルチプロセ
ッサPL、 F2、両者の共通メモリC?l、共用つォ
ッチドッグタイマCWDT等にて構成されている。
ッサPL、 F2、両者の共通メモリC?l、共用つォ
ッチドッグタイマCWDT等にて構成されている。
共通メモリCMには両プロセッサPI、 F2それぞれ
の動作状態表示領域Fl、 F2が設けられている。
の動作状態表示領域Fl、 F2が設けられている。
なお、WRI、 WR2は両プロセッサPi、 F2が
共用ウォッチドッグタイマCWDTをリセットするため
のりセント信号を、CWDTS2. CWDTSIはそ
れぞれ各プロセッサPL、 F2に共用ウォッチドッグ
タイマCWDTから与えられる割込み信号である。
共用ウォッチドッグタイマCWDTをリセットするため
のりセント信号を、CWDTS2. CWDTSIはそ
れぞれ各プロセッサPL、 F2に共用ウォッチドッグ
タイマCWDTから与えられる割込み信号である。
第2図(a)及び同(blは上述のシステム構成におい
て実施される本発明方法の手順を示すフローチャートで
ある。
て実施される本発明方法の手順を示すフローチャートで
ある。
第2図+a+に示したルーチンはそれぞれのプロセッサ
において周期的に起動される監視ルーチンのメインルー
チンである。
において周期的に起動される監視ルーチンのメインルー
チンである。
いまたとえば二つのプロセッサPL、 F2の内の一方
のプロセッサPi(PI)がこのメインルーチンを実行
したとする。
のプロセッサPi(PI)がこのメインルーチンを実行
したとする。
まずプロセッサPi (PI)はステップSllにおい
て自己の動作状態を判断する。この結果、自己が正常で
あると判断するとプロセッサPi (PL)はステップ
S12において正常コードを共通メモリCMの動作状態
表示領域Fi (Fl)にセットすると共にステップ3
13においてリセット信号−Ri(WRI)を出力して
共用ウォッチドッグタイマCWDTをリセットする。
て自己の動作状態を判断する。この結果、自己が正常で
あると判断するとプロセッサPi (PL)はステップ
S12において正常コードを共通メモリCMの動作状態
表示領域Fi (Fl)にセットすると共にステップ3
13においてリセット信号−Ri(WRI)を出力して
共用ウォッチドッグタイマCWDTをリセットする。
ステップSllにおいて自己が異常であると判断した場
合には、プロセッサPi(PL)はステップS14にお
いて動作状態表示領域Fi(Fl)に異常コードをセッ
トする。この場合はプロセッサPi(PL)は共用ウオ
ッチド・7グタイマCWDTのリセットは行わない。
合には、プロセッサPi(PL)はステップS14にお
いて動作状態表示領域Fi(Fl)に異常コードをセッ
トする。この場合はプロセッサPi(PL)は共用ウオ
ッチド・7グタイマCWDTのリセットは行わない。
また、プロセッサPi (PL)が停止した場合には、
共用ウォッチドッグタイマCWDTをリセットするため
のリセット信号WRi(WRI)を出力することは出来
ないので、プロセッサPi(PL)に異常が発生した場
合には常に共用ウォッチドッグタイマCWDTにより他
のプロセッサ(F2)に割込みが掛けられる。
共用ウォッチドッグタイマCWDTをリセットするため
のリセット信号WRi(WRI)を出力することは出来
ないので、プロセッサPi(PL)に異常が発生した場
合には常に共用ウォッチドッグタイマCWDTにより他
のプロセッサ(F2)に割込みが掛けられる。
第2図(blは共用ウォッチドッグタイマCWDTによ
る割込ルーチンの処理手順を示すフローチャートである
。
る割込ルーチンの処理手順を示すフローチャートである
。
上述の如く、一方のプロセッサPi(PI)が第2図C
a+に示す監視ルーチンを実行した場合に異常が発生し
ていることが判明すると共用ウォッチドッグタイマCW
DTがリセットされないので、共用ウォッチドッグタイ
マCWDTからは他のプロセッサ(F2)に対して割込
み信号IJDTSi(CWDTSI)が出力される。
a+に示す監視ルーチンを実行した場合に異常が発生し
ていることが判明すると共用ウォッチドッグタイマCW
DTがリセットされないので、共用ウォッチドッグタイ
マCWDTからは他のプロセッサ(F2)に対して割込
み信号IJDTSi(CWDTSI)が出力される。
この割込み信号(JDTSi(CWDTSI)が与えら
れたプロセッサ(F2)は、ステップS15において動
作状態表示領域Fi(PL)の内容を読出すことにより
プロセッサPi(PI)に発生した障害の種類が判明す
るので、次のステップS16においてその処理が行える
。
れたプロセッサ(F2)は、ステップS15において動
作状態表示領域Fi(PL)の内容を読出すことにより
プロセッサPi(PI)に発生した障害の種類が判明す
るので、次のステップS16においてその処理が行える
。
なお、上記実施例では2個のプロセッサP1. P2ヲ
有するマルチプロセッサシステムについて説明したが、
3個以上のプロセッサPi、 F2・・・Pnを有する
場合にも共通メモリ叶の動作状態表示領域F1をプロセ
ッサの数と同じだけ(Fl、 F2・・・Fn)設け、
障害が発生したプロセッサ以外の全てに共用ウォッチド
ッグタイマCWDTが割込みを掛けるようにすれば、3
個以上の全てのプロセッサにおいて相互に監視すること
が可能である。
有するマルチプロセッサシステムについて説明したが、
3個以上のプロセッサPi、 F2・・・Pnを有する
場合にも共通メモリ叶の動作状態表示領域F1をプロセ
ッサの数と同じだけ(Fl、 F2・・・Fn)設け、
障害が発生したプロセッサ以外の全てに共用ウォッチド
ッグタイマCWDTが割込みを掛けるようにすれば、3
個以上の全てのプロセッサにおいて相互に監視すること
が可能である。
以上に詳述した如く本発明のマルチプロセッサシステム
の障害検出方法によれば、プロセッサに異常が発生した
場合にのみ他のプロセッサに共用タイマが割込みを掛け
、これに応して各プロセッサが障害処理を起動させれば
よいので、ソフトウェア構成が簡易になり、且つ他のプ
ロセッサに異常発生を迅速に通知することが可能になる
。
の障害検出方法によれば、プロセッサに異常が発生した
場合にのみ他のプロセッサに共用タイマが割込みを掛け
、これに応して各プロセッサが障害処理を起動させれば
よいので、ソフトウェア構成が簡易になり、且つ他のプ
ロセッサに異常発生を迅速に通知することが可能になる
。
第1図は本発明に係るマルチプロセッサシステムの障害
検出方法が実施されるマルチプロセッサシステムの一構
成例を示すブロック図、第2図+a+は本発明のマルチ
プロセッサシステムの障害検出方法の手順のメインルー
チンを示すフローチャート、同Cb)はその割込みルー
チンを示すフローチャート、第3図は従来のシステム構
成を示すブロック図、第4図は従来の方法の手順を示す
フローチャートである。 Pl、 F2・・・プロセッサ Cト・・共通メモリ
CWDT・・・共用ウォッチドッグタイマ Fl、
F2・・・動作状態表示領域 なお、図中、同一符号は同一、又は相当部分を示す。
検出方法が実施されるマルチプロセッサシステムの一構
成例を示すブロック図、第2図+a+は本発明のマルチ
プロセッサシステムの障害検出方法の手順のメインルー
チンを示すフローチャート、同Cb)はその割込みルー
チンを示すフローチャート、第3図は従来のシステム構
成を示すブロック図、第4図は従来の方法の手順を示す
フローチャートである。 Pl、 F2・・・プロセッサ Cト・・共通メモリ
CWDT・・・共用ウォッチドッグタイマ Fl、
F2・・・動作状態表示領域 なお、図中、同一符号は同一、又は相当部分を示す。
Claims (1)
- (1)複数のプロセツサと、これらの複数のプロセッサ
に共通のメモリとを有するマルチプロセッサシステムの
障害検出方法において、 所定時間を計時するタイマを備え、 各プロセッサは、自己診断を行いその結果、正常である
場合には前記タイマをリセツトすると共に自己の識別子
を付して正常であることを示す情報を前記共通のメモリ
に書込み、障害が発生している場合には自己の識別子を
付して障害の種類に対応する情報を前記共通のメモリに
書込む障害検出処理を実行し、 前記タイマは、前記所定時間経過時に障害 検出処理を実行中のプロセッサ以外のプロセッサにそれ
ぞれ割込み信号を与え、 各プロセッサは前記割込み信号が与えられ た場合に、障害検出処理中のプロセッサの識別子が付さ
れた情報に対応した処理を実行することを特徴とするマ
ルチプロセッサシステムの障害検出方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2681990A JPH03230254A (ja) | 1990-02-05 | 1990-02-05 | マルチプロセッサシステムの障害検出方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2681990A JPH03230254A (ja) | 1990-02-05 | 1990-02-05 | マルチプロセッサシステムの障害検出方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH03230254A true JPH03230254A (ja) | 1991-10-14 |
Family
ID=12203886
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2681990A Pending JPH03230254A (ja) | 1990-02-05 | 1990-02-05 | マルチプロセッサシステムの障害検出方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH03230254A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2015049827A (ja) * | 2013-09-04 | 2015-03-16 | Necプラットフォームズ株式会社 | 回路装置および回路装置の復旧方法 |
-
1990
- 1990-02-05 JP JP2681990A patent/JPH03230254A/ja active Pending
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2015049827A (ja) * | 2013-09-04 | 2015-03-16 | Necプラットフォームズ株式会社 | 回路装置および回路装置の復旧方法 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP2006309760A (ja) | データプロセッサの異常動作を検出するためのモニタリング論理及びモニタリング方法 | |
| JPH03230254A (ja) | マルチプロセッサシステムの障害検出方法 | |
| JPH07113898B2 (ja) | 障害検出方式 | |
| US5524206A (en) | Sub-CPU monitoring system including dual port memory | |
| JPS6115239A (ja) | プロセツサ診断方式 | |
| JPH0245838A (ja) | プログラム実行状態監視方法 | |
| JP2870250B2 (ja) | マイクロプロセッサの暴走監視装置 | |
| CN117743008B (zh) | 多核处理器故障诊断与异常处理方法、主控板卡及设备 | |
| JPS6224330A (ja) | マルチプロセツサの障害検出方式 | |
| JPS6170645A (ja) | 障害原因解析用デ−タ収集装置 | |
| JP2716537B2 (ja) | 複合システムにおけるダウン監視処理方式 | |
| JPS6290068A (ja) | 予備系監視方式 | |
| JPH0196752A (ja) | マルチプロセッサ装置 | |
| JP2778344B2 (ja) | 複数プロセッサシステム | |
| JP2006023970A (ja) | 装置異常復旧方式 | |
| JPH01200441A (ja) | 複数プロセッサの相互監視方法 | |
| JPH0619744A (ja) | マルチプロセッサシステムの動作監視方式 | |
| JPS63284652A (ja) | 共有メモリのパトロ−ル診断方式 | |
| JPS6252639A (ja) | マイクロプロセツサシステムのセルフチエツク方式 | |
| CN121501564A (zh) | 芯片复位方法、装置、芯片、设备、网络接口卡、存储介质及程序产品 | |
| JPS5827538B2 (ja) | 相互監視方式 | |
| JPH01205244A (ja) | ロギング情報収集方式 | |
| JPH01281540A (ja) | 障害検知装置 | |
| JPH0341528A (ja) | 計算機における診断装置 | |
| JPS61101844A (ja) | 障害処理方式 |