JPH0430224A - タスクの実行継続方法 - Google Patents
タスクの実行継続方法Info
- Publication number
- JPH0430224A JPH0430224A JP2135200A JP13520090A JPH0430224A JP H0430224 A JPH0430224 A JP H0430224A JP 2135200 A JP2135200 A JP 2135200A JP 13520090 A JP13520090 A JP 13520090A JP H0430224 A JPH0430224 A JP H0430224A
- Authority
- JP
- Japan
- Prior art keywords
- instruction processing
- processing device
- instruction
- failure
- execution
- 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
Landscapes
- Hardware Redundancy (AREA)
- Multi Processors (AREA)
- Retry When Errors Occur (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は、障害により中断された処理の実行継続方式に
係る。特に複数の命令処理装置が主記憶装置を共有する
マルチプロセッサシステムにおいて、一つの命令処理装
置における障害発生により処理の実行を継続できない場
合に、その命令処理装置で実行されていた処理を正常に
継続実行可能とする方法を提供する処理の実行継続方式
に関する。
係る。特に複数の命令処理装置が主記憶装置を共有する
マルチプロセッサシステムにおいて、一つの命令処理装
置における障害発生により処理の実行を継続できない場
合に、その命令処理装置で実行されていた処理を正常に
継続実行可能とする方法を提供する処理の実行継続方式
に関する。
命令処理装置において間欠障害が発生した場合の回復方
法として、障害発生時に実行していた処理をリトライす
る方法や、命令単位などの一定のチェックポイントに戻
って再実行する方法などが知られている。
法として、障害発生時に実行していた処理をリトライす
る方法や、命令単位などの一定のチェックポイントに戻
って再実行する方法などが知られている。
一方、命令処理装置において固定障害が発生し、その回
復に失敗した場合には、一般に自命令処理装置に対して
障害回復失敗の割込みを発生させる。
復に失敗した場合には、一般に自命令処理装置に対して
障害回復失敗の割込みを発生させる。
例えば、回復不可能な障害が発生したことをマシンチエ
ツク割込みなどにより連絡する。
ツク割込みなどにより連絡する。
回復不可能な障害が発生した場合のマシンチエツク割込
みには次の二つの場合がある。
みには次の二つの場合がある。
(1)回復不可能な障害が発生したが、割込み発生時点
において、障害発生前のチェックポイントの状態が保証
されている。
において、障害発生前のチェックポイントの状態が保証
されている。
(2)回復不可能な障害が発生し、割込み発生時点で障
害発生前のチェックポイントの状態が保証されていない
。
害発生前のチェックポイントの状態が保証されていない
。
(1)の状態のマシンチエツク割込みをPD−B(プロ
セッサダメージ・バックアップ)と呼び、(2)の状態
のマシンチエツクをPD(プロセッサダメージ)と呼ぶ
。この二つの差を、第2図を用いて説明する。第2図、
において、21〜24は命令である。いま、命令処理装
置が命令Cの実行中に障害が発生したとする。命令処理
装置は、障害の内容により、PD−BもしくはPDのマ
シンチエツク割込みを発生する。命令C実行前の命令処
理装置の状態(障害発生前のチェックポイントの状態)
が保証されているとき5命令処理装置はPD−Bのマシ
ンチエツク割込みを発生する。したがって、割込み受付
は後、一般に命令Cから再実行すれば、プログラムは正
常に継続実行が可能となる。−万、命令Cにより命令処
理装置の内部状態が変更されてしまっている場合など、
命令C実行前のチェックポイントの状態が保証できない
場合、命令処理装置はPDのマシンチエツク割込みを発
生する。この場合には、割込み発生後も命令Cから再実
行しても、一般に処理の正常性を保証することはできな
い。
セッサダメージ・バックアップ)と呼び、(2)の状態
のマシンチエツクをPD(プロセッサダメージ)と呼ぶ
。この二つの差を、第2図を用いて説明する。第2図、
において、21〜24は命令である。いま、命令処理装
置が命令Cの実行中に障害が発生したとする。命令処理
装置は、障害の内容により、PD−BもしくはPDのマ
シンチエツク割込みを発生する。命令C実行前の命令処
理装置の状態(障害発生前のチェックポイントの状態)
が保証されているとき5命令処理装置はPD−Bのマシ
ンチエツク割込みを発生する。したがって、割込み受付
は後、一般に命令Cから再実行すれば、プログラムは正
常に継続実行が可能となる。−万、命令Cにより命令処
理装置の内部状態が変更されてしまっている場合など、
命令C実行前のチェックポイントの状態が保証できない
場合、命令処理装置はPDのマシンチエツク割込みを発
生する。この場合には、割込み発生後も命令Cから再実
行しても、一般に処理の正常性を保証することはできな
い。
さらに、障害発生状況によっては以後の再実行動作、障
害回復動作が一切不可能な場合がある。
害回復動作が一切不可能な場合がある。
また、チェックポイント保証などの障害回復処理中にさ
らに障害が発生した場合なども、その障害回復動作は不
可能であり、このような場合、命令処理装置は異常停止
する。この動作をチエツクストップ(チエツク停止)と
呼び、マルチプロセッサシステムにおいて一つの命令処
理装置がチエツクストップすると、他の動作中の命令処
理装置に誤動作警報と呼ぶ割込みが報告される。
らに障害が発生した場合なども、その障害回復動作は不
可能であり、このような場合、命令処理装置は異常停止
する。この動作をチエツクストップ(チエツク停止)と
呼び、マルチプロセッサシステムにおいて一つの命令処
理装置がチエツクストップすると、他の動作中の命令処
理装置に誤動作警報と呼ぶ割込みが報告される。
以上の命令処理装置における障害の検出と報告。
チエツクストップと誤動作警報割込みの動作を第3図を
用いて説明する。第3図において、311a。
用いて説明する。第3図において、311a。
311bは命令処理装置である。本構成例では命令処理
装置が2台の場合を示したが、命令処理装置が2台以上
の場合でも同様である。各命令処理装置には、命令実行
部312a、b、障害検出部313a、b、割込み制御
部314a、b、チエツクストップラッチ315a、b
がある。
装置が2台の場合を示したが、命令処理装置が2台以上
の場合でも同様である。各命令処理装置には、命令実行
部312a、b、障害検出部313a、b、割込み制御
部314a、b、チエツクストップラッチ315a、b
がある。
命令処理装置311aの障害検出部313aが障害を検
出し、それがチエツクストップ要因でない場合、その事
実を信号線319aを介して命令実行部312aに連絡
する。命令実行部312aでは、連絡を受けると、命令
リトライとチェックポイント状態の回復を試みる6命令
リトライが成功した場合はそのまま処理が続行されるが
、命令リトライが失敗した場合には自命令実行部におい
て、マシンチエツク割込みを発生させる。先に述へたよ
うに、チェックポイント状態の回復が成功した場合には
PD−B、失敗した場合にはPDのマシンチエツク割込
みを発生する。
出し、それがチエツクストップ要因でない場合、その事
実を信号線319aを介して命令実行部312aに連絡
する。命令実行部312aでは、連絡を受けると、命令
リトライとチェックポイント状態の回復を試みる6命令
リトライが成功した場合はそのまま処理が続行されるが
、命令リトライが失敗した場合には自命令実行部におい
て、マシンチエツク割込みを発生させる。先に述へたよ
うに、チェックポイント状態の回復が成功した場合には
PD−B、失敗した場合にはPDのマシンチエツク割込
みを発生する。
また、障害検出部313aがチエツクストップ要因の障
害を検出すると、障害検出部313aは信号線319a
を介して命令実行部312aに命令の実行を停止するよ
う指示し、命令実行部312aは命令の実行を停止する
。さらに障害検出部313aは信号線317aを介して
チエツクストップラッチ315aをセットする。チエツ
クストップラッチ315aがセットされると、それは信
号線318aを介してもう一つの命令処理装置311b
の割込み制御部314bに伝わり、割込み制御部314
bでは割込みの可否を制御する割込みマスクと演算し、
割込み信号を作成する。割込み信号は信号線320bを
介して命令実行部312bに伝えられ、命令実行部31
2bで誤動作警報の割込みが発生する。この場合、チエ
ツクストップした命令処理装置311aの内部状態は一
般に不定であり、仮にその内部状態が読み出せたとして
も、その情報からりトライやチェックポイントからの再
実行を行うことはできない。
害を検出すると、障害検出部313aは信号線319a
を介して命令実行部312aに命令の実行を停止するよ
う指示し、命令実行部312aは命令の実行を停止する
。さらに障害検出部313aは信号線317aを介して
チエツクストップラッチ315aをセットする。チエツ
クストップラッチ315aがセットされると、それは信
号線318aを介してもう一つの命令処理装置311b
の割込み制御部314bに伝わり、割込み制御部314
bでは割込みの可否を制御する割込みマスクと演算し、
割込み信号を作成する。割込み信号は信号線320bを
介して命令実行部312bに伝えられ、命令実行部31
2bで誤動作警報の割込みが発生する。この場合、チエ
ツクストップした命令処理装置311aの内部状態は一
般に不定であり、仮にその内部状態が読み出せたとして
も、その情報からりトライやチェックポイントからの再
実行を行うことはできない。
ところで、障害が発生し、ハードウェアによる再実行が
失敗した場合、マシンチエツク割込みなどによる報告を
受け、処理の続行、あるいは異常終了処理を行うのは障
害を発生した命令処理装置で動作するO8であり、該命
令処理装置が再度障害を発生する可能性が高い。このよ
うな場合、障害はO8の障害処理部分など中核部分で発
生することになり、システムダウンとなる可能性が高い
。
失敗した場合、マシンチエツク割込みなどによる報告を
受け、処理の続行、あるいは異常終了処理を行うのは障
害を発生した命令処理装置で動作するO8であり、該命
令処理装置が再度障害を発生する可能性が高い。このよ
うな場合、障害はO8の障害処理部分など中核部分で発
生することになり、システムダウンとなる可能性が高い
。
従来、固定障害によるシステムダウンとなるのを防止す
るため、マルチプロセッサシステムにおいては、障害が
発生した命令処理装置で行っていた処理を、他の正常な
命令処理装置で引継いで実行するという方式がとられて
きた。この方式に関しては従来よりいくつかの技術が提
供されている(特公昭47−36181号、特公昭61
−56537号、特開昭57−85151号、特開昭5
7−137949号、特開平1−133171号など)
、これらの方式では、障害が発生した命令処理装置の障
害発生直前の状態を、障害が発生した命令処理装置、正
常な命令処理装置、または回復制御装置などの動作によ
り主記憶装置などに格納し、または直接正常な命令処理
装置に転送し、正常な命令処理装置がその情報を用いて
障害を発生した命令処理装置上で中断された処理を再実
行している。
るため、マルチプロセッサシステムにおいては、障害が
発生した命令処理装置で行っていた処理を、他の正常な
命令処理装置で引継いで実行するという方式がとられて
きた。この方式に関しては従来よりいくつかの技術が提
供されている(特公昭47−36181号、特公昭61
−56537号、特開昭57−85151号、特開昭5
7−137949号、特開平1−133171号など)
、これらの方式では、障害が発生した命令処理装置の障
害発生直前の状態を、障害が発生した命令処理装置、正
常な命令処理装置、または回復制御装置などの動作によ
り主記憶装置などに格納し、または直接正常な命令処理
装置に転送し、正常な命令処理装置がその情報を用いて
障害を発生した命令処理装置上で中断された処理を再実
行している。
従来の技術では、障害が発生した命令処理装置で行って
いた処理を他の正常な命令処理装置で弓継いで実行する
ために、回復制御のための装置や(特公昭47−361
81号、特公昭61−56537号など)正常な命令処
理装置内に障害命令処理装置の命令再試行のための回路
を設ける(特開昭57−137949号など)必要があ
り、多くの付加ハードウェアを必要とし機構が複雑にな
るという問題点や、障害命令処理装置が処理の継続実行
のための情報を作成する(特公昭57−85151号な
ど)ため、再度障害を発生する可能性が大きくなるとい
う問題点があった。また、マルチプロセッサであっても
、何らかの要因により、動作中のプロセッサが障害を発
生した一台だけの場合には、正常な命令処理装置で処理
を引継ぐための動作を行うことにより、障害発生命令処
理装置における再実行2回復処理を放棄することになり
、それだけシステムの停止する確率が大きくなり、信頼
性が低下するという問題点があった。
いた処理を他の正常な命令処理装置で弓継いで実行する
ために、回復制御のための装置や(特公昭47−361
81号、特公昭61−56537号など)正常な命令処
理装置内に障害命令処理装置の命令再試行のための回路
を設ける(特開昭57−137949号など)必要があ
り、多くの付加ハードウェアを必要とし機構が複雑にな
るという問題点や、障害命令処理装置が処理の継続実行
のための情報を作成する(特公昭57−85151号な
ど)ため、再度障害を発生する可能性が大きくなるとい
う問題点があった。また、マルチプロセッサであっても
、何らかの要因により、動作中のプロセッサが障害を発
生した一台だけの場合には、正常な命令処理装置で処理
を引継ぐための動作を行うことにより、障害発生命令処
理装置における再実行2回復処理を放棄することになり
、それだけシステムの停止する確率が大きくなり、信頼
性が低下するという問題点があった。
本発明の目的は、上記問題点を克服し、ハードウェアの
追加が少なく、また、障害が発生した命令処理装置によ
る処理の継続実行のための情報の作成にともなう新らた
な障害の発生を低減し、さらに、動作中の命令処理装置
が一台だけの場合でもシステムの停止確率を増加させず
に、障害が発生した命令処理装置で行っていた処理を他
の正常な命令処理装置で引継いで実行する方式を提供す
ることにある。
追加が少なく、また、障害が発生した命令処理装置によ
る処理の継続実行のための情報の作成にともなう新らた
な障害の発生を低減し、さらに、動作中の命令処理装置
が一台だけの場合でもシステムの停止確率を増加させず
に、障害が発生した命令処理装置で行っていた処理を他
の正常な命令処理装置で引継いで実行する方式を提供す
ることにある。
上記目的を達成するため、本発明では、命令実行中の障
害回復処理においてチェックポイント状態の回復に成功
したか否かを示す表示子を設け、命令処理装置などハー
ドウェアの内部状態を主記憶内に格納するスキャンアウ
ト機構と、他の命令処理装置と動作状態を連絡し合う機
構と、命令処理装置がチエツクストップした場合に他の
命令処理装置に誤動作警報割込みを連絡するための機構
と、主記憶装置の内容を読み込む命令とを用いる。
害回復処理においてチェックポイント状態の回復に成功
したか否かを示す表示子を設け、命令処理装置などハー
ドウェアの内部状態を主記憶内に格納するスキャンアウ
ト機構と、他の命令処理装置と動作状態を連絡し合う機
構と、命令処理装置がチエツクストップした場合に他の
命令処理装置に誤動作警報割込みを連絡するための機構
と、主記憶装置の内容を読み込む命令とを用いる。
ある命令処理装置で固定障害が発生したとき、該障害命
令処理装置では、チェックポイントを保証し、命令再試
行をこころみる。命令再試行が失敗し、さらに命令実行
前のチェックポイントの状態が保証できるとき、チェッ
クポイント保証表示子をセットし、該チェックポイント
の状態をスキャンアウト処理によって主記憶に格納する
。スキャンイン、スキャンアウト方式の具体的動作に関
しては、例えば特開昭59−161744 r情報命令
処理装置のスキャン方式」、特開昭61−123939
r情報命令処理装置のスキャン方式」などにその−例
が記載されている。その後、命令処理装置はチエツクス
トップし、誤動作警報割込みが他の命令処理装置に連絡
される。連絡を受けた命令処理装置では、O8の処理に
よって主記憶に格納されたスキャンアウト情報を読み込
み、チェックポイント表示子によりチェックポイントの
情報が正しく格納されていることを確認すると、格納さ
れた命令処理装置の内部情報を編集し、処理の継続実行
に必要な制御テーブルを作成する。これにより、特に大
規模な付加回路・装置や障害発生命令処理装置による情
報操作を必要とすることなく、固定障害発生時にも、他
の正常な命令処理装置を用いて処理の継続実行が可能と
なる。
令処理装置では、チェックポイントを保証し、命令再試
行をこころみる。命令再試行が失敗し、さらに命令実行
前のチェックポイントの状態が保証できるとき、チェッ
クポイント保証表示子をセットし、該チェックポイント
の状態をスキャンアウト処理によって主記憶に格納する
。スキャンイン、スキャンアウト方式の具体的動作に関
しては、例えば特開昭59−161744 r情報命令
処理装置のスキャン方式」、特開昭61−123939
r情報命令処理装置のスキャン方式」などにその−例
が記載されている。その後、命令処理装置はチエツクス
トップし、誤動作警報割込みが他の命令処理装置に連絡
される。連絡を受けた命令処理装置では、O8の処理に
よって主記憶に格納されたスキャンアウト情報を読み込
み、チェックポイント表示子によりチェックポイントの
情報が正しく格納されていることを確認すると、格納さ
れた命令処理装置の内部情報を編集し、処理の継続実行
に必要な制御テーブルを作成する。これにより、特に大
規模な付加回路・装置や障害発生命令処理装置による情
報操作を必要とすることなく、固定障害発生時にも、他
の正常な命令処理装置を用いて処理の継続実行が可能と
なる。
以下、図面を用いて本発明の一実施例を示す。
第1図は本発明の一実施例の適用されるマルチプロセッ
サシステムのブロック図である。図において、1lla
、bは命令処理装置(以後、IPと称する)、121は
システム制御部W(以後、SCと称する)、131は主
記憶装置(以後、MSと称する)である。命令処理装置
111aと111bとは同し構成であり、それぞれ命令
実行部112a、b、障害検出部113a、b、割込み
制御部114a、b、チェックポイント保証ラッチ11
5a、b、チエツクストップラッチ1.1.6a。
サシステムのブロック図である。図において、1lla
、bは命令処理装置(以後、IPと称する)、121は
システム制御部W(以後、SCと称する)、131は主
記憶装置(以後、MSと称する)である。命令処理装置
111aと111bとは同し構成であり、それぞれ命令
実行部112a、b、障害検出部113a、b、割込み
制御部114a、b、チェックポイント保証ラッチ11
5a、b、チエツクストップラッチ1.1.6a。
bを備えている。命令実行部112a、b内には実行制
御部117a、b、チェックポイント保証部118a、
bがある。また、システム制御装置121には、スキャ
ン制御部122がある。第1図は命令処理装置が2台の
構成であるが、両命令処理装置の構成は同じであり、さ
らに本実施例は命令処理装置が2台以上の構成の場合に
も変更なく適用できる。ここで、チェックポイント保証
ラッチは、処理継続のための連絡に従来からの誤動作警
報割込みを利用し、正常なIPが誤動作警報割込みを受
は取ったときに、それが従来の意味でのチエツクストッ
プによる誤動作警報割込みなのか、本発明に述べる処理
継続のための誤動作警報割込みなのかを区別するために
必須のものである。
御部117a、b、チェックポイント保証部118a、
bがある。また、システム制御装置121には、スキャ
ン制御部122がある。第1図は命令処理装置が2台の
構成であるが、両命令処理装置の構成は同じであり、さ
らに本実施例は命令処理装置が2台以上の構成の場合に
も変更なく適用できる。ここで、チェックポイント保証
ラッチは、処理継続のための連絡に従来からの誤動作警
報割込みを利用し、正常なIPが誤動作警報割込みを受
は取ったときに、それが従来の意味でのチエツクストッ
プによる誤動作警報割込みなのか、本発明に述べる処理
継続のための誤動作警報割込みなのかを区別するために
必須のものである。
次に、I P、111 aにおいて障害が発生した場合
の動作を第1図を用いて説明する。IpH1aの命令実
行部112aは、信号線152aを介してMS l 3
1をアクセスし、命令処理を実行している。また、命令
実行部112aが動作中であることは、信号線147を
介して他の命令処理装置に通報されている。同様に他の
命令処理装置が動作中であるか否かは、信号線148を
介して実行制御部117aに通報されている。この信号
は、従来から本実施例には明示していないバッファ記憶
や、アドレス変換バッファの一致制御などに使用されて
いる。障害検出部113aは、自IPにおける障害を検
出して、その事実を信号線143aを介して自IPの実
行制御部117aに報告する。
の動作を第1図を用いて説明する。IpH1aの命令実
行部112aは、信号線152aを介してMS l 3
1をアクセスし、命令処理を実行している。また、命令
実行部112aが動作中であることは、信号線147を
介して他の命令処理装置に通報されている。同様に他の
命令処理装置が動作中であるか否かは、信号線148を
介して実行制御部117aに通報されている。この信号
は、従来から本実施例には明示していないバッファ記憶
や、アドレス変換バッファの一致制御などに使用されて
いる。障害検出部113aは、自IPにおける障害を検
出して、その事実を信号線143aを介して自IPの実
行制御部117aに報告する。
実行制御部117aは、IPの固定障害発生時。
信号線146aを介してチェックポイント保証部118
aにチェックポイントの保証を指示し、チェックポイン
トの保証が成功すると、信号線141aを介してチェッ
クポイント保証ラッチ115aをセットする。次に信号
線149aを介して命令処理装置111aの内部状態を
スキャンアウトするよう5C121内のスキャン制御部
122に指示スル。5C121内のスキャン制御部12
2は、信号線150aを介してIPlllaの内部情報
を読み出し、信号線151を介してMS1131に書き
込む。さらに実行制御部117aは、信号線148によ
り通報された他の命令処理装置の動作状態から、他の命
令処理装置が動作中であることを確認すると、信号線1
42a、bを介してチエツクストップラッチ116a、
bをセットし。
aにチェックポイントの保証を指示し、チェックポイン
トの保証が成功すると、信号線141aを介してチェッ
クポイント保証ラッチ115aをセットする。次に信号
線149aを介して命令処理装置111aの内部状態を
スキャンアウトするよう5C121内のスキャン制御部
122に指示スル。5C121内のスキャン制御部12
2は、信号線150aを介してIPlllaの内部情報
を読み出し、信号線151を介してMS1131に書き
込む。さらに実行制御部117aは、信号線148によ
り通報された他の命令処理装置の動作状態から、他の命
令処理装置が動作中であることを確認すると、信号線1
42a、bを介してチエツクストップラッチ116a、
bをセットし。
さらに自IPにおける命令の実行を停止する。チエツク
ストップラッチ116a、bをセットすることにより、
信号線145a、bを介して他の正常なIPの割込み制
御部114b、aに割込み信号が出される。割込み制御
部114b、aは、該別込み信号により、信号線144
b、aを通じて正常なIPの実行制御部117b、aに
割込み発生を指示する6 IPの命令実行部112a、bは、障害発生時に当該I
Pの状態を障害発生前のある時点(チェックポイント)
の状態へ戻すチェックポイント保証部118a、b、命
令の実行制御部117a。
ストップラッチ116a、bをセットすることにより、
信号線145a、bを介して他の正常なIPの割込み制
御部114b、aに割込み信号が出される。割込み制御
部114b、aは、該別込み信号により、信号線144
b、aを通じて正常なIPの実行制御部117b、aに
割込み発生を指示する6 IPの命令実行部112a、bは、障害発生時に当該I
Pの状態を障害発生前のある時点(チェックポイント)
の状態へ戻すチェックポイント保証部118a、b、命
令の実行制御部117a。
bを有している。第4図にチェックポイント保証部の構
成例を示す。実行制御部は制御回路であり、その動作を
第5図に示す。第4図はIPlllaのチェックポイン
ト保証手段118aを示しているが、IPlllbにつ
いても同様である。
成例を示す。実行制御部は制御回路であり、その動作を
第5図に示す。第4図はIPlllaのチェックポイン
ト保証手段118aを示しているが、IPlllbにつ
いても同様である。
第4図において、実行制御部117aは信号線146a
−1,146a−2などを通じてチェックポイント保証
部の各要素を制御している。ここでは、動作の記述に必
要な146a−1,146a−2の二つの制御信号線の
みを示した。図において、411は信号線152a−1
を介して、MS 131からのデータがセットされるレ
ジスタ、412は演算器(ALU)413で演算する前
のデータをセットするためのレジスタ、413は演算器
、414は演算結果をセットするためのレジスタである
。415は命令により参照可能な汎用レジスタ群、41
6は汎用レジスタ群415への入力を選択するセレクタ
、417は演算前のデータを格納しておくレジスタ群で
ある。また、418は、演算前の格納データ417がリ
トライ可能なデータか、チェックポイント保証可能なデ
ータかを示す制御情報群であり、レジスタ群417と同
期して制御される。レジスタ群415のデータは、信号
線425を介してレジスタ412にセットされる。レジ
スタ411,412の内容は、演算器(ALU)413
で演算を行った後、信号線424を介して再びレジスタ
群415に書き込まれたり。
−1,146a−2などを通じてチェックポイント保証
部の各要素を制御している。ここでは、動作の記述に必
要な146a−1,146a−2の二つの制御信号線の
みを示した。図において、411は信号線152a−1
を介して、MS 131からのデータがセットされるレ
ジスタ、412は演算器(ALU)413で演算する前
のデータをセットするためのレジスタ、413は演算器
、414は演算結果をセットするためのレジスタである
。415は命令により参照可能な汎用レジスタ群、41
6は汎用レジスタ群415への入力を選択するセレクタ
、417は演算前のデータを格納しておくレジスタ群で
ある。また、418は、演算前の格納データ417がリ
トライ可能なデータか、チェックポイント保証可能なデ
ータかを示す制御情報群であり、レジスタ群417と同
期して制御される。レジスタ群415のデータは、信号
線425を介してレジスタ412にセットされる。レジ
スタ411,412の内容は、演算器(ALU)413
で演算を行った後、信号線424を介して再びレジスタ
群415に書き込まれたり。
信号線152a−2を介してMS131へ書き込まれた
りする。レジスタ群417は、レジスタ412の内容を
、命令実行ごとに退避するものであり、レジスタ群41
5の書き込み前(演算実行前)の内容が順に退避されて
いる。制御情報群418は、命令実行ごとにレジスタ群
417に退避されるデータがリトライ可能なデータか、
チェックポイント保証可能なデータかを示す情報であり
、実行制御部によって制御信号線146a−1を介して
レジスタ群417への退避と同期して順に退避されてい
る。
りする。レジスタ群417は、レジスタ412の内容を
、命令実行ごとに退避するものであり、レジスタ群41
5の書き込み前(演算実行前)の内容が順に退避されて
いる。制御情報群418は、命令実行ごとにレジスタ群
417に退避されるデータがリトライ可能なデータか、
チェックポイント保証可能なデータかを示す情報であり
、実行制御部によって制御信号線146a−1を介して
レジスタ群417への退避と同期して順に退避されてい
る。
次にIPlllaにおいて障害が発生した場合の命令実
行部の動作について、第4図及び第5図を用いて説明す
る。本動作は、IPlllbで障害が発生した場合にも
同じである。
行部の動作について、第4図及び第5図を用いて説明す
る。本動作は、IPlllbで障害が発生した場合にも
同じである。
IPlllaで障害が発生すると、実行制御部117a
は信号$ 143 aを介して障害検出部113aより
その報告を受ける。そして、まず信号線146a−2を
介して障害発生直前の退避情報の状態を読み出し、退避
情報がリトライ可能か否かを判定する(ステップ501
)。リトライ不可能の場合には、リトライ失敗のマシン
チエツク割込み(PD)を発生させる制御を行なう。リ
トライ可能の場合には、信号線423を介して、レジス
タ群415にリトライ用のデータを回復するりトライリ
ストア処理を行い(ステップ502)、障害発生処理を
リトライする(ステップ503)。
は信号$ 143 aを介して障害検出部113aより
その報告を受ける。そして、まず信号線146a−2を
介して障害発生直前の退避情報の状態を読み出し、退避
情報がリトライ可能か否かを判定する(ステップ501
)。リトライ不可能の場合には、リトライ失敗のマシン
チエツク割込み(PD)を発生させる制御を行なう。リ
トライ可能の場合には、信号線423を介して、レジス
タ群415にリトライ用のデータを回復するりトライリ
ストア処理を行い(ステップ502)、障害発生処理を
リトライする(ステップ503)。
本実施例ではこのリトライの成功/不成功によって、障
害が固定障害か間欠故障かを判定する(ステップ504
)。発生した障害が固定障害か否かの判定は、この他に
、命令のりトライを複数回行っても同じ障害が発生する
ことで判断しても良いし、障害発生部位に対してテスト
を行なう方法で判断しても良い。障害が固定障害でない
場合には。
害が固定障害か間欠故障かを判定する(ステップ504
)。発生した障害が固定障害か否かの判定は、この他に
、命令のりトライを複数回行っても同じ障害が発生する
ことで判断しても良いし、障害発生部位に対してテスト
を行なう方法で判断しても良い。障害が固定障害でない
場合には。
処理のりトライは成功し、通常の命令実行処理が継続で
きる。
きる。
リトライが失敗するか、障害発生時に固定障害であるこ
とが判定できた場合には、次のように処理を行なう。ま
ず、信号線146a−2を介して障害発生前の退避情報
の状態を読み出し、障害発生前のあるチェックポイント
まで内部状態が戻せるかどうかを確実認する(ステップ
505)。チェックポイントが保証できないのは、MS
131の内容がすでに書き換えられているときや、ま
たは退避レジスタ417の内容からレジスタ群415を
回復できないときなどである。この時にはPD表示のマ
シンチエツク割込みを発生させる。チェックポイントの
保証が可能である場合には、第4図の退避レジスタ41
7の内容を信号線424゜セレクタ416を介し、レジ
スタ群415にチェックポイントが保証できるところま
で書き込む(ステップ506)。チェックポイント保証
が終了すると、信号IX 141 aを介してチェック
ポイント保証ラッチをセットする(ステップ507)。
とが判定できた場合には、次のように処理を行なう。ま
ず、信号線146a−2を介して障害発生前の退避情報
の状態を読み出し、障害発生前のあるチェックポイント
まで内部状態が戻せるかどうかを確実認する(ステップ
505)。チェックポイントが保証できないのは、MS
131の内容がすでに書き換えられているときや、ま
たは退避レジスタ417の内容からレジスタ群415を
回復できないときなどである。この時にはPD表示のマ
シンチエツク割込みを発生させる。チェックポイントの
保証が可能である場合には、第4図の退避レジスタ41
7の内容を信号線424゜セレクタ416を介し、レジ
スタ群415にチェックポイントが保証できるところま
で書き込む(ステップ506)。チェックポイント保証
が終了すると、信号IX 141 aを介してチェック
ポイント保証ラッチをセットする(ステップ507)。
次に5C121内スキャンアウト制御部122に対して
信号線149aを介してスキャンアウト指示を出すくス
テップ508)。連絡を受けたキャンアウト制御部12
2では、通常のスキャン動作と同じく、第4図における
レジスタ群415の内容や、チェックポイント保証ラッ
チの状態を含む命令処理装置の内部状態を信号線150
a−1などにより読み出し、信号線151を介してMS
113へ格納する。読み出しと格納が終了すると、信号
線149aを通じてスキャンアウト終了を実行制御部1
17aに報告する。スキャンアウト終了を受は取った実
行制御部117aは、次に信号線148により自分以外
のIPの動作状態を確認する(ステップ509)。自分
以外に動作中のIPがある場合、信号線142aにより
チエツクストップラッチをセットしくステップ51o)
、命令の実行を停止しチエツクストップする。このチエ
ツクストップラッチのセットにより、信号線145aを
介して動作中の正常なIPであるIPlllbの割込み
制御部114bに誤動作警報割込み要求が連絡される。
信号線149aを介してスキャンアウト指示を出すくス
テップ508)。連絡を受けたキャンアウト制御部12
2では、通常のスキャン動作と同じく、第4図における
レジスタ群415の内容や、チェックポイント保証ラッ
チの状態を含む命令処理装置の内部状態を信号線150
a−1などにより読み出し、信号線151を介してMS
113へ格納する。読み出しと格納が終了すると、信号
線149aを通じてスキャンアウト終了を実行制御部1
17aに報告する。スキャンアウト終了を受は取った実
行制御部117aは、次に信号線148により自分以外
のIPの動作状態を確認する(ステップ509)。自分
以外に動作中のIPがある場合、信号線142aにより
チエツクストップラッチをセットしくステップ51o)
、命令の実行を停止しチエツクストップする。このチエ
ツクストップラッチのセットにより、信号線145aを
介して動作中の正常なIPであるIPlllbの割込み
制御部114bに誤動作警報割込み要求が連絡される。
自分以外に動作中のIPがない場合には、自分自身に対
してPD−Bマシンチエツクを発生させる。
してPD−Bマシンチエツクを発生させる。
第6図は、MS113上に格納されたIP内部情報の一
例である。内部情報61は、チェックポイント保証が成
功したか否かを示すチェックポイント保証ラッチの情報
611と、IPの内部状態であるプログラムから読み出
し可能なレジスタ類の情報612、タイマ類の情報61
3などから構成される。本情報が格納される領域は、あ
らかじめ命令処理装置ごとに設定された固定的領域でも
よいし、あらかしめ障害発生前に命令処理装置もしくは
スキャンアウト制御部122に対して指定してもよい。
例である。内部情報61は、チェックポイント保証が成
功したか否かを示すチェックポイント保証ラッチの情報
611と、IPの内部状態であるプログラムから読み出
し可能なレジスタ類の情報612、タイマ類の情報61
3などから構成される。本情報が格納される領域は、あ
らかじめ命令処理装置ごとに設定された固定的領域でも
よいし、あらかしめ障害発生前に命令処理装置もしくは
スキャンアウト制御部122に対して指定してもよい。
また、スキャンアウトなどにより専用的に使用される領
域を設定し、その中に格納しても良い。ただし、その場
合には、格納した情報をソフトウアアが読み出すための
手段が必要である。
域を設定し、その中に格納しても良い。ただし、その場
合には、格納した情報をソフトウアアが読み出すための
手段が必要である。
次に、IPlllbの実行制御部117bが誤動作警報
割込みを受は付けた時の動作の一例を第7図を用いて説
明する。誤動作警報割込みを受は付けると、O8はMS
131内に格納されたIPの内部状態を読み出しくステ
ップ701)、チェックポイント保証の有無をテストす
る(ステップ702)。チェックポイントが保証されて
おり、障害発生前のIP内部情報が格納されている場合
には、格納されているIPlllaの内部情報を読み出
し、実行中であった処理が継続実行できるように、タス
ク制御情報の形に編集しくステップ703)、該タスク
が継続実行されるよう、しかるべきレディタスクキュー
に登録する(ステップ704)、キュー登録されると、
通常のタイムスライス制御などにおいてレディ状態とな
ったタスクや、Iloが完了したI10待ちタスクと同
じく、順にディスパッチされ、実行される。チェックポ
イントが保証されていない場合には、IPlllaの内
部情報は退避されておらず、処理継続が不可能なので、
従来の誤動作警報割込み発生時に行なわれていた処理と
同じく、IpH1aで障害発生時に行われていた処理を
異常終了させる(ステップ705)。
割込みを受は付けた時の動作の一例を第7図を用いて説
明する。誤動作警報割込みを受は付けると、O8はMS
131内に格納されたIPの内部状態を読み出しくステ
ップ701)、チェックポイント保証の有無をテストす
る(ステップ702)。チェックポイントが保証されて
おり、障害発生前のIP内部情報が格納されている場合
には、格納されているIPlllaの内部情報を読み出
し、実行中であった処理が継続実行できるように、タス
ク制御情報の形に編集しくステップ703)、該タスク
が継続実行されるよう、しかるべきレディタスクキュー
に登録する(ステップ704)、キュー登録されると、
通常のタイムスライス制御などにおいてレディ状態とな
ったタスクや、Iloが完了したI10待ちタスクと同
じく、順にディスパッチされ、実行される。チェックポ
イントが保証されていない場合には、IPlllaの内
部情報は退避されておらず、処理継続が不可能なので、
従来の誤動作警報割込み発生時に行なわれていた処理と
同じく、IpH1aで障害発生時に行われていた処理を
異常終了させる(ステップ705)。
以上のソフトウェアによる処理は、IPlllbで行わ
れるので、処理継続可能な状態が保証され、処理継続を
行なう場合でも、処理継続不可能で異常終了処理を行な
う場合でも、再度障害が発生することはない。
れるので、処理継続可能な状態が保証され、処理継続を
行なう場合でも、処理継続不可能で異常終了処理を行な
う場合でも、再度障害が発生することはない。
本実施例では、チェックポイント保証の表示子としてハ
ードウェアラッチを設け、その状態をMSに格納する方
法を採用した。ハードウェアラッチの代わりに、直接M
Sに書き込む、処理継続を行うIPがラッチの状態を直
接読むなどの方法であっても、チェックポイント保証表
示子の値が処理を継続するIPからテスト可能であれば
よい。
ードウェアラッチを設け、その状態をMSに格納する方
法を採用した。ハードウェアラッチの代わりに、直接M
Sに書き込む、処理継続を行うIPがラッチの状態を直
接読むなどの方法であっても、チェックポイント保証表
示子の値が処理を継続するIPからテスト可能であれば
よい。
また、処理継続する命令処理装置において本実施例では
タスク制御情報を作成しているが、処理の継続実行が可
能な他の制御方法でも良い。
タスク制御情報を作成しているが、処理の継続実行が可
能な他の制御方法でも良い。
以上の説明から明らかなように、本発明によれば、主記
憶装置を共有するマルチプロセッサシステムにおいて、
ある命令処理装置で固定障害が発生したとき、チェック
ポイントを保証して割込みを他の正常な命令処理装置に
報告し、中断した処理を正常な命令処理装置で継続実行
させる処理継続のための動作が、最小のハードウェア量
の増加で、従来の機構を利用して容易に、安価に、さら
にマルチプロセッサにおいて一台の命令処理装置のみが
動作中の場合でも信頼性を低下させることなく可能とな
るという効果がある。
憶装置を共有するマルチプロセッサシステムにおいて、
ある命令処理装置で固定障害が発生したとき、チェック
ポイントを保証して割込みを他の正常な命令処理装置に
報告し、中断した処理を正常な命令処理装置で継続実行
させる処理継続のための動作が、最小のハードウェア量
の増加で、従来の機構を利用して容易に、安価に、さら
にマルチプロセッサにおいて一台の命令処理装置のみが
動作中の場合でも信頼性を低下させることなく可能とな
るという効果がある。
第1図は本発明の一実施例を適用したマルチプロセッサ
システムの構成を示すブロック図、第2図はチェックポ
イントの説明図、第3図は従来のシステムにおける命令
処理装置の構成を示すブロック図、第4図は命令実行部
内チェックポイント保証部の構成例を示す構成図、第5
図は命令の実行制御部における障害処理時の処理の流れ
図、第6図はIP内部情報の一例を示す説明図、第7図
は割込みを受は取った正常な命令処理装置の行なう処理
の流れ図である。 13・主記憶装置、21〜24・命令、61・IP内部
情報例、1lla、b・・・命令処理装置、112a、
b・命令実行部、113a、b−障害検出部、114a
、b−割込み制御部、115a。 b・・・チェックポイント保証ラッチ、116a、bチ
エツクストップラッチ、117a、b 実行制御部、
118a、b・・チェックポイント保証部、121 ・
システム制御装置、122・・スキャンアウト制御部、
411,412,414・・・レジスタ、413・・・
演算装置、415・・汎用レジスタ群、η 図 第 纂 は 憤 ■ ■ 区
システムの構成を示すブロック図、第2図はチェックポ
イントの説明図、第3図は従来のシステムにおける命令
処理装置の構成を示すブロック図、第4図は命令実行部
内チェックポイント保証部の構成例を示す構成図、第5
図は命令の実行制御部における障害処理時の処理の流れ
図、第6図はIP内部情報の一例を示す説明図、第7図
は割込みを受は取った正常な命令処理装置の行なう処理
の流れ図である。 13・主記憶装置、21〜24・命令、61・IP内部
情報例、1lla、b・・・命令処理装置、112a、
b・命令実行部、113a、b−障害検出部、114a
、b−割込み制御部、115a。 b・・・チェックポイント保証ラッチ、116a、bチ
エツクストップラッチ、117a、b 実行制御部、
118a、b・・チェックポイント保証部、121 ・
システム制御装置、122・・スキャンアウト制御部、
411,412,414・・・レジスタ、413・・・
演算装置、415・・汎用レジスタ群、η 図 第 纂 は 憤 ■ ■ 区
Claims (1)
- 【特許請求の範囲】 1、複数の命令処理装置と、該複数の命令処理装置によ
り共有される主記憶装置とを有するマルチプロセッサシ
ステムにおいて、命令処理装置の障害を検出して障害発
生時の当該命令処理装置の状態を障害発生前のある時点
(チェックポイント)の状態へ戻す手段と、命令処理装
置の内部状態を主記憶装置へ退避する手段と、障害発生
の事実を他の動作中の命令処理装置の少なくとも一つに
連絡する手段と、記憶装置に退避された障害発生命令処
理装置の内部情報を読み出し、処理する手段とを有し、
各命令処理装置は障害発生時、障害発生前の上記時点の
状態を保証し、保証可能であったならば該状態を主記憶
装置へ退避した後、他の命令処理装置へ連絡し、連絡を
受けた他の命令処理装置は、記憶装置に退避された障害
発生命令処理装置の内部情報を読み出し、前記内部情報
を用いて処理続行のための制御情報を作成し、障害発生
命令処理装置で障害により中断された処理を継続実行す
ることを特徴とする処理の実行継続方式。 2、前記他の命令処理装置への連絡に、割込み手段を利
用することを特徴とする請求項1記載の処理の実行継続
方式。 3、前記障害発生命令処理装置の内部情報を読み出し、
前記内部情報を用いて処理続行のための制御情報を作成
するプログラムを有することを特徴とする請求項1ない
し2記載の処理の実行継続方式。 4、前記命令処理装置の内部状態を主記憶装置へ退避す
る際、スキャン回路を利用することを特徴とする請求項
1ないし3記載の処理の実行継続方式。 5、前記障害発生命令処理装置の内部情報に、障害発生
直前の前記時点状態が保証されていることを示す表示子
を設けることを特徴とする請求項1ないし請求項4記載
の処理の実行継続方式。 6、前記他の命令処理装置へ連絡を行う際、自命令処理
装置以外に動作しているプロセッサが少なくとも一つあ
る場合にのみ他の命令処理装置へ連絡することを特徴と
する請求項1ないし5記載の処理の実行継続方式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2135200A JP2922981B2 (ja) | 1990-05-28 | 1990-05-28 | タスクの実行継続方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2135200A JP2922981B2 (ja) | 1990-05-28 | 1990-05-28 | タスクの実行継続方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH0430224A true JPH0430224A (ja) | 1992-02-03 |
| JP2922981B2 JP2922981B2 (ja) | 1999-07-26 |
Family
ID=15146191
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2135200A Expired - Fee Related JP2922981B2 (ja) | 1990-05-28 | 1990-05-28 | タスクの実行継続方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2922981B2 (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2012059098A (ja) * | 2010-09-10 | 2012-03-22 | Nec Commun Syst Ltd | 情報処理システム、および、情報処理方法 |
-
1990
- 1990-05-28 JP JP2135200A patent/JP2922981B2/ja not_active Expired - Fee Related
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2012059098A (ja) * | 2010-09-10 | 2012-03-22 | Nec Commun Syst Ltd | 情報処理システム、および、情報処理方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2922981B2 (ja) | 1999-07-26 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP0505706B1 (en) | Alternate processor continuation of the task of a failed processor | |
| US4045661A (en) | Apparatus for detecting and processing errors | |
| JPH0950424A (ja) | ダンプ採取装置およびダンプ採取方法 | |
| US5742851A (en) | Information processing system having function to detect fault in external bus | |
| JP2003015900A (ja) | 追走型多重化システム、及び追走により信頼性を高めるデータ処理方法 | |
| RU2431182C2 (ru) | Способ, операционная система и вычислительное устройство для выполнения компьютерной программы | |
| JPH09251443A (ja) | 情報処理システムのプロセッサ障害回復処理方法 | |
| JPH02294739A (ja) | 障害検出方式 | |
| JPH0430224A (ja) | タスクの実行継続方法 | |
| JP3423732B2 (ja) | 情報処理装置及び情報処理装置における障害処理方法 | |
| JPH07183891A (ja) | 計算機システム | |
| KR100313712B1 (ko) | 이중화된프로세서를위한결함기반의소프트웨어결함허용방법 | |
| JP2776815B2 (ja) | 多重プロセッサシステムの障害回復方法 | |
| JPS6128141B2 (ja) | ||
| JPS62113241A (ja) | 障害回復装置 | |
| JP3539687B2 (ja) | プロセッサ二重化方式の情報処理装置 | |
| JPS6341943A (ja) | 論理装置のエラ−回復方式 | |
| JPH04211841A (ja) | 二重化処理装置 | |
| JPS63136142A (ja) | 論理装置のエラ−回復方式 | |
| JPS6258344A (ja) | 障害回復装置 | |
| JPS6272038A (ja) | プログラム暴走検出装置の試験方法 | |
| JPS635779B2 (ja) | ||
| JPH10254723A (ja) | 二重化コンピュータシステム | |
| JPS62172436A (ja) | 論理装置のエラ−回復方式 | |
| JPH03233734A (ja) | 耐故障制御方式 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Cancellation because of no payment of annual fees |