JP2001526426A - マルチプロトコルの統一ファイルロッキング - Google Patents
マルチプロトコルの統一ファイルロッキングInfo
- Publication number
- JP2001526426A JP2001526426A JP2000524743A JP2000524743A JP2001526426A JP 2001526426 A JP2001526426 A JP 2001526426A JP 2000524743 A JP2000524743 A JP 2000524743A JP 2000524743 A JP2000524743 A JP 2000524743A JP 2001526426 A JP2001526426 A JP 2001526426A
- Authority
- JP
- Japan
- Prior art keywords
- file
- lock
- message
- protocol
- client device
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/176—Support for shared access to files; File sharing support
- G06F16/1767—Concurrency control, e.g. optimistic or pessimistic approaches
- G06F16/1774—Locking methods, e.g. locking methods for file systems allowing shared and concurrent access to files
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
Abstract
Description
である。
がファイルを共有することが好ましい。1つの既知の方法は、それら複数のクラ
イアントデバイスからのファイルサーバ要求を受け取りかつ応答できるネットワ
ークファイルサーバを、ファイルを記憶するために設けることである。これらの
ファイルサーバ要求は、ファイルサーバプロトコルを用いて作成される。このフ
ァイルサーバプロトコルは、ファイルサーバとクライアントデバイスの両方によ
って認識され順守されている。ファイルはファイルサーバに記憶されているので
、複数のクライアントデバイスが、ファイルに対して同時にアクセスすることが
できる。
コルがあることである。それぞれは、ファイルオペレーションに対して異なるセ
マンティクスを有する。1つのファイルサーバが複数のファイルサーバプロトコ
ルを認識するようにできることが知られているが、多くのファイルサーバプロト
コルは、ファイルロッキングおよびファイル共有に関して、異なりかつ互換性の
ないセマンティクスを有するので、特に困難である。互換性のないロッキングセ
マンティクスは、複数のさまざまなクライアントデバイスにおいて、1つのファ
イルシステムを規定する障害となる。第1クライアントデバイスが第1ファイル
サーバプロトコル(第1ファイルロッキングセマンティクス)に依存するならば
、第2ファイルサーバプロトコル(第2ファイルロッキングセマンティクス)を
用いる第2クライアントデバイスは、第1ファイルクライアントデバイスにおけ
るアプリケーションが完全に作動しなくなるようにするかもしれない。したがっ
て、各ファイルサーバプロトコルの正しいオペレーションは、他の全てのファイ
ルサーバプロトコルによるファイルロッキングセマンティクスが一致するかどう
かに左右される。
イスで一般的に使用されるプロトコルは、NFS(ネットワークファイルシステ
ム(Network File System))プロトコルである。Windowsオペレーティン グシステム(またはその変形)は、「PC NFS」インプリメンテーションに よってNFSプロトコルも使用することができる。NFSプロトコルは、ステイ
トレス(stateless)であるように作成され、そのためファイルを共有できなくす るようなセマンティクスを備えていない、またはファイルが1つのクライアント
デバイスに制限されるセマンティクスを備えていない。それに対して、Wind
owsオペレーティングシステム(またはその変形)を用いるデバイスで一般的
に使用されるプロトコルは、CIFS(コモンインターネットファイルシステム
(Common Internet File System))プロトコルである。CIFSプロトコルは、 範囲の広い強制ファイルロッキングセマンティクスを有する。CIFSクライア
ントデバイスは、このセマンティクスに依存し、また順守している。
ロトコル、つまりNLM(ネットワークロックマネージャ(Network Lock Manage
r))が追加されているが、NFSプロトコルは、NLMロックを単なる勧告とし
て扱っている。この方法がファイルロッキングセマンティクスをNFSアプリケ
ーションに与えるという目的を達成し、NFSアプリケーションがこの方法を使
用しても、この方法によって、NFSアプリケーションがファイルロッキングセ
マンティクスを無視することを妨げることはできないし、クライアントデバイス
が複数のさまざまなファイルサーバプロトコルのファイルロッキングセマンティ
クスに左右されない。
イスにおいてファイルロッキングセマンティクスを強制的に実行するシステムお
よび方法を提供することが好ましい。これが、本発明の実施の形態において得ら
れる利点である。この実施の形態において、複数の同一ファイルロッキングセマ
ンティクスが、マルチプロトコルファイルサーバのカーネル(kernel)に統合さ
れ、サーバによって認識されるさまざまなファイルサーバプロトコルのいずれを
使用してもクライアントデバイスにおいて強制的に実行される。好ましい実施の
形態において、クライアントデバイスがネットワークファイルサーバ上にある共
有されたファイルシステムにアクセスしているときに、CIFSプロトコルの特
定のファイルロッキングセマンティクスは、NFSクライアントデバイスがCI
FSクライアントデバイスと同時に利用できるように実行されて、データの保全
性を保護する。
るための方法およびシステムを提供する。複数のさまざまなファイルサーバプロ
トコルを認識するファイルサーバは、同一のマルチプロトコルロックマネージメ
ントシステム(同一のファイルロッキングセマンティクスを含む)を規定する。
それは、全てのクライアントデバイスに対して同一のファイルロッキングセマン
ティックスを実施し、またファイルサーバによって認識されたプロトコルを実施
する。好ましい実施の形態において、第1のファイルサーバプロトコル(例えば
、CIFS)は、アパチュニスティックファイルロッキング技術によって、強制
的なファイルオープンおよびファイルロッキングのセマンティクスを実施する。
それに対して、第2のファイルサーバプロトコル(例えば付属プロトコルNLM
つきのNFS)は、ファイルオープンのセマンティクスがなく、助言的なバイト
レンジロッキングのセマンティクスとファイルロッキングのセマンティクスを規
定するだけである。
たは新しいファイルロックまたはバイトレンジロックを獲得する前に、始めのク
ライアントデバイスがいずれのクライアントデバイスであっても、さらに現在の
ロックに対して始めのファイルサーバプロトコルまたはファイルロッキングプロ
トコルがいずれのプロトコルであっても、ファイルサーバは、いずれかのクライ
アントデバイスが獲得していようとしているロックが現在のロックと矛盾してい
ないかどうか判定することを同一のファイルロッキングのセマンティクスは、規
定している。CIFSクライアントデバイスがデータの読み出しまたは書き込み
を試行するケースにおいては、クライアントデバイスがファイルを開けるとき、
ファイルサーバはこの判定を実行する。CIFSクライアントデバイスがバイト
レンジロックを要求するケースにおいては、クライアントデバイスがバイトレン
ジロックを要求するとき、ファイルサーバはこの判定を実行する。NFSクライ
アントデバイスのケースにおいては、クライアントデバイスが実際に読み出しま
たは書き込み要求を発するとき、またはNFSクライアントデバイスが、バイト
レンジの読み出しまたは書き込みを実施する意図を示すNLMバイトレンジロッ
クを要求するとき、ファイルサーバはこの判定を実行する。ファイルロッキング
のセマンティクスを実行することによって、NFSクライアントデバイスによる
悪影響からファイルデータを保護する。
パチュニスティックロック)、つまり1つのクライアントだけにファイルの読み
出しまたは書き込みを行うことを認める排他的なファイルロックを、CIFSク
ライアントデバイスは獲得することが可能である。クライアントデバイスが、ア
ップロックされたファイルに対して、ノンCIFS(つまり、NFSまたはNL
M)プロトコル要求を発するとき、ファイルサーバは、CIFSクライアントデ
バイスに対してアップロックブレークメッセージを送る、このアップロックブレ
ークメッセージは、CIFSクライアントデバイスが、全てのキャッシュされた
書き込み操作を実施する機会を与え、さらにはファイルを閉じる機会を与えても
よい。NFSおよびNLM要求によりアップロックをブレークすることを認める
ことにより、ファイルデータの保全性を保護すると同時にNFSクライアントデ
バイスによりファイルデータを利用できることを保証する。
ステムにおける1つのディレクトリに対する「チェンジモニタリング」ロックを
獲得することができる。該ディレクトリにおいて変化が生じたときに、ファイル
サーバーは、変化が生じたことをCIFSクライアントデバイスに対して通知す
る。(ディレクトリにおける変化とは、ディレクトリ内でのファイルの作成、フ
ァイルの削除、ファイルの改名、ディレクトリ内へのファイルの移動、ディレク
トリ外へのファイルの移動を含む。)ファイルサーバーは、CIFSクライアン
トデバイスおよびノンCIFSクライアントデバイスの両方によってディレクト
リにおいて変化が生じていないか注目しており、その変化を「チェンジモニタリ
ング」ロックを有するCIFSクライアントデバイスに通知する。
ップとデータ構造について記載されている。この出願明細書を精読すると、当業
者は、本発明の実施の形態が、この出願明細書に記載された特定のプロセスステ
ップとデータ構造用に作成された汎用プロセッサと、特殊用途プロセッサと、そ
の他の回路とを用いて実施されることが分かり、さらに本発明の実施の形態が、
この出願明細書に記載された特定のプロセッサステップとデータ構造を実施する
ために、不適当な実験または更なる発明を必要としないことが分かる。
を示す。 システム100は、ファイルサーバ110と、コンピュータネットワーク12
0と、複数のクライアントデバイス130とを含む。
む。大容量記憶装置112は、記憶し検索するためのデータを有する複数のファ
イル113を記憶し検索することができる。プロセッサ111は、ネットワーク
120から複数の要求メッセージ121を受信し、コマンドおよびデータとして
メッセージを解析し、大容量記憶装置112にあるファイル113を操作し、コ
マンドおよびデータに対する応答として応答メッセージを送信することができる
。
に接続されており、ネットワーク120上で送信されるメッセージ121を用い
て通信する。メッセージ121は、クライアントデバイス130によってファイ
ルサーバ110に送信されるファイルシステム要求と、ファイルサーバ110に
よってクライアントデバイス130に送信されるファイルシステム応答とを含む
。
を示す。 システム100は、Unixクライアントデバイス201と、PC NFS W
indowsクライアントデバイス202と、CIFS Windowsクライ アントデバイス203とを含む複数のクライアントデバイス130を含む。Un
ixクライアントデバイス201は、Unixオペレーティングシステムを実行
し、Unix/NFSファイルサーバプロトコルを使用する。PC NFS Wi
ndowsクライアントデバイス202は、Windowsオペレーティングシ
ステムを実行し、PC NFSファイルサーバプロトコルを使用する。CIFS
Windowsクライアントデバイス203は、Windowsオペレーティン
グシステムを実行し、CIFSファイルサーバプロトコルを使用する。
ントデバイス202は、NFSファイルサーバプロトコルを用いてファイルサー
バ110と通信する。NFSファイルサーバプロトコルは、NFSファイルサー
バプロトコルパーサ211によってファイルサーバ110で認識される。CIF
SWindowsクライアントデバイス203は、CIFSファイルサーバプロ
トコルを用いてファイルサーバ110と通信する。CIFSファイルサーバプロ
トコルは、CIFSファイルサーバプロトコルパーサ212によってファイル1
10で認識される。NFSファイルサーバープロトコルまたはCIFSファイル
サーバプロトコルのいずれかを用いるメッセージは、プロセッサ111によって
解析され、アップロックマネージャ220によって処理される。
13へのアクセスを管理する。アップロックマネージャ220の操作は、図3と
図5での説明でより詳細に記載される。アップロックマネージャエレメント22
0は、クロスプロトコルロックマネージャ230に接続される。
ルロッキングセマンティクスを管理する。クロスプロトコルロックマネージャ2
30は、4つのタイプのロックに関する情報を処理し記録する。その4つのタイ
プは、CIFSバイトレンジロック241と、CIFSファイルロック242と
、PC NFS(NLM)ファイルロック243と、NLMバイトレンジロック 244とである。クロスプロトコルロックマネージャ230の操作は、図3と図
4での説明でより詳細に記載される。
40は、Unixクライアントデバイス201、PC NFSWindowsク ライアントデバイス202、またはCIFSWindowsクライアントデバイ
ス203から受信される。また、このファイルサーバ要求メッセージ140は、
NFSファイルサーバプロトコルまたはCIFSファイルサーバプロトコルを使
用することができる。それぞれが、異なるファイルサーバプロトコルを使用する
ことに加えて、これらのタイプのクライアントデバイス130は、それぞれ、フ
ァイルサーバ110によって与えられる異なるモデルのファイルロッキングを有
する。
またはファイルクローズのセマンティクスなしでも、ファイルシステムオペレー
ションの実行することを規定する。これらのNFSファイルシステムオペレーシ
ョンは、ファイルデータに対する読み出しまたは書き込みオペレーションか、ま
たはファイルシステム操作(つまり、ディレクトリに対する読み出しおよび書き
込みオペレーション)を含むことができる。ファイルシステム操作は、ファイル
またはディレクトリの作成、ファイルまたはディレクトリの改名、1つのディレ
クトリから別のディレクトリへのファイルの移動、ファイルシステムからのファ
イルまたはディレクトリの除去(削除)を含んでもよい。
を規定する。これらのバイトレンジロックは「リードロック」であってもよい。
リードロックは、(例えば、その他のクライアントデバイス130における)他
の対応しているアプリケーションに働きかけて、特定のバイトレンジへの書き込
みを控えさせる。その代わりとして、これらのバイトレンジロックは、「ライト
ロック」であってもよい。ライトロックは、その他の対応しているアプリケーシ
ョンに働きかけて、特定のバイトレンジに対する読み出しまたは書き込みを控え
させる。
る読み出しオペレーションまたは書き込みオペレーションを行おうとする前に、
ファイルオープンオペレーションを実行することと、オープンされたファイル1
13に関するファイルロックを獲得することとを規定している。ファイルオープ
ン時に、CIFSクライアントデバイス130は、所望のアクセスモード(リー
ドオンリー(read-only)、ライトオンリー(write-only)、またはリードライト(re
ad-write))を指定し、同じファイル113をオープンしようとするその他のク ライアントデバイス130に対して所望のディナイモード(ディナイノン(deny-
none)、ディナイリード(deny-read)、ディナイライト(deny-write)、ディナイオ
ール(deny-all))を指定することができる。それ以後、CIFSファイルシステ
ムオペレーションは、オープンされているファイルに対するアクセスモードをチ
ェックすることだけが必要である。CIFSクライアントデバイス130は、ク
ライアントデバイス130がオープンしているファイルにおけるバイトレンジに
対してバイトレンジロックを指定することもできる。バイトレンジロックは、「
ライトロック」(リードライトのアクセスモードと、ディナイオールのディナイ
モードとを有する)と呼ばれる排他的ロックか、「リードロック」(リードオン
リーのアクセスモードと、ディナイライトのディナイモードとを有する)と呼ば
れる非排他的ロックかのいずれかである。
ックモードを決定する。ここにおいて使用されているように、「ロックモード」
という用語は、ファイルサーバ110によって設定された、アクセスモードとデ
ィナイモードとを組み合わせる同一のロックモードを表している。
ク(オパチュニスティックロック)を獲得することもできる。アップロックは、
ファイルをオープンするCIFSクライアントデバイス130は、別のクライア
ントデバイス130がそのファイルを利用しようとしない限りファイルに対する
排他的なアクセス権を有することを規定する。アップロックは、アップロックの
排他性が他のクライアントデバイス130のアクセスによってブレークされると
いう警告のために、クライアントデバイス130が必要としている以上のファイ
ルに対する排他性を規定する。
ロトコルNLMなし)またはCIFSを用いて、複数のクライアントデバイス1
30間の正しい相互利用を規定する。正しく相互利用するために、ファイルサー
バ110は、同一ファイルロッキングセマンティクスを規定する。好ましい実施
の形態において、同一ファイルロッキングセマンティクスは以下の効果を有する
。
用されている、ディナイライトまたはディナイオール等のディナイモードである
ファイル113におけるデータに対して、Unixクライアントデバイス201
が上書きするNFSライトオペレーションを実行することを防ぐ。
するというNFSファイルシステムオペレーションを実行することを防ぐ。
イアントデバイス202が、CIFSクライアントデバイスによってアップロッ
クされたファイル113に対してデータを書きこむ、ファイル113を除去する
またはファイル113の名前を変えるために、NFS要求を作成するとき、ファ
イルサーバ110は、ファイル113にCIFSアップロックセマンティクスを
実施する。ファイルサーバ110は、アップロックブレークメッセージ140を
、アップロックを保持するクライアントデバイス130に送信し、クライアント
デバイス130から応答を受け取る。クライアントデバイス130がファイル1
13を閉じるならば、NFS要求は続行し、ファイルサーバ110はそれを許可
する。
イアントデバイス202が、CIFSクライアントデバイスによってアップロッ
クされたファイル113からデータを読み出すために、NFS要求を作成すると
き、ファイルサーバ110は、ファイル113に対してCIFSアップロックセ
マンティクスを実施する。ファイルサーバ110は、アップロックブレークメッ
セージ140を、アップロックを保持するクライアントデバイス130に送信し
、クライアントデバイス130から応答を受け取る。クライアントデバイス13
0がファイル113を閉じるか、またはファイルのライトキャッシュをファイル
サーバ110に書きこむときに、NFS要求は続行し、ファイルサーバ110は
それを許可する。
こでは、以下の書類において記載されるNLM「シェアーロック」という既知の
用語の代わりに使用される。その書類は、X/Open CAE 仕様書、X/O
pen相互作用プロトコル、XNFS第4版(X/Openドキュメント番号C
218)であり、本明細書に完全に記載されているように参照として本明細書に
含まれている。特定のロックモードは、要求されたアクセスモードおよびディナ
イモードを組み合わせることにより、ファイルサーバ110によって決定される
。
ロックマネージメントオペレーションを実行する。
ーバ110は、現在のCIFSおよびNLMファイルロックと矛盾し、かつ既存
のNLMバイトレンジロックと矛盾するファイルオープン要求をテストする。新
しく要求されたファイルロックと比較するために、ファイルサーバ110は、現
在のNLMバイトレンジロックを、ディナイノンのディナイモードを有するもの
として、また非排他性ロックであるリードオンリーのアクセスモードと排他性ロ
ックであるリードライトのアクセスモードとを有するものとして扱う。
サーバ110は、現在のCIFSおよびNLMバイトレンジロックと矛盾するバ
イトレンジロック要求をテストする。
ーバ110は、現在のCIFSおよびNLMバイトレンジロックと矛盾し、かつ
現在のCIFSファイルロックと矛盾するバイトレンジロック要求をテストする
。
140をシミュレートするために使用される)からのNLMファイルロック要求
メッセージ140を受け取る際に、ファイルサーバ110は、既存のCIFSお
よびNLMファイルロックとは相容れず、かつ既存のNLMバイトレンジロック
とは相容れないNLMファイルロック要求をテストする。新たに要求されたNL
Mファイルロックと比較するために、ファイルサーバ110は、既存のNLMバ
イトレンジロックを、ディナイノンのディナイモードを有するものとして、また
非排他性ロックであるリードオンリーのアクセスモードと、排他性ロックである
リードライトのアクセスモードとを有するものとして扱う。
ャートを示す。 マルチプロトコルファイルサーバの操作方法300は、本明細書において記載
されているように、複数のプロセスステップとフローポイントを含む。これらの
プロセスステップとフローポイントは、少なくとも1つのクライアントデバイス
130とともにファイルサーバ110によって実行される。
求メッセージ140を受け取れる状態にある。
セージ140を受け取り、解析する。ファイルサーバ110は、ファイルサーバ
要求メッセージ140がNFSファイルサーバプロトコル、NLMファイルロッ
キングプロトコル、CIFSファイルロッキングプロトコルのいずれを使用する
か判定する。ファイルサーバ要求メッセージ140が、NFSファイルサーバプ
ロトコル、またはNLMファイルロッキングプロトコルを使用するならば、方法
300は、ステップ312に続く。ファイルサーバリクエスト要求メッセージ1
40が、CIFSファイルサーバプロトコルを使用するならば、方法300は、
ステップ313に続く。
ファイルシステムオペレーション(データの読み出しもしくは書き込み、または
ディレクトリの変更等)を実行するためのNFSファイルサーバ要求を含む。そ
の代わりとして、ファイルサーバ110は、要求メッセージ140がNLMバイ
トレンジロックを獲得するためのNLMファイルロッキング要求を含む。どちら
のケースにおいても、方法300は、フローポイント320に続く。
セージ140がCIFSのリードもしくはライトオペレーションを実行すること
か、CIFSバイトレンジロックを獲得することか、またはCIFSファイルオ
ープンオペレーションを実行することか判定する。ファイルサーバ要求メッセー
ジ140が、CIFSバイトレンジロックを獲得することであるか、またはCI
FSファイルオープンオペレーションを実行することであるならば、方法300
は、フローポイント320に続く。ファイルサーバ要求メッセージ140が、C
IFSのリードもしくはライトオペレーションを実行することであれば、方法は
フローポイント330に続く。ファイルサーバ要求メッセージ140が、CIF
S「チェンジ通知」要求であるならば、方法は、フローポイント350に続く(
チェンジ通知要求は、図6の説明とともにさらに記載される)。
求メッセージ140によって要求されたオペレーションとファイル113のファ
イルロッキングステータスとを比較できる状態にある。ファイル113のファイ
ルロッキングステータスは、ファイル113に対する現在のファイルロックおよ
びバイトレンジロックを含む。
セージ140が対象にしているファイル113を判断し、このファイル113が
アップロックされているかどうか判定する。ファイル113がアップロックされ
ているならば、方法300は、ステップ322に続く。ファイル113がアップ
ロックされていないならば、方法300は、ステップ323に続く。
ようにアップロックをブレークする。ステップ322の実行は、図5についての
説明でさらに記載される。アップロックをブレークさせることによって、ファイ
ル113のファイルロッキングステータスを変化させることが可能である。
グセマンティクスを用いて、要求されたオペレーションとファイル113のファ
イルロッキングステータスを比較する。このステップにおいて、要求されたオペ
レーションは、NFSの読み出しもしくは書き込みオペレーション、NFSもし
くはCIFSのディレクトリ変更オペレーション、NLMのファイルロックもし
くはバイトレンジロックを獲得しようとする試み、CIFSファイルオープンオ
ペレーションであってもよい。ステップ323の動作と、同一のファイルロッキ
ングセマンティクスは、図4の説明とともにさらに記載される。この比較は、要
求されたオペレーションが許容できることを示すならば、方法300は、ステッ
プ324に続く。要求されたオペレーションが許容できないのであれば、方法3
00はステップ325に続く。
ンを実行する。方法300はフローポイント340に続く。
ンの実行を拒絶し、エラーメッセージを伴ってクライアントデバイス130に対
して応答する。方法300は、フローポイント340に続く。
求メッセージ140によって要求されたオペレーションと、ファイル113のフ
ァイルロッキングステータスと比較できる状態にある。
れているように、チェンジ通知オペレーションを実行できる状態にある。
ィレクトリに対するファイルロックを要求し(ディレクトリをオープンするため
にファイルシステム要求メッセージ140を用いて)、ディレクトリに対するフ
ァイルロックを、ディレクトリに関するチェンジモニタリングロックに変換する
。このステップ351の実行は、図6の説明とともにさらに記載される。
求メッセージ140に対して応答し、方法300は、ファイルサーバ要求メッセ
ージ140について完了する。
ネージャを操作する方法のプロセスフローチャートを示す。
を操作する方法400は、本明細書において記載されているように、複数のプロ
セスステップとフローポイントを含む。これらのプロセスステップとフローポイ
ントは、少なくとも1つのクライアントデバイス130とともにファイルサーバ
110によって実行される。
求メッセージ140における要求されたオペレーションを、ファイル113のフ
ァイルロッキングステータスと比較できる状態にある。
て、どのファイルサーバプロトコルで要求されたオペレーションのファイルロッ
キング状態でも同じ方法で作成する。同一のファイルロッキングセマンティクス
は、同一の複数のファイルロックを識別する。それぞれのファイルロックは、要
求しているクライアントデバイス130に対するアクセスモードと、全ての他の
クライアントデバイス130に対するディナイモードとを含む。
ンリー、またはリードライトの3つの可能性のうちの1つである。同様に、好ま
しい実施の形態において、ディナイモードは、ディナイノン、ディナイリード、
ディナイライト、ディナイオールの4つの可能性のうちの1つである。
獲得した後、第2クライアントデバイス130によって要求されかつファイルサ
ーバ110によって決定されたロックモードが、ファイル113のファイルロッ
キングステータスと互換性があるならば、第2クライアントデバイス130は、
ファイル113だけにアクセスすることができる。例えば、第1クライアントデ
バイス130は、ファイル113に対するディナイライトのディナイモードを有
するファイルロックを獲得することができる。第2NFSクライアントデバイス
130は、ファイル113に対して書き込もうとすることもできるし、または第
2CIFSクライアントデバイス130は、ライトアクセスを含むアクセスモー
ドで、ファイル113をオープンしようとすることもできる。いずれもケースに
おいても(ファイル113に対するファイルロックが、本明細書に記載されてい
るように、アパチュニスティックロックでないならば)、ファイルサーバ110
は、第2クライアントデバイス130による要求を拒否する。
デバイス130によって使用されるファイルサーバプロトコルに応じて、たびた
び第2クライアントデバイス130によって要求されるアクセスとファイルロッ
クとの比較を実行する。
用してファイル113をオープンするならば、ファイルサーバ110は、ファイ
ルオープン時にファイル113のファイルロッキングステータスをチェックする
。
してファイル113に対する読み出しまたは書きこみを実行するならば、実際に
ファイルシステムオペレーションを実行するときに、ファイルサーバ110は、
ファイル113のファイルロッキングステータスをチェックする。これは、ファ
イル113を動かす、移動させる、またはファイル113の名前を変える等のオ
ペレーションのように、第1クライアントデバイス130の対象領域からファイ
ルを移動させる影響を有するファイルシステムオペレーションにも当てはまる。
してバイトレンジロックを要求するならば、バイトレンジロックが要求されたと
きに、ファイルサーバ110は、ファイル113のファイルロッキングステータ
スと、他のCIFSまたはNLMバイトレンジロックとが矛盾しているかチェッ
クする。バイトレンジロックが要求されたときに、ファイルサーバ110は、バ
イトレンジロックと他のCIFSファイルロックとが矛盾しているかチェックし
ない。それは、バイトレンジロックと他のCIFSファイルロックとが矛盾して
いるかは、ファイルオープン時にチェックされたからである。
ロックを要求するならば、バイトレンジロックが要求されたときに、ファイルサ
ーバ110は、ファイル113のファイルロッキングステータスが、現在のCI
FSまたはNLMバイトレンジロックと矛盾しているか、また現在のCIFSフ
ァイルロックと矛盾しているかチェックする。
るファイルロックがすでに1つ以上あるかどうか判断する。ファイルロックが1
つ以上あるならば、方法400は、ステップ422に続く。ファイルロックが1
つ以上ないならば、方法は、ステップ411に続く。
ファイルロックをファイル113に関する1つの同等のファイルロックに併合す
る。このステップ422を実行するために、すでに存在しているファイルロック
が1つにまとめられるまで、ファイルサーバ110は、すでに存在しているファ
イルロックと追加するファイルロックとを表1において相互参照する。
ルチプロトコルファイルサーバにおけるロック変換表を示す。
=R、W、RWのいずれか) D=ディナイモード(DN=ディナイノン、DR=ディナイリード、DW=デ
ィナイライト、DA=ディナイオール)
セージ140において要求されたオペレーションの種類を判断する。要求された
オペレーションがCIFSファイルオープンオペレーションであるならば、方法
400は、ステップ423に続く。要求されたオペレーションがNFSファイル
サーバオペレーションであるならば、方法400は、ステップ431に続く。要
求されたオペレーションが、バイトレンジロックについてのCIFS要求または
NLM要求であるならば、ファイルシステム110は、ステップ441に続く。
ファイルロックと、第2クライアントデバイス130によって要求されたファイ
ルオープンとを比較する。このステップ423を実行するために、ファイルサー
バ110は、すでに存在するファイルロックと、新しく要求されたアクセスモー
ドおよびディナイモードとを表2において相互参照し、対応する表のエントリー
に応じて新しく要求されたアクセスモードおよびディナイモードを許可するか、
または拒否する。
ードを許可するならば、方法400は、ステップ424を実行する。ファイルサ
ーバ110が、新しく要求されたアクセスモードおよびディナイモードを拒否す
るならば、方法400は、ステップ424を実行しない。
ルチプロトコルファイルサーバにおいて試行されたファイルロックの相互参照を
示す。
しく要求されたアクセスモードおよびディナイモードとの各ペアは、対応する決
定を備えている。その決定により、新しく要求されたアクセスモードおよびディ
ナイモードが拒否されるか、または許可される。
ンオペレーションを実行するための新しい要求との間の矛盾をチェックするなら
ば、現在のCIFSファイルロックは、新しいファイルオープン要求において要
求されたアクセスモードおよびディナイモードについて相互参照される。
ーションまたはライトオペレーションを実行するための新しいNFS要求との間
の矛盾をチェックするならば、集合体ロックモード(現在のファイルロックの組
み合わせ)は、新しい要求を実行するために必要とされるアクセスモードについ
て相互参照される。
、NLMバイトレンジロックに対する新しい要求との間の矛盾をチェックするな
らば、現在のファイルロックとバイトレンジロックは、新しいNLMバイトレン
ジロック要求と同等のロックモードについて相互参照される。現在のファイルロ
ックを比較するために、ファイルサーバ110は、新たに要求されたNLMバイ
トレンジロックを、ディナイノンのディナイモードを有するものとして、さらに
非排他性ロック(「リードロック」とも呼ばれる)の場合、リードオンリーのア
クセスモードを、排他性ロック(「ライトロック」とも呼ばれる)の場合、リー
ドライトのアクセスモードを有するものとして扱う。既存のバイトレンジロック
と比較するために、ファイルサーバ110は、新たに要求されたNLMバイトレ
ンジロックを、リードロックの場合、リードオンリーのアクセスモードとディナ
イライトのディナイモードとを有するものとして、さらにライトロックの場合、
リードライトのアクセスモードとディナイオールのディナイモードとを有するも
のとして扱う。
ルロッキングステータスを、第2クライアントデバイス130によって要求され
たオペレーションと比較する。このステップ431を実行するために、ファイル
サーバ110は、ファイルロックに関するディナイモードと要求されたオペレー
ションとを比較し、その比較に応じて要求されたオペレーションを許可するか、
または拒否する。
ルロッキングステータスを、第2クライアントデバイス130によって要求され
たNLMバイトレンジロックと比較する。好ましい実施の形態において、CIF
Sバイトレンジロック要求は、バイトレンジロックのみについてチェックされる
。それは、それらが以前のCIFSファイルオープンオペレーションを必要とし
、現在のファイルロックは、以前のCIFSファイルオープンオペレーションの
ときに、すでにチェックされているからである。このステップ441を実行する
ために、ファイルサーバ110は、以前から存在するファイルロッキングステー
タスと要求されたバイトレンジロックを表3において相互参照し、対応する表エ
ントリーに応じて要求されたバイトレンジロックを許可するか、または拒否する
。
するならば、方法400は、ステップ442を実行する。ファイルサーバ110
が、新しく要求されたバイトレンジロックを拒否するならば、方法400は、ス
テップ442を実行しない。
ルチプロトコルファイルサーバにおける新たに要求されたNLMバイトレンジロ
ックと現在のファイルロックとの相互参照を示す。
NLMバイトレンジロックの各ペアは、対応する決定を備えている。その決定に
より、新しく要求されたバイトレンジロックが拒否されるか、または許可される
。
ジロックとして新しく要求されたバイトレンジロックとファイル113を関連付
ける。
求メッセージ140において要求されたオペレーションと、ファイル113のフ
ァイルロッキングステータスを比較し、要求されたオペレーションを許可するか
、または拒否する。
操作する方法のプロセスフローチャートを示す。
方法500は、本明細書において記載されているように、複数のプロセスステッ
プとフローポイントを含む。これらのプロセスステップとフローポイントは、少
なくとも1つのクライアントデバイス130とともにファイルサーバ110によ
って実行される。
イルロッキングの分野において知られている。アップロックは、ワシントン州レ
ドモンドにあるマイクロソフト社(Microsoft Corporation)で販売されている「 WindowsNT4.0」オペレーティングシステムで利用できるマニュアル
にさらに記載されている。このマニュアルは、例えばftp.microsoft.comのdirec
tory/developr/drg/CIFSのホストにある、FTPプロトコルによって入手可能な
CIFS IETF仕様書を含む。この仕様書は、cifs6.docまたはcifs6.txtを 含んでおり、本明細書において全部記載されているように参照によって本明細書
に含まれる。
オープンするためにCIFS第1クライアントデバイス130からの要求を受け
取れる状態にある。
トデバイス130からファイル113に対するファイルオープン要求を受け取る
。ファイルオープン要求はアクセスモードとディナイモードを指定する。
、第1クライアントデバイス130に対して指定されたアクセスモードとディナ
イモードとを有するファイルロックを与える。
要求でアップロックを要求しているならば、ファイルサーバ110は、第1クラ
イアントデバイス130に、第1クライアントデバイス130が実際必要として
いるものよりもできるだけ高い排他的レベルにあるアップロックを与える。
セスモードとディナイライトのディナイモードとを有するファイル113をオー
プンするとき、ファイルサーバ110は、そのタイプのファイルロックと、ファ
イル113とを対応させる。ファイルサーバ110は、さらにリードライトのア
クセスモードとディナイオールのディナイモードとを有するファイル113と、
アップロックとを対応させる。
対するファイルロックについて、CIFS第1クライアントデバイス130から
の要求に応答する。
ル113をオープンしようと試みる。
トデバイス130からのファイルオープン要求か、またはPC NFSクライア ントデバイス130からのNLMファイルロック要求かのいずれかを受け取る。
ックをブレークし、アップロックを保持している第1クライアントデバイス13
0からの応答を獲得する間に、ファイルサーバ110は、第2クライアントデバ
イス130による要求の実行を延期する。
」メッセージ140をCIFS第1クライアントデバイス130に送信すること
によってアップロックをブレークする。
るならば、アップロックがブレークされることは予想される。第2クライアント
デバイス130が、NFSクライアントデバイス130であるならば、CIFS
第1クライアントデバイス130が「アップロックブレーク」メッセージ140
に対して応答するまで、ファイルサーバ110は、NFS(またはNLM)プロ
トコル要求メッセージ140に対する応答を遅らせる。
ップロックブレーク」メッセージ140を受け取り、以下の2つの方法のいずれ
かでメッセージ140に対して応答することができる。
ことができる(したがって、ファイルオープンと関連付けられたファイルロック
を除去する)。
おいて、ローカルにキャッシュされた、ファイル113に対する全ての未実行の
CIFSライト要求およびバイトレンジロック要求を出力してもよく(すなわち
、CIFS第1クライアントデバイス130は、ファイルシステムオペレーショ
ンの結果をファイルサーバ110に転送する)、CIFS第1クライアントデバ
イス130がファイル113に対して獲得したリードアヘッドデータを捨てても
よい。リードアヘッドデータは捨てられるべきである。それは、第2クライアン
トデバイス130が、その後リードアヘッドデータを無効にする新しいデータを
ファイルに対して書き込む可能性があるためである。
トデバイス130からの応答を受け取る。
トデバイス130がファイル113をオープンにしたままであるか否かを判定す
る。オープンにしたままであるならば、ファイルサーバ110は、第2クライア
ントデバイス130による要求に包含されるロックモードを、ファイル113の
新しいファイルロッキングステータスと比較する。ファイルサーバ110は、第
2クライアントデバイス130による要求が続行することを許可するならば、フ
ローポイント540に続く。ファイルサーバ110は、第2クライアントデバイ
ス130による要求が続行することを許可しないならば、要求を拒否する。
おいて示された第2クライアントデバイス130からの要求を許可するように準
備している。
操作方法のプロセスフローチャートを示す。
方法600は、本明細書において記載されているように、複数のプロセスステッ
プとフローポイントを含む。これらのプロセスステップとフローポイントは、少
なくとも1つのクライアントデバイス130とともにファイルサーバ110によ
って実行される。
求メッセージ140を受け取れる状態にある。
のディレクトリを指定するファイルオープン要求メッセージ140を第1クライ
アントデバイス130から受け取る。ファイルサーバ110は、ファイルオープ
ン要求を許可すると判断し、ディレクトリに関するCIFSファイルロックを第
1CIFSクライアントデバイス130に与える。
参照するチェンジ通知要求メッセージをCIFSクライアントデバイス130か
ら受け取って、オープンディレクトリに関するファイルロックをチェンジモニタ
リングロックに変換する。
関するファイルロックを、指定されたディレクトリに関するチェンジモニタリン
グロックに変換する。
たディレクトリと関連付けられており、第1CIFSクライアントデバイス13
0は、そのディレクトリに関する変化が通知される状態にある。
に関する変更を要求しかつ第1クライアントデバイスへのチェンジ通知のきっか
けとなるファイルサーバ要求メッセージ140を第2クライアントデバイス13
0から受け取る。(チェンジのタイプは、ファイル作成、ファイル削除、ファイ
ル改名、ディレクトリ間のファイル移動、ファイル属性の変化、ファイル修正回
数の変化を含む。)第2クライアントデバイス130からのファイルサーバ要求
メッセージ140は、CIFSまたはNFSのいずれかである。第2クライアン
トデバイス130は、Unix NFSクライアントデバイス201、PC NF
Sクライアントデバイス202、CIFS Windowsクライアントデバイ ス203のいずれか1つである。
」ロックを保有する第1クライアントデバイス130に、ステップ621におい
て示された変化を通知する。この変化は、複数のエントリーを含んでもよい。エ
ントリーのそれぞれは、モニターされるディレクトリ内の変更されたファイル1
13またはサブディレクトリの名前と、変化のタイプの両方を特定する。対象と
する第1クライアントデバイス130が1つ以上あるならば、ファイルサーバ1
10は、対象とする第1クライアントデバイスの全てに通知する。
ファイルロッキングの分野において知られている。チェンジ通知は、ワシントン
州レドモンドにあるマイクロソフト社(Microsoft Corporation)で販売されてい る「WindowsNT4.0」オペレーティングシステムで利用できるマニュ
アルにさらに記載されている。このマニュアルは、例えばftp.microsoft.comのd
irectory/developr/drg/CIFSのホストにある、FTPプロトコルによって入手可
能なCIFS IETF仕様書を含む。この仕様書は、cifs6.docまたはcifs6.tx
tを含んでおり、本明細書において全部記載されているように参照によって本明 細書に含まれる。
クトリに関する変化を第1CIFSクライアントデバイス130に通知し、次の
メッセージ140に対して準備する。
の概念、範囲、精神内にある可能性があるものであり、これらの変形例は、本明
細書を精読すれば当業者には明らかになるであろう。
た技術的な付録において含まれる。この技術的な付録は、30ページ(図面を含
む)を含み、本明細書に全部記載されたように、参照によって含まれる。
ク図を示す。
ク図を示す。
ーチャートを示す。
クマネージャを操作する方法のプロセスフローチャートを示す。
ャを操作する方法のプロセスフローチャートを示す。
ャを操作する方法のプロセスフローチャートを示す。
Claims (38)
- 【請求項1】 複数のさまざまなファイルサーバまたはファイルロッキング
プロトコルを用いて、複数のクライアントデバイスにおいて同一のファイルロッ
キングセマンティクスを実施するステップを含むファイルサーバを操作する方法
。 - 【請求項2】 前記同一のファイルロッキングセマンティクスは、オパチュ
ニスティックロックを含み、 オパチュニスティックロックは、第1プロトコルを用いる第1クライアントデ
バイスによって要求され、 前記オパチュニスティックロックをブレークすることは、前記第1プロトコル
とは異なる第2プロトコルを用いる第2クライアントデバイスによって生じるこ
とを特徴とする請求項1に記載の方法。 - 【請求項3】 前記第1プロトコルは、CIFSを含む請求項2に記載の方
法。 - 【請求項4】 前記第2プロトコルは、NFSまたはNLMを含む請求項2
に記載の方法。 - 【請求項5】 前記同一ファイルロッキングセマンティクスは、 選択されたファイルに関するオパチュニスティックロックを、前記第1プロト
コルを用いる第1メッセージに応じて、前記第1クライアントデバイスに与える
ステップと、 前記第2プロトコルを用いる第2メッセージに応じて、前記オパチュニスティ
ックロックをブレークするステップと を含むことを特徴とする請求項1に記載の方法。 - 【請求項6】 前記ブレークするステップは、 前記第2メッセージに応じて、アップロックブレークメッセージを前記第1ク
ライアントデバイスに送信するステップと、 前記第2メッセージによって指示されるファイルシステム要求の実行を遅らせ
るステップと、 前記アップロックブレークメッセージに対する応答を前記第1クライアントデ
バイスから受け取るステップと、 前記の受け取るステップの後、前記第2メッセージを処理し、前記第2メッセ
ージに対して応答するステップと を含むことを特徴とする請求項5に記載の方法。 - 【請求項7】 前記同一ファイルロッキングセマンティクスは、チェンジモ
ニタリングロックを含み、チェンジモニタリングロックは、 第1プロトコルを用いる第1クライアントデバイスによって要求されることが
できるタイプであり、 チェンジ通知が、前記第1プロトコルとは異なる第2プロトコルを用いる第2
クライアントデバイスによって生じるタイプである ことを特徴とする請求項1に記載の方法。 - 【請求項8】 前記第1プロトコルが、CIFSを含む請求項7に記載の方
法。 - 【請求項9】 前記第2プロトコルが、NFSを含む請求項7に記載の方法
。 - 【請求項10】 前記同一のファイルロッキングセマンティクスが、 前記第1プロトコルを用いる第1メッセージに応じて、選択されたディレクト
リに関するチェンジモニタリングロックを前記第1クライアントデバイスに与え
るステップと、 前記選択されたディレクトリに関する、前記第2プロトコルを用いる第2メッ
セージに応じて、チェンジ通知メッセージを前記第1クライアントデバイスに送
信するステップと を含むことを特徴とする請求項1に記載の方法。 - 【請求項11】 前記の実施するステップは、複数のさまざまなプロトコル
を認識するステップと、 少なくとも前記プロトコルの1つを用いるメッセージに応じて、同一ファイル
ロッキングセマンティクスを規定するステップと、 前記クライアントデバイス全てに対して前記同一のファイルロッキングセマン
ティクスを実施するステップと を含むことを特徴とする請求項1に記載の方法。 - 【請求項12】 前記同一のファイルロッキングセマンティクスは、 前記第1プロトコルを用いる第1メッセージに応じて、オパチュニスティック
ロックを前記第1クライアントデバイスに与えるステップと、 前記第2プロトコルを用いる第2メッセージに応じて、前記オパチュニスティ
ックロックをブレークするステップと を含むことを特徴とする請求項11に記載の方法。 - 【請求項13】 前記のブレークするステップは、前記第2メッセージに応
じて、アップロックブレークメッセージを前記第1クライアントデバイスに送信
するステップと、 前記第2メッセージによって指定されるファイルシステム要求の実行を遅らせ
るステップと、 前記アップロックブレークメッセージに対する応答を、前記第1クライアント
デバイスから受け取るステップと、 前記の受け取るステップの後、前記第2メッセージを処理し、前記第2メッセ
ージに対して応答するステップと を含むことを特徴とする請求項12に記載の方法。 - 【請求項14】 前記同一のファイルロッキングセマンティクスを実施する
ステップは、 前記第1プロトコルを用いる第1クライアントデバイスからの第1メッセージ
に応じて、チェンジモニタリングを承諾するステップと、 前記第2プロトコルを用いる第2メッセージに応じて、チェンジ通知メッセー
ジを前記第1クライアントデバイスに送信するステップと、 を含むことを特徴とする請求項11に記載の方法。 - 【請求項15】 前記同一のファイルロッキングセマンティクスを実施する
前記のステップは、 前記同一のファイルロッキングセマンティクスを妨害しようとする選択された
メッセージを認識するステップと、 前記選択されたメッセージと関連付けられたプロトコルに適したエラー応答と
ともに、前記選択されたメッセージに対して応答するステップと を含むことを特徴とする請求項11に記載の方法。 - 【請求項16】 前記同一のファイルロッキングセマンティクスを実施する
ステップは、 前記の選択されたプロトコルにおいて、ファイルに関するバイトレンジロック
を獲得するための選択されたメッセージを認識するステップと、 獲得する前記バイトレンジロックが、同一または他のプロトコルを用いるメッ
セージによって作成された既存のロックと矛盾するか否かテストするステップと
を含み、 前記バイトレンジロックは、ロックタイプを有することを特徴とする請求項1
1に記載の方法。 - 【請求項17】 前記同一のファイルロッキングセマンティクスを実施する
ステップは、 前記選択されたプロトコルにおいて、ファイルをオープンするための選択され
たメッセージを認識するステップを含み、前記選択されたメッセージは要求され
たアクセスモードを含み、 前記同一のファイルロッキングセマンティクスを実施するステップは、さらに
前記要求されたアクセスモードを用いてオープンする前記ファイルが、同一また
は他のプロトコルを用いるメッセージによって作成された既存のロックと矛盾す
るか否かをテストするステップを含むことを特徴とする請求項11に記載の方法
。 - 【請求項18】 前記選択されたメッセージは、要求されたディナイモード
を含み、 前記要求されたディナイモードを用いるオープンする前記ファイルが、同一ま
たは他のプロトコルを用いるメッセージによって作成された既存のロックと矛盾
するか否かをテストするステップを含むことを特徴とする請求項17に記載の方
法。 - 【請求項19】 前記同一のファイルロッキングセマンティクスを実施する
前記ステップは、 前記の選択されたプロトコルにおいて、ファイルから読み出すための、または
ファイルに書き込むための選択されたメッセージを認識するステップと、 ファイルからの読み出しが、またはファイルへの書きこみが、同一または他の
プロトコルを用いるメッセージによって作成された既存のロックと矛盾するか否
かテストするステップと を含むことを特徴とする請求項11に記載の方法。 - 【請求項20】 前記の実施するステップは、第1プロトコルを用いる第1
メッセージを受け取るステップと、 第2プロトコルを用いる第2メッセージを受け取るステップと、 前記第2メッセージによって要求される前記アクセスを前記ロックと比較し、
前記アクセスが前記ロックによって禁じられているならば、前記アクセスを拒否
するステップとを含み、 前記第1メッセージは、選択されたファイルの少なくとも一部をロックするよ
うに作用し、前記第2メッセージは、前記一部へのアクセスを要求するように作
用することを特徴とする請求項1に記載の方法。 - 【請求項21】 前記第1プロトコルは、CIFSを含む請求項20に記載
の方法。 - 【請求項22】 前記第1プロトコルまたは前記第2プロトコルは、NLM
を含む請求項20に記載の方法。 - 【請求項23】 前記第2プロトコルは、NFSを含む請求項20に記載の
方法。 - 【請求項24】 前記第2メッセージを受け取る前記ステップは、ファイル
に関するバイトレンジロックを獲得するための前記第2メッセージとして、前記
第2プロトコルを用いる前記第2メッセージを受け取るステップを含み、前記バ
イトレンジロックはロックタイプを有し、 前記比較するステップは、獲得する、前記ロックタイプを有する前記バイトレ
ンジロックが、同一または他のプロトコルを用いるメッセージによって作成され
た既存のロックと矛盾するか否かをテストするステップを含む請求項20に記載
の方法。 - 【請求項25】 前記テストするステップは、前記第2メッセージに使用さ
れるプロトコルに反応する請求項24に記載の方法。 - 【請求項26】 前記テストするステップは、前記第1プロトコルに対して
はファイルオープン時に作用し、前記第2プロトコルに対してはアクセス時に作
用する請求項24に記載の方法。 - 【請求項27】 前記テストするステップは、前記第1プロトコルに対して
はファイルオープン時に作用し、前記第2プロトコルに対してはロック要求時に
作用する請求項24に記載の方法。 - 【請求項28】 前記第2メッセージを受け取る前記ステップは、ファイル
をオープンするための、前記第2プロトコルを用いる前記第2メッセージを認識
するステップを含み、前記第2メッセージは、要求されたアクセスモードを含み
、 前記比較するステップは、前記要求されたアクセスモードを用いて、アクセス
する前記ファイルは、同一または他のプロトコルを用いるメッセージによって作
成された既存のロックと矛盾するか否かをテストするステップを含む請求項20
に記載の方法。 - 【請求項29】 前記第2メッセージを受け取る前記ステップは、ファイル
から読み出すためのまたはファイルへ書き込むための、前記第2プロトコルを用
いる第2メッセージを認識するステップを含み、 前記の比較するステップは、前記第2メッセージによってアクセスしようとす
る前記ファイルが、同一または他のプロトコルを用いるメッセージによって作成
された既存のロックと矛盾するか否かテストするステップを含む請求項20に記
載の方法。 - 【請求項30】 前記第1メッセージを受け取る前記ステップは、前記第1
メッセージに応じて、アパチュニスティックロックを承諾するステップを含み、 前記の比較するステップは、前記第2メッセージに応じて、前記アパチュニス
ティックロックをブレークするステップを含む請求項20に記載の方法。 - 【請求項31】 前記のブレークするステップは、前記第2メッセージに応
じて、アップロックブレークメッセージを前記第1クライアントデバイスに送信
するステップと、 前記第2メッセージによって指定されるファイルシステム要求の実行を遅らせ
るステップと、 前記アップロックブレークメッセージに対する応答を前記第1クライアントデ
バイスから受け取るステップと、 前記の受け取るステップの後、前記第2メッセージを処理し、前記第2メッセ
ージに対して応答するステップと を含むことを特徴とする請求項30に記載の方法。 - 【請求項32】 前記アップロックブレークメッセージに対する前記応答は
、アップロックブレークアクノリッジメントメッセージまたはファイルクローズ
メッセージを含む請求項31に記載の方法。 - 【請求項33】 前記ファイルロッキングセマンティクスは、第1プロトコ
ルを用いる第1クライアントデバイスによって要求されるアクセスモードとディ
ナイモードとに応じて決定されるロックモードを含む請求項1に記載の方法。 - 【請求項34】 前記ファイルロッキングセマンティクスは、 第1プロトコルを用いる第1クライアントデバイスによって要求されるアクセ
スモードとディナイモードとに応じて決定される第1ロックモードと、 前記第1プロトコルとは異なる第2プロトコルを用いる第2クライアントデバ
イスからのメッセージに応じて決定される第2ロックモードとを含み、 前記ファイルサーバは、前記第1ロックモードと前記第2ロックモードとの比
較に反応することを特徴とする請求項1に記載の方法。 - 【請求項35】 前記比較は、ロック互換性マトリックスを含む請求項34
に記載の方法。 - 【請求項36】 前記比較は、ロック変換マトリックスを含む請求項34に
記載の方法。 - 【請求項37】 前記第2ロックモードは、バイトレンジロックに対する要
求に反応する請求項34に記載の方法。 - 【請求項38】 前記第2ロックモードは、NLMファイルロックに対する
要求に反応する請求項34に記載の方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US98539897A | 1997-12-05 | 1997-12-05 | |
US08/985,398 | 1997-12-05 | ||
PCT/US1998/025388 WO1999030254A1 (en) | 1997-12-05 | 1998-11-30 | Multi-protocol unified file-locking |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008148947A Division JP4430722B2 (ja) | 1997-12-05 | 2008-06-06 | マルチプロトコルの統一ファイルロッキング |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001526426A true JP2001526426A (ja) | 2001-12-18 |
JP2001526426A5 JP2001526426A5 (ja) | 2005-10-13 |
Family
ID=25531449
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000524743A Pending JP2001526426A (ja) | 1997-12-05 | 1998-11-30 | マルチプロトコルの統一ファイルロッキング |
JP2008148947A Expired - Fee Related JP4430722B2 (ja) | 1997-12-05 | 2008-06-06 | マルチプロトコルの統一ファイルロッキング |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008148947A Expired - Fee Related JP4430722B2 (ja) | 1997-12-05 | 2008-06-06 | マルチプロトコルの統一ファイルロッキング |
Country Status (5)
Country | Link |
---|---|
US (2) | US6516351B2 (ja) |
EP (1) | EP1034493A1 (ja) |
JP (2) | JP2001526426A (ja) |
CA (1) | CA2312492C (ja) |
WO (1) | WO1999030254A1 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006525571A (ja) * | 2003-04-29 | 2006-11-09 | インターナショナル・ビジネス・マシーンズ・コーポレーション | コンピューティング環境のオブジェクトへのアクセスの管理 |
JP2011115494A (ja) * | 2009-12-07 | 2011-06-16 | Bridgestone Sports Co Ltd | テニスボール用フェルトおよびテニスボール |
JP2014520343A (ja) * | 2011-06-24 | 2014-08-21 | ネットアップ,インコーポレイテッド | ファイル/オブジェクトデュアリティをサポートする統合ストレージシステムを提供するためのシステム及び方法 |
Families Citing this family (129)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6138126A (en) | 1995-05-31 | 2000-10-24 | Network Appliance, Inc. | Method for allocating files in a file system integrated with a raid disk sub-system |
US6516351B2 (en) | 1997-12-05 | 2003-02-04 | Network Appliance, Inc. | Enforcing uniform file-locking for diverse file-locking protocols |
US7010532B1 (en) * | 1997-12-31 | 2006-03-07 | International Business Machines Corporation | Low overhead methods and apparatus for shared access storage devices |
US6279011B1 (en) * | 1998-06-19 | 2001-08-21 | Network Appliance, Inc. | Backup and restore for heterogeneous file server environment |
JP3786521B2 (ja) * | 1998-07-01 | 2006-06-14 | 株式会社日立製作所 | 半導体集積回路及びデータ処理システム |
JP4745478B2 (ja) * | 1999-01-29 | 2011-08-10 | キヤノン株式会社 | ネットワークプリントシステム及び情報処理装置及びその制御方法 |
US6922729B1 (en) * | 1999-07-30 | 2005-07-26 | International Business Machines Corporation | Multi-connection control system |
US6360221B1 (en) | 1999-09-21 | 2002-03-19 | Neostar, Inc. | Method and apparatus for the production, delivery, and receipt of enhanced e-mail |
US7840639B1 (en) * | 1999-09-21 | 2010-11-23 | G&H Nevada-Tek | Method and article of manufacture for an automatically executed application program associated with an electronic message |
US9092535B1 (en) | 1999-09-21 | 2015-07-28 | Google Inc. | E-mail embedded textual hyperlink object |
US7043553B2 (en) * | 1999-10-07 | 2006-05-09 | Cisco Technology, Inc. | Method and apparatus for securing information access |
JP5220974B2 (ja) | 1999-10-14 | 2013-06-26 | ブルアーク ユーケー リミテッド | ハードウェア実行又はオペレーティングシステム機能の加速のための装置及び方法 |
GB2394816B (en) * | 1999-10-18 | 2004-08-11 | Fisher Rosemount Systems Inc | Accessing and updating a configuration database from distributed physical locations within a process control system |
US6687698B1 (en) | 1999-10-18 | 2004-02-03 | Fisher Rosemount Systems, Inc. | Accessing and updating a configuration database from distributed physical locations within a process control system |
US7203735B1 (en) * | 1999-10-21 | 2007-04-10 | International Business Machines Corporation | Files transfer between a remote home server and a local server |
US20030140112A1 (en) * | 1999-11-04 | 2003-07-24 | Satish Ramachandran | Electronic messaging system method and apparatus |
US6651123B1 (en) * | 2000-03-30 | 2003-11-18 | International Business Machines Corporation | File system locking |
US6993131B1 (en) * | 2000-09-12 | 2006-01-31 | Nokia Corporation | Method and system for managing rights in digital information over a network |
US20020055923A1 (en) * | 2000-11-01 | 2002-05-09 | Sun Microsystems, Inc. | Mandatory locking mechanisms for UNIX file systems |
US7512673B2 (en) | 2001-01-11 | 2009-03-31 | Attune Systems, Inc. | Rule based aggregation of files and transactions in a switched file system |
US7509322B2 (en) | 2001-01-11 | 2009-03-24 | F5 Networks, Inc. | Aggregated lock management for locking aggregated files in a switched file system |
US7383288B2 (en) | 2001-01-11 | 2008-06-03 | Attune Systems, Inc. | Metadata based file switch and switched file system |
WO2002056181A2 (en) * | 2001-01-11 | 2002-07-18 | Force Communications Inc Z | File switch and switched file system |
US7788335B2 (en) * | 2001-01-11 | 2010-08-31 | F5 Networks, Inc. | Aggregated opportunistic lock and aggregated implicit lock management for locking aggregated files in a switched file system |
US20040133606A1 (en) * | 2003-01-02 | 2004-07-08 | Z-Force Communications, Inc. | Directory aggregation for files distributed over a plurality of servers in a switched file system |
US8239354B2 (en) | 2005-03-03 | 2012-08-07 | F5 Networks, Inc. | System and method for managing small-size files in an aggregated file system |
US8195760B2 (en) * | 2001-01-11 | 2012-06-05 | F5 Networks, Inc. | File aggregation in a switched file system |
US6779063B2 (en) | 2001-04-09 | 2004-08-17 | Hitachi, Ltd. | Direct access storage system having plural interfaces which permit receipt of block and file I/O requests |
US6959337B2 (en) * | 2001-04-23 | 2005-10-25 | Hewlett-Packard Development Company, L.P. | Networked system for assuring synchronous access to critical facilities |
US20020188697A1 (en) * | 2001-06-08 | 2002-12-12 | O'connor Michael A. | A method of allocating storage in a storage area network |
US7370217B2 (en) * | 2001-11-16 | 2008-05-06 | Intel Corporation | Regulating file system device access |
US7529778B1 (en) | 2001-12-12 | 2009-05-05 | Microsoft Corporation | System and method for providing access to consistent point-in-time file versions |
JP2003233520A (ja) * | 2002-02-07 | 2003-08-22 | Fujitsu Ltd | ネットワーク上のファイル資源のためのファイル制御装置 |
JP2003233519A (ja) * | 2002-02-07 | 2003-08-22 | Fujitsu Ltd | ネットワーク上のファイル資源のためのファイル制御装置 |
US7313557B1 (en) * | 2002-03-15 | 2007-12-25 | Network Appliance, Inc. | Multi-protocol lock manager |
US7051050B2 (en) * | 2002-03-19 | 2006-05-23 | Netwrok Appliance, Inc. | System and method for restoring a single file from a snapshot |
JP2003281140A (ja) * | 2002-03-20 | 2003-10-03 | Hitachi Ltd | コンテンツ配信方法および配信システム |
US6857001B2 (en) | 2002-06-07 | 2005-02-15 | Network Appliance, Inc. | Multiple concurrent active file systems |
US7024586B2 (en) * | 2002-06-24 | 2006-04-04 | Network Appliance, Inc. | Using file system information in raid data reconstruction and migration |
US7457822B1 (en) | 2002-11-01 | 2008-11-25 | Bluearc Uk Limited | Apparatus and method for hardware-based file system |
US7797392B2 (en) * | 2002-11-26 | 2010-09-14 | International Business Machines Corporation | System and method for efficiently supporting multiple native network protocol implementations in a single system |
US7877511B1 (en) | 2003-01-13 | 2011-01-25 | F5 Networks, Inc. | Method and apparatus for adaptive services networking |
US8706760B2 (en) | 2003-02-28 | 2014-04-22 | Microsoft Corporation | Method to delay locking of server files on edit |
JP2004280283A (ja) * | 2003-03-13 | 2004-10-07 | Hitachi Ltd | 分散ファイルシステム、分散ファイルシステムサーバ及び分散ファイルシステムへのアクセス方法 |
JP4320195B2 (ja) * | 2003-03-19 | 2009-08-26 | 株式会社日立製作所 | ファイルストレージサービスシステム、ファイル管理装置、ファイル管理方法、id指定型nasサーバ、および、ファイル読出方法 |
US7233946B1 (en) * | 2003-04-11 | 2007-06-19 | Sun Microsystems, Inc. | File interval lock generation interface system and method |
US7155466B2 (en) * | 2003-10-27 | 2006-12-26 | Archivas, Inc. | Policy-based management of a redundant array of independent nodes |
US7380246B2 (en) * | 2003-12-15 | 2008-05-27 | Lenovo (Singapore) Pte. Ltd. | Method and system of accessing at least one target file in a computer system with an operating system with file locking implemented with byte-range locking |
US7660882B2 (en) * | 2004-06-10 | 2010-02-09 | Cisco Technology, Inc. | Deploying network element management system provisioning services |
US20060015493A1 (en) * | 2004-07-15 | 2006-01-19 | International Business Machines Corporation | Enhanced records manager and related methods |
US7617256B2 (en) * | 2004-07-19 | 2009-11-10 | Microsoft Corporation | Remote file updates through remote protocol |
CN101002180B (zh) | 2004-07-30 | 2012-09-05 | 捷讯研究有限公司 | 用于协调客户和主机安全模块的方法和系统 |
US7784088B2 (en) * | 2004-07-30 | 2010-08-24 | Research In Motion Limited | Method and system for managing delayed user authentication |
US7315926B2 (en) * | 2004-09-21 | 2008-01-01 | Emc Corporation | Lock management for concurrent access to a single file from multiple data mover computers |
US7885970B2 (en) * | 2005-01-20 | 2011-02-08 | F5 Networks, Inc. | Scalable system for partitioning and accessing metadata over multiple servers |
US20060167838A1 (en) * | 2005-01-21 | 2006-07-27 | Z-Force Communications, Inc. | File-based hybrid file storage scheme supporting multiple file switches |
US7958347B1 (en) | 2005-02-04 | 2011-06-07 | F5 Networks, Inc. | Methods and apparatus for implementing authentication |
US8332485B1 (en) | 2005-03-04 | 2012-12-11 | Cisco Technology, Inc. | Lock optimization and lock prediction approaches for reducing client-server messages |
US8332526B2 (en) | 2005-05-25 | 2012-12-11 | Microsoft Corporation | Data communication protocol including negotiation and command compounding |
US7853962B1 (en) | 2005-05-31 | 2010-12-14 | Cisco Technology, Inc. | Method and apparatus for optimization of remote procedure call communications |
US20060277221A1 (en) * | 2005-06-01 | 2006-12-07 | Green Hills Software, Inc. | Transactional file system with client partitioning |
US7716307B1 (en) * | 2005-10-21 | 2010-05-11 | Cisco Technology, Inc. | Method and apparatus for reducing client-server messages associated with opening a file |
US7636767B2 (en) * | 2005-11-29 | 2009-12-22 | Cisco Technology, Inc. | Method and apparatus for reducing network traffic over low bandwidth links |
US7644121B2 (en) * | 2005-11-30 | 2010-01-05 | Clickpath, Llc | Method and system for online session tracking |
US7581004B2 (en) * | 2006-02-15 | 2009-08-25 | Gabriel Jakobson | System and method for alerting on open file-share sessions on a user's electronic device |
US7904435B2 (en) * | 2006-03-10 | 2011-03-08 | Yahoo! Inc. | System and method for resource lock acquisition and reclamation in a network file system environment |
US8417746B1 (en) | 2006-04-03 | 2013-04-09 | F5 Networks, Inc. | File system management with enhanced searchability |
US8788685B1 (en) * | 2006-04-27 | 2014-07-22 | Netapp, Inc. | System and method for testing multi-protocol storage systems |
US8583596B2 (en) * | 2006-11-29 | 2013-11-12 | Red Hat, Inc. | Multi-master referential integrity |
US8433693B2 (en) * | 2007-04-02 | 2013-04-30 | Microsoft Corporation | Locking semantics for a storage system based on file types |
US20080243847A1 (en) * | 2007-04-02 | 2008-10-02 | Microsoft Corporation | Separating central locking services from distributed data fulfillment services in a storage system |
WO2008130983A1 (en) * | 2007-04-16 | 2008-10-30 | Attune Systems, Inc. | File aggregation in a switched file system |
WO2008147973A2 (en) * | 2007-05-25 | 2008-12-04 | Attune Systems, Inc. | Remote file virtualization in a switched file system |
US20090204705A1 (en) * | 2007-11-12 | 2009-08-13 | Attune Systems, Inc. | On Demand File Virtualization for Server Configuration Management with Limited Interruption |
US8117244B2 (en) | 2007-11-12 | 2012-02-14 | F5 Networks, Inc. | Non-disruptive file migration |
US8180747B2 (en) | 2007-11-12 | 2012-05-15 | F5 Networks, Inc. | Load sharing cluster file systems |
US8548953B2 (en) * | 2007-11-12 | 2013-10-01 | F5 Networks, Inc. | File deduplication using storage tiers |
US20090204650A1 (en) * | 2007-11-15 | 2009-08-13 | Attune Systems, Inc. | File Deduplication using Copy-on-Write Storage Tiers |
US7809776B1 (en) * | 2007-11-30 | 2010-10-05 | Netapp, Inc. | System and method for supporting change notify watches for virtualized storage systems |
US8352785B1 (en) | 2007-12-13 | 2013-01-08 | F5 Networks, Inc. | Methods for generating a unified virtual snapshot and systems thereof |
US8549582B1 (en) | 2008-07-11 | 2013-10-01 | F5 Networks, Inc. | Methods for handling a multi-protocol content name and systems thereof |
US8230439B2 (en) * | 2008-08-22 | 2012-07-24 | International Business Machines Corporation | Green computing interchange switching function |
JP5213077B2 (ja) * | 2008-10-06 | 2013-06-19 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 複数のアプリケーションサーバにより共有データをアクセスするシステム |
US9031990B2 (en) * | 2009-08-11 | 2015-05-12 | Q2 Management Inc. | Data processing system for manufacturing quality inspection management system |
US10721269B1 (en) | 2009-11-06 | 2020-07-21 | F5 Networks, Inc. | Methods and system for returning requests with javascript for clients before passing a request to a server |
US9195500B1 (en) | 2010-02-09 | 2015-11-24 | F5 Networks, Inc. | Methods for seamless storage importing and devices thereof |
US8204860B1 (en) | 2010-02-09 | 2012-06-19 | F5 Networks, Inc. | Methods and systems for snapshot reconstitution |
US8347100B1 (en) | 2010-07-14 | 2013-01-01 | F5 Networks, Inc. | Methods for DNSSEC proxying and deployment amelioration and systems thereof |
US8965862B2 (en) | 2010-09-17 | 2015-02-24 | Microsoft Corporation | Directory oplock |
JP5539833B2 (ja) * | 2010-09-29 | 2014-07-02 | キヤノン電子株式会社 | 情報処理装置及びその制御方法、コンピュータプログラムならびにコンピュータ可読記憶媒体 |
US9286298B1 (en) | 2010-10-14 | 2016-03-15 | F5 Networks, Inc. | Methods for enhancing management of backup data sets and devices thereof |
US8631277B2 (en) | 2010-12-10 | 2014-01-14 | Microsoft Corporation | Providing transparent failover in a file system |
JP5249368B2 (ja) * | 2011-01-31 | 2013-07-31 | 株式会社バッファロー | ネットワーク装置 |
US8849880B2 (en) | 2011-05-18 | 2014-09-30 | Hewlett-Packard Development Company, L.P. | Providing a shadow directory and virtual files to store metadata |
WO2012170004A1 (en) * | 2011-06-06 | 2012-12-13 | Hewlett-Packard Development Company, L.P. | Cross-protocol locking with a file system |
US9331955B2 (en) | 2011-06-29 | 2016-05-03 | Microsoft Technology Licensing, Llc | Transporting operations of arbitrary size over remote direct memory access |
US8396836B1 (en) | 2011-06-30 | 2013-03-12 | F5 Networks, Inc. | System for mitigating file virtualization storage import latency |
US8856582B2 (en) | 2011-06-30 | 2014-10-07 | Microsoft Corporation | Transparent failover |
US8788579B2 (en) | 2011-09-09 | 2014-07-22 | Microsoft Corporation | Clustered client failover |
US20130067095A1 (en) | 2011-09-09 | 2013-03-14 | Microsoft Corporation | Smb2 scaleout |
US8463850B1 (en) | 2011-10-26 | 2013-06-11 | F5 Networks, Inc. | System and method of algorithmically generating a server side transaction identifier |
US9020912B1 (en) | 2012-02-20 | 2015-04-28 | F5 Networks, Inc. | Methods for accessing data in a compressed file system and devices thereof |
US9519501B1 (en) | 2012-09-30 | 2016-12-13 | F5 Networks, Inc. | Hardware assisted flow acceleration and L2 SMAC management in a heterogeneous distributed multi-tenant virtualized clustered system |
US10375155B1 (en) | 2013-02-19 | 2019-08-06 | F5 Networks, Inc. | System and method for achieving hardware acceleration for asymmetric flow connections |
US9554418B1 (en) | 2013-02-28 | 2017-01-24 | F5 Networks, Inc. | Device for topology hiding of a visited network |
EP2853966A1 (de) * | 2013-09-30 | 2015-04-01 | Siemens Aktiengesellschaft | Industrielles Automatisierungssystem mit wenigstens einer Steuerung und einem Speicher |
US20150106298A1 (en) * | 2013-10-11 | 2015-04-16 | Prolifiq Sofware Inc. | Selective sharing of electronic information |
US9336406B2 (en) * | 2013-11-14 | 2016-05-10 | Futurewei Technologies, Inc. | Multiprotocol access control list with guaranteed protocol compliance |
US10536523B2 (en) * | 2014-05-11 | 2020-01-14 | Microsoft Technology Licensing, Llc | File service using a shared file access-rest interface |
US10169367B2 (en) * | 2014-06-06 | 2019-01-01 | Panzura, Inc. | Managing opportunistic locks in a distributed file system |
US11838851B1 (en) | 2014-07-15 | 2023-12-05 | F5, Inc. | Methods for managing L7 traffic classification and devices thereof |
US9917882B2 (en) * | 2014-11-30 | 2018-03-13 | Sonicwall Inc. | Transparent deferred spooling store and forward based on standard network system and client interface |
US10182013B1 (en) | 2014-12-01 | 2019-01-15 | F5 Networks, Inc. | Methods for managing progressive image delivery and devices thereof |
US10313486B2 (en) | 2015-01-07 | 2019-06-04 | Sonicwall Inc. | Optimizing transfer of fragmented packetized data |
US11895138B1 (en) | 2015-02-02 | 2024-02-06 | F5, Inc. | Methods for improving web scanner accuracy and devices thereof |
US10834065B1 (en) | 2015-03-31 | 2020-11-10 | F5 Networks, Inc. | Methods for SSL protected NTLM re-authentication and devices thereof |
US9813526B2 (en) | 2015-05-26 | 2017-11-07 | Sonicwall Inc. | Reducing transmission pathway lengths within a distributed network |
US10158735B2 (en) | 2015-08-07 | 2018-12-18 | Sonicwall Inc. | Read-ahead on signed connections with unsigning, inline, transparent proxies |
US10404698B1 (en) | 2016-01-15 | 2019-09-03 | F5 Networks, Inc. | Methods for adaptive organization of web application access points in webtops and devices thereof |
US10797888B1 (en) | 2016-01-20 | 2020-10-06 | F5 Networks, Inc. | Methods for secured SCEP enrollment for client devices and devices thereof |
KR102107277B1 (ko) * | 2016-08-08 | 2020-05-06 | (주)나무소프트 | 피싱 또는 랜섬웨어 공격을 차단하는 방법 및 시스템 |
US10412198B1 (en) | 2016-10-27 | 2019-09-10 | F5 Networks, Inc. | Methods for improved transmission control protocol (TCP) performance visibility and devices thereof |
US10567492B1 (en) | 2017-05-11 | 2020-02-18 | F5 Networks, Inc. | Methods for load balancing in a federated identity environment and devices thereof |
US11223689B1 (en) | 2018-01-05 | 2022-01-11 | F5 Networks, Inc. | Methods for multipath transmission control protocol (MPTCP) based session migration and devices thereof |
US10833943B1 (en) | 2018-03-01 | 2020-11-10 | F5 Networks, Inc. | Methods for service chaining and devices thereof |
US11082494B2 (en) | 2019-12-05 | 2021-08-03 | Western Digital Technologies, Inc. | Cross storage protocol access response for object data stores |
US11455213B2 (en) * | 2020-02-05 | 2022-09-27 | EMC IP Holding Company LLC | Method and system for parallel data transmission and cooperating backups |
CN115951844B (zh) * | 2023-03-13 | 2023-06-06 | 浪潮电子信息产业股份有限公司 | 分布式文件系统的文件锁管理方法、设备及介质 |
CN115934743B (zh) * | 2023-03-13 | 2023-06-02 | 浪潮电子信息产业股份有限公司 | 一种文件锁管理方法、系统、设备及计算机可读存储介质 |
Family Cites Families (77)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4814971A (en) | 1985-09-11 | 1989-03-21 | Texas Instruments Incorporated | Virtual memory recovery system using persistent roots for selective garbage collection and sibling page timestamping for defining checkpoint state |
US4719569A (en) | 1985-10-11 | 1988-01-12 | Sun Microsystems, Inc. | Arbitrator for allocating access to data processing resources |
US4825354A (en) | 1985-11-12 | 1989-04-25 | American Telephone And Telegraph Company, At&T Bell Laboratories | Method of file access in a distributed processing computer network |
US4742450A (en) | 1986-01-16 | 1988-05-03 | International Business Machines Corporation | Method to share copy on write segment for mapped files |
US4780821A (en) | 1986-07-29 | 1988-10-25 | International Business Machines Corp. | Method for multiple programs management within a network having a server computer and a plurality of remote computers |
US4887204A (en) | 1987-02-13 | 1989-12-12 | International Business Machines Corporation | System and method for accessing remote files in a distributed networking environment |
CA1299757C (en) | 1987-08-28 | 1992-04-28 | Brent Cameron Beardsley | Device initiated partial system quiescing |
DE3854026D1 (de) | 1987-09-04 | 1995-07-27 | Digital Equipment Corp | Fehlertolerantes Rechnersystem mit Fehler-Eingrenzung. |
US5109515A (en) | 1987-09-28 | 1992-04-28 | At&T Bell Laboratories | User and application program transparent resource sharing multiple computer interface architecture with kernel process level transfer of user requested services |
US5319780A (en) * | 1987-10-19 | 1994-06-07 | International Business Machines Corporation | System that implicitly locks a subtree or explicitly locks a node based upon whether or not an explicit lock request is issued |
JP2625866B2 (ja) | 1988-04-26 | 1997-07-02 | 日本電気株式会社 | 電子機器筐体の冷却構造 |
US5043876A (en) | 1988-05-27 | 1991-08-27 | International Business Machines Corporation | N-level file shadowing and recovery in a shared file system |
US4937763A (en) | 1988-09-06 | 1990-06-26 | E I International, Inc. | Method of system state analysis |
US5065354A (en) | 1988-09-16 | 1991-11-12 | Compaq Computer Corporation | Queued posted-write disk write method with improved error handling |
US5067099A (en) | 1988-11-03 | 1991-11-19 | Allied-Signal Inc. | Methods and apparatus for monitoring system performance |
US4984272A (en) | 1988-11-30 | 1991-01-08 | At&T Bell Laboratories | Secure file handling in a computer operating system |
JPH02165241A (ja) | 1988-12-19 | 1990-06-26 | Toshiba Corp | ファイルアクセス方式 |
US5222217A (en) | 1989-01-18 | 1993-06-22 | International Business Machines Corporation | System and method for implementing operating system message queues with recoverable shared virtual storage |
US5113442A (en) | 1989-03-06 | 1992-05-12 | Lachman Associates, Inc. | Method and apparatus for providing access control in a secure operating system |
US5144659A (en) | 1989-04-19 | 1992-09-01 | Richard P. Jones | Computer file protection system |
US5454099A (en) | 1989-07-25 | 1995-09-26 | International Business Machines Corporation | CPU implemented method for backing up modified data sets in non-volatile store for recovery in the event of CPU failure |
US5261051A (en) | 1989-08-14 | 1993-11-09 | Microsoft Corporation | Method and system for open file caching in a networked computer system |
US5230047A (en) | 1990-04-16 | 1993-07-20 | International Business Machines Corporation | Method for balancing of distributed tree file structures in parallel computing systems to enable recovery after a failure |
JPH04130950A (ja) | 1990-09-21 | 1992-05-01 | Toshiba Corp | ネットワークシステム |
US5146588A (en) * | 1990-11-26 | 1992-09-08 | Storage Technology Corporation | Redundancy accumulator for disk drive array memory |
US5321837A (en) | 1991-10-11 | 1994-06-14 | International Business Machines Corporation | Event handling mechanism having a process and an action association process |
GB9126779D0 (en) | 1991-12-17 | 1992-02-12 | Int Computers Ltd | Security mechanism for a computer system |
US5469566A (en) | 1992-03-12 | 1995-11-21 | Emc Corporation | Flexible parity generation circuit for intermittently generating a parity for a plurality of data channels in a redundant array of storage units |
US5448718A (en) | 1992-04-20 | 1995-09-05 | International Business Machines Corporation | Method and system for time zero backup session security |
JPH0619771A (ja) * | 1992-04-20 | 1994-01-28 | Internatl Business Mach Corp <Ibm> | 異種のクライアントによる共用ファイルのファイル管理機構 |
US5335235A (en) * | 1992-07-07 | 1994-08-02 | Digital Equipment Corporation | FIFO based parity generator |
US5596754A (en) * | 1992-10-29 | 1997-01-21 | Digital Equipment Corporation | Method for performing private lock management |
US5504883A (en) | 1993-02-01 | 1996-04-02 | Lsc, Inc. | Method and apparatus for insuring recovery of file control information for secondary storage systems |
US5522050A (en) | 1993-05-28 | 1996-05-28 | International Business Machines Corporation | Bus-to-bus bridge for a multiple bus information handling system that optimizes data transfers between a system bus and a peripheral bus |
DE69425658T2 (de) | 1993-06-03 | 2001-04-19 | Network Appliance Inc | Anordnung eines dateisystems zum beschreiben beliebiger bereiche |
US5963962A (en) | 1995-05-31 | 1999-10-05 | Network Appliance, Inc. | Write anywhere file-system layout |
DE69434381T2 (de) * | 1993-06-04 | 2006-01-19 | Network Appliance, Inc., Sunnyvale | Verfahren zur Paritätsdarstellung in einem Raid-Untersystem unter Verwendung eines nichtflüchtigen Speichers |
EP0706686B1 (en) | 1993-07-01 | 1998-10-14 | Legent Corporation | System and method for distributed storage management on networked computer systems |
US5572711A (en) | 1993-09-28 | 1996-11-05 | Bull Hn Information Systems Inc. | Mechanism for linking together the files of emulated and host system for access by emulated system users |
US5835953A (en) | 1994-10-13 | 1998-11-10 | Vinca Corporation | Backup system that takes a snapshot of the locations in a mass storage device that has been identified for updating prior to updating |
US5649152A (en) | 1994-10-13 | 1997-07-15 | Vinca Corporation | Method and system for providing a static snapshot of data stored on a mass storage system |
EP0713183A3 (en) | 1994-11-18 | 1996-10-02 | Microsoft Corp | Network-independent shadow files |
US6085234A (en) * | 1994-11-28 | 2000-07-04 | Inca Technology, Inc. | Remote file services network-infrastructure cache |
US5617568A (en) | 1994-12-14 | 1997-04-01 | International Business Machines Corporation | System and method for supporting file attributes on a distributed file system without native support therefor |
US5689701A (en) | 1994-12-14 | 1997-11-18 | International Business Machines Corporation | System and method for providing compatibility between distributed file system namespaces and operating system pathname syntax |
US5604862A (en) | 1995-03-14 | 1997-02-18 | Network Integrity, Inc. | Continuously-snapshotted protection of computer files |
US5696895A (en) | 1995-05-19 | 1997-12-09 | Compaq Computer Corporation | Fault tolerant multiple network servers |
US5603051A (en) | 1995-06-06 | 1997-02-11 | Hewlett-Packard Company | Input/output processor with a local memory providing shared resources for a plurality of input/output interfaces on an I/O bus |
US5675782A (en) | 1995-06-06 | 1997-10-07 | Microsoft Corporation | Controlling access to objects on multiple operating systems |
US5761669A (en) | 1995-06-06 | 1998-06-02 | Microsoft Corporation | Controlling access to objects on multiple operating systems |
US5628005A (en) * | 1995-06-07 | 1997-05-06 | Microsoft Corporation | System and method for providing opportunistic file access in a network environment |
US5729705A (en) | 1995-07-24 | 1998-03-17 | Symbios Logic Inc. | Method and apparatus for enhancing throughput of disk array data transfers in a controller |
US5720029A (en) | 1995-07-25 | 1998-02-17 | International Business Machines Corporation | Asynchronously shadowing record updates in a remote copy session using track arrays |
US5668958A (en) | 1995-09-12 | 1997-09-16 | International Business Machines Corporation | Heterogeneous filing system with common API and reconciled file management rules |
US5737744A (en) | 1995-10-13 | 1998-04-07 | Compaq Computer Corporation | Disk array controller for performing exclusive or operations |
US5740367A (en) * | 1995-11-03 | 1998-04-14 | Spilo; Michael L. | Method and apparatus for improving the throughput of a local area network |
US5742752A (en) | 1995-12-29 | 1998-04-21 | Symbios Logic Inc. | Method for performing a RAID stripe write operation using a drive XOR command set |
US5737523A (en) | 1996-03-04 | 1998-04-07 | Sun Microsystems, Inc. | Methods and apparatus for providing dynamic network file system client authentication |
US5819310A (en) | 1996-05-24 | 1998-10-06 | Emc Corporation | Method and apparatus for reading data from mirrored logical volumes on physical disk drives |
US5825877A (en) | 1996-06-11 | 1998-10-20 | International Business Machines Corporation | Support for portable trusted software |
US5828876A (en) * | 1996-07-31 | 1998-10-27 | Ncr Corporation | File system for a clustered processing system |
US6161165A (en) | 1996-11-14 | 2000-12-12 | Emc Corporation | High performance data path with XOR on the fly |
US6026474A (en) * | 1996-11-22 | 2000-02-15 | Mangosoft Corporation | Shared client-side web caching using globally addressable memory |
US5915087A (en) | 1996-12-12 | 1999-06-22 | Secure Computing Corporation | Transparent security proxy for unreliable message exchange protocols |
US5931935A (en) | 1997-04-15 | 1999-08-03 | Microsoft Corporation | File system primitive allowing reprocessing of I/O requests by multiple drivers in a layered driver I/O system |
US5876278A (en) | 1997-05-29 | 1999-03-02 | Cheng; Henry | Cooling device |
US6067541A (en) | 1997-09-17 | 2000-05-23 | Microsoft Corporation | Monitoring document changes in a file system of documents with the document change information stored in a persistent log |
US6275953B1 (en) * | 1997-09-26 | 2001-08-14 | Emc Corporation | Recovery from failure of a data processor in a network server |
US5996086A (en) | 1997-10-14 | 1999-11-30 | Lsi Logic Corporation | Context-based failover architecture for redundant servers |
US5999943A (en) | 1997-10-31 | 1999-12-07 | Oracle Corporation | Lob locators |
US5940828A (en) * | 1997-11-18 | 1999-08-17 | International Business Machines Corporation | Locking contention resolution for shared resources |
US6516351B2 (en) | 1997-12-05 | 2003-02-04 | Network Appliance, Inc. | Enforcing uniform file-locking for diverse file-locking protocols |
US6457130B2 (en) | 1998-03-03 | 2002-09-24 | Network Appliance, Inc. | File access control in a multi-protocol file server |
US5890959A (en) | 1998-03-31 | 1999-04-06 | Digital Equipment Corporation | High efficiency blower system with integral backflow preventor |
US6279011B1 (en) | 1998-06-19 | 2001-08-21 | Network Appliance, Inc. | Backup and restore for heterogeneous file server environment |
US6574591B1 (en) | 1998-07-31 | 2003-06-03 | Network Appliance, Inc. | File systems image transfer between dissimilar file systems |
US6654912B1 (en) | 2000-10-04 | 2003-11-25 | Network Appliance, Inc. | Recovery of file system data in file servers mirrored file system volumes |
-
1998
- 1998-10-21 US US09/176,599 patent/US6516351B2/en not_active Expired - Lifetime
- 1998-11-30 WO PCT/US1998/025388 patent/WO1999030254A1/en active Application Filing
- 1998-11-30 EP EP98961834A patent/EP1034493A1/en not_active Withdrawn
- 1998-11-30 CA CA002312492A patent/CA2312492C/en not_active Expired - Fee Related
- 1998-11-30 JP JP2000524743A patent/JP2001526426A/ja active Pending
-
2002
- 2002-08-28 US US10/230,877 patent/US7293097B2/en not_active Expired - Fee Related
-
2008
- 2008-06-06 JP JP2008148947A patent/JP4430722B2/ja not_active Expired - Fee Related
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006525571A (ja) * | 2003-04-29 | 2006-11-09 | インターナショナル・ビジネス・マシーンズ・コーポレーション | コンピューティング環境のオブジェクトへのアクセスの管理 |
US8700584B2 (en) | 2003-04-29 | 2014-04-15 | International Business Machines Corporation | Managing access to objects of a computing environment |
JP2011115494A (ja) * | 2009-12-07 | 2011-06-16 | Bridgestone Sports Co Ltd | テニスボール用フェルトおよびテニスボール |
JP2014520343A (ja) * | 2011-06-24 | 2014-08-21 | ネットアップ,インコーポレイテッド | ファイル/オブジェクトデュアリティをサポートする統合ストレージシステムを提供するためのシステム及び方法 |
Also Published As
Publication number | Publication date |
---|---|
JP4430722B2 (ja) | 2010-03-10 |
EP1034493A1 (en) | 2000-09-13 |
CA2312492A1 (en) | 1999-06-17 |
CA2312492C (en) | 2006-02-07 |
WO1999030254A1 (en) | 1999-06-17 |
US7293097B2 (en) | 2007-11-06 |
US20030065796A1 (en) | 2003-04-03 |
US20020019874A1 (en) | 2002-02-14 |
JP2008305405A (ja) | 2008-12-18 |
US6516351B2 (en) | 2003-02-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2001526426A (ja) | マルチプロトコルの統一ファイルロッキング | |
JP4613023B2 (ja) | プロトコル独立型クライアント側キャッシュ(protocol−independentclient−sidecaching)システムおよび方法 | |
JP4348036B2 (ja) | ファイル中にバージョン固有プロパティを作成し保持する方法およびシステム | |
US6973455B1 (en) | File server system providing direct data sharing between clients with a server acting as an arbiter and coordinator | |
US7403960B2 (en) | Method and system for creating snapshots by condition | |
US6324581B1 (en) | File server system using file system storage, data movers, and an exchange of meta data among data movers for file locking and direct access to shared file systems | |
US7120631B1 (en) | File server system providing direct data sharing between clients with a server acting as an arbiter and coordinator | |
US5740370A (en) | System for opening cache file associated with designated file of file server only if the file is not subject to being modified by different program | |
US20080307138A1 (en) | Method and system for locking resources in a distributed environment | |
KR100825721B1 (ko) | 객체 기반 스토리지 시스템에서 사용자 파일 관리자 내의시간 기반 캐쉬 일관성 유지 시스템 및 방법 | |
JP4416366B2 (ja) | 分散型環境においてバージョン固有プロパティを作成し維持するための方法、および、システム | |
US20080244738A1 (en) | Access control | |
JPH0619771A (ja) | 異種のクライアントによる共用ファイルのファイル管理機構 | |
TW200408980A (en) | System and method for managing file names for file system filter drivers | |
US8762434B1 (en) | Aliasing of exported paths in a storage system | |
US20040220976A1 (en) | Managing access to objects of a computing environment | |
US20050086491A1 (en) | Method, apparatus, and program for multiple simultaneous ACL formats on a filesystem | |
US7827194B2 (en) | Access to shared disk device on storage area network | |
Borr | Secureshare: Safe unix/windows file sharing through multiprotocol locking | |
KR100604239B1 (ko) | 다양한 파일 록킹 프로토콜에 대한 단일 파일 록킹 의미론을 실시하여 파일 서버를 동작하는 방법 및 이 방법에 의해 동작되는 파일 서버 | |
Borr | 2nd USENIX Windows NT Symposium [Technical Program] |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040204 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040204 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070814 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20071114 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20071128 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071213 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20080205 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080507 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20080606 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20080715 |