JPH11338754A - 共有ファイル管理システム - Google Patents

共有ファイル管理システム

Info

Publication number
JPH11338754A
JPH11338754A JP10141802A JP14180298A JPH11338754A JP H11338754 A JPH11338754 A JP H11338754A JP 10141802 A JP10141802 A JP 10141802A JP 14180298 A JP14180298 A JP 14180298A JP H11338754 A JPH11338754 A JP H11338754A
Authority
JP
Japan
Prior art keywords
client
shared file
server
lock
file
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
JP10141802A
Other languages
English (en)
Inventor
Yuji Sengoku
裕二 仙石
Takeshi Mogi
剛 茂木
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 JP10141802A priority Critical patent/JPH11338754A/ja
Publication of JPH11338754A publication Critical patent/JPH11338754A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 クライアントサーバシステムにおいて、共有
ファイルのデッドロック状態を確実に回避し、システム
の信頼性を向上させること。 【解決手段】 障害処理手段5によって、共有ファイル
をロックした状態のまま障害が起こっているクライアン
トを検知し、サーバ1がクライアントの障害処理手段5
4、64と通信することにより、ロックされている供給
ファイルの強制的なロック解除を行い、デッドロックを
回避する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明はクライアントサー
バシステムにおいて、共有ファイルのデッドロックを回
避する共有ファイル管理システムに関する。
【0002】
【従来の技術】中央処理装置(サーバ)と、その中央処
理装置の管理下に置かれ、コンピュータネットワーク上
の共有資源(ファイル、プリンタ等)を利用する分散処
理装置(クライアント)とから構成されるクライアント
サーバシステムにおいて、例えば特開平5―26598
5号公報に開示されるような共有ファイル管理方法が用
いられている。
【0003】図10は、上記特開平5―265985号
公報に開示される共有ファイル管理方法を適用したクラ
イアントサーバシステムを説明する図である。図10に
おいて、上記クライアントサーバシステムは、中央処理
装置700と、通信回線800によって中央処理装置7
00に接続された分散処理装置801および802と、
さらに、中央処理装置700に接続され、分散処理装置
801および802によって利用可能な共有ディスク装
置701を基本構成としている。
【0004】中央処理装置700はさらに、ブロック排
他制御手段702、ロック解除手段703、障害検知手
段704、更新管理手段705、タイムカウンタ手段7
06、ファイルロック管理情報テーブル707、更新デ
ータ管理ファイル708から構成される。中央処理装置
700は、共有ディスク装置701に格納された共有フ
ァイルを管理し、分散処理装置801および802の要
求に応じて適当な処理を行う。
【0005】また、中央処理装置700内部のブロック
排他制御手段702は、分散処理装置801および80
2からファイル更新要求を受信した際に、更新の対象と
なるファイルが参照および更新不可状態すなわちロック
された状態であるかを、共有ファイルのロック状況を管
理するファイルロック管理情報テーブル707を参照す
ることによって調べる。ブロック排他制御手段702
は、その更新対象ファイルがロックされていない場合
は、ファイルロック管理情報テーブル707中の更新対
象ファイルに対応する処理フラグをオン状態にし、分散
処理装置801および802から更新処理の終了通知を
受信するまで更新対象ファイルをロック状態にする。
【0006】また、ロック解除手段703は、分散処理
装置801または802が例えば中央処理装置700と
の接続が確保されていないといった異常な状態を示す場
合に、上記処理フラグをオフ状態に更新することによ
り、異常を示す分散処理装置によってロックされた更新
対象ファイルを使用可能な状態にする。タイムカウンタ
手段706は、更新対象ファイルのロックされた時間
(タイムカウント)を計測する。障害検知手段704
は、タイムカウンタ手段706によって計測されたタイ
ムカウントを監視し、タイムカウントが所定の時間経過
したことを示す場合に、更新対象ファイルに対してロッ
ク処理を施した分散処理装置が異常な状態でないかを調
べる。更新管理手段705は、分散処理装置801また
は802から送信される送信データをチェックし、送信
データが更新対象ファイルに対する更新データである場
合は、その送信データを更新データ管理ファイル708
に格納し、送信データが終了通知を示す場合は、ブロッ
ク排他制御手段702に対して、更新対象ファイルのロ
ック状態を解除するようにロック解除要求を行う。
【0007】図11は、図10に示された従来の共有フ
ァイル管理方法を説明するフローチャートである。図1
1のフローチャートは特に、図10の中央処理装置70
0において実行される処理を示している。まず、ステッ
プS901において、例えば分散処理装置801から共
有ファイルの更新要求を受信する。共有ファイルの更新
要求を受信すると、ブロック排他制御手段702が、更
新の対象となる共有ファイル(以下、更新対象ファイ
ル)がロック状態であるかをファイルロック管理情報テ
ーブル707を参照することにより調べる(ステップS
902)。ステップS902において更新対象ファイル
がロック状態である場合は、このフローチャートにおけ
る処理を終了する。この場合、共有ファイルの更新要求
をした分散処理装置801は、中央処理装置700か
ら、更新対象ファイルのロック状態が解除されるまで待
機するか、または更新対象ファイルがロック状態である
回答通知を受信する。
【0008】ステップS902において更新対象ファイ
ルがロック状態でない場合は、ブロック排他制御手段7
02によって、ファイルロック管理情報テーブル707
中の更新対象ファイルに対応する処理フラグをオン状態
に更新する(ステップS903)。
【0009】続いて、障害検知手段704が、更新対象
ファイルに対するタイムカウントを初期化(タイムカウ
ンタセット)し、タイムカウンタ手段706によって、
更新対象ファイルのロック状態の保持時間がカウントさ
れる(ステップS904)。つぎに、更新管理手段70
5が、分散処理装置801から更新対象ファイルに対す
る更新データが送信されたかを調べる(ステップS90
5)。ステップS905において更新データが送信され
ていない場合は、ステップS907に処理が移る。ステ
ップS905において更新データが送信された場合は、
送信された更新データを更新データ管理ファイル708
に格納し(ステップS906)、ステップS907に処
理が移る。
【0010】ステップS907においては、更新管理手
段705が、分散処理装置801から更新対象ファイル
に対する更新処理を終了したことを示す終了通知が送信
されたかを調べる。ステップS907において終了通知
が送信された場合は、ステップS910に処理が移る。
ステップS907において終了通知が送信されていない
場合は、障害検知手段704が、タイムカウンタ手段7
06からタイムカウンタを参照して、更新対象ファイル
のロック状態が所定の時間以上保持されたままでない
か、すなわち所定時間経過したかを調べる(ステップS
908)。
【0011】ステップS908において所定時間経過し
ていない場合は、ステップS905に処理が戻る。ステ
ップS908において所定時間経過した場合は、障害検
知手段704が、分散処理装置801が異常を示してい
るかを調べる(ステップS909)。ステップS909
において異常を示さない場合は、ステップS904に処
理が戻り、再びタイムカウンタセットが行われて、タイ
ムカウンタ手段706によりタイムカウントが開始され
る。ステップS909において異常を示す場合は、ロッ
ク解除手段703が、ファイルロック管理情報テーブル
707中の更新対象ファイルに対応する処理フラグを強
制的にオフ状態に更新し、ロックされていた更新対象フ
ァイルを使用可能にして(ステップS910)、このフ
ローチャートにおける処理を終了する。
【0012】以上に説明したように、従来の共有ファイ
ル管理方法によれば、中央処理装置によって、更新要求
の対象となる共有ファイルのロック状態が参照でき、ロ
ックされた共有ファイルのロック状態の保持時間を監視
することにより、更新要求を発した分散処理装置が異常
であるかを調べて、ロック状態を強制的にオフにするこ
とを可能にしている。
【0013】
【発明が解決しようとする課題】上述した従来の共有フ
ァイル管理方法においては、分散処理装置(クライアン
ト)の異常を検知する手段として、ロック状態の保持時
間すなわちタイムアウトの監視のみを中央処理装置(サ
ーバ)において行っていた。
【0014】しかしながら、この場合のサーバにおける
クライアントに対する異常検知は、クライアントが通信
回線上に正常に接続されているか否かを検知できるのみ
であり、例えばクライアントが通信回線上に正常に接続
されていたとしても、クライアント内部のモジュールに
おいて異常が発生している場合は、それを異常であると
検知することができない。
【0015】また、クライアントがサーバから共有ファ
イルのロック状態を示す回答を受信する方法において共
有ファイルの更新要求を行った場合、更新要求された共
有ファイルがロックしていると、その共有ファイルを使
用したいクライアントは、その共有ファイルが使用可能
になるまで更新要求を定期的にサーバに送信する必要が
あり、通信回線上のトラフィック量が増大し、ロックさ
れていない共有ファイルに対する処理時間までもが増大
してしまう。
【0016】さらに、クライアントが、共有ファイルの
ロック状態が解除されるまで待機する方法において共有
ファイルの更新要求を行った場合、クライアント内部の
モジュールの異常が原因で、その共有ファイルのロック
状態が解除できなくなっている状態においては、サーバ
によって異常であると検知できないために、正常である
と認識されてしまい、その共有ファイルのロック状態が
解除されないという問題すなわちデッドロック状態が生
じる可能性があった。
【0017】この発明は、上記に鑑みてなされたもので
あって、共有ファイルのデッドロック状態を確実に回避
する共有ファイル管理システムを得ることを目的とす
る。
【0018】
【課題を解決するための手段】上述した課題を解決し、
目的を達成するために、この発明に係る共有ファイル管
理システムは、通信回線で接続された少なくとも1つの
サーバと少なくとも1つのクライアントと前記サーバお
よびクライアントから共有して使用可能な共有ファイル
が格納された共有ディスク装置とから構成されるクライ
アントサーバシステムの共有ファイルを管理するための
共有ファイル管理システムにおいて、前記サーバは、前
記共有ファイルを使用するクライアントからの要求に応
じて前記共有ファイルのロック時間を計測し、前記ロッ
ク時間に応じて前記共有ファイルをロックしているクラ
イアントに対する状態確認を行い、前記状態確認の結果
に応じて前記共有ファイルのロックを解除することを特
徴とする。
【0019】この発明によれば、クライアントが共有フ
ァイルを使用しようとする際に、サーバが、その共有フ
ァイルのロック時間を調べることによってロック状態を
取得し、その共有ファイルをロックしているクライアン
トに対する状態確認を行ってから共有ファイルのロック
を解除するので、クライアント間において共有ファイル
を効率良く使用でき、共有ファイルのデッドロックから
も確実に回避できる。
【0020】つぎの発明に係る共有ファイル管理システ
ムは、通信回線で接続された少なくとも1つのサーバと
少なくとも1つのクライアントと前記サーバおよびクラ
イアントから共有して使用可能な共有ファイルが格納さ
れた共有ディスク装置とから構成されるクライアントサ
ーバシステムの共有ファイルを管理するための共有ファ
イル管理システムにおいて、前記サーバは、前記共有フ
ァイルのロック状態を管理するファイルロック管理情報
テーブルと、前記共有ファイルをロックしている第1の
クライアントに対して、前記共有ファイルのロックの解
除を要求する解除通知を行う解除通知手段と、前記解除
通知が行われてから経過した回答待ち時間および前記共
有ファイルがロックされてから経過したロック時間を計
測するタイムカウンタ手段と、前記第1のクライアント
から前記解除通知に対する回答を受信するサーバ回答受
信手段と、ロックされている前記共有ファイルを使用す
る第2のクライアントに対して、共有ファイル使用可能
または待機の回答を行うサーバ回答送信手段と、前記フ
ァイルロック管理情報テーブルを更新して前記共有ファ
イルのロックを強制的に解除するロック解除手段と、前
記タイムカウンタ手段において計測されたロック時間に
応じて前記解除通知手段に解除通知の送信を要求し、前
記タイムカウンタ手段において計測された回答待ち時間
または前記サーバ回答受信手段によって受信された回答
に応じて前記ロック解除手段へのロック解除または前記
サーバ回答送信手段への前記共有ファイル使用可能また
は待機を示す回答の送信を要求するサーバ障害処理手段
と、前記第1のクライアントから前記共有ファイルの使
用の終了を示す終了通知を受信した場合に、前記ファイ
ルロック管理情報テーブルを更新して前記共有ファイル
のロックを解除するブロック排他制御手段と、を備え、
前記クライアントは、複数の処理モジュールと、前記サ
ーバから前記解除通知を受信する解除通知受信手段と、
前記サーバに対して前記クライアントの状態を回答する
クライアント回答送信手段と、前記サーバから前記共有
ファイル使用可能または待機の回答を受信するクライア
ント回答受信手段と、前記解除通知受信手段によって受
信された解除通知に応じて前記クライアント回答送信手
段に前記クライアントの状態を示す回答の送信を要求
し、前記クライアント回答受信手段によって受信された
回答に応じて前記処理モジュールに前記共有ファイル使
用可能または待機の指示を行うクライアント障害処理手
段と、を備えることを特徴としている。
【0021】この発明によれば、第1のクライアントの
処理モジュールが共有ファイルをロックした際に、サー
バのサーバ障害処理手段がタイムカウンタ手段に指示す
ることによりロック時間の計測を開始し、そのロック時
間が所定時間経過した場合に、サーバ障害処理手段が解
除通知手段に指示することにより第1のクライアントに
解除通知を送信する。その際、サーバ障害処理手段はタ
イムカウンタ手段に指示することにより回答待ち時間の
計測を開始する。第1のクライアントのクライアント障
害処理手段は、前記解除通知を解除通知手段を介して取
得した際に、前記処理モジュールと応答して処理状態を
調べ、クライアント回答送信手段に指示することにより
サーバに第1のクライアントの状態を示す回答を送信す
る。サーバのサーバ障害処理手段は、前記第1のクライ
アントの状態を示す回答をサーバ回答受信手段を介して
取得した際に、その回答の示す内容に応じてロック解除
手段に指示することにより前記共有ファイルのロックを
強制的に解除する。サーバ障害処理手段は、前記回答待
ち時間が所定時間経過した場合にも、ロック解除手段に
指示することにより前記共有ファイルのロックを強制的
に解除する。第2のクライアントの処理モジュールが第
1のクライアントによってロック状態にある共有ファイ
ルをロックしようとする際には、第1のクライアントに
対して上記した処理が行われつつ、サーバのサーバ障害
処理手段が前記サーバ回答受信手段を介して取得した第
1のクライアントからの回答に応じてサーバ回答送信手
段に指示することにより第2のクライアントに指示を示
す回答を送信する。サーバ障害処理手段は、第1のクラ
イアントにおいて前記回答待ち時間が所定時間経過し、
ロック解除手段により前記共有ファイルのロックが強制
的に解除された場合にも、サーバ回答送信手段に指示す
ることにより第2のクライアントに共有ファイル使用可
能または待機を示す回答を送信する。第2のクライアン
トのクライアント障害処理手段は、その回答をクライア
ント回答受信手段を介して取得した際に、その回答の示
す指示に従って前記第2のクライアントの処理モジュー
ルに共有ファイル使用可能または待機の指示を与える。
よって、他のクライアントによってロックされている共
有ファイルの強制的なロック解除が確実に行われ、クラ
イアントサーバシステムの信頼性および安定性を向上さ
せることができる。
【0022】つぎの発明に係る共有ファイル管理システ
ムは、前記サーバ障害処理手段が、前記第2のクライア
ントから前記第1のクライアントによってロックされて
いる共有ファイルを使用する要求を受信しまたは前記第
1のクライアントによってロックされている共有ファイ
ルの前記ロック時間が所定時間を超え、前記第1のクラ
イアントに対して前記ロックされている共有ファイルの
解除通知が送信されていない場合に、前記解除通知手段
に前記解除通知の送信を要求することを特徴としてい
る。
【0023】この発明によれば、クライアントに対し
て、他のクライアントからの共有ファイル使用要求が発
せられた場合とロック時間が所定時間を超えた場合とを
共有ファイルのロック解除の条件としているので、クラ
イアントサーバシステムの信頼性および安定性をより高
く向上させることができる。
【0024】つぎの発明に係る共有ファイル管理システ
ムは、前記サーバ障害処理手段が、前記第1のクライア
ントによってロックされている共有ファイルの前記ロッ
ク時間が所定時間を超えた場合において、前記サーバ回
答受信手段によって受信された回答が前記第1のクライ
アントの正常動作を示す場合には、前記タイムカウンタ
手段に前記ロック時間の初期化を要求し、前記サーバ回
答受信手段によって受信された回答が前記第1のクライ
アントの異常動作を示す場合には、前記ロック解除手段
にロック解除を要求し、前記タイムカウンタ手段に前記
ロック時間の初期化を要求することを特徴としている。
【0025】この発明によれば、ロックされている共有
ファイルのロック時間が所定時間を超えた場合に、その
共有ファイルをロックしているクライアントからの回答
が正常動作を示す場合には、ロック時間を初期化し、そ
の共有ファイルをロックしているクライアントからの回
答が異常動作を示す場合には、そのロックされている共
有ファイルのロックを解除して、ロック時間を初期化す
るので、クライアントサーバシステムの信頼性および安
定性をより高く向上させることができる。
【0026】つぎの発明に係る共有ファイル管理システ
ムは、前記サーバ障害処理手段が、前記第2のクライア
ントから前記第1のクライアントによってロックされて
いる共有ファイルを使用する要求を受信した場合におい
て、前記サーバ回答受信手段によって受信された回答が
前記第1のクライアントの正常動作を示す場合には、前
記サーバ回答送信手段に前記第2のクライアントに対し
て待機を示す回答の送信を要求し、前記サーバ回答受信
手段によって受信された回答が前記第1のクライアント
の異常動作を示す場合には、前記ロック解除手段にロッ
ク解除を要求し、前記サーバ回答送信手段に前記第2の
クライアントに対して前記共有ファイル使用可能を示す
回答の送信を要求することを特徴としている。
【0027】この発明によれば、サーバが、ロックされ
ている共有ファイルを使用する要求をその共有ファイル
をロックしているクライアント以外のクライアントから
受信した場合に、その共有ファイルをロックしているク
ライアントからの回答が正常動作を示す場合には、その
ロックされている共有ファイルを使用しようとするクラ
イアントに待機を指示し、共有ファイルをロックしてい
るクライアントからの回答が異常動作を示す場合には、
そのロックされている共有ファイルのロックを解除し
て、そのロックされている共有ファイルを使用しようと
するクライアントに共有ファイル使用可能を指示するの
で、クライアントサーバシステムの信頼性および安定性
をより高く向上させることができる。
【0028】つぎの発明に係る共有ファイル管理システ
ムは、前記サーバ障害処理手段が、前記第1のクライア
ントによってロックされている共有ファイルの前記ロッ
ク時間が所定時間を超えた場合において、前記第1のク
ライアントに対して前記回答待ち時間が所定時間を超え
た場合には、前記ロック解除手段にロック解除を要求
し、前記タイムカウンタ手段に前記ロック時間の初期化
を要求することを特徴としている。
【0029】この発明によれば、ロックされている共有
ファイルのロック時間が所定時間を超えた場合に、回答
待ち時間が所定時間を超えた場合には、そのロックされ
ている共有ファイルのロックを解除して、ロック時間を
初期化するので、クライアントサーバシステムの信頼性
および安定性をより高く向上させることができる。
【0030】つぎの発明に係る共有ファイル管理システ
ムは、前記サーバ障害処理手段が、前記第2のクライア
ントから前記第1のクライアントによってロックされて
いる共有ファイルを使用する要求を受信した場合におい
て、前記回答待ち時間が所定時間を超えた場合には、前
記ロック解除手段にロック解除を要求し、前記サーバ回
答送信手段に前記第2のクライアントに対して前記共有
ファイル使用可能を示す回答の送信を要求することを特
徴としている。
【0031】この発明によれば、サーバが、ロックされ
ている共有ファイルを使用する要求をその共有ファイル
をロックしているクライアント以外のクライアントから
受信した場合に、回答待ち時間が所定時間を超えた場合
には、そのロックされている共有ファイルのロックを解
除して、そのロックされている共有ファイルを使用しよ
うとするクライアントに共有ファイル使用可能を指示す
るので、クライアントサーバシステムの信頼性および安
定性をより高く向上させることができる。
【0032】つぎの発明に係る共有ファイル管理システ
ムは、前記クライアント障害処理手段が、自己のクライ
アントにおいて前記処理モジュールからの共有ファイル
のロックまたはロック解除要求に応じて前記共有ファイ
ルのロック状態を管理し、前記解除通知受信手段によっ
て解除通知が受信された場合において、前記共有ファイ
ルをロックしている処理モジュールが正常な処理を示す
場合は、前記クライアント回答送信手段に自己のクライ
アントの正常状態を示す回答の送信を要求し、前記共有
ファイルをロックしている処理モジュールが前記共有フ
ァイルをロックしたまま他の処理に移っている場合は、
前記クライアント回答送信手段に自己のクライアントの
異常状態を示す回答の送信を要求することを特徴として
いる。
【0033】この発明によれば、クライアントが、自己
のクライアントの内部において処理モジュールから要求
される共有ファイルのロックまたはロック解除に応じて
共有ファイルのロック状態を管理し、サーバからの解除
通知を受信した場合に、共有ファイルをロックしている
処理モジュールを調べ、サーバに対してその処理モジュ
ールの正常状態または異常状態を示す回答を行うので、
クライアントサーバシステムの信頼性および安定性をよ
り高く向上させることができる。
【0034】
【発明の実施の形態】以下に、本発明に係る共有ファイ
ル管理システムの実施の形態を図面に基づいて詳細に説
明する。なお、この実施の形態により本発明が限定され
るものではない。
【0035】図1は、本発明に係る共有ファイル管理シ
ステムを説明する図である。図1において、共有ファイ
ル管理システムは、クライアントサーバシステムに適用
され、サーバ1と、通信回線100によってサーバ1に
接続されたクライアント50および60と、さらに、サ
ーバ1に接続されクライアント50および60から利用
可能な共有ディスク装置2を基本構成としている。ここ
で、共有ファイル管理システムが適用されるクライアン
トサーバシステムに使用される通信プロトコルとして、
例えばTCP/IPプロトコルを採用した場合を考え
る。
【0036】サーバ1はさらに、ブロック排他制御手段
3、ロック解除手段4、障害処理手段5、更新管理手段
6、タイムカウンタ手段7、ファイルロック管理情報テ
ーブル8、更新データ管理ファイル9、解除通知手段1
0、回答受信手段11、回答送信手段12から構成され
る。サーバ1は、共有ディスク装置2に格納された共有
ファイルを、クライアント50または60の要求に応じ
て管理する。
【0037】また、サーバ1内部のブロック排他制御手
段3は、クライアント50または60からファイル更新
要求を受信した際に、更新の対象となるファイル(以
下、更新対象ファイル)が更新不可状態すなわちロック
された状態であるかを、共有ファイルのロック状況を管
理するファイルロック管理情報テーブル8を参照するこ
とによって調べる。さらにブロック排他制御手段3は、
更新対象ファイルがロックされていない場合に、クライ
アント50または60から更新処理の終了通知を受信す
るまで、ファイルロック管理情報テーブル8中の更新対
象ファイルに対応する処理フラグをオン状態すなわち更
新対象ファイルのロック状態にする。
【0038】また、ロック解除手段4は、障害処理手段
5からロック解除要求を受信した場合に、上記処理フラ
グをオフ状態にし、更新対象ファイルのロック状態を強
制的に解除する。タイムカウンタ手段7は、解除通知手
段10が更新対象ファイルをロックしているクライアン
ト50または60に対してロック解除通知を発してから
経過した時間すなわちクライアント50または60から
の回答待ちの時間(回答待ちタイムカウント)と、更新
対象ファイルのロックされた時間(ロックタイムカウン
ト)とを計測する。
【0039】障害処理手段5は、回答受信手段11によ
って受信されたクライアント50または60からの回答
に応じて、ロックの強制解除か、解除要求したクライア
ント50または60への待機命令かを判断する。更新管
理手段6は、クライアント50または60から送信され
る送信データをチェックし、送信データが更新対象ファ
イルに対する更新データである場合は、その送信データ
を更新データ管理ファイル9に格納し、送信データが終
了通知を示す場合はブロック排他制御手段3に対して、
更新対象ファイルのロック状態を解除するロック解除要
求を行う。
【0040】解除通知手段10は、更新対象ファイルを
ロックしているクライアント50または60に対してロ
ックを解除するように解除通知を行う。また、回答受信
手段11は、更新対象ファイルをロックしているクライ
アント50または60からの回答を受信する。さらに、
回答送信手段12は、ロックされている更新対象ファイ
ルを使用しようとするクライアント50または60に回
答を送信する。
【0041】一方、クライアント50は、回答受信手段
51、解除通知受信手段52、回答送信手段53、障害
処理手段54および複数のモジュール(但し、モジュー
ル55および56のみが図示されている)から構成され
る。クライアント60もまた、クライアント50と同一
の構成であり、解除通知受信手段62、回答送信手段6
3、障害処理手段64および複数のモジュール(但し、
モジュール65および66のみが図示されている)から
構成される。
【0042】解除通知受信手段52(または62)は、
サーバ1の解除通知手段10によって送信されたロック
解除通知を受信する。また、障害処理手段54(または
64)は、解除通知受信手段52(または62)によっ
て受信されたサーバ1からのロック解除通知に応じて、
ロックの強制解除か、解除要求したクライアントへの待
機命令かを判断する。
【0043】(サーバ1の処理)つぎに、本発明の共有
ファイル管理システムの動作を図2のフローチャートを
参照しつつ説明する。図2のフローチャートは特に、図
1のサーバ1において実行される処理を示している。こ
こでは、クライアント50内部のモジュール55が、共
有ディスク装置に格納された共有ファイルの1つに対し
て更新要求を発し、その共有ファイルがクライアント6
0内部のモジュール65によってロックされている場合
を考える。
【0044】まず、ステップS201において、サーバ
1は、クライアント50から上記共有ファイルに対して
発せられた更新要求を受信する。共有ファイルの更新要
求を受信すると、ブロック排他制御手段3が、その更新
対象ファイルがロック状態であるかをファイルロック管
理情報テーブル8を参照することにより調べる(ステッ
プS202)。
【0045】ここで、ファイルロック管理情報テーブル
8は、例えば図3に示すようなファイル名−ファイル番
号対応テーブルと、ファイルロックステータスデータと
を含んでいる。ファイル名−ファイル番号対応テーブル
は、クライアントのモジュールにおいて指定されるファ
イル名にファイル番号を対応付けた表である。また、フ
ァイルロックステータスデータは、ファイル番号、ステ
ータス、クライアントのIPアドレスおよびクライアン
トのログイン名からなるブロックを共有ファイル数分有
したデータ列である。なお、このステータス値が、前述
した処理フラグに相当する。
【0046】ステップS202において、更新対象ファ
イルのロック状態の有無は、図4に示されるような手順
によって実現される。例えば、クライアント50からサ
ーバ1に向けて、ファイル名“ファイルB”の共有ファ
イルに対する更新要求が発せられた場合、サーバ1内部
のブロック排他制御手段3は、クライアント50から更
新対象ファイル名と共に発せられるクライアント50の
ログイン名“CL10”を元に、サーバ1が元来有する
ログインスクリプトからIPアドレス“133.10.
60.30”を取得する。ブロック排他制御手段3は、
更新対象ファイル名“ファイルB”を元にして、ファイ
ルロック管理情報テーブル8から更新対象ファイルのロ
ック状態を取得する。
【0047】この場合、図3のファイルロック管理情報
テーブル8のファイル名−ファイル番号対応テーブルに
おいてファイル名“ファイルB”は、ファイル番号2に
対応し、ファイルロックステータスデータにおいてファ
イル番号2に対応するブロックからステータス値を取得
する。ここで、ステータス値は、“0”が非ロック状態
に、“1”がロック状態に対応する。
【0048】ステップS202において更新対象ファイ
ルがロック状態である場合すなわちファイルロック管理
情報テーブル8からステータス=“1”を取得した場合
は、ステップS209に処理が移り、後述するロック解
除処理が行われる。ステップS202において更新対象
ファイルがロック状態でない場合すなわちファイルロッ
ク管理情報テーブル8からステータス=“0”を取得し
た場合、ブロック排他制御手段3は、そのステータス値
を“1”に更新し、前述したクライアント50のログイ
ン名およびIPアドレスをファイルロックステータスデ
ータのそれぞれ対応する位置に書き込む。すなわち、ブ
ロック排他制御手段3によって、ファイルロック管理情
報テーブル8中の更新対象ファイルに対応する処理フラ
グをオン状態に変更する(ステップS203)。さらに
ここで、ファイルロック管理情報テーブル8に書き込ま
れるクライアント50のログイン名およびIPアドレス
は、障害処理手段5に送信され、後述する解除処理ステ
ータスデータに書き込まれる。
【0049】続いて、障害処理手段5が、タイムカウン
タ手段7に、更新対象ファイルに対してロックタイムカ
ウントを初期化(タイムカウンタセット)し、更新対象
ファイルのロック状態保持時間の計測を開始するように
要求する(ステップS204)。つぎに、更新管理手段
6が、クライアント50から更新対象ファイルに対する
更新データが送信されたかを調べる(ステップS20
5)。ステップS205において更新データが送信され
ていない場合は、ステップS207に処理が移る。ステ
ップS205において更新データが送信された場合は、
送信された更新データを更新データ管理ファイル9に格
納し(ステップS206)、ステップS207に処理が
移る。
【0050】ステップS207においては、更新管理手
段6が、クライアント50から更新対象ファイルに対す
る更新処理を終了したことを示す終了通知が送信されて
きたかを調べる。ステップS207において終了通知が
送信された場合は、ブロック排他制御手段3が、ファイ
ルロック管理情報テーブル8において更新対象ファイル
に対応するステータス値を“0”に更新して、すなわち
ファイルロック管理情報テーブル8中の更新対象ファイ
ルに対応する処理フラグをオフ状態に変更して(ステッ
プS210)、このフローチャートにおける処理を終了
する。
【0051】ステップS207において終了通知が送信
されていない場合は、障害処理手段5が、タイムカウン
タ手段7におけるロックタイムカウント値を参照して、
更新対象ファイルのロック状態が所定の時間以上継続し
ていないか、すなわち所定時間経過していないかを調べ
る(ステップS208)。
【0052】ステップS208において所定時間経過し
ていない場合は、ステップS205に処理が戻る。ステ
ップS208において所定時間経過した場合は、後述す
るロック解除処理(ステップS209)が行われ、この
フローチャートにおける処理を終了する。
【0053】(ロック解除処理)つぎに、ロック解除処
理について、図5のフローチャートを参照しつつ説明す
る。ロック解除処理は、図2のステップS202におい
て更新対象ファイルがすでにロック状態である場合すな
わちファイルロック管理情報テーブル8からステータス
=“1”を取得した場合、または、ステップS208に
おいて更新対象ファイルのロック状態が所定時間経過し
た場合(タイムアウト)に、実行される処理である。ま
た、ロック解除処理は、ファイルロックステータスデー
タ中の更新対象ファイルのファイル番号に対応するブロ
ックからクライアントのログイン名およびIPアドレス
を取得し、更新対象ファイルをロックしているクライア
ント(この場合、クライアント60)を特定する。ロッ
ク解除処理は、サーバ1が、そのクライアントに対し
て、更新対象ファイルのロックを解除する要求を示す解
除通知を送信する処理である。
【0054】まず、障害処理手段5が、タイムカウンタ
手段7において回答待ちタイムカウントの計測がすでに
開始しているか、すなわち回答待ちタイムカウントセッ
ト済かを調べる(ステップS301)。ステップS30
1において、回答待ちタイムカウントがセットされてい
ない場合は、更新対象ファイルのロック時間が所定時間
を超えている場合を示しており、障害処理手段5が解除
処理ステータスデータ中の更新対象ファイルに対応する
ステータス値を更新する(ステップS302)。
【0055】ここで、解除処理ステータスデータは、更
新対象ファイルをロックしているクライアント60に送
信されるロック解除通知が、更新対象ファイルのロック
状態の保持時間が所定時間経過した場合すなわちタイム
アウトの場合と、すでにロックされているその更新対象
ファイルに対して他のクライアント(この場合、クライ
アント50)からさらに更新要求が発せられた場合のど
ちらによって送信されたものであるかを示し、図6に示
すように、ファイル番号、ステータス、クライアントの
IPアドレスおよびクライアントのログイン名からなる
ブロックを共有ファイル数分有したデータ列である。こ
こで、ステータス値は、“0”がロック解除要求なし
に、“1”がタイムアウトによるロック解除要求に、
“2”が他のクライアントからの更新要求によるロック
解除要求に対応する。よって、ステップS302におい
ては、タイムアウトよるロック解除要求に対してステー
タス値に“1”が書き込まれ、更新対象ファイルがすで
にロック状態である場合すなわち他のクライアントから
更新要求が発せられたことによるロック解除要求に対し
てステータス値に“2”が書き込まれる。
【0056】また、障害処理手段5は、前述した図2の
ステップS203において説明したように、ブロック排
他制御手順3が更新対象ファイルのロック状態を検知し
た際に、ファイル更新要求をしたクライアント50のI
Pアドレスおよびログイン名を、解除処理ステータスデ
ータのそれぞれ対応する位置に書き込んでいる。
【0057】ステップS302の処理後は、解除通知手
段10がクライアント60に対して更新対象ファイルの
ロックを解除するように解除通知を行う(ステップS3
03)。また、障害処理手段5は、クライアント60に
対して回答待ちタイムカウントを初期化(回答待ちタイ
ムカウンタセット)し、タイムカウンタ手段7によっ
て、クライアント60に解除通知を送信してから経過し
た時間の計測が開始される(ステップS304)。
【0058】ステップS304の処理後は、後述するク
ライアント60の処理が行われる(ステップS30
5)。クライアント60の処理は、クライアント60が
ステップS303においてサーバ1より送信された解除
通知を受信し、適当な処理後、サーバ1に向けて回答を
送信する処理である。クライアント60の処理後は、ス
テップS308に処理が移る。
【0059】ステップS301において、回答待ちタイ
ムカウントがすでにセットされている場合は、クライア
ント60が、他のクライアント(この場合、クライアン
ト50)からの更新要求によるロック解除要求が行われ
たことを示す。これは、サーバ1が、クライアント60
に対してすでに解除通知の送信を完了していることを意
味する。よって、解除処理ステータスデータにおいて、
更新対象ファイルに対応するファイル番号から解除処理
のステータス値を取得し、ステータス値が“1”を示す
かを調べる(ステップS306)。ステップS306に
おいて、ステータス値が“1”を示さない場合すなわち
ステータス値が“2”である場合は、ステップS308
に処理が移る。ステップS306において、ステータス
値が“1”を示す場合は、ステータス値を“2”に更新
し(ステップS307)、ステップS308に処理が移
る。
【0060】ステップS308においては、障害処理手
段5が回答受信手段11を介してクライアント60から
の回答を受信したかを調べる。ステップS308におい
て、回答を受信しない場合は、障害処理手段5が、タイ
ムカウンタ手段7における回答待ちタイムカウント値を
参照して、クライアント60の回答を待って所定時間経
過していないか(回答待ちタイムカウントタイムアウ
ト)を調べる(ステップS309)。ステップS309
において、回答待ちタイムカウントがタイムアウトして
いない場合は、再びステップS308に処理が戻り、ク
ライアント60からの回答を受信したかを調べる。ステ
ップS309において、回答待ちタイムカウントがタイ
ムアウトした場合は、ステップS313に処理が移る。
【0061】ステップS308において、クライアント
60からの回答を受信した場合は、受信した回答がクラ
イアント60の正常な動作による更新対象ファイルのロ
ック処理であることを示すかを調べる(ステップS31
0)。ステップS310において、受信した回答がクラ
イアント60の正常な動作による更新対象ファイルのロ
ック処理であることを示さない場合は、ステップS31
3に処理が移る。
【0062】ステップS313においては、ステップS
309またはステップS310においてクライアント6
0が異常であると判断されたため、ロック解除手段4
が、ファイルロック管理情報テーブル8において更新対
象ファイルに対応するステータス値を“0”に更新し
て、すなわちファイルロック管理情報テーブル8中の更
新対象ファイルに対応する処理フラグをオフ状態に変更
して強制的にロックを解除する。
【0063】続いて、解除処理ステータスデータにおい
て、更新対象ファイルに対応するファイル番号から、解
除処理のステータス値が“2”を示すかを調べる(ステ
ップS314)。すなわち、このロック解除処理がクラ
イアント50からの解除要求によって実行されているか
を調べる。ステップS314において、解除処理のステ
ータス値が“2”を示す場合は、回答送信手段12が更
新対象ファイルに更新を要求しているクライアント50
に向けて、更新対象ファイルの解除が完了したことを示
す解除完了通知すなわち更新対象ファイルが使用可能で
あることを示す通知を送信し(ステップS315)、ス
テップS316に処理が移る。ステップS314におい
て、解除処理のステータス値が“2”を示さない場合
は、図2のステップS204に処理が移る。
【0064】ステップS310において、受信した回答
がクライアント60の正常な動作による更新対象ファイ
ルのロック処理であることを示す場合は、解除処理ステ
ータスデータにおいて、更新対象ファイルに対応するフ
ァイル番号から、解除処理のステータス値が“2”を示
すかを調べる(ステップS311)。ステップS311
において、解除処理のステータス値が“2”を示さない
場合は、図2のステップS204に処理が移る。ステッ
プS311において、解除処理のステータス値が“2”
を示す場合は、回答送信手段12が更新対象ファイルに
更新を要求しているクライアント50に向けて、待機命
令を示す待機通知を送信し(ステップS312)、ステ
ップS316に処理が移る。
【0065】ステップS316においては、ステップS
315またはステップS312においてクライアント5
0に対して解除完了通知または待機通知が送信されたた
め、障害処理手段5が、解除処理ステータスデータにお
いて解除処理のステータス値を“0”に更新し(解除処
理ステータスリセット)、続いて、後述するロック解除
処理(ステップS317)が行われ、このフローチャー
トにおける処理を終了する。
【0066】なお、ステップS312において、サーバ
1がクライアント50に待機命令を発した場合には、以
上に説明したロック解除処理を定期的に行い、クライア
ント60が異常を示していないかをチェックする。
【0067】(クライアント50および60の処理)つ
ぎに、クライアント50および60の処理について説明
する。クライアント50および60において共有ファイ
ルの更新要求に関する処理は、 1.サーバ1への共有
ファイル更新要求処理(図2のステップS201の処理
開始条件および図5のステップS317の処理に相
当)、 2.サーバ1への更新データ送信処理(図2の
ステップS205の判断条件に相当)、 3.サーバ1
への更新終了通知送信処理(図2のステップS207の
判断条件に相当)、 4.サーバ1からの解除通知受信
処理(図5のステップS305の処理に相当)から構成
される。以上の4つの処理は、いずれも障害処理手段5
4または64において行われる。障害処理手段54また
は64は、図7に示すようなファイル名−ファイル番号
対応テーブル、自クライアント内ファイルロック状況デ
ータおよびモジュールステータスデータを管理してい
る。
【0068】ここでは、容易な理解のために、図2およ
び図5のフローチャートに対応付け、上記した1.サー
バ1への共有ファイル更新要求処理、2.サーバ1への
更新データ送信処理、および、3.サーバ1への更新終
了通知送信処理の処理をクライアント50において説明
し、4.サーバ1からの解除通知受信処理をクライアン
ト60において説明する。
【0069】(1.サーバ1への共有ファイル更新要求
処理)例えば、クライアント50のモジュール55から
共有ファイル更新要求が発せられると、障害処理手段5
4が、その共有ファイルのファイル名とモジュール55
のモジュールIDを取得し、ファイル名−ファイル番号
対応テーブルからファイル名に対応するファイル番号を
取得する。続いて、サーバ1に共有ファイル更新要求
(ファイルロック要求)を示す命令を送信し、サーバ1
からの回答を待つ。
【0070】図8は、クライアント50の回答受信処理
を示すフローチャートであり、図5のステップS317
のクライアント50の処理に相当する。クライアント5
0において、まず、回答受信手段51がサーバ1から送
信された回答を受信する(ステップS401)。続い
て、受信した回答が更新の対象となる共有ファイル(以
下、更新対象ファイル)のロックがすでに解除されてい
ることを示すロック解除完了通知であるかを調べる(ス
テップS402)。ステップS402において、ロック
解除完了通知である場合は、更新対象ファイルを更新可
能すなわちロック可能であり、更新対象ファイルを使用
する処理を行い(ステップS403)、このフローチャ
ートにおける処理を終了する。ステップS402におい
て、ロック解除完了通知でない場合は、更新対象ファイ
ルが使用可能になるまで待機し、このフローチャートに
おける処理を終了する。
【0071】上記した更新対象ファイルを使用する処理
(ステップS403)は、まず、自クライアント内ファ
イルロック状況データの更新対象ファイルに対応するフ
ァイル番号の位置に、更新要求を発したモジュール55
のモジュールIDを書き込む。さらに、そのファイル番
号の示されたブロック内のステータス値を“1”に更新
し、障害処理手段54が、モジュール55にロック完了
回答を送信する。ロック完了回答を受信したモジュール
55は、モジュールステータスデータの自己のモジュー
ル55を示すモジュールIDのブロックに、更新対象フ
ァイルのファイル名を書き込み、さらにそのブロック内
のステータス値を“1”に更新する。また、モジュール
55は常に一定間隔で、タイマ割込みによってそのモジ
ュールIDのブロックにおけるクロック値を更新する。
【0072】(2.サーバ1への更新データ送信処理)
サーバ1への共有ファイル更新要求処理において、サー
バ1からロック可能であることを示す回答を受信し、前
述した処理が終了した後は、モジュール55が、更新対
象ファイルにおいて更新されたデータを障害処理手段5
4を介して順次、サーバ1に送信する。
【0073】(3.サーバ1への更新終了通知送信処
理)つぎに、更新要求を発したモジュール55が、更新
対象ファイルに対する処理すなわち更新データの送信を
完了し、更新対象ファイルのロック解除の要求を示す命
令を障害処理手段54に送信する。障害処理手段54
は、送信された命令から、更新対象ファイルのファイル
名とモジュールIDを読み取る。さらに、障害処理手段
54は、読み取ったファイル名に対応するファイル番号
を、ファイル名−ファイル番号対応テーブルから取得
し、サーバ1に更新対象ファイルのロックを解除するロ
ック解除要求を送信する。続いて、クライアント50
が、サーバ1から更新対象ファイルのロック解除が正常
に行われたことを示す回答を受信した際には、自クライ
アント内ファイルロック状況データの更新対象ファイル
に対応するファイル番号の示すブロック内のステータス
値を“0”に更新し、更新対象ファイルのロック解除の
要求をしたモジュール55にロック解除が完了したこと
を示す回答を送信する。また、モジュールステータスデ
ータにおいて、更新対象ファイルに対応するファイル番
号の示すブロック内のステータス値は、モジュール55
が更新対象ファイルに対する処理を完了した時点で
“0”に更新する。
【0074】(4.サーバ1からの解除通知受信処理)
図2に示すフローチャートにおける前提条件として、ク
ライアント60は、上記した1.〜3.の処理をすでに
完了している。よって、サーバ1からの解除通知受信処
理は、図5のステップS305のクライアント60の処
理に相当する。
【0075】図9は、クライアント60の解除通知受信
処理を示すフローチャートである。クライアント60に
おいて、まず、解除通知受信手段62がサーバ1から送
信された解除通知を受信する(ステップS501)。こ
こで、障害処理手段64が、解除通知からロック解除さ
れた更新対象ファイルのファイル名を取得し、図7に示
すように、ファイル名−ファイル番号対応テーブルから
そのファイル名に対応するファイル番号を取得する。続
いて、自クライアント内ファイルロック状況データの更
新対象ファイルに対応するファイル番号の示すブロック
からステータス値とモジュールIDを取得し、ロックし
ているモジュール65が正常処理中であるかを確認する
(ステップS502)。ステータス値が“0”を示す場
合は、クライアント60内で更新対象ファイルをロック
した認識がないために異常を示していることになる。ス
テータス値が“1”を示す場合は、モジュールステータ
スデータにおいてモジュールIDに対応するブロックか
ら、クロック値、ファイル名およびステータス値を取得
する。取得したクロックを調べて、そのクロックが停止
しておらず、解除要求されたファイル名でステータス値
が“1”を示していれば正常を示している(正常処理
中)ことになり、それ以外は共有ファイルをロックした
まま他の処理に移っている等の異常を示していると判断
される(ステップS503)。
【0076】ステップS503において、更新対象ファ
イルをロックしているクライアント60の特にモジュー
ル65が正常処理中であった場合は、回答送信手段63
からサーバ1に、正常な状態であることを示す正常回答
を送信し(Sステップ504)、このフローチャートに
おける処理を終了する。ステップS503において、正
常処理中でない場合は、回答送信手段63からサーバ1
に、異常な状態であることを示す異常回答を送信し(ス
テップS505)、このフローチャートにおける処理を
終了する。
【0077】よって、あるクライアントがサーバの共有
ファイルをロックした状態で処理を続けている場合に、
その処理が長時間にわたり、ロックしている状態が続い
た時に、何らかの処理上の異常によってその共有ファイ
ルをロックしたままになった時、または何らかの障害に
よってファイルをロックしたまま、クライアント自身の
動作が停止してしまった時に、他のクライアントがその
共有ファイルの使用を待機し、または、使用することが
できるため、システムの信頼性、システムの稼働率の向
上を図ることができる。
【0078】以上に説明したクライアント50および6
0の処理において、理解を容易にするために、クライア
ント50内部のモジュール55が、共有ディスク装置に
格納された共有ファイルの1つに対して更新要求を発
し、その共有ファイルがクライアント60内部のモジュ
ール65によってロックされている場合を想定したが、
実際には、クライアント50内部およびクライアント6
0内部のそれぞれ他のモジュールにおいて、1.サーバ
1への共有ファイル更新要求処理、2.サーバ1への更
新データ送信処理、3.サーバ1への更新終了通知送信
処理および4.サーバ1からの解除通知受信処理が繰り
返し行われている。特に、クライアント60内部のモジ
ュール65における共有ファイルのロック処理は、2.
サーバ1への更新データ送信処理、すなわち図2のステ
ップS205〜ステップS208の処理を繰り返し行っ
ている。すなわち、サーバ1は、このクライアントサー
バシステムに接続されているクライアントの有するすべ
てのモジュールに対して、上述したサーバ1の処理を並
行に行うマルチタスク動作を可能とする。また、このク
ライアントサーバシステムに接続されているすべてのク
ライアントにおいても、複数のモジュール対して、上述
したクライアント50および60の処理を並行に行うマ
ルチタスク動作を可能とする。
【0079】また、以上に説明した本発明に係る実施の
形態において、異なるクライアント間において共有ファ
イル更新要求(クライアント50のモジュール55)お
よび共有ファイルロック中(クライアント60のモジュ
ール65)の場合を示したが、本発明に係る共有ファイ
ル管理システムは、同クライアント内での異なるモジュ
ール間において、例えばクライアント50のモジュール
55の共有ファイル更新要求が発生し、クライアント5
0のモジュール56がその共有ファイルをロックしてい
る場合に対しても、デッドロックの回避が可能である。
また、サーバ自身の共有ファイルロック中に対するクラ
イアントの共有ファイル更新要求、およびその逆の場合
に対しても、本発明に係る共有ファイル管理システムを
適用することができる。
【0080】さらに、以上に説明した本発明に係る実施
の形態においては、1つのサーバと2つのクライアント
を使用したクライアントサーバシステムについて説明し
たが、サーバとクライアントを共に1つ以上使用したク
ライアントサーバシステムであれば、本発明に係る共有
ファイル管理システムを適用することができる。2つ以
上のサーバを使用したクライアントサーバシステムの場
合は、サーバ間において共有ファイルロック中に対する
クライアントの共有ファイル更新要求が生じた場合に
も、本発明に係る共有ファイル管理システムが適用可能
であることは言うまでもない。
【0081】
【発明の効果】以上説明したとおり、この発明によれ
ば、クライアントが共有ファイルを使用しようとする際
に、サーバが、その共有ファイルのロック時間を調べる
ことによってロック状態を取得し、その共有ファイルを
ロックしているクライアントに対する状態確認を行って
から共有ファイルのロックを解除するので、クライアン
ト間において共有ファイルを効率良く使用でき、共有フ
ァイルのデッドロックからも確実に回避できる。
【0082】つぎの発明によれば、第1のクライアント
の処理モジュールが共有ファイルをロックした際に、サ
ーバのサーバ障害処理手段がタイムカウンタ手段に指示
することによりロック時間の計測を開始し、そのロック
時間が所定時間経過した場合に、サーバ障害処理手段が
解除通知手段に指示することにより第1のクライアント
に解除通知を送信する。その際、サーバ障害処理手段は
タイムカウンタ手段に指示することにより回答待ち時間
の計測を開始する。第1のクライアントのクライアント
障害処理手段は、前記解除通知を解除通知手段を介して
取得した際に、前記処理モジュールと応答して処理状態
を調べ、クライアント回答送信手段に指示することによ
りサーバに第1のクライアントの状態を示す回答を送信
する。サーバのサーバ障害処理手段は、前記第1のクラ
イアントの状態を示す回答をサーバ回答受信手段を介し
て取得した際に、その回答の示す内容に応じてロック解
除手段に指示することにより前記共有ファイルのロック
を強制的に解除する。サーバ障害処理手段は、前記回答
待ち時間が所定時間経過した場合にも、ロック解除手段
に指示することにより前記共有ファイルのロックを強制
的に解除する。第2のクライアントの処理モジュールが
第1のクライアントによってロック状態にある共有ファ
イルをロックしようとする際には、第1のクライアント
に対して上記した処理が行われつつ、サーバのサーバ障
害処理手段が前記サーバ回答受信手段を介して取得した
第1のクライアントからの回答に応じてサーバ回答送信
手段に指示することにより第2のクライアントに指示を
示す回答を送信する。サーバ障害処理手段は、第1のク
ライアントにおいて前記回答待ち時間が所定時間経過
し、ロック解除手段により前記共有ファイルのロックが
強制的に解除された場合にも、サーバ回答送信手段に指
示することにより第2のクライアントに共有ファイル使
用可能または待機を示す回答を送信する。第2のクライ
アントのクライアント障害処理手段は、その回答をクラ
イアント回答受信手段を介して取得した際に、その回答
の示す指示に従って前記第2のクライアントの処理モジ
ュールに共有ファイル使用可能または待機の指示を与え
る。よって、他のクライアントによってロックされてい
る共有ファイルの強制的なロック解除が確実に行われ、
クライアントサーバシステムの信頼性および安定性を向
上させることができる。
【0083】つぎの発明によれば、クライアントに対し
て、他のクライアントからの共有ファイル使用要求が発
せられた場合とロック時間が所定時間を超えた場合とを
共有ファイルのロック解除の条件としているので、クラ
イアントサーバシステムの信頼性および安定性をより高
く向上させることができる。
【0084】つぎの発明によれば、ロックされている共
有ファイルのロック時間が所定時間を超えた場合に、そ
の共有ファイルをロックしているクライアントからの回
答が正常動作を示す場合には、ロック時間を初期化し、
その共有ファイルをロックしているクライアントからの
回答が異常動作を示す場合には、そのロックされている
共有ファイルのロックを解除して、ロック時間を初期化
するので、クライアントサーバシステムの信頼性および
安定性をより高く向上させることができる。
【0085】つぎの発明によれば、サーバが、ロックさ
れている共有ファイルを使用する要求をその共有ファイ
ルをロックしているクライアント以外のクライアントか
ら受信した場合に、その共有ファイルをロックしている
クライアントからの回答が正常動作を示す場合には、そ
のロックされている共有ファイルを使用しようとするク
ライアントに待機を指示し、共有ファイルをロックして
いるクライアントからの回答が異常動作を示す場合に
は、そのロックされている共有ファイルのロックを解除
して、そのロックされている共有ファイルを使用しよう
とするクライアントに共有ファイル使用可能を指示する
ので、クライアントサーバシステムの信頼性および安定
性をより高く向上させることができる。
【0086】つぎの発明によれば、ロックされている共
有ファイルのロック時間が所定時間を超えた場合に、回
答待ち時間が所定時間を超えた場合には、そのロックさ
れている共有ファイルのロックを解除して、ロック時間
を初期化するので、クライアントサーバシステムの信頼
性および安定性をより高く向上させることができる。
【0087】つぎの発明によれば、サーバが、ロックさ
れている共有ファイルを使用する要求をその共有ファイ
ルをロックしているクライアント以外のクライアントか
ら受信した場合に、回答待ち時間が所定時間を超えた場
合には、そのロックされている共有ファイルのロックを
解除して、そのロックされている共有ファイルを使用し
ようとするクライアントに共有ファイル使用可能を指示
するので、クライアントサーバシステムの信頼性および
安定性をより高く向上させることができる。
【0088】つぎの発明によれば、クライアントが、自
己のクライアントの内部において処理モジュールから要
求される共有ファイルのロックまたはロック解除に応じ
て共有ファイルのロック状態を管理し、サーバからの解
除通知を受信した場合に、共有ファイルをロックしてい
る処理モジュールを調べ、サーバに対してその処理モジ
ュールの正常状態または異常状態を示す回答を行うの
で、クライアントサーバシステムの信頼性および安定性
をより高く向上させることができる。
【図面の簡単な説明】
【図1】 本発明に係る共有ファイル管理システムを説
明する図である。
【図2】 本発明に係る共有ファイル管理システムの動
作を示すフローチャートである。
【図3】 図1のファイルロック管理情報テーブル8を
説明する図である。
【図4】 図1のブロック排他制御手段3の動作を説明
する図である。
【図5】 図2のロック解除処理の動作をを示すフロー
チャートである。
【図6】 図1の障害処理手段5の動作を説明する図で
ある。
【図7】 図1の障害処理手段54の動作を説明する図
である。
【図8】 本発明に係る共有ファイル管理システムのク
ライアントの動作を示すフローチャートである。
【図9】 本発明に係る共有ファイル管理システムのク
ライアントの動作を示すフローチャートである。
【図10】 従来の共有ファイル管理方法を適用したク
ライアントサーバシステムのブロック図である。
【図11】 従来の共有ファイル管理方法を示すフロー
チャートである。
【符号の説明】
1 サーバ、2 共有ディスク装置、3 ブロック排他
制御手段、4 ロック解除手段、5,54,64 障害
処理手段、6 更新管理手段、7 タイムカウンタ手
段、8 ファイルロック管理情報テーブル、9 更新デ
ータ管理ファイル、10 解除通知手段、11,51,
61 回答受信手段、12,53,63回答送信手段、
50,60 クライアント、10 解除通知受信手段、
55,56,65,66 モジュール、100 通信回
線。

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】 通信回線で接続された少なくとも1つの
    サーバと少なくとも1つのクライアントと前記サーバお
    よびクライアントから共有して使用可能な共有ファイル
    が格納された共有ディスク装置とから構成されるクライ
    アントサーバシステムの共有ファイルを管理するための
    共有ファイル管理システムにおいて、 前記サーバは、前記共有ファイルを使用するクライアン
    トからの要求に応じて前記共有ファイルのロック時間を
    計測し、前記ロック時間に応じて前記共有ファイルをロ
    ックしているクライアントに対する状態確認を行い、前
    記状態確認の結果に応じて前記共有ファイルのロックを
    解除することを特徴とする共有ファイル管理システム。
  2. 【請求項2】 通信回線で接続された少なくとも1つの
    サーバと少なくとも1つのクライアントと前記サーバお
    よびクライアントから共有して使用可能な共有ファイル
    が格納された共有ディスク装置とから構成されるクライ
    アントサーバシステムの共有ファイルを管理するための
    共有ファイル管理システムにおいて、 前記サーバは、 前記共有ファイルのロック状態を管理するファイルロッ
    ク管理情報テーブルと、 前記共有ファイルをロックし
    ている第1のクライアントに対して、前記共有ファイル
    のロックの解除を要求する解除通知を行う解除通知手段
    と、 前記解除通知が行われてから経過した回答待ち時間およ
    び前記共有ファイルがロックされてから経過したロック
    時間を計測するタイムカウンタ手段と、 前記第1のクライアントから前記解除通知に対する回答
    を受信するサーバ回答受信手段と、 ロックされている前記共有ファイルを使用する第2のク
    ライアントに対して、共有ファイル使用可能または待機
    の回答を行うサーバ回答送信手段と、 前記ファイルロック管理情報テーブルを更新して前記共
    有ファイルのロックを強制的に解除するロック解除手段
    と、 前記タイムカウンタ手段において計測されたロック時間
    に応じて前記解除通知手段に解除通知の送信を要求し、
    前記タイムカウンタ手段において計測された回答待ち時
    間または前記サーバ回答受信手段によって受信された回
    答に応じて前記ロック解除手段へのロック解除または前
    記サーバ回答送信手段への前記共有ファイル使用可能ま
    たは待機を示す回答の送信を要求するサーバ障害処理手
    段と、 前記第1のクライアントから前記共有ファイルの使用の
    終了を示す終了通知を受信した場合に、前記ファイルロ
    ック管理情報テーブルを更新して前記共有ファイルのロ
    ックを解除するブロック排他制御手段と、 を備え、 前記クライアントは、 複数の処理モジュールと、 前記サーバから前記解除通知を受信する解除通知受信手
    段と、 前記サーバに対して前記クライアントの状態を回答する
    クライアント回答送信手段と、 前記サーバから前記共有ファイル使用可能または待機の
    回答を受信するクライアント回答受信手段と、 前記解除通知受信手段によって受信された解除通知に応
    じて前記クライアント回答送信手段に前記クライアント
    の状態を示す回答の送信を要求し、前記クライアント回
    答受信手段によって受信された回答に応じて前記処理モ
    ジュールに前記共有ファイル使用可能または待機の指示
    を行うクライアント障害処理手段と、 を備えることを特徴とする共有ファイル管理システム。
  3. 【請求項3】 前記サーバ障害処理手段は、前記第2の
    クライアントから前記第1のクライアントによってロッ
    クされている共有ファイルを使用する要求を受信しまた
    は前記第1のクライアントによってロックされている共
    有ファイルの前記ロック時間が所定時間を超え、前記第
    1のクライアントに対して前記ロックされている共有フ
    ァイルの解除通知が送信されていない場合に、前記解除
    通知手段に前記解除通知の送信を要求することを特徴と
    する請求項2に記載の共有ファイル管理システム。
  4. 【請求項4】 前記サーバ障害処理手段は、前記第1の
    クライアントによってロックされている共有ファイルの
    前記ロック時間が所定時間を超えた場合において、前記
    サーバ回答受信手段によって受信された回答が前記第1
    のクライアントの正常動作を示す場合には、前記タイム
    カウンタ手段に前記ロック時間の初期化を要求し、前記
    サーバ回答受信手段によって受信された回答が前記第1
    のクライアントの異常動作を示す場合には、前記ロック
    解除手段にロック解除を要求し、前記タイムカウンタ手
    段に前記ロック時間の初期化を要求することを特徴とす
    る請求項3に記載の共有ファイル管理システム。
  5. 【請求項5】 前記サーバ障害処理手段は、前記第2の
    クライアントから前記第1のクライアントによってロッ
    クされている共有ファイルを使用する要求を受信した場
    合において、前記サーバ回答受信手段によって受信され
    た回答が前記第1のクライアントの正常動作を示す場合
    には、前記サーバ回答送信手段に前記第2のクライアン
    トに対して待機を示す回答の送信を要求し、前記サーバ
    回答受信手段によって受信された回答が前記第1のクラ
    イアントの異常動作を示す場合には、前記ロック解除手
    段にロック解除を要求し、前記サーバ回答送信手段に前
    記第2のクライアントに対して前記共有ファイル使用可
    能を示す回答の送信を要求することを特徴とする請求項
    3または4に記載の共有ファイル管理システム。
  6. 【請求項6】 前記サーバ障害処理手段は、前記第1の
    クライアントによってロックされている共有ファイルの
    前記ロック時間が所定時間を超えた場合において、前記
    第1のクライアントに対して前記回答待ち時間が所定時
    間を超えた場合には、前記ロック解除手段にロック解除
    を要求し、前記タイムカウンタ手段に前記ロック時間の
    初期化を要求することを特徴とする請求項2〜5のいず
    れか一つに記載の共有ファイル管理システム。
  7. 【請求項7】 前記サーバ障害処理手段は、前記第2の
    クライアントから前記第1のクライアントによってロッ
    クされている共有ファイルを使用する要求を受信した場
    合において、前記回答待ち時間が所定時間を超えた場合
    には、前記ロック解除手段にロック解除を要求し、前記
    サーバ回答送信手段に前記第2のクライアントに対して
    前記共有ファイル使用可能を示す回答の送信を要求する
    ことを特徴とする請求項3〜6のいずれか一つに記載の
    共有ファイル管理システム。
  8. 【請求項8】 前記クライアント障害処理手段は、自己
    のクライアントにおいて前記処理モジュールからの共有
    ファイルのロックまたはロック解除要求に応じて前記共
    有ファイルのロック状態を管理し、前記解除通知受信手
    段によって解除通知が受信された場合において、前記共
    有ファイルをロックしている処理モジュールが正常な処
    理を示す場合は、前記クライアント回答送信手段に自己
    のクライアントの正常状態を示す回答の送信を要求し、
    前記共有ファイルをロックしている処理モジュールが前
    記共有ファイルをロックしたまま他の処理に移っている
    場合は、前記クライアント回答送信手段に自己のクライ
    アントの異常状態を示す回答の送信を要求することを特
    徴とする請求項2〜7のいずれか一つに記載の共有ファ
    イル管理システム。
JP10141802A 1998-05-22 1998-05-22 共有ファイル管理システム Pending JPH11338754A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10141802A JPH11338754A (ja) 1998-05-22 1998-05-22 共有ファイル管理システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10141802A JPH11338754A (ja) 1998-05-22 1998-05-22 共有ファイル管理システム

Publications (1)

Publication Number Publication Date
JPH11338754A true JPH11338754A (ja) 1999-12-10

Family

ID=15300482

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10141802A Pending JPH11338754A (ja) 1998-05-22 1998-05-22 共有ファイル管理システム

Country Status (1)

Country Link
JP (1) JPH11338754A (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007074240A (ja) * 2005-09-06 2007-03-22 Toshiba Corp コンテンツリスト出力装置および方法
JP2009064241A (ja) * 2007-09-06 2009-03-26 Seiko Epson Corp 文書管理装置、文書管理方法及び文書管理プログラム
JP2011164918A (ja) * 2010-02-09 2011-08-25 Nec Corp データベース管理装置、データベース管理方法、及びプログラム
WO2012032873A1 (ja) * 2010-09-08 2012-03-15 株式会社 山武 共有ファイル管理システム、その制御方法、およびプログラム
JP2013521565A (ja) * 2010-03-04 2013-06-10 アリババ グループ ホールディング リミテッド サブバージョンリポジトリをバックアップする方法及び装置
CN106559282A (zh) * 2015-09-29 2017-04-05 中兴通讯股份有限公司 一种锁定文件管理方法和装置
CN107515935A (zh) * 2017-08-29 2017-12-26 郑州云海信息技术有限公司 一种解除文件锁故障的方法及系统

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007074240A (ja) * 2005-09-06 2007-03-22 Toshiba Corp コンテンツリスト出力装置および方法
JP2009064241A (ja) * 2007-09-06 2009-03-26 Seiko Epson Corp 文書管理装置、文書管理方法及び文書管理プログラム
JP2011164918A (ja) * 2010-02-09 2011-08-25 Nec Corp データベース管理装置、データベース管理方法、及びプログラム
JP2013521565A (ja) * 2010-03-04 2013-06-10 アリババ グループ ホールディング リミテッド サブバージョンリポジトリをバックアップする方法及び装置
WO2012032873A1 (ja) * 2010-09-08 2012-03-15 株式会社 山武 共有ファイル管理システム、その制御方法、およびプログラム
JP2012058960A (ja) * 2010-09-08 2012-03-22 Yamatake Corp 共有ファイル管理システム、その制御方法、およびプログラム
CN106559282A (zh) * 2015-09-29 2017-04-05 中兴通讯股份有限公司 一种锁定文件管理方法和装置
CN107515935A (zh) * 2017-08-29 2017-12-26 郑州云海信息技术有限公司 一种解除文件锁故障的方法及系统

Similar Documents

Publication Publication Date Title
CN1753391B (zh) 使用具有同步频率的时钟的可靠的消息通信
US20040250173A1 (en) Apparatus and method that provides a primary server and a backup server that both support a RADIUS client and share an IP address
US20080072289A1 (en) Unauthorized Connection Detection System and Unauthorized Connection Detection Method
CA2493214A1 (en) A telemetry system
CN103493429A (zh) 注册和提供trap事件的通知的方法以及使用该方法的终端
JPH11338754A (ja) 共有ファイル管理システム
EP1571564A2 (en) Method and system for network jack location mapping
WO2009087885A1 (ja) サーバシステムとそのイベントメッセージ送信方法、クライアント端末とその接続方法とプログラム、記録媒体
JP2003323360A (ja) 仲介装置、画像形成装置管理システム、画像形成装置管理方法、画像形成装置管理プログラム及び記録媒体
JP2003108449A (ja) ネットワークに接続された仲介装置
EP4257433A1 (en) Information transmission method and communication device
JP5065148B2 (ja) 設備管理システム及び端末コントローラ
JPH0879248A (ja) ネットワークアドレス管理装置
JP2011035512A (ja) ネットワーク監視システム
KR100394553B1 (ko) 아이피씨시스템에서특정프로세서에대한재시동장치및방법
JP3526073B2 (ja) 電子メールの配信方法及び配信システム
JP2004362402A (ja) ユーザ登録機能を有する装置
JP4539258B2 (ja) 監視装置
JP3091791B2 (ja) メッセージ型データ処理システム
US6725266B1 (en) System and method for changing the status of a system service
US20020184553A1 (en) Method to invoke wide-area objects in distributed computer systems
JPS62135042A (ja) デ−タ通信における装置アドレス自動認識方式
JP2002358215A (ja) シン・クライアント管理システムおよびシン・クライアント
JP2000181825A (ja) ネットワーク管理システム、方法及びデータ処理装置
JP2513120B2 (ja) 無停止型情報処理装置