(57)【要約】【課題】  クライアントがロックしたまま放置したファイルを、アンロックするための技術を提供する【解決手段】  ファイルを記憶するファイル記憶手段と、ファイルに対するアクセスがあった場合に当該ファイルをロックし、当該ファイルへのアクセスが終了した場合にロックを解除するロック制御手段と、から構成されるファイルサーバ２００と、ファイルサーバ２００のファイル記憶手段に記憶されたファイルにアクセスするクライアント３００と、クライアント３００が動作しているか否かを監視するクライアント監視手段と、クライアント監視手段が動作していないクライアント３００を検出した場合、当該クライアントが使用していたファイルサーバ２００に、当該クライアント３００を特定するための通知情報を送信する通知手段と、から構成されるロック監視サーバ１００と、から構成され、ロック制御手段は通知情報を受け取った場合にロックを解除する。【選択図】    図１
2006285867.tif 000002
【特許請求の範囲】
【請求項１】
ファイルを記憶するファイル記憶手段と、前記ファイルに対するアクセスがあった場合に当該ファイルをロックし、当該ファイルへのアクセスが終了した場合にロックを解除するロック制御手段と、から構成されるファイルサーバと、
前記ファイルサーバのファイル記憶手段に記憶された前記ファイルにアクセスするクライアントと、
前記クライアントが動作しているか否かを監視するクライアント監視手段と、前記クライアント監視手段が動作していないクライアントを検出した場合、当該クライアントが使用していたファイルサーバに、当該クライアントを特定するための通知情報を送信する通知手段と、から構成される監視サーバと、から構成されるファイル管理システムであって、
前記ロック制御手段は、前記通知手段からの通知情報を受け取った場合に、当該通知情報により特定されるクライアントがアクセスしていたファイルのロックを解除する、
ことを特徴とするファイル管理システム。
【請求項２】
前記通知手段は、動作していないクライアントを識別するための識別情報を含む前記通知情報を送信し、
前記ファイルサーバは、ロックしたクライアントとロックされたファイルとを対応付けて記憶し、ロックしたクライアントとロックされたファイルとを対応付けた記憶内容と前記通知情報とに基づいて、前記通知情報に含まれるクライアント識別情報により特定されるクライアントによってロックされたファイルを特定して前記ロック制御手段に通知する、ファイル管理手段を更に有し、
前記ロック制御手段は、前記ファイル管理手段により特定されたファイルのロックを解除する、
ことを特徴とする請求項１に記載のファイル管理システム。
【請求項３】
前記クライアント監視手段は、前記クライアントに応答要求情報を送信し、
前記クライアントは、前記クライアント監視手段からの応答要求情報に応答して返信情報を前記クライアント監視手段に送信する、ファイル管理システムであって、
前記クライアント監視手段は、前記クライアントから所定の期間内に返信情報を受け取らない場合、前記クライアントが動作していないものとして検知する、
ことを特徴とする請求項１又は２に記載のファイル管理システム。
【請求項４】
ネットワークに接続されたクライアントが動作しているか否かを監視するクライアント監視手段と、
前記クライアント監視手段が動作していないクライアントを検知した場合、当該クライアントが使用していたファイルサーバに、当該クライアントを特定するための通知情報を送信する通知手段と、から構成される、
ことを特徴とする監視サーバ。
【請求項５】
前記通知手段は、動作していないクライアントを識別するための識別情報を含む前記通知情報を送信する、
ことを特徴とする請求項４に記載の監視サーバ。
【請求項６】
前記クライアント監視手段は、前記クライアントに返信情報を送信させるための応答要求情報を送信し、前記クライアントから所定の期間内に返信情報を受け取らない場合、前記クライアントが動作していないものとして検知する、
ことを特徴とする請求項４又は５に記載の監視サーバ。
【請求項７】
ファイルを記憶するファイル記憶手段と、前記ファイルに対するアクセスがあった場合に当該ファイルをロックし、当該ファイルへのアクセスが終了した場合にロックを解除するロック制御手段と、から構成されるファイル管理サーバであって、
前記ロック制御手段は、動作していないクライアントを特定するための通知情報を受け取った場合にロックを解除する、
ことを特徴とするファイルサーバ。
【請求項８】
ファイルをロックしたクライアントとロックされたファイルとを対応付けて記憶し、ロックしたクライアントとロックされたファイルとを対応付けた記憶内容と前記通知情報とに基づいて、前記通知情報に含まれるクライアント識別情報により特定されるクライアントによってロックされたファイル特定して前記ロック制御手段に通知する、ファイル管理手段を更に有し、
前記ロック制御手段は、前記ファイル管理手段により特定されたファイルのロックを解除する、
ことを特徴とする請求項７に記載のファイルサーバ。
【請求項９】
クライアントが接続されているサーバの識別情報と、当該サーバにロックしたファイルが有るか否かを示す情報と、を対応付けて取得するロック状態取得ステップと、
前記クライアントが動作しているか否かを監視するクライアント監視ステップと、
前記クライアントが前記ファイルをロックしており、且つ、動作していないことを検知した場合に、ロックされた前記ファイルのロックを解除するロック解除ステップと、
を備えることを特徴とするファイル管理方法。
【請求項１０】
コンピュータを、
クライアントが動作しているか否かを監視するクライアント監視手段と、
前記クライアント監視手段が動作していないクライアントを検知した場合、当該クライアントが使用していたファイルサーバに、当該クライアントを通知するための通知情報を送信する通知手段と、として機能させる、
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ファイル管理システムにおける、ファイルへのアクセス制限を変更するための技術に関する。
【背景技術】
【０００２】
ファイルを保存するサーバと、ネットワークを介してサーバに接続されるクライアントとを有するファイル管理システムにおいて、サーバが保存するファイルを、クライアントが当該ファイルに自由にアクセスできるＮＦＳ(Network File System)という技術が知られており、多くのＯＳ(Operating System)が採用している。
【０００３】
多くの場合、ＮＦＳは、ファイルの内容の一貫性が保たれなくなることを防ぐために、あるクライアントがファイルにアクセスしているときに、別のクライアントが当該ファイルにアクセスすることを禁じ（ロック）、ファイルへのアクセスが終了するとロックを解除する（アンロック）。
また、非特許文献１によれば、ＮＦＳを用いた場合、ファイルをロックしたクライアントでなければ、当該ファイルのアンロックを行うことができない。
【非特許文献１】Brent Callaghan、「ＮＦＳバイブル」、アスキー出版、２００１年１０月１日、ｐ．３０２−３０３
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上述のような、ロック、アンロックが実行されるＮＦＳでは、あるファイルにアクセス中のクライアントが動作しなくなった（ダウンした）場合、当該アクセス中であったファイルは、ロックされたままの状態でサーバ内に存在することとなる。このとき、他のクライアントが当該ファイルにアクセスするためには、動作しなくなったクライアントを再起動し、当該ファイルをアンロックしなければならない。また、ファイルをロックしたまま動作しなくなったクライアントの再起動が不可能な場合は、他のクライアントが当該ファイルにアクセスするためには、サーバを再起動しなければならないという問題がある。
これらの問題は、ファイル管理システムの可用性の低下を引き起こす。
【０００５】
本発明は、上記問題に鑑みてなされたもので、クライアントがダウンした場合に、当該クライアントがロックしたまま放置したファイルを、アンロックするファイル管理システム及びファイル管理方法を提供すること、及び、当該ファイル管理システム及び当該ファイル管理方法に適した監視サーバ、ファイルサーバ、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の第１の観点に係るファイル管理システムは、ファイルを記憶するファイル記憶手段と、前記ファイルに対するアクセスがあった場合に当該ファイルをロックし、当該ファイルへのアクセスが終了した場合にロックを解除するロック制御手段と、から構成されるファイルサーバと、前記ファイルサーバのファイル記憶手段に記憶された前記ファイルにアクセスするクライアントと、前記クライアントが動作しているか否かを監視するクライアント監視手段と、前記クライアント監視手段が動作していないクライアントを検出した場合、当該クライアントが使用していたファイルサーバに、当該クライアントを特定するための通知情報を送信する通知手段と、から構成される監視サーバと、から構成されるファイル管理システムであって、前記ロック制御手段は、前記通知手段からの通知情報を受け取った場合に、当該通知情報により特定されるクライアントがアクセスしていたファイルのロックを解除する、ことを特徴とする。
なお、本発明において、「クライアントが動作していない」とは、クライアント装置全体が動作していないことのみならず、クライアント装置上で動作するプロセスにおいて、ファイルサーバのファイルにアクセスしているプロセスのうちの１つが動作していないことも含むものとする。
【０００７】
前記通知手段は、動作していないクライアントを識別するための識別情報を含む前記通知情報を送信し、前記ファイルサーバは、ロックしたクライアントとロックされたファイルとを対応付けて記憶し、ロックしたクライアントとロックされたファイルとを対応付けた記憶内容と前記通知情報とに基づいて、前記通知情報に含まれるクライアント識別情報により特定されるクライアントによってロックされたファイルを特定して前記ロック制御手段に通知する、ファイル管理手段を更に有し、前記ロック制御手段は、前記ファイル管理手段により特定されたファイルのロックを解除してもよい。
【０００８】
前記クライアント監視手段は、前記クライアントに応答要求情報を送信し、前記クライアントは、前記クライアント監視手段からの応答要求情報に応答して返信情報を前記クライアント監視手段に送信する、ファイル管理システムであって、前記クライアント監視手段は、前記クライアントから所定の期間内に返信情報を受け取らない場合、前記クライアントが動作していないものとして検知してもよい。
【０００９】
本発明の第２の観点に係る監視サーバは、ネットワークに接続されたクライアントが動作しているか否かを監視するクライアント監視手段と、前記クライアント監視手段が動作していないクライアントを検知した場合、当該クライアントが使用していたファイルサーバに、当該クライアントを特定するための通知情報を送信する通知手段と、から構成される、ことを特徴とする。
【００１０】
前記通知手段は、動作していないクライアントを識別するための識別情報を含む前記通知情報を送信してもよい。
【００１１】
前記クライアント監視手段は、前記クライアントに返信情報を送信させるための応答要求情報を送信し、前記クライアントから所定の期間内に返信情報を受け取らない場合、前記クライアントが動作していないものとして検知してもよい。
【００１２】
本発明の第３の観点に係るファイルサーバは、ファイルを記憶するファイル記憶手段と、前記ファイルに対するアクセスがあった場合に当該ファイルをロックし、当該ファイルへのアクセスが終了した場合にロックを解除するロック制御手段と、から構成されるファイル管理サーバであって、前記ロック制御手段は、動作していないクライアントを特定するための通知情報を受け取った場合にロックを解除する、ことを特徴とする。
【００１３】
前記ファイルサーバは、ファイルをロックしたクライアントとロックされたファイルとを対応付けて記憶し、前記通知情報に含まれるクライアント識別情報により特定されるクライアントによってロックされたファイル特定して前記ロック制御手段に通知する、ファイル管理手段を更に有し、前記ロック制御手段は、前記ファイル管理手段により特定されたファイルのロックを解除してもよい。
【００１４】
本発明の第４の観点に係るファイル管理方法は、クライアントが接続されているサーバの識別情報と、当該サーバにロックしたファイルが有るか否かを示す情報と、を対応付けて取得するロック状態取得ステップと、前記クライアントが動作しているか否かを監視するクライアント監視ステップと、前記クライアントが前記ファイルをロックしており、且つ、動作していないことを検知した場合に、ロックされた前記ファイルのロックを解除するロック解除ステップと、を備えることを特徴とする。
【００１５】
本発明の第５の観点に係るプログラムは、コンピュータを、クライアントが動作しているか否かを監視するクライアント監視手段と、前記クライアント監視手段が動作していないクライアントを検知した場合、当該クライアントが使用していたファイルサーバに、当該クライアントを通知するための通知情報を送信する通知手段と、として機能させる、ことを特徴とする。
【発明の効果】
【００１６】
本発明のファイル管理システム及びファイル管理方法は、クライアントが動作しているか否かを監視し、動作していないクライアントを検知した場合、当該クライアントがロックしたファイルのロックを解除する。このため、クライアントがダウンした場合に、当該クライアントがロックしたまま放置したファイルを、アンロックすることができる。
また、本発明の監視サーバ、ファイルサーバ、及びプログラムは、上記のファイル管理システム及びファイル管理方法に適する。
【発明を実施するための最良の形態】
【００１７】
本発明の実施形態に係るファイル管理システムを、図面を参照して説明する。
【００１８】
本実施形態のファイル管理システム１は、図１に示すように、通信ネットワークＣと、通信ネットワークＣに接続されたロック管理サーバ１００と、通信ネットワークＣに接続されたファイルサーバ２００と、通信ネットワークＣに接続されたクライアント３００Ａ乃至３００Ｃとから構成される。なお、以下では、クライアント３００Ａ乃至３００Ｃを総称して、クライアント３００と呼ぶ。
また、本実施の形態では、ファイル管理システム１は、ファイルサーバ２００を１台、クライアント３００を３台のみ備えているが、ファイルサーバ２００及びクライアント３００のいずれについても数の制限はない。
【００１９】
通信ネットワークＣは、例えば、ＴＣＰ／ＩＰ(Transmission Control Protocol/Internet Protocol)などの通信プロトコルに基づく通信ネットワークである。
【００２０】
ロック管理サーバ１００は、図２に示すように、記憶部１１０と、制御部１２０と、通信部１３０と、から構成される。
【００２１】
記憶部１１０は、例えば、ワークエリアとなるＲＡＭ(Random Access Memory)と、制御部１２０の動作を制御するためのＯＳ（Operating System）、アプリケーションプログラム等を記憶するハードディスク装置と、から構成される。より詳細には、記憶部１１０は、例えば、クライアント３００の動作状態を定期的に監視するクライアント監視処理等を制御部１２０に実行させるためのプログラム等を、ハードディスクに記憶する。
【００２２】
また、記憶部１１０は、対応テーブル１１１を記憶する。図３に示すように、対応テーブル１１１は、クライアント３００を識別するためのクライアント識別データと、クライアント３００の状態を示す状態フラグ（up又はdown）と、クライアント３００がファイルをロックしたかどうかを示すロックフラグ（on又はoff）と、クライアント３００が使用（マウント）しているファイルサーバ２００を示すサーバ識別データと、を対応付けて記憶するテーブルである。
【００２３】
例えば、図３に示した例において、対応テーブル１１１の第１行目は、クライアント３００Ａは、動作していない(down)が、ファイルをロックした(on)ままであって、マウントしているファイルサーバはファイルサーバ２００であることを示す。
【００２４】
また、対応テーブル１１１の第２行目は、クライアント３００Ｂは、動作している状態であって(up)、ファイルをロックしておらず(off)、マウントしているファイルサーバはファイルサーバ２００であることを示す。
【００２５】
通信部１３０は、例えば、ＮＩＣ(Network Interface Card)のような通信装置を有し、制御部１２０による制御に従い、通信ネットワークＣを介してファイルサーバ２００及びクライアント３００との間でデータの送受信を行う。
【００２６】
制御部１２０は、例えば、ＣＰＵ（Central Processing Unit）を有し、記憶部１１０に記憶されたプログラムに基づき、演算処理を行い、各部を制御する。
【００２７】
例えば、制御部１２０は、通信ネットワークＣを介してクライアント３００の状態（動作しているか否か）を監視し、動作していないクライアント３００が見つかった場合、当該クライアントがマウントしているファイルサーバ２００に、ダウン通知情報を送信する。なお、ダウン通知情報は、例えば、対応テーブル１１１における、ダウンしたクライアント３００に対応するクライアント識別データを含んだ情報である。
【００２８】
ファイルサーバ２００は、図４に示すように、記憶部２１０と、制御部２２０と、通信部２３０と、ファイル記憶部２４０と、から構成される。
【００２９】
記憶部２１０は、例えば、ワークエリアとなるＲＡＭと、制御部２２０の動作を制御するためのＯＳ、アプリケーションプログラム等を記憶するハードディスク装置と、から構成される。記憶部２１０は、例えば、ロックされたまま残されたファイルのロックを解除するための強制アンロック処理等を実行するためのプログラム等を、ハードディスクに記憶する。
【００３０】
また、記憶部２１０は、ロックマネジメントテーブル２１１を記憶する。図５に示すように、ロックマネジメントテーブル２１１は、クライアント３００を示すクライアント識別データと、クライアントがロックしたファイルを示すロックファイル識別データと、を対応付けて記憶するテーブルである。
【００３１】
例えば、ロックマネジメントテーブル２１１の第１行目は、クライアント３００Ａが、「thesis.doc」というファイルをロックしていることを示す。
【００３２】
通信部２３０は、例えば、ＮＩＣ(Network Interface Card)のような通信装置を有し、制御部２２０による制御に基づき、通信ネットワークＣを介してロック管理サーバ１００及びクライアント３００との間で、データの送受信を行う。
【００３３】
ファイル記憶部２４０は、例えば、ハードディスク装置から構成され、クライアント３００がアクセスするファイルを保存する。
【００３４】
制御部２２０は、例えば、ＣＰＵを有し、記憶部２１０に記憶されたプログラムに基づき、演算処理を行い、各部を制御する。
【００３５】
例えば、制御部２２０は、クライアント３００からのファイルへのアクセスに応答し、ロックして当該ファイルに対する他のクライアント３００からのアクセスを禁止し、アクセスが終了したファイルをアンロックして、いずれのクライアント３００でも当該ファイルにアクセスできるようにする。また、制御部２２０は、ファイルへのアクセス状況に応じて、ロックマネジメントテーブル２１１を更新しながら管理する。
【００３６】
また、制御部２２０は、ロック管理サーバ１００から、ダウン通知情報を受け取ると、当該ファイルへのアクセスを可能とするための強制アンロック処理を実行する。なお、強制アンロック処理については、後で詳細に説明する。
【００３７】
クライアント３００は、例えば、パーソナルコンピュータ、ワークステーション等により構成される。クライアント３００は、通信ネットワークＣに接続され、プログラムによる制御やユーザによる操作に応じて、当該通信ネットワークＣを介してファイルサーバ２００のファイル記憶部２４０に記憶されたファイルにアクセスする。
【００３８】
このように構成される、ファイル管理システム１において、ロック管理サーバ１００が定常的に実行する、クライアント監視処理の手順を、図６に示すフローチャートを参照して説明する。
【００３９】
ロック管理サーバ１００は、所定の間隔で（例えば１０秒毎に）、クライアント監視処理を実行する。
【００４０】
クライアント監視処理が開始されると、制御部１２０は、通信部１３０及び通信ネットワークＣを介して、通信ネットワークＣに接続されている全てのクライアント３００（３００Ａ〜３００Ｃ）と通信し、各クライアント３００の状態を取得する（ステップＳ１００）。より詳細には、制御部１２０は、各クライアント３００に、マウントしているファイルサーバ２００及びロックの有無を問い合わせる。これに対し、各クライアント３００が応答した場合には、制御部１２０は、各クライアント３００がマウントするファイルサーバ２００及びロックの有無についての情報を取得する。一方、所定の期間内に問い合わせに応答しないクライアント３００がある場合、そのクライアント３００は動作していない（down）ものとして処理をする。
【００４１】
次に、制御部１２０は、各クライアント３００の状態に応じて、対応テーブル１１１を更新する（ステップＳ１１０）。
【００４２】
次に、制御部１２０は、更新後の対応テーブル１１１に、状態フラグがdownであり、且つ、ロックフラグがonであるクライアント３００が有るか否かを判定する（ステップＳ１２０）。
【００４３】
状態フラグがdownであり、且つ、ロックフラグがonであるクライアント３００がない場合（ステップＳ１２０；Ｎｏ）、ファイルサーバ２００は、クライアント監視処理を終了する。
【００４４】
一方、状態フラグがdownであり、且つ、ロックフラグがonであるクライアント３００がある場合（ステップＳ１２０；Ｙｅｓ）、制御部１２０は、当該クライアント３００のクライアント識別データを含むダウン通知情報を生成し、当該クライアントがマウントしているファイルサーバ２００に対し、当該ダウン通知情報を送信する（ステップＳ１３０）。
【００４５】
そして、制御部１２０は、ダウン通知情報の送信が済んだクライアントについて、対応テーブル１１１のロックフラグをoffに設定するように更新する（ステップＳ１４０）。
【００４６】
ロック管理サーバ１００は、以上でクライアント監視処理を終了する。
なお、クライアント監視処理が終了後、所定の時間が経過すると、ロック管理サーバ１００は、クライアント監視処理を繰り返し実行する。
【００４７】
次に、ダウン通知情報を受け取ったファイルサーバ２００が実行する、強制アンロック処理の手順を、図７に示すフローチャートを参照して説明する。
【００４８】
ファイルサーバ２００は、ダウン通知情報を受け取ると、強制アンロック処理を開始する。
強制アンロック処理を開始すると、制御部２２０は、ダウン通知情報に含まれるクライアント識別データと、ロックマネジメントテーブル２１１のデータとを照合し、アンロックすべきファイルを特定する（ステップＳ２００）。
【００４９】
次に、制御部２２０は、当該特定されたファイルをアンロックする（ステップＳ２１０）。そして、制御部２２０は、ロックマネジメントテーブル２１１から、アンロックしたファイルに関するデータを削除して、ロックマネジメントテーブル２１１を更新する（ステップＳ２２０）。
ファイルサーバ２００は、以上で強制アンロック処理を終了する。
【００５０】
以上説明したファイル管理システム１において、クライアント３００がファイルをロックしたままダウンした場合の、ファイル管理システム１全体動作について、具体的に説明する。
【００５１】
クライアント３００Ａが、ファイルサーバ２００のファイル記憶部２４０に格納されたファイル「thesis.doc」をロックしたまま、ダウンした状態を想定する。すなわち、クライアント３００Ｂ、３００Ｃは、ロックされたファイル「thesis.doc」にアクセスできなくなっている状態である。
なお、ファイルサーバ２００が持つロックマネジメントテーブル２１１は図５に示される状態となっているものとする。
【００５２】
このような状態で、ロック管理サーバ１００は、クライアント監視処理を開始し、各クライアント３００と通信してその状態を取得する（図６のステップＳ１００）。このとき、クライアント３００Ｂと３００Ｃは、正常に応答するが、クライアント３００Ａは応答しない。
【００５３】
ロック管理サーバ１００の制御部１２０は、クライアント３００Ａがダウンしたと認識し、対応テーブル１１１を更新する（図６のステップＳ１１０）。このとき、更新後の対応テーブル１１１は、図３に示されたような状態となる。
【００５４】
ロック管理サーバ１００の制御部１２０は、更新後の対応テーブル１１１をサーチして、状態フラグがdownであり、ロックフラグがonであるデータを捜す。そして、制御部１２０は、これに該当するものとしてクライアント３００Ａのデータ（図３の対応テーブルの１行目）を発見する（図６のステップＳ１２０；Ｙｅｓ）。
【００５５】
ロック管理サーバ１００の制御部１２０は、発見したデータに基づいて、ダウン通知情報を作成し、クライアント３００Ａがマウントしていたファイルサーバ２００に送信する（図６のステップＳ１３０）。
【００５６】
その後、ロック管理サーバ１００の制御部１２０は、対応テーブル１１１の１行目のロックフラグをoffにする（図６のステップＳ１４０）。
【００５７】
一方、ファイルサーバ２００は、ダウン通知情報を受け取り、強制アンロック処理を開始する。
【００５８】
ファイルサーバ２００の制御部２２０は、ダウン通知情報に含まれるクライアント識別データと、ロックマネジメントテーブル２１１のデータとを照合する。その結果、制御部２２０は、アンロックすべきファイルとして、「thesis.doc」を特定する（図７のステップＳ２００）。
【００５９】
ファイルサーバ２００の制御部２２０は、ファイル「thesis.doc」を強制的にアンロックし（図７のステップＳ２１０）、ロックマネジメントテーブル２１１から、アンロックされたファイル「thesis.doc」についてのデータ（すなわち図５のテーブルの１行目）を削除する。そして、ファイルサーバ２００は、強制アンロック処理を終了する。
【００６０】
ファイルサーバ２００による強制アンロック処理の結果、ファイル「thesis.doc」がアンロックされ、クライアント３００Ｂ及び３００Ｃは当該ファイル「thesis.doc」にアクセス可能となる。
【００６１】
このように、本実施の形態のファイル管理システム１では、クライアント３００がファイルをロックしたままダウンした場合に、ロック管理サーバ１００が、クライアント３００がダウンしたことを検知して、ファイルサーバ２００に通知する。そして、ファイルサーバ２００は、ダウンしたクライアント３００がロックさせていたファイルをアンロックし、他のクライアントからのアクセスを可能とする。
このため、本実施の形態のファイル管理システム１によれば、クライアントがファイルをロックしたままダウンしても、ファイルサーバやクライアントを再起動等させることなく、当該ファイルにアクセス可能であり、システムの可用性を高めることができる。
【００６２】
本発明は、上記実施形態に限定されず、種々の変形および応用が可能である。
【００６３】
上記の実施の形態では、１台のクライアント３００が、１台のファイルサーバ２００をマウントする場合を例に説明したが、本発明のファイル管理システムは、１台のクライアントが複数のファイルサーバをマウントしてもよい。
この場合、対応テーブル１１１において、一のクライアント識別データに対応付けて、複数のサーバ識別データを格納できるようにすればよい。そして、クライアントがダウンした場合には、ロック管理サーバ１００が、当該クライアントに対応付けられた複数のファイルサーバにダウン通知情報を送信するようにすればよい。
【００６４】
上記の実施の形態ではファイル記憶部は、ファイルサーバの外部にある構成でもよい。この場合、クライアントがアクセスするファイルを記憶する記憶装置と、記憶装置が記憶するファイルのロック状態を管理する管理サーバと、によって、本実施の形態におけるファイルサーバ２００の機能を実現すればよい。
【００６５】
上記の実施の形態では、ロック管理サーバ１００と、ファイルサーバ２００とは別装置である場合を説明したが、ロック管理サーバ１００とファイルサーバ２００とは同一の装置であってもよい。
【００６６】
また、上記の実施の形態では、ハングアップ等によりクライアント３００全体が動作してなくなる場合を例に説明した。しかし、、本発明では、クライアント３００上で動作しているプロセスで、ファイルサーバ２００のファイルにアクセスしているものの１つが動作していないことも、「クライアントが動作していない」という概念に含まれるものとする。
この場合、例えば、ロック管理サーバ１００は、クライアント３００上で動作するＯＳ（Opetating System）に、各クライアント３００上で動作しておりファイルサーバ２００のファイルにアクセス中のプロセスの動作状況を問い合わせ、動作していないプロセスがあった場合に、その動作していないプロセスがアクセスしていたファイルをファイルサーバ２００に通知すればよい。そして、ファイルサーバ２００は、通知されたファイルについて、ロックを解除するようにすればよい。
【００６７】
本発明に係るサーバやクライアントは、専用のシステムによらず、通常のコンピュータシステムを用いて実現可能である。例えば、上述の動作を実行するためのプログラムを、コンピュータが読みとり可能な記録媒体（フレキシブルディスク、CD-ROM、DVD-ROM等）に格納して配布し、当該プログラムをコンピュータにインストールすることにより、上述の処理を実行する、サーバおよびクライアントを構成してもよい。また、インターネット等の通信ネットワーク上のサーバが有するストレージに当該プログラムを格納しておき、通常のコンピュータシステムがダウンロード等することでサーバ及びクライアントを構成してもよい。
【００６８】
また、上述の機能を、OSとアプリケーションの分担、またはOSとアプリケーションとの協働により実現する場合などには、アプリケーション部分のみを記録媒体やストレージに格納してもよい。
【００６９】
また、搬送波にプログラムを重畳し、通信ネットワークを介して配信することも可能である。例えば、通信ネットワーク上の掲示板(BBS, Bulletin Board System)に前記プログラムを掲示し、ネットワークを介して前記プログラムを配信してもよい。そして、このプログラムを起動し、OSの制御下で、他のアプリケーションプログラムと同様に実行することにより、上述の処理を実行できるように構成してもよい。
【図面の簡単な説明】
【００７０】
【図１】ファイル管理システムの構成を示すブロック図である。
【図２】ロック管理サーバの構成を示すブロック図である。
【図３】対応テーブルのフォーマットを示す図である。
【図４】ファイルサーバの構成を示すブロック図である。
【図５】ロックマネジメントテーブルのフォーマットを示す図である。
【図６】クライアント監視処理の手順を示すフローチャートである。
【図７】強制アンロック処理の手順を示すフローチャートである。
【符号の説明】
【００７１】
１  ファイル管理システム
１００  ロック管理サーバ
２００  ファイルサーバ
３００  クライアント
Ｃ  通信ネットワーク
【図１】
2006285867.tif 000003
【図２】
2006285867.tif 000004
【図３】
2006285867.tif 000005
【図４】
2006285867.tif 000006
【図５】
2006285867.tif 000007
【図６】
2006285867.tif 000008
【図７】
2006285867.tif 000009