JPH06332876A - 系間排他制御方式 - Google Patents

系間排他制御方式

Info

Publication number
JPH06332876A
JPH06332876A JP5115953A JP11595393A JPH06332876A JP H06332876 A JPH06332876 A JP H06332876A JP 5115953 A JP5115953 A JP 5115953A JP 11595393 A JP11595393 A JP 11595393A JP H06332876 A JPH06332876 A JP H06332876A
Authority
JP
Japan
Prior art keywords
exclusive
request
computer
exclusion
error processing
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
JP5115953A
Other languages
English (en)
Inventor
Kaoru Tsuru
薫 鶴
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP5115953A priority Critical patent/JPH06332876A/ja
Publication of JPH06332876A publication Critical patent/JPH06332876A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Hardware Redundancy (AREA)
  • Debugging And Monitoring (AREA)
  • Multi Processors (AREA)

Abstract

(57)【要約】 【目的】 多重計算機システムにおいて、排他制御サー
ビスを行なう。 【構成】 ネットワークで結合された計算機群により構
成された多重計算機システムにおいて排他情報管理用テ
ーブル、排他サービスマネージャ、排他要求を排他サー
ビスマネージャに送信する排他要求マネージャを各々2
重化している。 【効果】 この発明は、ネットワークで結合された多重
計算機システムを構築し、システム内の計算機に障害が
発生しても排他制御サービスが損なわれることなく続行
できる点で、信頼性の高い排他制御サービスを提供でき
る効果がある。また、従来、計算機障害発生時にアプリ
ケーションシステム独自のエラー処理を排他を解除する
前に行なうことができなかったが、排他を解除する前
に、任意のエラー処理手段を実行できる効果がある。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、相互に接続された多重
計算機システムにおける排他制御に関するものであり、
更に詳しくは計算機システムにおける障害発生時におい
て、系内共有資源に対する排他サービス処理の継続性、
及び一貫性の保証を目的とした排他制御方式に関するも
のである。
【0002】
【従来の技術】従来の多重計算機システムにおけるファ
イルロックサービスについて以下に、説明する。図17
は、多重計算機のシステム構成図を示したもので、50
1は計算機1、502は計算機2であり、510は上記
計算機を接続しているネットワークである。計算機1上
において、503は、ロックマネージャ1<LM1>、
505はステータスモニタ1<SM1>、507はロッ
ク管理テーブルTである。また、計算機2上において、
509はアプリケーションプロセス<AP>、504は
ロックマネージャ2<LM2>、506はステータスモ
ニタ2<SM2>、508はローカルロック管理テーブ
ルである。
【0003】次に動作について、図17及び図18のフ
ローチャートに基づいて、正常系処理及び、異常系処理
に分けてそれぞれ説明する。 A.正常系処理 まづ、正常系処理の動作について、図18(a)につい
て説明する。 (1)アプリケーションプロセス<AP>(509)
は、ロックマネージャ2<LM2>(504)に対し排
他要求を行なう。(step521) (2)ロックマネージャ2<LM2>(504)は、上
記排他要求を受け付け(step524)て、排他要求
か排他解除かをチェック(step525)する。 (3)排他要求であれば、ローカルロック管理テーブル
<LT>(508)に登録(step526)し、ロッ
クマネージャ1<LM1>(503)に要求を送信(s
tep527)する。 (4)ロックマネージャ<LM1>(503)は、上記
要求を受信する(step532)と、排他要求か、解
除要求かをチェック(step533)する。 (5)排他要求であれば、ロック管理テーブル<T>
(507)を排他可能かどうか検索(step534)
する。 (6)排他可能(step535)であればメッセージ
にOKを設定(step536)し、排他不可能であれ
ばメッセージにNGを設定(step538)する。 (7)step533において、排他解除要求の場合
は、解除要求のあったリソースをロック管理テーブル<
T>(507)上で検索(step539)し、その排
他情報を削除(step540)し、メッセージに解除
OKを設定(step541)する。 (8)メッセージの設定が完了(step536、又は
step538、又はstep541)したら、これを
ロックマネージャ2<LM2>(504)に送信(st
ep537)する。 (9)ロックマネージャ<LM2>(504)は、これ
を受信(step528)し、メッセージをチェック
(step529)する。 (10)受信メッセージ内容を調べ、排他要求結果が不
可(NG)、若しくは排他解除要求がOKの場合には、
ローカルロック管理テーブル<LT>(508)から削
除(step530)し、アプリケーションプロセス<
AP>(509)に結果を通知(step531)す
る。 (11)アプリケーションプロセス<AP>(509)
は、排他要求が成功した場合には、一連のアプリケーシ
ョン個有の処理(step522)を行ない、該処理終
了後、排他解除要求を、ロックマネージャ2<LM2>
に送信(step523)する。
【0004】B.異常系処理 次に、障害発生時の処理について図18(b)について
説明する。ここで、アプリケーションプロセス<AP>
(509)が、排他要求を出力(図18(a)のste
p521)した時点から、排他解除要求(step52
3)を出すまでの期間において、異常を起こした場合を
想定する。 (1)ステータスモニタ2<SM2>(506)が、ア
プリケーションプロセス<AP>(509)の異常を検
知(step542)すると、ローカルロック管理テー
ブル<LT>(508)の内容を順次読み出す。(st
ep543) (2)アプリケーションプロセス<AP>(509)が
ロックしている情報が、含まれているかどうかをチェッ
ク(step544)し、該アプリケーションがロック
している情報が存在すれは、ロックマネージャ2<LM
2>(504)に対して排他解除要求を出す。(ste
p545) これをローカルロック管理テーブル<LT>(508)
に該当情報がなくなるまで繰り返す。(step54
6)
【0005】
【発明が解決しようとする課題】上記従来例のような構
成をとる排他制御システムにおいては、ファイルロック
サービスを提供してはいるものの、特に排他要求を獲得
しているアプリケーションプロセスに異常が発生した場
合において、直ちに該アプリケーションが獲得していた
排他要求が全て解除されてしまい、アプリケーションの
処理内容によっては、回復処理手順として、排他要求が
解除される前に実行しておかなければならない処理を、
排他要求解除に先立って実行しておくことができないと
いう問題点があった。さらに、排他を獲得しているアプ
リケーションプロセスが搭載されている計算機に異常が
発生した場合には、エラー回復処理が一切行われないと
いう問題点があった。加えて、ロックマネージャが存在
する計算機に異常が発生した場合には、排他サービス処
理が一切継続できないという問題点があった。
【0006】この発明は、上記のような問題点を解消す
るためになされたもので、排他要求を獲得中のアプリケ
ーションプロセスに障害が発生した場合において、前記
排他要求を解除するに先立ってアプリケーションプロセ
スの処理内容に応じたエラー回復処理を実行できるよう
にすることによって、システム全体としての排他サービ
ス処理の継続性確保を目的としたものである。また、排
他制御実現手段が搭載された主計算機において障害が発
生した場合においても、従計算機が前記処理を代行でき
るようにすることで、システム内における排他サービス
制御の一貫性、並びに信頼性の維持向上を目的としたも
のである。
【0007】
【課題を解決するための手段】本発明に係る系間排他制
御方式は、排他サービス機能を提供する第1の計算機
と、排他サービスを要求するアプリケーションプロセス
が搭載された第2の計算機群から構成された多重計算機
システムにおいて、前記第1の計算機には共有リソース
に対する排他要求、排他解除要求を実行する排他制御処
理実行部と、排他情報管理テーブルを具備し、前記第2
のグループを構成する計算機には、共有リソースに対す
る排他要求、排他解除のサービスを要求するアプリケー
ションプロセスに発生した障害を検知するためのプロセ
ス状態監視部と、上記障害検知時におけるエラー処理手
続きの登録部と、前記エラー処理手続きの実行部より構
成されたプロセス監視モニター手段を備えるようにした
ものである。また、排他サービス機能を提供する第1の
計算機と、排他サービスを要求するアプリケーションプ
ロセスが搭載された第2の計算機群から構成された多重
計算機システムにおいて、前記第1の計算機は共有リソ
ースに対する排他要求、排他解除要求を実行する排他制
御処理実行部と、他計算機の障害発生を検知するための
他計算機状態監視部と、上記計算機障害検知時における
エラー処理手続きの登録部及び並びに前記エラー処理手
続きの実行部より構成されたエラー処理部と、から構成
された排他サービスマネージャ手段を具備し、前記第2
のグループを構成する計算機は、共有リソースに対する
排他要求、排他解除のサービスを要求するアプリケーシ
ョンプロセスに発生した障害を検知するためのプロセス
状態監視部と上記障害検知時におけるエラー処理手続き
の登録部と、前記エラー処理手続きの実行部より構成さ
れたプロセス監視モニター手段を具備するようにしたも
のである。さらに、上記多重計算機システムが、特に2
台より構成された対向システムにおいては、対向する2
台の計算機双方に、共有リソースに対する排他要求、排
他解除要求を実行する排他制御処理実行部と、他計算機
の障害発生を検知するための他計算機状態監視部と、上
記計算機障害検知時におけるエラー処理手続きの登録部
及び前記エラー処理手続きの実行部より構成されたエラ
ー処理部と、から構成された排他サービスマネージャ手
段と、共有リソースに対する排他要求、排他解除に係わ
るサービスを要求するアプリケーションプロセスに発生
した障害を検知するためのプロセス状態監視部と上記障
害検知時におけるエラー処理手続きの登録部と、前記エ
ラー処理手続きの実行部より構成されたプロセス監視モ
ニタ手段を備えるようにしたものである。加えて、排他
制御処理を実行する第1の計算機群と、排他制御要求処
理を実行する第2の計算機群と、排他サービスを要求す
るアプリケーションプロセスが搭載された第3の計算機
群より構成された多重計算機システムにおいて、前記第
1の計算機群を構成する計算機は、共有リソースに対す
る排他要求、排他解除要求を実行する排他制御処理実行
部と、障害発生時におけるエラー処理手続きの登録部及
び前記エラー処理手続きの実行部より構成されたエラー
処理部と、から構成された排他サービスマネージャ手段
を具備し、前記第2の計算機群を構成する計算機は、前
記第1の計算機群に対する排他要求、排他解除要求を実
行する排他要求処理実行部と、多重計算機システムを構
成する計算機群の障害発生を検知するための他計算機状
態監視部と、前記計算機障害検知時におけるエラー処理
手続きの登録部及び前記エラー処理手続きの実行部より
成るエラー処理部と、から構成された排他要求マネージ
ャ手段を具備し、前記第3の計算機群を構成する計算機
は、前記アプリケーションプロセスに発生した障害を検
知するためのプロセス状態監視部と、上記障害検知時に
おけるエラー処理手続きの登録部及び前記エラー処理手
続きの実行部より構成されたエラー処理部と、から構成
されたプロセス監視モニタ手段を具備するようにしたも
のである。
【0008】
【作用】この発明による系間排他制御方式においては、
アプリケーションプロセスの処理内容に応じたきめの細
いエラー回復処理を実行することができるので、アプリ
ケーションプロセスに障害が発生した場合においても、
処理全体の継続性を維持することができる。また、他計
算機状態監視部を設けて、アプリケーションプロセスが
搭載された計算機の障害発生を検知し、エラー処理を行
うようにすることで、ネットワークを構成している計算
機全体に係る障害発生に対してもエラー回復処理を可能
としたものである。加えて、排他制御サービス実現に必
要な諸機能を主計算機及び従計算機に分散して配置する
ことにより、一方の計算機に障害が発生した場合におい
ても、他の計算機が該処理を代行するようにしたこと
で、システム内における排他サービス制御の一貫性及び
信頼性を維持できる。
【0009】
【実施例】
実施例1.本発明の実施例1について、図1〜図3に基
づいて説明する。図1(a)において、計算機1(10
1)、計算機2(102)、計算機3(103)は多重
計算機システムを構築する計算機群であり、回線LAN
(110)により各計算機は結合されている。計算機1
(101)には、排他サービスマネージャ<SM>(1
04)と、排他情報管理テーブル<T>(105)が搭
載され、ここで排他サービスマネージャ<SM>は、図
1(b)に示すように排他制御部(111)、他計算機
状態監視部(112)、及び障害発生時におけるエラー
処理部(113)より構成され、他計算機状態監視部
は、他計算機異常検知手段(114)を介して他計算機
の異常状態を検出する。一方、計算機2(102)、計
算機3(103)内には、各々排他サービスを受けるア
プリケーションプロセス1<AP1>(108)と、ア
プリケーションプロセス2<AP2>(109)及び、
これらを監視するためのプロセス監視モニター1<WP
1>(106)、監視モニター2<WP2>(107)
が搭載されている。ここで、プロセス監視モニター<W
P>は、図1(b)で示すようにプロセス状態監視部
(115)と、アプリケーションプロセス異常時のエラ
ー処理部(116)より構成され、プロセス状態監視部
は、プロセス異常検知手段(117)を介してプロセス
の障害を検出する。
【0010】次に動作について、正常系処理及び障害発
生時の異常系処理に分けて、それぞれ説明する。 A.正常系処理 正常処理動作について、図2のフローチャート及び図1
に基づいて説明する。 (1)アプリケーションプロセス1<AP1>(10
8)が共有リソースの排他要求を行なう場合には、回線
LAN(110)を介して排他サービスマネージャ<S
M>(104)に排他要求を送信(step121)す
る。 (2)排他サービスマネージャ<SM>(104)は、
排他要求を受信(step130)する。 (3)排他サービスマネージャの排他制御部(111)
は、排他要求か解除要求かを判別(step131)
し、排他要求であれば排他情報管理テーブル<T>(1
05)を検索(step132)し、要求のあった共有
リソースが排他可能かをチェック(step133)す
る。 (4)チェックの結果、排他可能であれば排他情報管理
テーブル<T>(105)に共有リソース情報、要求元
の計算機情報、要求元のプロセス情報等からなる排他情
報を登録(step134−1)しメッセージにOKを
設定(step134−2)する。排他不可能であれ
ば、メッセージにNGを設定(step136)する。 (5)step131において、排他解除要求であれ
ば、排他情報管理テーブル<T>(105)を検索(s
tep137)し、解除対象の排他情報を削除(ste
p138)し、メッセージに解除完了を設定(step
139)する。 (6)メッセージが設定されたら、アプリケーションプ
ロセス1<AP1>(108)に対し、メッセージを送
信(step135)する。 (7)アプリケーションプロセス1<AP1>(10
8)は、排他が成功したら、該アプリケーションプロセ
スに対応したエラー処理手段(116)をプロセス監視
モニター1<WP1>(106)に対して登録(ste
p122)する。 (8)プロセス監視モニター1<WP1>(106)
は、上記エラー処理手段の登録を受け付け(step1
26)て、登録を行なう(step127)。 (9)アプリケーションプロセス1<AP1>(10
8)は、登録が完了するとアプリケーション処理を行な
う(step123)。 (10)アプリケーションプロセスの処理が終了する
と、エラー処理手段(116)の登録削除をプロセス監
視モニター1<WP1>(106)に対して行なう(s
tep124)。 (11)プロセス監視モニター1<WP1>(106)
は、登録削除を受け付け(step128)て、エラー
処理手段の登録削除を行なう(step129)。 (12)アプリケーションプロセス1<AP1>(10
8)は、エラー処理手段の登録削除が終ると、排他サー
ビスマネージャ<SM>(104)に対し排他解除要求
を行なう(step125)。
【0011】B.障害発生時の処理 B.1 図2のアプリケーション処理実行中(step
123)において、アプリケーションプロセス<AP1
>(108)に障害が発生した場合の処理について、図
3(a)のフローチャート、及び図1に基づいて説明す
る。 (1)プロセス監視モニター1<WP1>(106)の
プロセス状態監視部(115)が、プロセス異常検知手
段(117)によりアプリケーションプロセス<AP1
>に障害が発生したことを検知(step140)し、
アプリケーションプロセスの障害発生時の回復処理の為
にエラー処理部(116)に対し、エラー処理要求を行
なう(step141)。 (2)アプリケーションプロセス障害発生時のエラー処
理部(116)は、エラー処理要求を受け付ける(st
ep143)と、エラー処理手段が登録されているかを
チェック(step144)し、登録されていればエラ
ー処理手段を実行する(step145)。 (3)エラー処理手段の実行が終ると、プロセス状態監
視部(115)に終了を通知(step146)する。 (4)プロセス状態監視部(115)は、アプリケーシ
ョンプロセスの障害発生時のエラー処理要求を、障害発
生時の処理内容を記述した排他サービスマネージャ<S
M>(104)のエラー処理部(113)に送信(st
ep142)する。 (5)排他サービスマネージャ<SM>(104)のエ
ラー処理部(113)は、これを受信(step14
7)し、排他情報管理テーブル<T>(105)を検索
(step148)し、対象アプリケーションプロセス
が保持している排他に対して、排他解除要求を排他制御
部(111)に対して行なう(step149)。 (6)全ての排他解除が行なわれたら、プロセス状態監
視部(115)に完了メッセージを送信(step15
0)する。
【0012】B.2 排他サービス中に、アプリケーシ
ョンプロセスが搭載された計算機2(102)又は計算
機3(103)が障害を起こした場合のエラー処理につ
いて、図3(b)のフローチャート、及び図1について
説明する。 (1)排他サービスマネージャ<SM>(104)の他
計算機状態監視部(112)が、他計算機異常検知手段
(114)により障害の発生を検知(step151)
し、障害検出時のエラー処理部(113)に対し、エラ
ー処理要求を行なう(step152)。 (2)排他サービスマネージャ<SM>(104)のエ
ラー処理部(113)は、他計算機障害検出時のエラー
処理要求を受け付け(step155)て、エラー処理
手段が登録されているかをチェック(step156)
し、処理手段が予め登録されていれば、エラー処理手段
を実行(step157)する。 (3)エラー処理手段の実行が終了すると、終了通知を
他計算機状態監視部(112)に対して行なう(ste
p158)。 (4)エラー処理要求(step152)が完了した
ら、排他情報管理テーブル<T>(105)を検索(s
tep153)し、対象計算機上のアプリケーションプ
ロセスが保持している排他要求に対して、排他解除要求
を排他制御部(111)に対して行なう(step15
4)。尚、step157で実行するエラー処理手段の
排他サービスマネージャ<SM>への登録は、多重計算
機システム運転開始時等の任意の時点で行なわれる。
【0013】ここでプロセス監視モニタ<WP>(10
6)のエラー処理部(116)と、排他サービスマネー
ジャ<SM>(104)のエラー処理部(113)に登
録されて実行されるエラー処理内容について詳しく説明
する。エラー処理部(116)に登録されて実行される
(例えばstep145)エラー処理手段の例として、
アプリケーションプロセス1<AP1>(108)が共
有ファイルをリソースとして排他を行ない、アプリケー
ション処理(step123)で共有ファイルの論理的
に関連する複数のレコード操作を行なっている途中で、
アプリケーションプロセス1<AP1>(108)が障
害を起こし、途中で処理が中断してしまいレコード間の
一貫性がとれなくなった場合に、アプリケーションのロ
グ情報によりレコードを操作する以前の状態に復元する
処理をエラー処理手段として登録することが考えられ
る。このようにして、エラー処理を行なわずに直ちに排
他解除を行なうとレコード間の一貫性が保てなくなって
しまうという不都合を回避することができる。エラー処
理部(113)に登録され実行される(例えば、ste
p157)エラー処理手段の例も、(step145)
で行なわれるエラー処理手段と基本的に同様であり、例
えばアプリケーションプロセス1<AP1>(108)
で前記と同様のアプリケーション処理が行なわれていた
場合に、アプリケーションプロセスが搭載されている計
算機2(102)で障害が発生した時は、アプリケーシ
ョンのログ情報によりレコードを操作する以前の状態に
復元する処理を行なった後に、アプリケーションプロセ
ス1<AP1>(108)を計算機3(103)上で再
起動させる処理をエラー処理手段として登録すること等
が考えられる。
【0014】実施例2.本発明における実施例2につい
て、図4〜図6に基づいて説明する。図4において、計
算機1(201)と計算機2(202)は回線(21
1)により結合された2重計算機システムである。計算
機1(201)内には、排他サービスマネージャ1<S
M1>(203)、排他情報管理テーブル1<T1>
(205)、プロセス監視モニター1<WP1>(20
7)、アプリケーションプロセス1<AP1>(20
9)が搭載されている。一方、計算機2(202)内に
は、排他サービスマネージャ2<SM2>(204)、
排他情報管理テーブル2<T2>(206)、プロセス
監視モニター2<WP2>(208)、アプリケーショ
ンプロセス2<AP2>(210)が搭載されている。
排他サービスマネージャ1<SM1>(203)、排他
サービスマネージャ2<SM2>(204)は、図1
(b)で示した排他サービスマネージャ<SM>(10
4)と同一の構成であり、プロセス監視モニター1<W
P1>(207)、プロセス監視モニター2<WP2>
(208)も、図1(b)のプロセス監視モニター1<
WP1>(106)と同一の構成である。
【0015】次に動作について、正常系処理及び障害発
生時の異常系処理に分けてそれぞれ説明する。尚、ここ
では計算機1(201)を主計算機、計算機2(20
2)を従計算機と仮定している。 A.正常系処理 A.1 まず、アプリケーションプロセスが主計算機
(201)上に搭載されている場合の動作について、図
5のフローチャート、及び図4について説明する。 (1)アプリケーションプロセス1<AP1>(20
9)が、共有リソースの排他を行なう場合には、排他サ
ービスマネージャ1<SM1>(203)の排他制御部
(111)に対して排他要求を出す(step22
0)。 (2)排他サービスマネージャ1<SM1>(203)
は、これを受け付け(step223)て、自機が主計
算機か従計算機かをチェック(step225)する。 (3)この場合は主計算機なので、次に排他要求か解除
要求かをチェックする(step226)。 (4)排他要求の場合には、自機内のテーブル(排他情
報管理テーブル1<T1>(205))を検索(ste
p227)し、排他可能かをチェックする(step2
28)。 (5)排他可能であれば、自機内のテーブル(排他情報
管理テーブル1<T1>(205))に排他情報を登録
(step232)し、次に自機内からの要求かをチェ
ック(step233)する。 (6)自機内からの要求であれば、排他サービスマネー
ジャ2<SM2>(204)の排他制御部(111)に
対して、排他登録要求を送信(step236)し、他
機からの要求であれば、単にメッセージにOKを設定
(step234)する。 (7)step228において、排他不可能であればメ
ッセージにNGを設定(step229)する。 (8)一方、step226において、排他解除要求の
場合には、自機内のテーブル(排他情報管理テーブル1
<T1>(205))を検索(step237)し、排
他情報を削除(step238)し、自機内からの要求
かをチェック(step239)する。 (9)自機内からの要求であれば、排他サービスマネー
ジャ2<SM2>(204)の排他制御部(111)に
対して削除要求を送信(step241)し、他機から
の要求であれば、単にメッセージに解除完了を設定(s
tep240)する。 (10)メッセージの設定が行なわれたら自機内からの
要求かをチェック(step230)し、自機内からの
要求であればアプリケーションプロセス1<AP1>
(209)に対しメッセージを通知(step231)
し、他機からの要求であれば、排他サービスマネージャ
2<SM2>(204)に対し、メッセージを送信(s
tep235)する。 (11)アプリケーションプロセス1<AP1>(20
9)は排他要求が成功したら、アプリケーション処理を
実行(step221)し、一連のアプリケーション処
理終了後、最後に排他解除要求(step222)を行
なう。
【0016】A.1 次にアプリケーションプロセス
が、従計算機(202)上に搭載されている場合の動作
について、図6のフローチャート、及び図4について説
明する。 (1)アプリケーションプロセス2<AP2>(21
0)が、共有リソースの排他を行なう場合には、排他サ
ービスマネージャ2<SM2>(204)の排他制御部
(111)に対して排他要求を出す(step24
2)。 (2)排他サービスマネージャ2<SM2>(204)
は、これを受け付け(step245)て、自機が主計
算機か、従計算機かをチェック(step247)す
る。 (3)この場合は従計算機なので、登録又は削除要求か
をチェック(step248)し、登録又は削除要求の
場合、すなわち排他サービスマネージャ1<SM1>
(203)からの要求時には(これは、図5のstep
241、又はstep236に対する要求であり、st
ep246経由で受信されたものに相当する。)、登録
要求か削除要求かをチェック(step264)する。 (4)登録要求であれば、自機内のテーブル(排他情報
管理テーブル2<T2>(206))に、排他情報を登
録(step265)し、削除要求であれば、自機内の
テーブル(排他情報管理テーブル2<T2>(20
6))から排他情報を削除(step266)する。 (5)step248において、排他又は解除要求の場
合(これは、従計算機上のアプリケーションプロセスか
らの要求でありstep245で受付けたものに相当す
る。)には、排他要求か削除要求かをチェック(ste
p249)し、排他要求であれば、自機内のテーブル
(排他情報管理テーブル2<T2>(206))を検索
(step250)し、排他可能かどうかをチェック
(step251)する。 (6)排他可能であれば、自機内のテーブル(排他情報
管理テーブル2<T2>(206))に排他情報の仮登
録を行ない(step254)、主計算機上の排他サー
ビスマネージャ1<SM1>(203)の排他制御部
(111)に対して、排他要求を送信(step25
5)する。(上記主サービスマネージャ<SM1>に対
する要求は、図5のstep224で受信され、既に
A.1で説明したようにして処理される。) (7)排他要求送信に対する返答メッセージをチェック
(step256)し、OKであれば、自機内のテーブ
ル(排他情報管理テーブル2<T2>(206))に仮
登録していた排他情報を本登録(step258)し、
メッセージにOKを設定(step259)する。 (8)NGであれば、自機内のテーブル(排他情報テー
ブル2<T2>(206))に仮登録していた排他情報
を削除(step257)し、メッセージにNGを設定
(step252)する。 (9)step251で、自機内のテーブル(排他情報
管理テーブル2<T2>(206))を検索した時点
で、排他不可能であればメッセージにNGを設定(st
ep252)する。 (10)step249で解除要求であれば、主計算機
上の排他サービスマネージャ1<SM1>(203)の
排他制御部(111)に対して、排他解除要求を送信
(step260)し、(該要求は、図5のstep2
24で受信される。)次に自機内のテーブル(排他情報
管理テーブル2<T2>(206))を検索(step
261)し、排他情報を削除(step262)し、メ
ッセージに”削除”を設定(step263)する。 (11)メッセージが設定されたら、アプリケーション
プロセス2<AP2>(210)に対してメッセージを
通知(step253)する。 (12)アプリケーションプロセス2<AP2>(21
0)は、排他要求が成功した場合にアプリケーション処
理を実行(step243)し、アプリケーションの一
連の処理が終了後、最後に排他解除要求を出す(ste
p244)。
【0017】B.障害発生時の動作 アプリケーションプロセスに対するサービス実行中に、
計算機1(201)に障害が発生した場合のエラー処理
について図7のフローチャート、及び図4について説明
する。 (1)排他サービスマネージャ2<SM2>(204)
の他計算機状態監視部(112)が、他計算機異常検知
手段(114)により異常を検知(step266)
し、排他サービスマネージャ2<SM2>(204)の
障害発生時のエラー処理部(113)に対して、エラー
処理要求を行なう(step267)。 (2)エラー処理部(113)は、エラー処理要求を受
け付け(step274)ると、エラー処理手段が登録
されているかをチェック(step275)し、エラー
処理手段が登録されていれば、エラー処理手段を実行
(step276)し、エラー処理の終了を通知(st
ep277)する。 (3)排他サービスマネージャ2<SM2>(204)
の他計算機状態監視部(112)は、エラー処理終了の
通知を受けたら自機が主計算機か従計算機かをチェック
(step268)し、この場合には従計算機であるの
で、自機内のテーブル(排他情報管理テーブル2<T2
>(206))を検索(step271)し、仮登録の
排他情報を、本登録に変更(step272)し、自機
の設定を主計算機に変更(step273)する。 (4)次に、自機内のテーブル(排他情報管理テーブル
2<T2>(206))を検索(step269)し、
相手側計算機、即ちこの場合は計算機1(201)が保
持している全ての排他に関して、排他サービスマネージ
ャ2<SM2>(204)の排他制御部(111)に対
して、排他解除要求を出す(step270)。
【0018】上記、障害発生時における障害回復処理の
動作説明としては、主計算機たる計算機1(201)に
障害が発生したと仮定して説明をしてきたが、計算機2
(202)に障害が発生した場合も、図7のフローチャ
ートで対応が可能である。また、正常処理動作の実施例
における排他要求処理(図5のstep220、若しく
は、図6のstep242)の後で、エラー処理手段の
登録を実施すれば、実施例1で説明した如く同様の手順
によってアプリケーションプロセスの障害発生に対して
も対処することが可能となる。このようにして、排他情
報管理テーブル1<T1>(205)と排他情報管理テ
ーブル2<T2>(206)にシステム全体の排他情報
を保持するので、どちらの計算機に障害が発生しても排
他情報が失われることなく、又、排他要求情報も失われ
ることなくサービスを続行できる。
【0019】実施例3.本発明の実施例3について、図
8〜図11について説明する。図8(a)において、計
算機1(301)、計算機2(302)、計算機3(3
03)、計算機4(304)、計算機5(305)は回
線LAN(315)によって結合された多重計算機シス
テムであり、計算機1(301)は、排他サービスマネ
ージャ1<SM1>(306)及び排他情報管理テーブ
ル1<T1>(308)より構成されている。一方、計
算機2(302)は、排他サービスマネージャ2<SM
2>(307)と排他情報管理テーブル2<T2>(3
09)より構成されており、上記排他サービスマネージ
ャは図8(b)に示すように排他制御部(316)とエ
ラー処理部(317)より構成されている。計算機3
(303)内には図8(b)に示すように排他要求キュ
ー(321)、排他要求処理部(318)、他計算機状
態監視部(319)、異常時のエラー処理部(320)
により構成された排他要求マネージャ<RM>(31
0)が搭載されている。計算機4(304)、及び計算
機5(305)内には、アプリケーションプロセス1<
AP1>(313)及びアプリケーションプロセス2<
AP2>(314)と、プロセス監視モニター1<WP
1>(311)、及びプロセス監視モニター2<WP2
>(312)がある。ここでプロセス監視モニター1<
WP1>(311)と、プロセス監視モニター2<WP
2>(312)は、図1(b)のプロセス監視モニター
1<WP1>(106)と同じ構成である。
【0020】前記のように構成された多重計算機システ
ムにおいて、詳細動作の説明に入る前に、まづ図9に基
づいて実施例3の概念について説明する。アプリケーシ
ョンプロセス1<AP1>(313)が共有リソースの
排他を行なう際には、排他要求マネージャ<RM>(3
10)の排他要求処理部(318)に排他要求を送信し
(601)、排他要求処理部(318)は要求をキュー
に保存して、排他サービスマネージャ1<SM1>(3
06)と排他サービスマネージャ2<SM2>(30
7)の両方に排他要求を送信する(602,603)。
排他サービスマネージャ1<SM1>(306)と排他
サービスマネージャ2<SM2>(307)は、各々排
他制御処理を行なった後に、排他要求マネージャ<RM
>(310)の排他要求処理部(318)に回答を返信
する(604,605)。この際、排他要求マネージャ
<RM>は、主側(排他サービスマネージャ1<SM1
>(306))から返信を受けた時点で、アプリケーシ
ョンプロセス1<AP1>(313)に回答を返信する
(606)。尚、排他要求処理部(318)における要
求をキューに入れる目的は、排他サービスマネージャ1
<SM1>(306)と排他サービスマネージャ2<S
M2>(307)の、どちらから返信が来たかをチェッ
クすることにより、排他サービスマネージャ<SM>の
搭載されている計算機1(301)、又は計算機2(3
02)に障害が発生した際に、アプリケーションプロセ
スに対して回答を送信したか否かをチェックし、適切な
エラー処理を行なうためである。その概念を図9(b)
で示す。図に示すように、排他サービスマネージャ<S
M>が搭載された計算機が障害を起こした場合のキュー
の状態には、S(1)〜S(6)のいずれかが対応して
いる。ここで、状態がS(3)、及びS(6)は、排他
要求マネージャ<RM>が主計算機、従計算機どちらの
排他サービスマネージャ<SM>からも回答を受信して
いないことを示す。状態S(1)の場合は、主側排他サ
ービスマネージャ<SM>からは、もはや回答が来るこ
とがないので従側排他サービスマネージャの情報を元に
アプリケーションプロセスに回答を送信する。状態S
(2)の場合は、従側排他サービスマネージャ<SM>
からは回答が来てないが、主側排他サービスマネージャ
<SM>からは回答を既に受けとっている。すなわちア
プリケーションプロセスへの回答は送信済みなので、こ
れまでの従計算機を主計算機に切り換えた後で(新)主
計算機からの回答受信によって、アプリケーションプロ
セスへ再度回答を送信するのを防止するため、“回答送
信済み”のマークを付ける。状態S(4)は、既に回答
を受信済みの従側排他サービスマネージャ<SM>に障
害が発生し、主側排他サービスマネージャ<SM>から
の回答を待っている状態である。状態S(5)は、既に
主側排他サービスマネージャ<SM>からは回答を受信
してアプリケーションプロセスへ回答を送信済みであ
り、従側排他サービスマネージャ<SM>からは、もは
や回答を受信することはないので、キューから削除す
る。以上が実施例3の概念説明である。
【0021】次に動作について、正常系処理及び障害発
生時の異常系処理に分けてそれぞれ説明する。尚、ここ
では、図8のように構成された多重計算機システムにお
いて、排他サービスマネージャ1<SM1>(306)
を主、排他サービスマネージャ2<SM2>(307)
を従の排他サービスマネージャと仮定している。 A.正常系処理 図10のフローチャート、及び図8について説明する。 (1)アプリケーションプロセス1<AP1>(31
3)が、共有リソースの排他を行なう際には、回線LA
N(315)を介して排他要求マネージャ<RM>(3
10)の排他要求処理部(318)に排他要求を送信
(step330)する。 (2)排他要求処理部(318)は、排他要求を受信
(step333)すると排他要求キュー(321)に
要求キュー登録(step334)し、主側排他サービ
スマネージャ1<SM1>(306)と、従側排他サー
ビスマネージャ2<SM2>(307)の両方共に要求
を送信(step335)する。 (3)排他サービスマネージャ1<SM1>(306)
の排他制御部(316)は、要求を受信(step34
7)すると、要求が、排他か解除かをチェック(ste
p348)する。 (4)排他要求の場合には、自機内のテーブル(排他情
報管理テーブル1<T1>(308))を検索(ste
p349)し、排他可能かチェック(step350)
する。 (5)排他可能であれば、自機内のテーブル(排他情報
管理テーブル1<T1>(308))に排他情報を登録
(step351)し、メッセージにOKを設定(st
ep352)する。排他が不可能であれば、メッセージ
にNGを設定(step354)する。 (6)step348で排他解除要求の場合には、自機
内のテーブル(排他情報管理テーブル<T1>(30
8)を検索(step355)し、対象の排他情報を削
除(step356)し、メッセージに、解除完了を設
定(step357)する。 (7)メッセージが設定されたら、排他要求マネージャ
<RM>(310)の排他要求処理部(318)にメッ
セージを送信(step353)する。従排他サービス
マネージャ2<SM2>(307)も、同様の動作をす
る。 (8)排他要求マネージャ<RM>(310)の排他要
求処理部(318)は、回答メッセージを受信(ste
p336)したら、主従、どちらの排他サービスマネー
ジャ<SM>からの回答かをチェック(step33
7)する。 (9)主側排他サービスマネージャ<SM1>(30
6)からの回答メッセージであれば、排他要求キュー
(321)上の回答に対する要求情報を検索(step
338)し、従側から回答受信済みのマークが記入され
ているかをチェック(step339)し、回答受信が
記入されていれば、その要求情報をキューから削除(s
tep340)し、記入されていなければ、主から回答
受信済みのマークを記入(step342)した後に、
回答送信済みかをチェック(step341−1)し、
未送信であれば、アプリケーションプロセス1<AP1
>(313)に対して回答を送信し(step341−
3)、回答済みであれば何もしない(step341−
2)。 (10)回答が主側からでなければ、排他要求キュー
(321)上の回答に対する要求情報を検索(step
343)し、主側から回答受信済みのマークが記入され
ているかをチェック(step344)し、記入されて
いれば、その要求情報をキューから削除(step34
5)し、記入されていなければ、従側から回答受信済み
のマークを記入(step346)する。 (11)アプリケーションプロセス1<AP1>(31
3)は、排他が成功すると一連のアプリケーション処理
を実行(step331)した後、排他要求マネージャ
<RM>(310)の排他要求処理部(318)に、排
他解除要求を出す(step332)。
【0022】B.障害発生時の動作 アプリケーションプロセスに対するサービス実行中に、
計算機1(301)、計算機2(302)、計算機4
(304)、計算機5(305)に障害が発生した場合
の処理について、図11のフローチャート、及び図8に
ついて説明する。 (1)排他要求マネージャ<RM>(310)の他計算
機状態監視部(319)が、他計算機異常検知手段(2
06)により障害発生を検知(step360)し、障
害発生時のエラー処理部(320)に対し、エラー処理
要求(step361)を行なう。 (2)エラー処理部(320)は、エラー処理要求を受
け付け(step395)ると、障害発生時におけるエ
ラー処理手段が登録されているか否かををチェック(s
tep396)し、処理手段が登録されていれば、エラ
ー処理手段を実行(step397)し、他計算機状態
監視部(319)に対し、終了通知(step398)
を行なう。 (3)排他要求マネージャ<RM>(310)の他計算
機状態監視部(319)は、エラー処理要求が終了した
ら、障害を起こしたのが排他サービスマネージャ1<S
M1>(306)、又は排他サービスマネージャ2<S
M2>(307)が搭載されているサービス計算機か否
かをチェック(step362)する。 (4)サービス計算機であれば、異常を起こしたのが主
側、従側計算機のいずれかをチェック(step36
4)する。主側計算機が異常を起こしたのであれば、排
他要求キュー(321)を検索(step368)し、
全ての要求キューに対して従側排他サービスマネージャ
<SM2>から回答受信済みかをチェック(step3
69)する。 (5)従側排他サービスマネージャ<SM2>からの回
答受信済みのマークが記入されていれば、主側排他サー
ビスマネージャ<SM1>からは、もはや回答を受信す
ることはないので、その情報からアプリケーションプロ
セスに対して要求の回答を送信(step373)し、
排他要求キュー(321)よりキューを削除(step
374)する。従側排他サービスマネージャ<SM2>
から回答受信済みでなければ、主側から回答受信済みか
をチェック(step370)し、主側から回答受信済
みであれば、アプリケーションプロセスに対しては既に
回答送信済みなので回答送信済みのマークを記入(st
ep372)し、従計算機を主計算機に設定を変更(s
tep371)する。(ここで、主側、従側いずれの計
算機からも未だ回答を受信していなかった場合について
は、step371でそれまでの従計算機がここで主計
算機に設定変更されたので、この主計算機(設定変更後
の)から、いずれ回答が来て、アプリケーションプロセ
スに回答が送信されるというプロセスをとる。) (6)step364で従側計算機が障害を起こしたの
であれば、排他要求キュー(321)を検索(step
365)し、主側排他サービスマネージャ<SM1>か
ら回答受信済みかをチェック(step366)し、回
答受信済みであれば、既にアプリケーションプロセスに
対しては回答送信済みであるので排他要求キュー(32
1)よりその要求キューを削除する(step367)
だけである。 (7)次いで、サービス計算機が障害を起こしたのでな
ければ(アプリケーションプロセス搭載機に障害発
生)、排他サービスマネージャ1<SM1>(30
6)、及び排他サービスマネージャ2<SM2>(30
7)の両方のエラー処理部(317)に対して、障害を
起こした計算機に関する排他を全て解除するための要求
を送信(step363)する。サービス計算機が異常
を起こした場合においても、排他サービスマネージャ1
<SM1>(306)、又は排他サービスマネージャ2
<SM2>(307)の健在な方のエラー処理部(31
7)に対して障害を起こした計算機に関する排他を全て
解除する要求を送信(step363)する。 (8)排他サービスマネージャ1<SM1>(30
6)、又は排他サービスマネージャ2<SM2>(30
7)のエラー処理部(317)は要求を受信(step
375)し、排他情報管理テーブル1<T1>(30
8)又は排他情報管理テーブル2<T2>(309)を
検索(step376)し、障害を起こした計算機上の
アプリケーションが保持する排他の解除要求を、排他制
御部(316)に対して行なう(step377)。上
記の例では、排他サービスマネージャを主/従に分けて
主側を優先する例になっているが、排他サービスマネー
ジャを3重化し、多数決方式で排他の可否を決定するこ
とも可能である。このようにして排他サービスを行なう
計算機のどれかに異常が発生しても排他情報、及び排他
要求情報は失われることなくサービスが続行できる。
【0023】実施例4.本発明の実施例4について、図
12〜図16について説明する。図12において、計算
機1(401)、計算機2(402)、計算機3(40
3)、計算機4(404)、計算機5(405)、計算
機6(406)は、回線LAN(417)により結合さ
れた多重計算機システムである。計算機1(401)、
及び計算機2(402)内には排他サービスマネージャ
1<SM1>(407)及び排他サービスマネージャ2
<SM2>(408)と、排他情報管理テーブル1<T
1>(409)及び排他情報管理テーブル2<T2>
(410)が搭載されている。計算機3(403)及び
計算機6(406)内には、排他要求マネージャ1<R
M1>(411)及び排他要求マネージャ2<RM2>
(412)が搭載されている。計算機4(404)及び
計算機5(405)内には、プロセス監視モニター1<
WP1>(413)及びプロセス監視モニター2<WP
2>(414)と、アプリケーションプロセス1<AP
1>(415)及びアプリケーションプロセス2<AP
2>(416)が存在している。ここで、排他サービス
マネージャ1<SM1>(407)及び排他サービスマ
ネージャ2<SM2>(408)は、図8(b)の排他
サービスマネージャ1<SM1>(306)と同様の構
成であり、排他要求マネージャ1<RM1>(411)
及び排他要求マネージャ2<RM2>(412)も同じ
く図8(b)の排他要求マネージャ<RM>(310)
と同様の構成であり、プロセス監視モニター1<WP1
>(413)及びプロセス監視モニター2<WP2>
(414)は、図1(b)のプロセス監視モニター1<
WP1>(106)と同様の構成である。
【0024】以上のように構成された多重計算機システ
ムにおいて、詳細動作の説明に入る前に、まづ図13に
基づいて実施例4の概念について説明する。尚、ここで
は、<RM1>(411)を主排他要求マネージャ、<
RM2>(412)を従排他要求マネージャとし、また
<SM1>(407)を主排他サービスマネージャ、<
SM2>(408)を従排他サービスマネージャとして
説明を進める。アプリケーションプロセス1<AP1>
(415)が、共有リソースの排他を行なう際には、排
他要求マネージャ1<RM1>(411)及び排他要求
マネージャ2<RM2>(412)の双方に排他要求を
送信する(701,702)。排他要求マネージャ1<
RM1>(411)及び排他要求マネージャ2<RM2
>(412)は、各々要求をキューに保存する。排他要
求マネージャ1<RM1>(411)は、排他サービス
マネージャ1<SM1>(407)及び排他サービスマ
ネージャ2<SM2>(408)に要求を送信する(7
03,704)。排他サービスマネージャ1<SM1>
(407)と排他サービスマネージャ2<SM2>(4
08)は、各々排他制御処理を行なった後に、排他要求
マネージャ1<RM1>(411)に回答を送信する
(705,706)。排他要求マネージャ1<RM1>
(411)は、その回答をアプリケーションプロセス1
<AP1>(415)に送信する(707)と共に排他
要求マネージャ2<RM2>(412)に転送する。
(708)尚、主側排他要求マネージャ<RM>の存在
する計算機に障害が発生した場合には、従側排他要求マ
ネージャ<RM>の保持するキュー情報と排他サービス
マネージャ<SM>が最後に処理した要求(LR)を元
にエラー処理を行なう。その概念を図19(b)で示
す。主側<RM>が障害を起こした時の従側<RM>の
キューの状態と、主側<SM>が最後に処理した要求L
R1と、従側<SM>が最後に処理した要求LR2の組
合せは状態S(1)〜S(6)の様になる。図中の○は
主側、従側それぞれの排他サービスマネージャ<SM>
からの回答受信済みのマークを、×は回答未受信のマー
クを、また?印は排他サービスマネージャ<SM>側か
らは回答を送出しているにも拘らず、従側排他要求マネ
ージャ<RM>側では、その受信を確認していないこと
を示し、破線で囲まれた部分(710)は、既に削除さ
れたキューを示している。S(1)は、主側<SM>か
らの回答受信が、従側<SM>からの回答受信よりも先
行している状態で主側<RM>に障害が発生し、この為
に、主側<SM>、及び従側<SM>から主側<RM>
へ既に送出された回答が途中で消失したことを示してい
る。S(2)は、S(1)とは逆のケースで、従側<S
M>からの回答受信が先行している状態で、主側<RM
>に障害が発生した為に、既に主従<SM>から主側<
RM>へ送出されていた回答が途中で消失し、従側<R
M>に到着しなかったことを示す。S(3)は、主側<
SM>、及び従側<RM>からの回答受信が同じペース
で進行し、主側<SM>、従側<SM>が主側<RM>
に回答を送出した後で、主側<RM>に障害が発生した
ため、従側<RM>に届かなかった事を示している。S
(6)は、主側、及び従側<SM>からの回答が両方と
も従側<RM>へ到着して、キューから削除されたこと
を示している。S(4)は、主側<SM>の処理が先行
しており、従側<SM>処理終了相当分までの回答は、
従側<RM>へ到着し、キューから削除されたが、主側
<SM>の先行処理分の回答が主側<RM>障害のた
め、途中で消失したことを示す。S(5)は、S(4)
とは逆のケースで、従側<SM>の先行処理分の回答が
途中で消失したことを示す。従って、考え方としては、
LR1の情報をアプリケーションプロセスに回答として
送信し、LR2の情報は従側<SM>から回答受信済み
マーク記入に使用して、必要ならキューを削除する。L
Rより後方のキュー(709)は、主側<RM>が排他
サービスマネージャ<SM>に要求を出せなかった部分
なので、<SM>に要求を送信するのに使用する。この
ようにして要求と回答が消失するのを防いでいる。
【0025】次に動作について、正常系処理及び障害発
生時の異常系処理に分けてそれぞれ説明する。尚、ここ
では図のように構成された多重計算機システムにおい
て、排他サービスマネージャ1<SM1>(407)を
排他サービスマネージャの主側、排他サービスマネージ
ャ2<SM2>(408)を排他サービスマネージャの
従側とし、排他要求マネージャ1<RM1>(411)
を排他要求マネージャの主側、排他要求マネージャ2<
RM2>(412)を排他要求マネージャの従側と仮定
している。 A.正常系処理 図14のフローチャート、及び図12について説明す
る。 (1)アプリケーションプロセス1<AP1>(41
5)が共有リソースの排他を行なう際には、回線LAN
(417)を介して排他要求マネージャ1<RM1>
(411)、及び排他要求マネージャ2<RM2>(4
12)の双方に排他要求を送信(step421)す
る。 (2)排他要求マネージャ1<RM1>(411)の排
他要求処理部(318)は、要求を受信(step42
4)し、自機が主側か否かをチェック(step42
5)する。 (3)主側でなければ(すなわち従側であれば)、排他
要求キュー(321)に要求を登録(step426)
する。主側であれば、排他要求キュー(321)に要求
を登録(step427)し、排他サービスマネージャ
1<SM1>(407)、及び排他サービスマネージャ
2<SM2>(408)の両方に要求を送信(step
428)する。 (4)排他サービスマネージャ1<SM1>(407)
の排他制御部(316)は、要求を受信(step43
9)し、その要求をLR(ラスト・リクエスト)として
記憶(step440)する。 (5)次に要求が、排他か解除かをチェック(step
441)し、排他要求であれば、排他情報管理テーブル
1<T1>(409)を検索(step442)し、排
他可能かどうかをチェック(step443)し、排他
可能であれば、排他情報管理テーブル1<T1>(40
9)に排他情報を登録(step444)し、メッセー
ジにOKを設定(step445)する。step44
3で、排他不可能であればメッセージにNGを設定(s
tep447)する。 (6)step441で解除要求であれば、排他情報管
理テーブル1<T1>(409)を検索(step44
8)し、対象の排他情報を削除(step449)し、
メッセージに、解除完了を設定(step450)す
る。 (7)メッセージが設定されたら、メッセージ内容をL
Rに追記(step446−1)し、主側の排他要求マ
ネージャである排他要求マネージャ1<RM1>(41
1)に対してのみメッセージを送信する(step44
6−2)。 (8)排他要求マネージャ1<RM1>(411)は回
答メッセージを受信(step429)すると、排他サ
ービスマネージャの主側からの回答かをチェック(st
ep430)する。 (9)主側からの回答であれば、排他要求キュー(32
1)を検索(step431)し、従側からの回答受信
済みのマークが記入されているかをチェック(step
432)し、回答受信済みであれば排他要求キュー(3
21)から要求キューを削除(step433)する。
従側から未回答であれば、主側からの回答受信済みのマ
ークを記入(step437)する。 (10)自機が、排他要求マネージャの主側であるかを
チェック(step434)し、従側であればなにもせ
ず(step438)に、主側であれば、回答送信済み
かをチェック(step435−1)し、未送信であれ
ば、回答をアプリケーションプロセス1<AP1>(4
15)に送信(step435−2)する。 (11)従側の排他要求マネージャに回答を転送(st
ep436)する。 (12)step430で回答メッセージが、従側の排
他サービスマネージャからのものであれば、排他要求キ
ュー(321)を検索(step451)し、主側から
の回答受信済みかをチェック(step452)し、主
側からの回答受信済みであれば、排他要求キュー(32
1)より対象要求キューを削除(step453)し、
主側から未回答であれば、従側から回答受信済みのマー
クを記入(step456)する。 (13)自機が、主側か従側かをチェック(step4
54)し、主側であれば、回答を従側の排他要求マネー
ジャに回答を転送(step455)し、自機が従側で
あれば何もしない(step457)。 (14)排他要求が成功すると、アプリケーションプロ
セス1<AP1>(415)は、一連のアプリケーショ
ン処理を実行(step422)した後、排他解除要求
を出す(step423)。
【0026】B.障害発生時の動作 アプリケーションプロセスに対するサービス実行中に障
害が発生した計算機を主側排他要求マネージャ1<RM
1>(411)が検知した場合を図15について、又従
側排他要求マネージャ2<RM2>(412)が検知し
た場合を図16について各々説明する。 B.1 主側排他要求マネージャが検知した場合 (1)サービス中に計算機に異常が発生し、排他要求マ
ネージャ1<RM1>(411)の他計算機異常検知手
段(114)により他計算機状態監視部(319)が、
障害を検知(step458)すると、自機が主側か否
かをチェック(step459)し、主側であれば、異
常時のエラー処理部(320)にエラー処理要求を送る
(step460)。異常時のエラー処理部(320)
は、実施例3の(step375)から(step37
8)と同じ手順で処理を行なう。 (2)エラー処理が終ると、障害を起こした計算機が排
他サービスマネージャ1<SM1>(407)か、排他
サービスマネージャ2<SM2>(408)か、排他要
求マネージャ1<RM1>(411)か、あるいは排他
要求マネージャ2<RM2>(412)が搭載されたサ
ービス計算機であるか否かをチェック(step46
1)し、サービス計算機であれば、排他サービスマネー
ジャの存在する計算機か、排他要求マネージャの存在す
る計算機かをチェック(step464)する。 (3)障害発生計算機が、排他サービスマネージャの存
在する計算機であれば、主側の排他サービスマネージャ
が搭載された計算機かをチェック(step465)
し、主側<SM>に障害が発生したのであれば、排他要
求キュー(321)を検索(step469)し、従側
<SM>から回答受信済みかをチェック(step47
0)し、従側から回答受信済みであれば(主側<SM>
からの回答待ちの状態で、主側<SM>に障害が発生し
てしまった状態なので)、アプリケーションプロセスに
対し回答を送信(step474)して、排他要求キュ
ー(321)より対象要求キューを削除する(step
475)。 (4)step470において、従側<SM>から未回
答であれば、主側<SM>から回答受信済みかをチェッ
ク(step471)し、主側<SM>から回答受信済
みであれば、(既にアプリケーションプロセスには回答
を送信済みであり、現時点で従側<SM>から回答が届
いていないという事は、この後のstep472で従側
<SM>を”主”に変更する。すると、<RM>の排他
要求処理部は旧の従側<SM>からの回答を、主<SM
>からの回答として受信することとなり、再びアプリケ
ーションプロセスに回答を送信することになるので、こ
れを抑止する為に)回答送信済みマークを記入(ste
p473)する。主側<SM>から未回答であった場合
には、なにもせずに排他サービスマネージャの従側の設
定を主側に変更する(step472)。(この場合に
は、<RM>の排他要求処理部は、設定変更された新主
側<SM>から回答を受信することになる。) (5)step465で、障害を起こしたのが従側の排
他サービスマネージャであれば、排他要求キュー(32
1)を検索(step466)し、主側<SM>から回
答送信済みであれば(単に従側<SM>からの回答待ち
の状態であったので)その要求キューを排他要求キュー
(321)より削除する(step468)。(主側<
SM>からの回答を未受信の場合は、<RM>排他要求
処理部が、やがてこれを受信するので、ここではNOP
でよい。) (6)step461でサービス計算機以外(アプリケ
ーションプロセス搭載機)に障害が発生したのであれ
ば、排他サービスマネージャ1<SM1>(407)、
及び排他サービスマネージャ2<SM2>(408)の
エラー処理部(317)に対し、異常を起こした計算機
内のアプリケーションが保持している排他を全て解除す
るように要求する(step462)。排他サービスマ
ネージャ1<SM1>(407)、及び排他サービスマ
ネージャ2<SM2>(408)のエラー処理部(31
7)は、これを実施例3の(step375)から(s
tep377)と同様の手順で処理する。
【0027】B.2 従側排他要求マネージャが検知し
た場合 (1)排他要求マネージャ2<RM2>(412)の他
計算機異常検知手段(114)により他計算機状態監視
部(319)が、障害を検知(step458)する
と、自機が従側なので、まず、排他要求マネージャの主
側に障害が発生したのかをチェック(step800)
する。 (2)排他要求マネージャの主側が障害を起こしたので
なければ、何もしない(step801)。(これは主
側の排他要求マネージャが、同様に障害を検知し処理を
行なう為である。) (3)排他要求マネージャの主側に障害が発生したので
あれば、障害発生時の処理を記述したエラー処理部(3
20)に対しエラー処理要求を行なう(step80
2)。 (4)エラー処理が終了すると、排他サービスマネージ
ャ1<SM1>(407)の排他制御部(316)に対
して、最後に処理した要求の情報を送るように問い合わ
せを送信(step803)する。 (5)問い合わせを受信(step815)した排他制
御部(316)は、(step440)で記憶したLR
を返信(step816)する。 (6)LRを受けた排他要求マネージャ2<RM2>
(412)は、これをLR1に入れる(step80
3)。 (7)次に排他サービスマネージャ2<SM2>(40
8)の排他制御部(316)に対して、最後に処理した
要求の情報を送るように問い合わせを送信(step8
04)し、(step815,816)と同様の手順で
LRを得ると、これをLR2に入れる(step80
4)。 (8)従側<RM>上の要求キューを検索し、LR1に
対応するキューがあるかをチェック(step805)
する。 (9)LR1に対応したキューがあれば、次にLR2に
対応するキューがあるかをチェック(step806)
する。LR1、LR2に対応するキューが両方とも存在
していた場合(図13(b)のS(1)、S(2)、S
(3)が相当)には、次にLR1がLR2よりキューの
後方にあるかをチェック(step807)する。 (10)LR1がLR2より後方にあれば、(この状態
は図13(b)のS(1)に対応し、主側<SM>から
の受信が先行していて、アプリケーションプロセスに対
しては回答送信済みの状態であり、従側<SM>も既に
回答送信はしていたが、従側<RM>に到着しなかった
状況に相当するので)まずLR2に対応するキューを削
除(step808)する。 (11)次に、LR1に対応するキューが主側<SM>
から回答受信済みであるかをチェック(step80
9)し、回答が確認できなければ(?印の状態で途中で
回答が消失した場合に相当。)LR1の情報を元に、ア
プリケーションプロセスに対して回答を送信(step
810)し、LR1に対応するキューに、主側回答受信
済みのマークを記入(step811)する。そして、
LR1の一つ後ろのキューを、M(709)とする。
(step812)M(709)に相当するキュー内容
は、主側<RM>が排他サービスマネージャ<SM>に
対して、要求を出せなかったものである。 (12)step807でLR1がLR2より後方でな
ければ、(図13(b)のS(2)、S(3)が相当)
主側<SM>からの回答が途中で消失しているので、ま
ずLR1の情報を元にアプリケーションプロセスに回答
を送信(step817)し、次にLR1に対応するキ
ューを削除(step818)する。 (13)次に、LR2に対応するキューに、従側回答受
信済みのマークを記入(step819)し、(図13
(b)のS(2)、S(5)が対応)LR2の一つ後ろ
のキューを、M(709)とする(step820)。 (14)step805で、LR1に対応するキューが
なければ(図13(b)のS(5)、S(6)に相
当)、LR2に対応するキューがあるかをチェック(s
tep821)し、対応するキューがあれば(図13
(b)のS(5)に相当)、step819に処理を移
し、対応するキューが存在しなければ(図13(b)の
S(6)に相当)、先頭のキューをM(709)とする
(step822)。 (15)M(709)が設定されたら、Mを含めて以降
のキューに関して排他サービスマネージャ1<SM1>
(407)と、排他サービスマネージャ2<SM2>
(408)にキューの要求を送信(step813)す
る。 (16)最後に自機の設定を、排他要求マネージャの主
側に変更する(step814)。このようにして、排
他サービスを行なう計算機のどれかに異常が発生しても
排他情報、及び排他要求情報が失われることなくサービ
スを続行することができる。
【0028】
【発明の効果】この発明によれば、以上説明したように
構成されているので、以下に示すような効果を奏する。
アプリケーションプロセスの処理内容に対応したエラー
処理手続きを登録し、アプリケーションプロセスでの障
害発生時において前記エラー処理手続きを実行するよう
にしたので、アプリケーションプロセスの実行状況に則
したきめの細いエラー回復処理が可能となり、排他制御
サービスを滞らせることなく続行できるという効果があ
る。また、他計算機状態監視部を設けて、排他サービス
を要求するアプリケーションプロセスが搭載された計算
機の障害発生を検知し、該計算機障害発生時におけるエ
ラー処理手続きを登録し、実行するようにしたので、ネ
ットワークを構成している計算機全体に係る障害発生に
対してもエラー回復処理が可能となり、システム全体と
しての一貫性維持を計ることができるという効果があ
る。さらに、ネットワークが2台の計算機から構成され
た対向システムにおいては排他サービスマネージャと、
プロセス監視モニタを双方の計算機に搭載し、一方を主
計算機、他方を従計算機として構成したので、システム
動作中に、主側、従側のどちらの計算機に障害が発生し
ても、他方が主計算機となることによって排他サービス
を継続することができるという効果がある。加えて、排
他サービスマネージャ搭載計算機を多重化構成可能と
し、排他要求マネージャ搭載計算機をも多重化構成可能
としたので、各々、多重化を構成している計算機群にお
いて、一方の計算機に障害が発生しても、他の計算機が
サービスを代行できるようになり、システム全体として
の排他サービス処理の信頼性を向上させることができる
という効果がある。
【図面の簡単な説明】
【図1】図1は、この発明の実施例1による多重計算機
システムの構成図である。
【図2】図2は、この発明の実施例1による排他サービ
ス処理の動作(正常系)を示すフローチャートである。
【図3】図3は、この発明の実施例1による障害発生時
におけるエラー処理を示すフローチャートである。
【図4】図4は、この発明の実施例2による2重計算機
システムの構成図である。
【図5】図5は、この発明の実施例2による排他サービ
ス処理の動作(正常系)を示すフローチャートである。
【図6】図6は、この発明の実施例2による排他サービ
ス処理の動作(正常系)を示すフローチャートである。
【図7】図7は、この発明の実施例2による計算機障害
発生時のエラー処理を示すフローチャートである。
【図8】図8は、この発明の実施例3による多重計算機
システムの構成図である。
【図9】図9は、この発明の実施例3による排他制御処
理の概念図である。
【図10】図10は、この発明の実施例3による排他サ
ービス処理の動作(正常系)を示すフローチャートであ
る。
【図11】図11は、この発明の実施例3による計算機
障害発生時のエラー処理を示すフローチャートである。
【図12】図12は、この発明の実施例4による多重計
算機システムの構成図である。
【図13】図13は、この発明の実施例4による排他制
御処理の概念図である。
【図14】図14は、この発明の実施例4による排他サ
ービス処理の動作(正常系)を示すフローチャートであ
る。
【図15】図15は、この発明の実施例4による計算機
障害発生時のエラー処理を示すフローチャート1であ
る。
【図16】図16は、この発明の実施例4による計算機
障害発生時のエラー処理を示すフローチャート2であ
る。
【図17】図17は、従来例による多重計算機システム
の構成図である。
【図18】図18は、従来例による排他サービス処理の
動作を示すフローチャートである。
【符号の説明】
101 排他サービスマネージャ搭載計算機 102,103 アプリケーションプロセス搭載計算機 104,203,204 排他サービスマネージャ 306,307,407,408 排他サービスマネー
ジャ 105,205,206,308,309,409,4
10 排他情報管理テーブル 106,107,207,208,311,312,4
13,414 プロセス監視モニタ 111,316 排他制御部 112,319 他計算機状態監視部 113,116,317,320 エラー処理部 114,206 他計算機異常検知手段 115 プロセス状態監視部 117 プロセス異常検知手段 108,109,209,210,313,314,4
15,416 アプリケーションプロセス 310,411,412 排他要求マネージャ 318 排他要求処理部 303,403,406 排他要求マネージャ搭載計算

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 系内システムにおける排他制御方式であ
    って、前記系内システムには、 単一系、又は多重系構成を成し、少くとも共有リソース
    に対する排他サービス機能を提供する排他サービス実現
    手段と、 上記排他サービス実現手段に対するサービス要求手続部
    とを構成要素として含み、 前記排他サービス実現手段は、 共有リソースに対する排他要求及び排他解除要求を実行
    する排他制御処理実行部と、 障害発生を検知するための障害発生検知部と、 上記障害発生時におけるエラー回復処理部を具備したこ
    とを特徴とする系間排他制御方式。
  2. 【請求項2】 排他サービス機能を提供する第1の計算
    機と、排他サービスを要求するアプリケーションプロセ
    スが搭載された第2の計算機群から構成された多重計算
    機システムの排他制御方式において、 前記第1の計算機は共有リソースに対する排他要求及び
    排他解除要求を実行する排他制御処理実行部と、 前記排他制御処理実行に係わる排他情報管理テーブルを
    具備し、 前記第2のグループを構成する計算機は、 プロセス監視モニター手段を具備し、 前記プロセス監視モニター手段は、 共有リソースに対する排他要求及び排他解除に係わるサ
    ービスを要求するアプリケーションプロセスに発生した
    障害を検知するためのプロセス状態監視部と、 上記障害検知時におけるエラー処理手続きの登録部と、 前記エラー処理手続きの実行部、より構成されたことを
    特徴とする系間排他制御方式。
  3. 【請求項3】 排他サービス機能を提供する第1の計算
    機と、排他サービスを要求するアプリケーションプロセ
    スが搭載された第2の計算機群から構成された多重計算
    機システムの排他制御方式において、 前記第1の計算機は、 排他サービスマネージャ手段と、排他サービス処理実行
    に係わる排他情報管理テーブルを具備し、 前記排他サービスマネージャ手段は、 共有リソースに対する排他要求及び排他解除要求を実行
    する排他制御処理実行部と、 他計算機の障害発生を検知するための他計算機状態監視
    部と、 上記計算機障害検知時におけるエラー処理手続きの登録
    部及び前記エラー処理手続きの実行部より構成されたエ
    ラー処理部と、を備え、 前記第2のグループを構成する計算機は、 プロセス監視モニター手段を具備し、 前記プロセス監視モニター手段は、 共有リソースに対する排他要求及び排他解除に係わるサ
    ービスを要求するアプリケーションプロセスに発生した
    障害を検知するためのプロセス状態監視部と、 上記障害検知時におけるエラー処理手続きの登録部と、 前記エラー処理手続きの実行部を備えたことを特徴とす
    る系間排他制御方式。
  4. 【請求項4】 ネットワークで構成された多重計算機シ
    ステムにおける排他制御方式であって、 上記多重計算機システムが、特に2台より構成された対
    向システムにおいて、対向する2台の計算機双方に、排
    他サービスマネージャ手段と、プロセス監視モニタ手段
    と、排他サービス処理実行に係わる排他情報管理テーブ
    ルを搭載し、 前記排他サービスマネージャ手段は、 共有リソースに対する排他要求及び排他解除要求を実行
    する排他制御処理実行部と、 他計算機の障害発生を検知するための他計算機状態監視
    部と、 上記計算機障害検知時におけるエラー処理手続きの登録
    部及び前記エラー処理手続きの実行部より構成されたエ
    ラー処理部と、を備え、 前記プロセス監視モニタ手段は、 共有リソースに対する排他要求及び排他解除に係わるサ
    ービスを要求するアプリケーションプロセスに発生した
    障害を検知するためのプロセス状態監視部と、 上記障害検知時におけるエラー処理手続きの登録部と、
    前記エラー処理手続きの実行部を備えたことを特徴とす
    る系間排他制御方式。
  5. 【請求項5】 排他制御処理を実行する第1の計算機群
    と、排他制御要求処理を実行する第2の計算機群と、排
    他サービスを要求するアプリケーションプロセスが搭載
    された第3の計算機群より構成された多重計算機システ
    ムにおける排他制御方式において、 前記第1の計算機群を構成する計算機は、 排他サービスマネージャ手段と、 排他サービス処理実行に係わる排他情報管理テーブルを
    具備し、 前記排他サービスマネージャ手段は、 共有リソースに対する排他要求及び排他解除要求を実行
    する排他制御処理実行部と、 障害発生時におけるエラー処理手続きの登録部及び前記
    エラー処理手続きの実行部より構成されたエラー処理部
    と、を備え、 前記第2の計算機群を構成する計算機は排他要求マネー
    ジャ手段を具備し、 前記排他要求マネージャ手段は、 前記第1の計算機群に対する排他要求及び排他解除要求
    を実行する排他要求処理実行部と、 多重計算機システムを構成する計算機群の障害発生を検
    知するための他計算機状態監視部と、 前記計算機障害検知時におけるエラー処理手続きの登録
    部及び前記エラー処理手続きの実行部より成るエラー処
    理部と、を備え、 前記第3の計算機群を構成する計算機においては、 プロセス監視モニタ手段が搭載され、 前記プロセス監視モニタ手段は、 アプリケーションプロセスに発生した障害を検知するた
    めのプロセス状態監視部と、 上記障害検知時におけるエラー処理手続きの登録部及び
    前記エラー処理手続きの実行部より構成されたエラー処
    理部と、を具備したことを特徴とする系間排他制御方
    式。
JP5115953A 1993-05-18 1993-05-18 系間排他制御方式 Pending JPH06332876A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5115953A JPH06332876A (ja) 1993-05-18 1993-05-18 系間排他制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5115953A JPH06332876A (ja) 1993-05-18 1993-05-18 系間排他制御方式

Publications (1)

Publication Number Publication Date
JPH06332876A true JPH06332876A (ja) 1994-12-02

Family

ID=14675238

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5115953A Pending JPH06332876A (ja) 1993-05-18 1993-05-18 系間排他制御方式

Country Status (1)

Country Link
JP (1) JPH06332876A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007157125A (ja) * 2005-12-08 2007-06-21 Internatl Business Mach Corp <Ibm> サーバ内のブロック化された処理を安全に中断するための方法、システム、プログラム
JP2009058998A (ja) * 2007-08-29 2009-03-19 Nec Corp 疎結合システム、待機系排他制御装置、疎結合システムのリカバリ方法、プログラムおよび記憶媒体
JP2010072799A (ja) * 2008-09-17 2010-04-02 Oki Electric Ind Co Ltd クラスタシステム及びコマンド競合制御方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007157125A (ja) * 2005-12-08 2007-06-21 Internatl Business Mach Corp <Ibm> サーバ内のブロック化された処理を安全に中断するための方法、システム、プログラム
JP2009058998A (ja) * 2007-08-29 2009-03-19 Nec Corp 疎結合システム、待機系排他制御装置、疎結合システムのリカバリ方法、プログラムおよび記憶媒体
JP2010072799A (ja) * 2008-09-17 2010-04-02 Oki Electric Ind Co Ltd クラスタシステム及びコマンド競合制御方法

Similar Documents

Publication Publication Date Title
US5784617A (en) Resource-capability-based method and system for handling service processor requests
WO2019085875A1 (zh) 存储集群的配置修改方法、存储集群及计算机系统
US6934247B2 (en) Recovery following process or system failure
US5845061A (en) Redundant client server system
US6760859B1 (en) Fault tolerant local area network connectivity
US7895462B2 (en) Managing recovery and control of a communications link via out-of-band signaling
WO2018107772A1 (zh) 写入请求处理方法、装置及设备
KR20010072379A (ko) 내고장성 컴퓨터 시스템
US20080288812A1 (en) Cluster system and an error recovery method thereof
JP2001306349A (ja) バックアップ装置及びバックアップ方法
JP4885342B2 (ja) クラスタコンピュータシステムにおける高度に利用可能な非同期i/o
EP2224341A1 (en) Node system, server switching method, server device, and data transfer method
JPH08212095A (ja) クライアントサーバ制御システム
TWI439873B (zh) Data synchronization method
CN110674192A (zh) 一种Redis高可用VIP漂移方法、终端及存储介质
JPH06332876A (ja) 系間排他制御方式
CN110351122B (zh) 容灾方法、装置、系统与电子设备
JP3555047B2 (ja) 複合コンピュータシステム
JP4608532B2 (ja) セキュリティ監視制御システム
JP3248485B2 (ja) クラスタシステム、クラスタシステムにおける監視方式およびその方法
CN114328033A (zh) 保持高可用设备组业务配置一致性的方法及装置
JPH07183891A (ja) 計算機システム
JP3025732B2 (ja) 多重化コンピュータシステムの制御方式
JPH1127266A (ja) 網管理装置の構成情報管理方式および管理対象装置
JP4128667B2 (ja) 情報バックアップシステム