JPH11149458A - 2重化計算機システム及び同システムにおける排他制御方法 - Google Patents

2重化計算機システム及び同システムにおける排他制御方法

Info

Publication number
JPH11149458A
JPH11149458A JP9317131A JP31713197A JPH11149458A JP H11149458 A JPH11149458 A JP H11149458A JP 9317131 A JP9317131 A JP 9317131A JP 31713197 A JP31713197 A JP 31713197A JP H11149458 A JPH11149458 A JP H11149458A
Authority
JP
Japan
Prior art keywords
computer
forced stop
notification
random number
stop prohibition
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
Application number
JP9317131A
Other languages
English (en)
Inventor
Masao Sakitani
政雄 先谷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP9317131A priority Critical patent/JPH11149458A/ja
Publication of JPH11149458A publication Critical patent/JPH11149458A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Hardware Redundancy (AREA)
  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 【課題】各系の計算機で他系計算機の異常を誤検出した
としても、いずれか一方の計算機のみが正しく主導側と
なって処理を続けられるようにする。 【解決手段】計算機10-0,10-1は相互の通信により
他系の障害を検出すると、強制停止禁止部15の機能が
無効化されていないなら、通知フラグをセットすると共
に乱数生成部12により乱数値を生成させ、乱数値付き
の強制停止禁止無効通知を他系に発行する。計算機10
-0,10-1は、通知フラグのセット状態で他系から強制
停止禁止無効通知を受信すると、当該通知に付された乱
数値と自系で生成した乱数値とを比較し、他系の方が大
きいならば自系の強制停止禁止部15の機能を無効化し
て正常応答を返し、他系の方が小さいならば何もせずに
正常応答を返す。計算機10-0,10-1は正常応答を受
信すると他系に強制停止通知を発行する。すると、強制
停止禁止機能が無効の計算機のみ停止する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、業務を処理する計
算機が2重化された2重化計算機システムに係り、特に
各計算機が相互の通信により相互に監視して他系の計算
機の障害を検出した際に主導側(マスタ)となる計算機
を排他制御により決定するのに好適な2重化計算機シス
テム及び同システムにおける排他制御方法に関する。
【0002】
【従来の技術】この種の2重化計算機システムの代表的
なシステム構成を図8に示す。この図8は、2台の計算
機111-0,111-1を1対1で接続して構成される2
重化計算機システムの例である。
【0003】図8の2重化計算機システムにおいて、2
重化した計算機111-0,111-1は、イーサネットに
代表される共通の通信媒体112、或いは各計算機11
1-0,111-1間を直接接続した通信経路113を使用
して、相互の通信によるそれぞれの手順で排他制御を行
うことで、システムとしてのマスタ/スレーブを決定し
ている。ここで、計算機111-0,111-1間の通信
は、当該計算機111-0,111-1上で動作するソフト
ウェア(によって実現される障害監視部)に従って行わ
れる。
【0004】この計算機111-0,111-1間の排他制
御によるマスタ/スレーブの決定により、図9に示すよ
うにシステムに共有モジュール114がある場合には、
計算機111-0,111-1のうちのマスタの計算機11
1-i(iは0または1)が共有モジュール114を使用
し、スレーブの計算機111-j(jは0または1、但し
j≠i)はマスタになったとき共有モジュール114を
使用する。この関係により、2台の計算機111-0,1
11-1間で共有モジュール114を相互で利用すること
が可能となる。
【0005】しかし従来の2重化計算機システムでは、
2重化された計算機111-0,111-1が相互の通信に
よって相手計算機の異常の監視を行い、異常を検出した
結果、自分がマスタになって共有モジュール114を優
先して使用する場合に問題が発生する。これについて以
下に詳述する。
【0006】まず、図9において、計算機111-0,1
11-1のうちの現在マスタになっている計算機111-i
がスレーブの計算機111-jの異常を検出した場合、ス
レーブの計算機111-jが勝手に共有モジュールを使用
することがないように、マスタの計算機111-iからス
レーブの計算機111-jに強制停止通知(強制停止要
求)121を発行して、当該スレーブの計算機111-j
を強制的に停止させる。
【0007】一方、現在スレーブになっている計算機1
11-jがマスタの計算機111-iの異常を検出した場合
には、スレーブの計算機111-jからマスタの計算機1
11-iに強制停止通知121を発行して、当該マスタの
計算機111-iを強制的に停止させ、更にスレーブの計
算機111-jがマスタとなり共有モジュール114を使
用することで引き続き業務を処理する。
【0008】したがって、これらの関係がどちらかの計
算機に障害が発生した結果生じたものであれば、必ず一
方の計算機がマスタとなることができる。ところが、図
9の例のように、一時的な処理負荷による計算機111
-0,111-1間の通信の途絶え122により相手計算機
の異常を誤検出したものであるとすると、それぞれの計
算機111-0,111-1は相手計算機が異常であると判
断し、強制停止通知121を発行する可能性がある。も
し、このような状態が発生すると、符号123で示され
るように計算機111-0,111-1が共に停止する両系
停止となり、2重化計算機システムとしては致命的な障
害へと発展する。
【0009】そこで、図10のように、計算機111-
0,111-1が強制停止通知121を相手の計算機に発
行する前に、自身に対しては他系計算機からの強制停止
通知121(の示す要求)を受け付けないようにするた
めの強制停止禁止部131を作動させることが考えられ
ている。しかし、両計算機111-0,111-1が共に強
制停止禁止部131を作動させたときは、いずれも強制
停止禁止状態に設定されるため、相手計算機に対して強
制停止通知121を発行しても、どちらも停止すること
なく両系がマスタとなり、共有モジュール114をそれ
ぞれの計算機111-0,111-1から使用する状態が発
生する。つまり、本来マスタのみが共有モジュール11
4を使用するという排他の関係が崩れ、両系から共有モ
ジュール114が使用されるという不具合がある。
【0010】
【発明が解決しようとする課題】上記したように、従来
の2重化計算機システムにおける排他制御においては、
一時的な処理負荷の増大による通信の途絶え等により相
手計算機が異常であると誤検出して、即ち正常な状態で
の異常の誤検出が発生して、強制停止を要求した場合、
2重化された計算機がいずれも停止するか、或いはいず
れもマスタとなって動作するという致命的な障害を招く
という問題があった。
【0011】本発明は上記事情を考慮してなされたもの
でその目的は、2重化された計算機相互の通信により他
系計算機を監視し、その結果、一時的な処理負荷の増大
による通信の途絶えにより異常の誤検出が発生したとし
ても、いずれか一方の計算機のみが正しく主導側となっ
て、停止することなく処理を続けることができ、計算機
システムとしての信頼性及び可用性の維持が図れる2重
化計算機システム及び同システムにおける排他制御方法
を提供することにある。
【0012】
【課題を解決するための手段】本発明は、2重化計算機
システム内の各計算機に、他系の計算機を監視して障害
を検出する障害検出手段と、障害が検出された他系の計
算機の動作を強制停止させるための強制停止通知を発行
する強制停止通知手段と、他系の計算機からの強制停止
通知に応じて自系計算機の計算機動作を強制停止させる
ための強制停止手段とに加えて、上記強制停止通知に従
う強制停止手段による計算機動作強制停止を禁止させる
強制停止禁止機能を持つ強制停止禁止手段と、乱数値を
生成する乱数生成手段と、他系の計算機の障害検出時に
上記強制停止禁止手段の強制停止禁止機能が無効化され
ていないならば、上記乱数生成手段による乱数値生成動
作を行わせ、その際に生成された乱数値が付された他系
の計算機に対する強制停止禁止無効通知を発行する強制
停止禁止無効通知手段と、上記強制停止禁止無効通知が
自系の計算機と他系の計算機とから同時に発行された場
合、他系の計算機からの強制停止禁止無効通知に付され
ている乱数値と自系の計算機で生成された乱数値とを比
較する比較手段と、この比較手段による乱数値比較の結
果、両乱数値の間に所定の大小関係がある場合に、自系
の強制停止禁止手段の強制停止禁止機能を無効化する強
制停止禁止機能無効化手段とを設けたことを特徴とす
る。
【0013】また本発明は、自系の強制停止禁止無効通
知手段から強制停止禁止無効通知が発行されていない状
態で他系の計算機から強制停止禁止無効通知が発行され
た場合にも、上記強制停止禁止機能無効化手段により自
系の強制停止禁止手段の強制停止禁止機能が無効化され
るようにしたことをも特徴とする。
【0014】また本発明は、上記各計算機に、比較手段
による乱数値比較の結果、両乱数値が等しい場合には、
強制停止通知手段による強制停止通知の発行を抑止して
乱数生成手段による新たな乱数値生成動作を行わせ、そ
の際に生成された乱数値で決まる時間を待った後、障害
検出手段により障害が検出された場合の動作を再実行さ
せる再実行制御手段を更に設けたことをも特徴とする。
【0015】このような構成においては、両系の計算機
で一時的な処理負荷の増大による通信の途絶えにより、
例えば両系の計算機が誤って他系の計算機の異常を同時
に検出した場合、両系の計算機、つまり他系計算機の異
常を誤検出した各計算機では、乱数生成手段による乱数
値生成が行われて、その乱数値が付された強制停止禁止
無効通知が他系計算機に発行される。
【0016】乱数値付きの強制停止禁止無効通知を受信
した計算機では、自身も強制停止禁止無効通知を発行し
ている場合、つまり両系の計算機が同時に他系計算機の
障害を検出して強制停止禁止無効通知を発行している場
合、受信した強制停止禁止無効通知に付されている乱数
値(他系計算機の乱数値)と自系計算機で生成された乱
数値とが比較される。この両系の乱数値は一般に一致し
ない。
【0017】各計算機では、乱数値比較の結果、両系の
乱数値の間に所定の大小関係がある場合、例えば他系の
乱数値の方が自系の乱数値より大きい場合には、自系の
強制停止禁止手段の強制停止禁止機能が無効化される。
つまり、システム内の2重化された計算機のうちのいず
れか一方の強制停止禁止機能だけが無効化され、他方の
計算機の強制停止禁止機能は有効な状態を保つ。したが
って、他系計算機の障害を同時に検出した両系の計算機
から当該他系計算機の動作を強制停止させるための強制
停止通知が同時に発行されても、一方の計算機のみ強制
停止禁止機能が働き、当該計算機だけが停止することな
く主導側(マスタ)のまま、もしくは主導側に切り替わ
って、業務を引き続き遂行することができる。
【0018】また上記の構成においては、システム内の
2重化された計算機のうちのいずれか一方においての
み、他系計算機の異常が検出された場合には、その異常
を検出した計算機だけが他系計算機への強制停止禁止無
効通知を発行する。このため、もし他系計算機の異常検
出が誤検出であり、当該他系計算機には実際には障害は
発生していないとしても、当該他系計算機の強制停止禁
止機能が無効化されることから、当該他系計算機は、当
該他系計算機の異常を誤検出した計算機からの強制停止
通知に応じて強制停止され、当該他系計算機の異常を誤
検出した計算機が主導側のまま、もしくは主導側に切り
替わって、業務を引き続き遂行することができる。
【0019】また上記の構成においては、自系計算機と
他系計算機の乱数値が等しい場合には、いずれを主導側
として、いずれを停止側とするか決定できないことか
ら、強制停止通知手段による強制停止通知の発行が抑止
されて両系の乱数生成手段による新たな乱数値生成動作
が行われ、新たな乱数値で決まる時間を待った後、障害
検出時の動作が再実行される。この場合、両系で生成さ
れる新たな乱数値が再び等しくなる確率は極めて少な
く、いずれか一方の計算機だけが先に障害検出時の動作
を再実行する。つまり、いずれか一方の計算機でのみ他
系計算機の障害が検出されたのと等価な動作が行われ
る。これにより、先に障害検出時の動作を再実行した計
算機が主導側のまま、もしくは主導側に切り替わって、
業務を引き続き遂行することができる。万一、両系で生
成される新たな乱数値が再び等しくなった場合には、両
系において同時に障害検出時の動作が再実行される。し
かし、この再実行の過程で生成される3度目の乱数値が
等しくなることは確率的に皆無であり、いずれか一方の
計算機だけが主導側のまま、もしくは主導側に切り替わ
って、業務を引き続き遂行することができる。
【0020】なお、強制停止禁止無効通知に対しては当
該通知を受け取った計算機から当該通知の発行元の計算
機に応答を返すようにし、この応答が返された時点で強
制停止通知手段により強制停止通知が発行されるように
するとよい。但し、実際に障害が発生した計算機からは
応答は返されないため、強制停止通知の発行時より時間
カウントを開始し、所定時間をカウントしても応答が返
されないタイムアウト検出時にも、強制停止通知手段に
より強制停止通知が発行されるようにするとよい。
【0021】また、応答が返されても、自系計算機と他
系計算機の乱数値が等しい場合には、強制停止通知手段
による強制停止通知の発行が簡単な判断で抑止されるよ
うに、乱数値が異なる場合と等しい場合とで異なる応答
を適用し、強制停止禁止無効通知先の計算機から当該通
知の発行元の計算機に応答が返された場合に、その応答
の種別を判断し、乱数値が異なる場合に対応する第1の
応答(正常応答)の受信時には強制停止通知が発行さ
れ、乱数値が等しい場合に対応する第2の応答(異常応
答)の受信時には強制停止通知の発行が抑止されて新た
な乱数値生成動作が行われるようにするとよい。
【0022】なお、以上の2重化計算機システムに適用
した排他制御は、業務を処理する3台以上の計算機を備
え、これら計算機が多重化された多重化計算機システム
にも、上記2重化計算機システム内の各計算機で行われ
る障害監視のための通信を多重化することで適用可能で
ある。
【0023】ここで、多重化計算機システムの各計算機
には、次の各手段、即ち他系の各計算機との間で相互に
通信を行うことで当該他系の各計算機を監視して障害を
検出する障害検出手段と、この障害検出手段により障害
が検出された他系の計算機の動作を強制停止させるため
の強制停止通知を発行する強制停止通知手段と、他系の
計算機の強制停止通知手段からの強制停止通知に応じて
自系計算機の計算機動作を強制停止させるための強制停
止手段と、上記強制停止通知に従う強制停止手段による
計算機動作強制停止を禁止させる強制停止禁止機能を持
つ強制停止禁止手段と、乱数値を生成する乱数生成手段
と、上記障害検出手段による他系の計算機の障害検出時
に強制停止禁止手段の強制停止禁止機能が無効化されて
いないならば、上記乱数生成手段による乱数値生成動作
を行わせ、その際に生成された乱数値が付された他系の
計算機に対する強制停止禁止無効通知を発行する強制停
止禁止無効通知手段と、上記強制停止禁止無効通知が自
系の計算機と他系の各計算機の強制停止禁止無効通知手
段から同時に発行された場合、他系の各計算機からの強
制停止禁止無効通知に付されている乱数値と自系の計算
機で生成された乱数値とを比較する比較手段と、この比
較手段による乱数値比較の結果、自系の乱数値と他系の
各乱数値との間に所定の大小関係がある場合に、自系の
強制停止禁止手段の強制停止禁止機能を無効化する強制
停止禁止機能無効化手段とを設ければよい。
【0024】
【発明の実施の形態】以下、本発明の実施の形態につき
図面を参照して説明する。図1は本発明の一実施形態に
係る2重化計算機システムの構成を示すブロック図であ
る。
【0025】同図において、2重化された計算機10-
0,10-1は、通信経路20により相互接続されてい
る。この通信経路20は、イーサネットのような共通の
通信媒体であっても、各計算機10-0,10-1間を直接
接続した通信経路であっても構わない。
【0026】計算機10-0,10-1はソフトウェアプロ
グラムに従って業務処理や通信処理を遂行するもので、
通信経路20を介しての通信により相手計算機の障害監
視を行う障害監視部11、及び任意の乱数値を生成する
乱数生成部12を有している。この乱数生成部12によ
り生成される乱数値は障害監視部11から参照可能であ
る。
【0027】計算機10-0,10-1はまた、当該計算機
10-0,10-1内の障害監視部11で受信した相手計算
機からの強制停止通知に対応する強制停止要求13に応
じて、計算機10-0,10-1の動作を強制停止させる強
制停止部14、及び上記強制停止要求13に従って計算
機10-0,10-1が強制停止させられるのを禁止する機
能(強制停止禁止機能)を持つ強制停止禁止部15を有
している。この強制停止禁止部15の強制停止禁止機能
は、障害監視部11から強制停止禁止無効を示す強制停
止禁止有効/無効要求16が与えられた場合に無効化さ
れる。強制停止禁止部15は、強制停止禁止機能の有効
/無効設定状態に応じて上記強制停止要求13をマスク
するマスク部17を持つ。
【0028】次に、図1の構成の2重化計算機システム
における動作を、図2並びに図3のフローチャート、及
び図4乃至図6のシステム状態図を適宜参照して説明す
る。まず、計算機10-0,11-1の一方がマスタとな
り、他方がスレーブとなって業務を処理している通常の
システム運用状態を、計算機10-0がマスタ、計算機1
0-1がスレーブの場合を例に図4に示す。
【0029】この図4の状態では、計算機10-0,10
-1内の各障害監視部11は、通信経路20を使用して例
えば定期的に通信することで、相互に異常の監視(相互
監視)40を行う。
【0030】このような状態で、例えば図5において符
号51に示すように、マスタ側の計算機10-0で障害が
発生すると、スレーブ側の計算機10-1では、当該計算
機10-1内の障害監視部11による通信経路20を介し
ての相互監視40で通信の途絶えが検出される。すると
計算機10-1では、他系の計算機10-0に障害が発生し
たものと判断し、図2のフローチャートに示す障害検出
時の処理が開始される。
【0031】まず計算機10-1内の障害監視部11は、
自系の強制停止禁止部15が無効状態に設定されていな
いこと、つまり他系(相手)計算機(ここでは計算機1
0-0)からの強制停止通知に対応する強制停止要求(1
3)を禁止する機能(強制停止禁止機能)が無効化され
ていないことを確認する(ステップS1)。もし、無効
化されている場合は、そのまま処理を中断する。
【0032】これに対し、自系の強制停止禁止部15の
強制停止禁止機能が無効化されていない場合は、計算機
10-1内の障害監視部11は、当該強制停止禁止部15
に対して強制停止禁止機能を有効化することを要求する
強制停止禁止有効/無効要求16を出力することで、強
制停止禁止の設定を行う(ステップS2)。ここでは、
ステップS2が実行されるものとする。なお、初期状態
において、強制停止禁止部15が強制停止禁止状態に自
動設定されるならば、ステップS2の処理(強制停止禁
止の設定処理)は必ずしも必要ない。
【0033】計算機10-1内の障害監視部11はステッ
プS2を実行すると、乱数生成部12を起動して乱数値
を生成させ、その乱数値を保存する(ステップS3)。
次に計算機10-1内の障害監視部11は、障害が発生し
た他系計算機10-0の強制停止禁止部15の機能(強制
停止禁止機能)を無効にするための通知(強制停止禁止
無効通知)52を発行したか否かを示す通知フラグ(図
示せず)をセットした後(ステップS4)、他系計算機
10-0に対して当該強制停止禁止無効通知52を自系の
乱数値と共に通信経路20を介して発行し(ステップS
5)、他系計算機10-0からの応答を待つ。
【0034】しかし、この例では、他系計算機(マスタ
側計算機)10-0は障害発生51により既に停止してい
るため、当該計算機10-0に強制停止禁止無効通知52
を発行しても応答が返らない無応答53の状態が発生す
る。スレーブ側計算機10-1内の障害監視部11は、強
制停止禁止無効通知52の発行後、無応答53の状態が
予め定められた一定時間以上続くことを検出すると、即
ち一定時間を経過してもマスタ側からの応答が返らない
タイムアウトを検出すると(ステップS6〜S8)、通
知フラグをリセットし(ステップS9)、スレーブから
マスタへと切り替えることで処理の引き継ぎを行う。
【0035】以上、図1の構成の2重化計算機システム
における動作を、通常の運用状態でマスタの計算機10
-0で障害が発生した場合を例に説明した。次に、図1の
システムにおける通常の運用状態で、計算機10-0,1
0-1の少なくとも一方の一時的な処理負荷の増大によ
り、通信経路20を使用した定期的な通信の途絶えを両
計算機10-0,10-1が同時に検出した場合の動作を、
図6を参照して説明する。
【0036】このような場合、計算機10-0,10-1内
のそれぞれの障害監視部11は、他系の計算機に障害
(異常)が発生したものと誤って判断する。即ち、両計
算機10-0,10-1において異常の誤検出が発生する。
計算機10-0,10-1では、他系の計算機の障害が検出
されると、図2のフローチャートに示す障害検出時の処
理が開始される。
【0037】まず計算機10-0,10-1内の障害監視部
11は、自系の強制停止禁止部15の強制停止禁止機能
が無効化されていないことを確認すると(ステップS
1)、強制停止禁止部15に対して強制停止禁止機能を
有効化することを要求する強制停止禁止有効/無効要求
16を出力して、強制停止禁止の設定を行う(ステップ
S2)。続いて計算機10-0,10-1内の障害監視部1
1は、乱数生成部12を起動して乱数値を生成させ、そ
の乱数値を保存する(ステップS3)。
【0038】次に計算機10-0,10-1内の障害監視部
11は、通知フラグをセットした後(ステップS4)、
障害が発生した他系計算機10-1,10-0の強制停止禁
止部15の機能(強制停止禁止機能)を無効化するため
に、図6に示すように当該他系計算機10-1,10-0に
対し通信経路20を介して強制停止禁止無効通知62-
0,62-1を(ステップS3で生成・保存した)自系の
乱数値と共に発行し(ステップS5)、当該他系計算機
10-1,10-0からの応答を待つ。この例では、計算機
10-0,10-1から他系計算機10-1,10-0に強制停
止禁止無効通知62-0,62-1が同時に発行されたもの
とする。
【0039】さて、計算機10-0,10-1では、受信処
理の中で図3のフローチャートに従う処理も実行され
る。まず計算機10-0,10-1内の障害監視部11は、
受信処理により他系計算機10-1,10-0から強制停止
禁止無効通知62-1,62-0を受信すると(ステップS
21,S22)、自系から既に他系に対して同様の強制
停止禁止無効通知を行っていないか、つまり自系の通知
フラグがセットされていないかを確認する(ステップS
23)。
【0040】もし、強制停止禁止無効通知を行っていな
いならば、計算機10-0,10-1内の障害監視部11
は、他系計算機による通知(障害検出)が早かったもの
として、当該通知に従い、自系の強制停止禁止部15に
対して当該禁止部15の機能(強制停止禁止機能)を無
効化することを要求する強制停止禁止有効/無効要求1
6を出力することで、自系の強制停止禁止部15の強制
停止禁止機能、つまり他系からの強制停止要求を禁止す
る機能を無効化して(ステップS24)、他系に応答
(正常応答)を返す(ステップS25)。
【0041】一方、この例のように強制停止禁止無効通
知を行っている場合には、計算機10-0,10-1内の障
害監視部11は、自系と他系とが同時に強制停止禁止無
効通知を行ったものとして、排他制御のために、(ステ
ップS3で生成・保存した)自系の乱数値(即ち強制停
止禁止無効通知時に他系に通知した乱数値)と、他系か
らの強制停止禁止無効通知時に通知された他系の乱数値
とを比較する(ステップS26〜S28)。
【0042】もし、自系の乱数値と他系の乱数値とが等
しくない場合には、計算機10-0,10-1のうち、自系
の乱数値の方が大きい計算機内の障害監視部11は、何
もしないで他系に正常応答を返し(ステップS25)、
自系の乱数値の方が小さい計算機内の障害監視部11
は、強制停止禁止部15の機能を無効にした後(ステッ
プS24)、他系に正常応答を返す(ステップS2
5)。これに対し、自系の乱数値と他系の乱数値とが等
しい場合には、計算機10-0,10-1内の障害監視部1
1は、いずれも異常応答を他系に返す(ステップS2
9)。
【0043】ここでは、両系の乱数値が等しくなく、計
算機10-0の乱数値の方が大きいものとする。この場
合、計算機10-0内の障害監視部11は、他系の乱数値
の方が小さいことから(ステップS28)、何もしない
で他系に正常応答を返す(ステップS25)。一方、計
算機10-1内の障害監視部11は、他系の乱数値の方が
大きいことから(ステップS27)、図6に示すように
自系の強制停止禁止部15に対して当該禁止部15の強
制停止禁止機能を無効化することを要求する強制停止禁
止有効/無効要求16を出力して当該禁止部15を無効
状態に設定した後(ステップS24)、他系に正常応答
を返す(ステップS25)。
【0044】さて、計算機10-0,10-1内の障害監視
部11は、(ステップS5において)強制停止禁止無効
通知62-0,62-1を発行すると、当該通知62-0,6
2-1に対する他系からの応答を待つ。この状態で計算機
10-0,10-1内の障害監視部11は、一定時間以内に
他系からの応答を受信すると、その応答の種別を判断す
る(ステップS6,S7)。
【0045】この例では、計算機10-0,10-1内の障
害監視部11からはいずれも正常応答が返される。計算
機10-0,10-1内の障害監視部11は、ステップS5
で発行した強制停止禁止無効通知62-0,62-1に対す
る応答として正常応答を受信すると、図6に示すように
他系の計算機10-1,10-0に対してして強制停止通知
63-0,63-1を発行し(ステップS10)、しかる後
に通知フラグをリセットする(ステップS9)。
【0046】計算機10-0,10-1内の障害監視部11
は、計算機10-1,10-0からの強制停止通知63-1,
63-0を受信すると(ステップS21)、図6に示すよ
うに自系の強制停止禁止部15に対する強制停止要求1
3を発行する(ステップS30)。計算機10-0,10
-1内の強制停止禁止部15は、自身の設定状態(強制停
止禁止機能の有効状態または無効状態)に応じて、強制
停止要求13のマスク処理を行う。
【0047】ここでは、計算機10-1内の強制停止禁止
部15(の強制停止禁止機能)だけが先のステップS2
4で無効状態に設定されており、計算機10-0内の強制
停止禁止部15は有効状態に設定されている。したがっ
て、計算機10-1内の強制停止禁止部15では、強制停
止要求13をそのまま強制停止部14に渡すのに対し、
計算機10-0内の強制停止禁止部15では、強制停止要
求13がマスク部17によりマスクされ、当該強制停止
要求13が強制停止部14に渡るのが抑止される。これ
により、図6に示すように計算機10-1においてのみ強
制停止64が行われ、もう一方の計算機10-0が業務を
引き続き行うことになる。
【0048】以上、計算機10-0,10-1において他系
の異常の誤検出が同時に発生した場合に、両計算機10
-0,10-1が同様の処理手順で排他制御を行い、その過
程(ステップS3)で両計算機10-0,10-1で生成さ
れた乱数値の間に、計算機10-0側の乱数値の方が大き
いという関係があったために、計算機10-1においての
み(ステップS24が実行されて)強制停止禁止部15
の機能が無効化された結果、計算機10-0,10-1から
強制停止通知63-0,63-1が発行されたにも拘らず、
計算機10-1のみが強制停止された例について説明し
た。
【0049】次に、計算機10-0,10-1においてステ
ップ3で生成された乱数値が等しい場合の動作を、図7
を参照して説明する。前記したように、自系の乱数値と
他系の乱数値とが等しい場合、計算機10-0,10-1内
の障害監視部11は、いずれも異常応答を他系に返す
(ステップS29)。
【0050】このとき計算機10-0,10-1の障害監視
部11は、他系の計算機10-1,10-0に発行した強制
停止禁止無効通知(62-0,62-1)に対する当該計算
機10-1,10-0からの応答待ち状態にあり、この状態
で計算機10-1,10-0から異常応答を受信すると(ス
テップS7)、まず通知フラグをリセットする(ステッ
プS11)。
【0051】続いて、計算機10-0,10-1内の障害監
視部11は再度乱数生成部12により新たな乱数値(こ
こでは待ち時間決定用の乱数値)を生成させ、その乱数
値の示す時間だけ待った後(ステップS12)、ステッ
プS1に戻る。ここで、計算機10-0,10-1の各乱数
生成部12で生成される乱数値が2回続けて他系の乱数
値と等しくなる確率は極めて低く、上記ステップS12
での待ち時間は、計算機10-0,10-1間で異なるのが
普通である。
【0052】もし、計算機10-0(の乱数生成部12)
で生成された乱数値の方が計算機10-1で生成された乱
数値より値が小さく、したがって当該計算機10-0の方
が待ち時間が短かいものとすると、計算機10-0は計算
機10-1より先にステップS1に戻る。このとき、計算
機10-0内の強制停止禁止部15は無効になっていない
ことから、計算機10-0では、次のステップS2におい
て自系の強制停止禁止部15を強制停止禁止状態に設定
する処理が行われ、ステップS3,S4を経た後、図7
に示すように他系の計算機10-1に強制停止禁止無効通
知62-0を発行する処理(ステップS5)が行われる。
【0053】計算機10-1は、計算機10-0からの(2
度目の)強制停止禁止無効通知62-0を受信する。この
とき計算機10-1は、依然としてステップS12での時
間待ち状態にあり、強制停止禁止無効通知状態、即ち通
知フラグセット状態にない。したがって計算機10-0
は、計算機10-0からの(2度目の)強制停止禁止無効
通知62-0を受信すると(ステップS21,S22)、
ステップS23の通知フラグセット判定処理を経てステ
ップS24に進み、図7に示すように強制停止禁止無効
を示す強制停止禁止有効/無効要求16により強制停止
禁止部15の強制停止禁止機能を無効化する。そして計
算機10-0は、(強制停止禁止無効通知元である)計算
機10-0に正常応答を返す(ステップS25)。
【0054】計算機10-0内の障害監視部11は、計算
機10-1に発行した強制停止禁止無効通知62-0に対す
る応答を受信すると、その応答の種別を判断し(ステッ
プS6〜S8)、この例のよう正常応答である場合に
は、図7に示すように計算機10-1に対して強制停止通
知63-0を発行し(ステップS10)、しかる後に通知
フラグをリセットする(ステップS9)。
【0055】計算機10-1内の障害監視部11は、計算
機10-0からの強制停止通知63-0を受信すると(ステ
ップS21)、自系の強制停止禁止部15の状態に無関
係に、図7に示すように強制停止部14に対する強制停
止要求13を発行する(ステップS30)。このとき計
算機10-1内の強制停止禁止部15は、強制停止禁止機
能の無効状態に設定されていることから、障害監視部1
1からの強制停止要求13をそのまま強制停止部14に
渡す。計算機10-1内の強制停止部14は、このように
強制停止要求13を受けたときのみ、自系の計算機10
-1の動作の強制停止64を行う。これにより、もう一方
の計算機10-0が業務を引き続き行うことになる。
【0056】以上、計算機10-0,10-1において他系
の異常の誤検出が同時に発生した場合に、両計算機10
-0,10-1が同様の処理手順で排他制御を行い、その過
程(ステップS3)で両計算機10-0,10-1で生成さ
れた乱数値が等しかったために、(ステップS12で)
再度乱数値が生成されて排他制御が行われた結果、乱数
値の値が大きかった計算機10-1のみが強制停止された
例について説明した。
【0057】このように本実施形態によれば、計算機1
0-0,10-1において他系の異常の誤検出が同時に発生
した場合に、それぞれの計算機10-0,10-1が同様の
処理手順で排他制御を行うことで、いずれか一方の計算
機が業務を引き続き行うことができる。
【0058】このことは、計算機10-0,10-1のいず
れか一方のみが他系の異常を誤検出した場合にも同様で
ある。これについて、計算機10-0,10-1の少なくと
も一方の一時的な処理負荷の増大により、通信経路20
を使用した定期的な通信の途絶えを計算機10-0のみが
検出した場合、即ち計算機10-0のみが他系の異常を誤
検出した場合を例に簡単に説明する。
【0059】計算機10-0は、計算機10-1の異常を検
出すると、自系の強制停止禁止部15に対して強制停止
禁止の設定を行い、乱数値の生成・保存を行った後、他
系計算機10-1に対する強制停止禁止無効通知(62-
0)を行う(ステップS1〜S5)。一方、計算機10-
1では、このような処理は行われない。
【0060】計算機10-0からの強制停止禁止無効通知
(62-0)は計算機10-1で受信される。計算機10-1
は、強制停止禁止無効通知(62-0)を受信すると(ス
テップS21,S22)、自系の通知フラグはセットさ
れていないことから、自系の強制停止禁止部15の機能
を無効化して(ステップS23,S24)、強制停止禁
止無効通知元の計算機10-0に正常応答を返す(ステッ
プS25)。
【0061】さて、計算機10-1の異常を検出した計算
機10-0内の障害監視部11は、ステップS5において
強制停止禁止無効通知(62-0)を発行すると、当該通
知62-0に対する他系計算機10-1からの応答を待つ。
ここでは計算機10-0は、計算機10-1からの正常応答
を受信する。
【0062】計算機10-0は、他系の計算機10-1から
正常応答を受信すると(ステップS6)、当該計算機1
0-1に対して強制停止通知(63-0)を発行し、しかる
後に通知フラグをリセットする(ステップS10,S
9)。
【0063】計算機10-1は、計算機10-0からの強制
停止通知(63-0)を受信すると(ステップS21)、
自系の強制停止禁止部15に対する強制停止要求13を
発行する(ステップS30)。計算機10-1内の強制停
止禁止部15は、自身の設定状態(強制停止禁止機能の
有効状態または無効状態)に応じて、強制停止要求13
のマスク処理を行う。ここでは、計算機10-1内の強制
停止禁止部15は先のステップS24で無効状態に設定
されていることから、強制停止要求13がそのまま強制
停止部14に渡される。計算機10-1内の強制停止部1
4は、このように強制停止要求13を受けたときのみ、
自系の計算機10-1の動作の強制停止(64)を行う。
これにより、もう一方の計算機10-0が業務を引き続き
行うことになる。
【0064】以上の実施形態では、本発明を2重化計算
機システムに適用した場合について説明したが、本発明
は、業務を処理する3台以上の計算機を備え、これら計
算機が多重化された多重化計算機システムにも、前記実
施形態において各計算機10-0,10-1が行った障害監
視のための通信を多重化することで適用可能であり、そ
れぞれの通信経路を用いて排他制御を行うことによる冗
長な計算機システムを構築することができる。このシス
テムでは、上記の如く前記実施形態において各計算機1
0-0,10-1が行った障害監視のための通信が多重化さ
れている点で前記実施形態における2重化計算機システ
ムと異なるものの、各計算機が行う排他制御のアルゴリ
ズムには、前記実施形態において各計算機10-0,10
-1が行った排他制御のアルゴリズムがそのまま適用可能
である。
【0065】
【発明の効果】以上詳述したように本発明によれば、2
重化計算機システムとして片方の計算機の障害発生によ
る系の切り替えだけでなく、正常な状態での異常の誤検
出の発生時における系の切り替えも正しく行え、いずれ
か一方の計算機のみが主導側となって、停止することな
く処理を続けることができ、従来問題となっていた、正
常な状態での異常の誤検出により発生する致命的な障害
も防止できる。
【図面の簡単な説明】
【図1】本発明の一実施形態に係る2重化計算機システ
ムの構成を示すブロック図。
【図2】同実施形態における他系計算機の障害検出時の
動作を説明するためのフローチャート。
【図3】同実施形態における受信処理時の動作を説明す
るためのフローチャート。
【図4】図1のシステムにおける通常の運用状態を示す
システム状態図。
【図5】図1のシステムにおいてマスタ側計算機10-0
で障害が発生した場合のマスタの切り替えを説明するた
めのシステム状態図。
【図6】図1のシステムにおいて両系の計算機で他系計
算機の異常が誤検出された場合の強制停止による系の切
り替えを、計算機10-0で生成される乱数値の方が計算
機10-1で生成される乱数値より大きい場合について説
明するためのシステム状態図。
【図7】図1のシステムにおいて両系の計算機で他系計
算機の異常が誤検出された場合の強制停止による系の切
り替えを、計算機10-0,10-1で生成された乱数値が
等しいために新たな乱数値が生成され、その新たな乱数
値が計算機10-0,10-1間で異なることにより、計算
機10-0において優先的に再度の障害検出時処理が行わ
れた場合について説明するためのシステム状態図。
【図8】2重化計算機システムの代表的なシステム構成
を示すブロック図。
【図9】図8のシステムにおいて両系の計算機で他系計
算機の異常が誤検出されて当該他系計算機を強制停止さ
せた結果、両系が共に停止する問題を説明するためのシ
ステム状態図。
【図10】図8のシステムにおいて両系の計算機で他系
計算機の異常が誤検出された際に、両系を共に強制停止
禁止状態にして当該他系計算機に強制停止通知を発行し
た結果、両系が共にマスタ状態になる問題を説明するた
めのシステム状態図。
【符号の説明】
10-0,10-1…計算機 11…障害監視部(障害検出手段、強制停止通知手段、
強制停止禁止無効通知手段、比較手段、強制停止禁止機
能無効化手段) 12…乱数生成部 13…強制停止要求 14…強制停止部 15…強制停止禁止部 16…強制停止禁止有効/無効要求 62-0,62-1…強制停止禁止無効通知 63-0,63-1…強制停止通知

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 業務を処理する計算機が2重化された2
    重化計算機システムにおいて、 前記各計算機は、 他系の計算機との間で相互に通信を行うことで当該他系
    の計算機を監視して障害を検出する障害検出手段と、 前記障害検出手段により障害が検出された他系の計算機
    の動作を強制停止させるための強制停止通知を発行する
    強制停止通知手段と、 他系の計算機の前記強制停止通知手段からの強制停止通
    知に応じて自系計算機の計算機動作を強制停止させるた
    めの強制停止手段と、 前記強制停止通知に従う前記強制停止手段による計算機
    動作強制停止を禁止させる強制停止禁止機能を持つ強制
    停止禁止手段と、 乱数値を生成する乱数生成手段と、 前記障害検出手段による他系の計算機の障害検出時に前
    記強制停止禁止手段の強制停止禁止機能が無効化されて
    いないならば、前記乱数生成手段による乱数値生成動作
    を行わせ、その際に生成された乱数値が付された前記他
    系の計算機に対する強制停止禁止無効通知を発行する強
    制停止禁止無効通知手段と、 前記強制停止禁止無効通知が自系の計算機と他系の計算
    機の前記強制停止禁止無効通知手段から同時に発行され
    た場合、前記他系の計算機からの強制停止禁止無効通知
    に付されている乱数値と前記自系の計算機で生成された
    乱数値とを比較する比較手段と、 前記比較手段による乱数値比較の結果、両乱数値の間に
    所定の大小関係がある場合に、自系の前記強制停止禁止
    手段の強制停止禁止機能を無効化する強制停止禁止機能
    無効化手段とを備えたことを特徴とする2重化計算機シ
    ステム。
  2. 【請求項2】 前記強制停止禁止機能無効化手段は、自
    系の前記強制停止禁止無効通知手段から強制停止禁止無
    効通知が発行されていない状態で他系の計算機から前記
    強制停止禁止無効通知が発行された場合にも、自系の前
    記強制停止禁止手段の強制停止禁止機能を無効化するこ
    とを特徴とする請求項1記載の2重化計算機システム。
  3. 【請求項3】 前記各計算機は、前記比較手段による乱
    数値比較の結果、両乱数値が等しい場合には、前記強制
    停止通知手段による強制停止通知の発行を抑止して前記
    乱数生成手段による新たな乱数値生成動作を行わせ、そ
    の際に生成された乱数値で決まる時間を待った後、前記
    障害検出手段により障害が検出された場合の動作を再実
    行させる再実行制御手段を更に備えたことを特徴とする
    請求項2記載の2重化計算機システム。
  4. 【請求項4】 業務を処理する計算機が2重化された2
    重化計算機システムにおける排他制御方法であって、 前記各計算機において相互に通信を行うことで他系の計
    算機を監視し、当該他系の計算機の障害を検出した際に
    は、自系の計算機動作の強制停止を禁止させる強制停止
    禁止機能が無効化されていないならば、乱数値を生成し
    て当該乱数値が付された前記他系の計算機に対する強制
    停止禁止無効通知を発行し、 前記強制停止禁止無効通知の発行時に、他系の計算機か
    らも乱数値が付された強制停止禁止無効通知が発行され
    て、当該強制停止禁止無効通知を受信した場合、前記他
    系の計算機からの強制停止禁止無効通知に付されている
    乱数値と前記自系の計算機で生成した乱数値とを比較
    し、 前記乱数値の比較の結果、両乱数値の間に所定の大小関
    係がある場合に、自系の持つ前記強制停止禁止機能を無
    効化し、 前記乱数値の比較の結果、両乱数値が等しくない場合
    に、他系の計算機の動作を強制停止させるための強制停
    止通知を発行することを特徴とする2重化計算機システ
    ムにおける排他制御方法。
JP9317131A 1997-11-18 1997-11-18 2重化計算機システム及び同システムにおける排他制御方法 Pending JPH11149458A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9317131A JPH11149458A (ja) 1997-11-18 1997-11-18 2重化計算機システム及び同システムにおける排他制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9317131A JPH11149458A (ja) 1997-11-18 1997-11-18 2重化計算機システム及び同システムにおける排他制御方法

Publications (1)

Publication Number Publication Date
JPH11149458A true JPH11149458A (ja) 1999-06-02

Family

ID=18084795

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9317131A Pending JPH11149458A (ja) 1997-11-18 1997-11-18 2重化計算機システム及び同システムにおける排他制御方法

Country Status (1)

Country Link
JP (1) JPH11149458A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012063306A1 (ja) * 2010-11-08 2012-05-18 三菱電機株式会社 仮想計算機制御装置、仮想計算機制御システム、仮想計算機制御装置の仮想計算機制御方法および仮想計算機制御プログラム
JP2014106862A (ja) * 2012-11-29 2014-06-09 Taiyo Nippon Sanso Corp 冗長化システムおよび冗長化方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012063306A1 (ja) * 2010-11-08 2012-05-18 三菱電機株式会社 仮想計算機制御装置、仮想計算機制御システム、仮想計算機制御装置の仮想計算機制御方法および仮想計算機制御プログラム
JP5342699B2 (ja) * 2010-11-08 2013-11-13 三菱電機株式会社 仮想計算機制御装置、仮想計算機制御システム、仮想計算機制御装置の仮想計算機制御方法および仮想計算機制御プログラム
JP2014106862A (ja) * 2012-11-29 2014-06-09 Taiyo Nippon Sanso Corp 冗長化システムおよび冗長化方法

Similar Documents

Publication Publication Date Title
EP1078317B1 (en) Method for switching between multiple system processors
EP1703401B1 (en) Information processing apparatus and control method therefor
KR102824386B1 (ko) 에러 복구 방법 및 장치
US20070277023A1 (en) Method For Switching Over Between At Least Two Operating Modes Of A Processor Unit, As Well Corresponding Processor Unit
CN113147776B (zh) 车辆用热备份故障处理系统、方法及采用其的车辆
JPS6375963A (ja) システム回復方式
CN113742165A (zh) 双主控设备及主备控制方法
JP3211878B2 (ja) 通信処理制御手段及びそれを備えた情報処理装置
JPH07306794A (ja) 分散システム及び分散システムの高信頼化方法
JPH11149458A (ja) 2重化計算機システム及び同システムにおける排他制御方法
JP2915528B2 (ja) センサ・データの故障検出・信号選択装置
JP2979771B2 (ja) 情報処理装置及びそのバス制御方法
JP2735514B2 (ja) プロセス状態管理方式
JP3325785B2 (ja) 計算機の故障検出・回復方式
JPH09171475A (ja) 複合コンピュータシステム
JP2937857B2 (ja) 共通記憶装置のロックフラグ解除方式および方法
JPH0736721A (ja) 多重化コンピュータシステムの制御方式
JP3343618B2 (ja) 端末無中断オンラインシステム
JP2732668B2 (ja) 二重化制御装置
JPH06301658A (ja) 疎結合電子計算機システムのリカバリ方式
EP0860777A2 (en) Fault tolerant data processing system and method therefor
JP3008646B2 (ja) 障害情報処理方式
JPH0496146A (ja) 外部監視誤動作防止方式
JP2815730B2 (ja) アダプタ及びコンピュータシステム
JP2778691B2 (ja) バス監視回路