JPH11120065A - 大域名空間を維持する方法およびシステム - Google Patents

大域名空間を維持する方法およびシステム

Info

Publication number
JPH11120065A
JPH11120065A JP10182222A JP18222298A JPH11120065A JP H11120065 A JPH11120065 A JP H11120065A JP 10182222 A JP10182222 A JP 10182222A JP 18222298 A JP18222298 A JP 18222298A JP H11120065 A JPH11120065 A JP H11120065A
Authority
JP
Japan
Prior art keywords
global
node
file system
local
mount
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
JP10182222A
Other languages
English (en)
Inventor
Samuel M Cramer
サミュエル・エム・クレイマー
Glenn C Skinner
グレン・シイ・スキナー
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.)
Sun Microsystems Inc
Original Assignee
Sun Microsystems Inc
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 Sun Microsystems Inc filed Critical Sun Microsystems Inc
Publication of JPH11120065A publication Critical patent/JPH11120065A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/176Support for shared access to files; File sharing support
    • G06F16/1767Concurrency control, e.g. optimistic or pessimistic approaches
    • G06F16/1774Locking methods, e.g. locking methods for file systems allowing shared and concurrent access to files
    • YGENERAL 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
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • YGENERAL 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
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99938Concurrency, e.g. lock management in shared database
    • YGENERAL 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
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99942Manipulating data structure, e.g. compression, compaction, compilation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Computer And Data Communications (AREA)
  • Multi Processors (AREA)

Abstract

(57)【要約】 【課題】 通信リンクによって相互接続された複数のノ
ードを含む分散計算システム中で一貫性のある大域名空
間を維持することができる大域マウント機構を提案す
る。 【解決手段】 この大域マウント機構は、新しいファイ
ル・システム資源が各ノード中で同じマウント・ポイン
トに同時にマウントされるコヒーレントな方法で、新し
いファイル・システム資源を大域名空間中にマウントす
る。この大域マウント機構は、遠隔ノードに位置する資
源を要求するノードから開始されるマウントまたはマウ
ント解除要求に適応する。大域マウント機構は、大域名
空間からファイル・システム資源をマウント解除するた
めにも使用される。大域マウント機構は、各ローカル・
マウント・ポイントに大域ロック能力を提供することに
よって大域名空間を最初に生成する初期化手続きも含
む。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、一般に分散ファイ
ル・システムに関し、さらに詳細には、分散ファイル・
システム中で大域名空間を維持する方法およびシステム
に関する。
【0002】
【従来の技術】クラスタは、高速通信リンクによって接
続された独立計算ノードのグループである。各計算ノー
ドは1つまたは複数のプロセスを有し、各プロセスはそ
れ自体のアドレス空間を有する。各プロセスは、クラス
タ中に存在するファイル・システムと関連づけられたデ
ータにアクセスすることができる。ファイル・システム
は、このプロセスと関連づけられたノード、またはクラ
スタ内の別のノード中にある。
【0003】クラスタは、クラスタ内の各ノードにアク
セス可能なファイル・システムを表す大域名空間を有す
る。各ノードも、特定ノードと関連づけられたプロセス
にアクセス可能なファイル・システムを表すローカル名
空間を有するであろう。特定ノードと関連づけられたユ
ーザは、1つのノードにローカルな、すなわち局所的な
ファイル・システムを大域名空間中にマウントまたは接
続することができる。さらに、ユーザは、ファイル・シ
ステムを大域名空間からマウント解除または接続解除
し、それによりファイル・システムをクラスタ中の各ノ
ードにアクセス不可能にすることもできる。
【0004】各ノードが、大域名空間の単一のシステム
・イメージを有することは有利である。ただし、このイ
メージを維持することは、コヒーレンシ、資源位置、お
よび透過性の点から複雑になる。コヒーレンシは、クラ
スタ内の同じマウント・ポイントに、同じ時点でファイ
ル・システムをマウントおよびマウント解除する際に達
成されなければならない。そうでなければ、各ノードは
ファイル・システムを異なるマウント・ポイントにマウ
ントする、またはマウント解除されたファイルにアクセ
スすることができる。
【0005】ユーザがマウントおよびマウント解除コマ
ンドを発行するという観点から、大域名空間の存在はで
きる限り透過性にするべきである。この透過性は、マウ
ントおよびマウント解除コマンドのインタフェース、な
らびにユーザ・アプリケーション・プログラムおよびデ
ータに必要な変化を最小限に抑えることになる。
【0006】さらに、いくつかの場合では、ファイル・
システムをマウントするために必要な資源が、常にクラ
スタ中の全てのノードからアクセス可能であるとは限ら
ない。このことは、1つのノードから開始されたファイ
ル・システムと関連づけられた資源が別のノードから最
もよくアクセスされる場合に、このファイル・システム
のマウントに影響を及ぼす可能性がある。マウント・タ
スクを実行するためには、この障害を克服することが必
要となる。
【0007】
【発明が解決しようとする課題】したがって、前述の制
約を補償するような方法で、分散計算環境中で大域名空
間を維持する必要がある。
【0008】
【課題を解決するための手段】本発明の方法およびシス
テムは、分散計算システム中で一貫性のある大域名空間
を維持することができる大域マウント機構に関する。分
散計算システムは、通信リンクによって相互接続された
ノードのクラスタを含む。大域マウント機構は、新しい
ファイル・システム資源を大域名空間中にマウントし、
マウントしたファイル・システム資源をコヒーレントな
方法でマウント解除する。コヒーレンシは、クラスタ内
の同じマウント・ポイントに、同じ時点でファイル・シ
ステム資源をマウントすることによって達成される。大
域マウント機構は、分散ロック機構を利用して、マウン
トまたはマウント解除操作が確実にコヒーレントな方法
で実行されるようにする。大域マウント機構は、ファイ
ル・システム資源を、そのファイル・システム資源と関
連づけられていないノードによってマウントすることが
できるようにすることによって、ファイル・システム資
源分散中の不均衡を補償する。
【0009】大域名空間は、クラスタ中の各ノードから
アクセス可能なファイル・システム資源の集合である。
各ファイル・システム資源は、関連づけられたファイル
・システム資源に属するファイル資源のセットへのアク
セスを仲介する。各ファイル資源は、1つまたは複数の
ディレクトリを含むことができるパス名によって表され
る。大域名空間中の各ディレクトリは、新しいファイル
・システム資源を大域名空間中にマウントする、または
組み込むことができる大域マウント・ポイントとして機
能することができる。新しいファイル・システム資源が
特定のマウント・ポイントにマウントされると、それが
仲介するファイル資源が、マウント・ポイントのパス名
から開始されるパス名を介してアクセス可能になる。
【0010】ファイル・システム資源と関連づけられた
サーバ・ノードは、ファイル・システム資源を表すため
に仮想ファイル・システム(VFS)機構およびファイ
ル・システム・オブジェクト(FSobj)を含む。さ
らに、各クライアント・ノードは、ファイル・システム
資源を表すために、プロキシVFS機構およびプロキシ
FSobjを含む。
【0011】仮想ファイル・システム・ノード(vno
de)機構は、大域名空間中の各ディレクトリを表すた
めに使用される。vnode機構は、VFSまたはプロ
キシVFS機構を取り付け、それにより新しいファイル
・システム資源を大域名空間中に組み込むマウント・ポ
イントとして使用される。
【0012】大域マウント機構は、大域名空間を最初に
生成する初期化機構を含む。システム初期化の時点で、
各ノードは、ノード内からのみアクセス可能ないくつか
のローカル・ファイル・システム資源を含むローカル名
空間を有する。初期化機構は、1つまたは複数のローカ
ル・ディレクトリまたはローカル・マウント・ポイント
に、クラスタ中の任意のノードによってローカル・マウ
ントをロックすることができる大域ロック能力を与え
る。この大域ロック能力は、ローカル・マウント・ポイ
ントを、大域名空間の一部分である大域マウント・ポイ
ントに変換する。その後、1つまたは複数のローカル・
ファイル・システム資源は、大域マウント・ポイントに
マウントされ、大域名空間の一部分となることができ
る。
【0013】本発明のさらに別の目的および特徴は、以
下の詳細な説明および添付の特許請求の範囲を図面と関
連して読めば、より容易に理解されるであろう。
【0014】
【発明の実施の形態】ファイル・システムのデータ構造の概観 図1を参照すると、複数の計算ノード102を含む分散
計算システム100が示されている。各計算ノード10
2は、通信リンク104を介して相互接続された独立し
たクライアント/サーバ・コンピュータを表す。各ノー
ドは、クライアントまたはサーバ・コンピュータのいず
れか、あるいはその両方として働く。所与のファイル・
システム資源に関して、1つのノードはその資源に対す
るサーバ・コンピュータとして働き、その他のノードは
クライアント・コンピュータとして働く。クライアント
・コンピュータは、通信リンクを介してファイル・シス
テム資源にアクセスするノードと関連づけられ、サーバ
・コンピュータは、通信リンクを介してファイル・シス
テム資源を提供するノードと関連づけられる。しかし、
特定のファイル・システム資源に対するクライアントお
よびサーバ・コンピュータの類別は、時間とともに変化
することができる。
【0015】分散計算システム100は、ローカル層
(Local)およびクラスタ層(Cluster)を
含む分散ファイル・システムを利用する。ローカル層
は、物理ファイル・システムおよびvnode/VFS
インタフェースを含む。物理ファイル・システムは、そ
のノードにローカルなデータ記憶装置上でファイル・デ
ータを記憶する任意のファイル・システムである。物理
ファイル・システムの例としては、MSDOS PCフ
ァイル・システム、4.3BSDファイル・システム、
Sun networkファイル・システム(NFS)
などが含まれるが、これらに限定されるわけではない。
【0016】vnode/VFSインタフェースは、オ
ペレーティング・システムと物理ファイル・システムと
の間のインタフェースである。vnode/VFSイン
タフェースは、任意のUnixオペレーティング・シス
テムまたはカーネル内の複数のファイル・システムの実
施形態に適応する。ファイル・システムは、vnode
/VFSインタフェースを介してカーネルに組み込むこ
とができる。vnode(すなわち仮想ファイル・ノー
ド)118は、特定のファイルを記述するオペレーティ
ング・システムのデータを含むデータ構造である。仮想
ファイル・システム(VFS)120は、特定のファイ
ル・システムを記述するオペレーティング・システムの
データを含むデータ構造である。
【0017】クラスタ層は、クラスタ内の任意のノード
からアクセス可能なファイル・システム資源を表す。本
明細書で使用する「ファイル・システム資源」という用
語は、ファイルのセット、ファイル・システム、ディレ
クトリ、またはディレクトリのグループを特徴づけるた
めに必要な情報を表すものであることに留意されたい。
さらに、ディレクトリは、ファイルであると考えること
ができる。クラスタのファイル層では、各ファイル・シ
ステム資源はオブジェクトとして表される。サーバ・ノ
ード102bは、各ファイル・システム資源またはその
制御下にあるファイル・システムごとにファイル・シス
テム・オブジェクト(FSobj)116を有し、サー
バ・ノードの制御下にある各ディレクトリごとに、ファ
イル・オブジェクト(Fobj)114を有することに
なる。クライアント・ノード102aは、遠隔ノードか
らアクセスされる各ファイルごとにプロキシ・ファイル
・オブジェクト(PxFobj)122を有し、遠隔ノ
ードからアクセスされる各ファイル・システムまたは資
源ごとにプロキシ・ファイル・システム・オブジェクト
(PxVFS)124を有することになる。クライアン
トおよびサーバ・コンピュータが同一ノードである場
合、クライアント・ノード102aは、クライアント・
ノード102aがファイル・システム資源に対してサー
バとして働く時には、そのファイル・システム資源に対
してファイル・システム・オブジェクト(FSobj)
116およびファイル・オブジェクト(Fobj)11
4を有し、クライアント・ノード102aがその資源に
対してクライアントとして働く時には、プロキシ・デー
タ構造を有することになる。プロキシ・ファイル・オブ
ジェクト122は、関連づけられたファイル・オブジェ
クト114に対するオブジェクト参照を含み、プロキシ
・ファイル・システム・オブジェクト122は、関連づ
けられたファイル・システム・オブジェクト116に対
するオブジェクト参照を含む。
【0018】クライアントおよびサーバは、遠隔手続き
呼出し(RPC)を介して通信する。クライアント・ノ
ードと関連づけられた1つまたは複数のスレッドは、R
PC中のプロキシ・オブジェクト参照を使用して、遠隔
オブジェクト呼出しを介して遠隔ファイル・システム資
源にアクセスすることができる。遠隔オブジェクト呼出
しの実施形態に関するさらに詳細な説明は、1997年
6月19日に出願され、Sun Microsyste
ms Inc.に譲渡された、「A System a
nd Method for Remote Obje
ct Invocation」と題する、係属中の米国
特許出願第____号に見ることができる。
【0019】クラスタ層は大域名空間を表す。さらに、
各ノードは、そのノードのみにローカルにアクセスする
ことができるファイル・システムまたは資源を表すロー
カル名空間を有する。ノードは、マウント・コマンドに
よって1つまたは複数のファイル・システムを大域名空
間中に組み込み、マウント解除コマンドによってファイ
ル・システムを大域名空間から除去することができる。
vnodeおよびVFSインタフェースのさらに詳細な
説明は、Kleiman、Steven R.の論文
「Vnodes:An Architecture f
or Multiple File System T
ypes in Sun UNIX」、Proceed
ings of the Summer 1986 U
SENIXConference、Atlanta、1
986に見ることができる。
【0020】図1は、下記に示すようにルート・ディレ
クトリおよびファイルmyfile.cを含む例示的な
ファイル・システムに対する、ローカルおよびクラスタ
層の前述のインフラストラクチャを示す図である。 /(root directory) myfile.c
【0021】サーバ・ノード102b上の分散ファイル
・システムのローカル層は、ファイルmyfile.c
を表すvnode118を含む。各vnodeは、それ
が表すファイル・システムの種類に特定のデータ(すな
わちファイル・システム特定データ)への参照を含む。
vnodeはこのような1つの参照を含む。これらの参
照は変化することができる。図1には、このような2つ
の参照106、108が示されているが、これら2つの
参照は例示のみを目的として示したものであることに留
意されたい。
【0022】例えば、vnode118はUFSファイ
ル・システム中のファイルを表すことができる。この場
合には、vnode118は、データ記憶媒体上のファ
イル表現についての特定の情報を保持するinode1
06への参照を含む。inode106は、Unix
File System(UFS)ファイルを表すため
に使用され、そのファイルを記憶する関連づけられたデ
ータ記憶媒体110にリンクされる。さらに、vnod
e118はNFSファイル・システムを表すことができ
る。この場合、vnode118は、Network
File System(NFS)ファイルを表すrn
ode108への参照を含む。rnode108は、フ
ァイルを含む遠隔のデータ記憶媒体にアクセスするため
に使用されるネットワーク・インタフェース112にリ
ンクされる。ただし、本発明はUFSまたはNFSファ
イル・システムに限定されるものではなく、その他のタ
イプのファイル・システムを同様にこれに関連して使用
することができることに留意されたい。
【0023】別法として、vnode117は、ファイ
ル・システム特定データがvnode118を参照する
プロキシ・オブジェクト参照(PxFobj)である、
遠隔のファイル・システム資源を表すことができる。ノ
ード102a上で実行されるオペレーティング・システ
ムの観点からは、vnode117とそのノード上に存
在するその他の任意のvnode118との間に差異は
ない。オペレーティング・システムは、同一の方法で各
vnodeにアクセスする。
【0024】vnode118は、ファイル・システム
全体を表すVFS120にリンクされる。VFS12
0、121はファイル・システム全体を表す。各VFS
120、121は、それが表すファイル・システムの種
類に特定のデータ(すなわちファイル・システム特定デ
ータ)への参照を含む。例えば、VFS120は、特定
のファイル・システムを表し、ファイル・システム特定
データ(図示せず)への参照を含む。プロキシVFS1
21は、遠隔のファイル・システム資源を表し、そのフ
ァイル・システム特定データは、FSobj116を参
照するプロキシ・オブジェクト参照(PxVFS)12
4である。ノード102a上で実行されるオペレーティ
ング・システムの観点からは、プロキシVFS121と
そのノード上に存在するその他の任意のVFS120と
の間に差異はない。オペレーティング・システムは、同
一の方法で各VFSにアクセスする。
【0025】クライアント・ノードの観点からは、プロ
キシ・ファイル・システムは、NFSまたはUFSファ
イル・システムと同等に、もう1つのファイル・システ
ムのタイプである。しかし、これは内部で、各クライア
ント・ノード上のプロキシvnode117と、サーバ
・ノード上の対応するvnode118とを対にするこ
とによって動作する。このプロキシ・ファイル・システ
ムについてのファイル・システム特定データ(すなわち
PxFobjおよびPxVFS)は、対応するサーバ・
ノードとの関連を維持するために必要なリンケージ情報
を含む。
【0026】プロキシ・ファイル・システムのさらに詳
細な説明は、背景情報として参照により本明細書に組み
込まれる、Matena等による「Solaris M
CFile System Framework」、S
un Microsystems Laborator
ies Technical Report SMLI
TR−96−57、1996年10月、に見ることが
できる。
【0027】ファイル・システムのサーバ側クラスタ層
は、ファイルmyfile.cを表すファイル・オブジ
ェクト(Fobj)114を含む。Fobj114はそ
のファイルと関連づけられたvnode118にリンク
される。さらに、ファイル・システムを全体として表す
ファイル・システム・オブジェクト(FSobj)11
6も存在する。
【0028】ファイル・システムのクライアント側ロー
カル層は、myfile.cを表すプロキシvnode
117を含む。プロキシvnode117は、myfi
le.cと関連づけられたファイル・システムを表すV
FS120にリンクされる。
【0029】プロキシvnode117は、myfil
e.cについて関連づけられたFobj114への参照
を含むプロキシ・ファイル・オブジェクト(PxFob
j)122にリンクされる。PxFobj122はファ
イル・システムのクラスタ層に関連づけられる。クライ
アント・ノード102aは、PxFobj122中に含
まれるオブジェクト参照を利用して、RPCを介してフ
ァイルmyfile.cにアクセスすることができる。
さらに、VFS121は、ファイル・システムを表すフ
ァイル・システム・オブジェクトFSobj116への
参照を含むPxVFS124にリンクされる。クライア
ント・ノードは、PxVFS124中のオブジェクト参
照を利用して、RPCを介してファイル・システム・オ
ブジェクトにアクセスすることができる。
【0030】前述の説明は、本発明のクラスタ環境中の
分散ファイル・システムをサポートするために使用され
るデータ構造のいくつかを詳述するものである。こうし
たデータ構造ならびに追加の手続きおよびデータ構造を
利用して、クラスタ中の各ノードごとの大域名空間を維
持する大域マウント機構が提供される。大域マウント機
構の簡単な概要を、図2から図3、および図4から図5
に示す。
【0031】図2から図3は、クラスタ中の各ノード1
02と関連づけられた大域名空間134を示す図であ
る。大域名空間は、各ファイルがパス名で表されるファ
イルのセットをそれぞれに含むファイル・システム資源
の集合である。パス名は、階層構造に編成された1つま
たは複数のディレクトリを含むことができる。各ディレ
クトリは、新しいファイル・システム資源を大域名空間
中に組み込むためのマウント・ポイントとして機能する
ことができる。
【0032】この例では、大域名空間134中にマウン
トされることになる第1ノード102aと関連づけられ
たファイル・システム132が存在する。大域マウント
が完了すると、大域名空間134は図3に示す単一イメ
ージとして現れることになる。大域名空間が単一イメー
ジとして現れるために、ファイル・システムは、各ノー
ド中の同じマウント・ポイントから大域名空間中に同時
にマウントされる。図3では、ルート・ディレクトリ2
を有するファイル・システム132がマウントされる共
通のマウント・ポイントは/mntである。
【0033】図4から図5は、ルート・ディレクトリ2
を有する追加のファイル・システムを大域名空間中にマ
ウントするために、ファイル・システムのクラスタ層に
加える変更を示す図である。図4はマウント前のマウン
ト・ポイント/mntに関するファイル・システムを示
す図であり、図5はマウント後のマウント・ポイント/
mntに関するファイル・システムを示す図である。
【0034】図4に示すように、各ノード102は、こ
の例ではディレクトリ/mntとなるマウント・ポイン
トを表すvnode118またはプロキシvnode1
17を有する。vnode118またはそのプロキシv
node117は、マウント・ポイントを含むファイル
・システムと関連づけられたVFSにリンクされる。各
クライアント・ノード102a、102cの場合には、
マウント・ポイント用プロキシvnode117はプロ
キシ・ファイル・オブジェクト122にリンクされる。
マウント・ポイントと関連づけられたサーバ・ノード1
02bの場合には、vnode118にリンクされたフ
ァイル・オブジェクトFobj114が存在する。ま
た、対応するVFS120にリンクされたファイル・シ
ステムを表すファイル・システム・オブジェクト116
も存在する。このインフラストラクチャは、ルート・デ
ィレクトリ2 を有するファイル・システムが大域名空間
中にマウントされる前には適所にある。
【0035】ルート・ディレクトリ2 を有するファイル
・システムは、マウント・ポイント/mntから大域名
空間にマウントされる。マウント後のファイル・システ
ムを図5に示す。マウント・ポイント/mnt用のプロ
キシvnode117は、mounted_hereポ
インタ181によって、ルート・ディレクトリ2 を含む
ファイル・システムを表すVFSにリンクされる。プロ
キシVFS151は、covered_vnodeポイ
ンタ190によって、マウント・ポイントvnodeに
リンクされる。各クライアント・ノードでは、VFS1
51はPxVFS124にリンクされる。サーバ・ノー
ドは、対応するVFS150にリンクされたファイル・
システム・オブジェクトFSobj156を含む。
【0036】さらに、大域マウント機構により、大域名
空間からファイル・システムをマウント解除するプロセ
スが可能になる。マウント解除手続きは、ファイル・シ
ステムが同一のマウント・ポイントから、またクラスタ
中の各ノードから同時に、マウント解除されるように実
行される。図5に示すルート・ディレクトリ2 を有する
ファイル・システムをマウント解除すると、図4に示す
大域名空間を表すファイル・システムになることにな
る。
【0037】前述の概観は、分散ファイル・システムお
よび大域マウント機構のインフラストラクチャを提示す
るものである。大域マウント機構およびその動作のさら
に詳細な説明を以下に与える。
【0038】システム・アーキテクチャ 図6は、本発明を実施する分散計算システム100を示
す図である。ノード102のクラスタは、通信リンク1
04を介して相互接続される。各ノードは、そのクラス
タのその他のノードとメモリを共有しない。通信リンク
104は、一般に、ローカル・エリア・ネットワーク、
広域ネットワーク、またはネットワークの組合せなど、
コンピュータ間の任意タイプのワイヤまたはワイヤレス
・リンクを指すが、これらに限定されるわけではない。
クライアント/サーバ・コンピュータは、通信リンク1
04を使用して互いに通信する。
【0039】各ノード102は、分散ファイル・システ
ムおよび大域マウント機構をサポートするために使用さ
れるいくつかのデータ構造および手続きを含む。各ノー
ドは、オペレーティング・システムまたはカーネル16
0を含む。好ましい実施形態では、オペレーティング・
システム160は、Sun Microsystems
Inc.製のSolaris MCオペレーティング
・システムである。Solaris MCオペレーティ
ング・システムについての背景情報は、参照により本明
細書によって組み込まれる、「Solaris MC:
A Multi−Computer OS」、Tecn
ical Report SMLI TR−95−4
8、1995年11月、Sun Microsyste
msに見ることができる。
【0040】Solaris MCオペレーティング・
システムは、UNIXベースのオペレーティング・シス
テムである。したがって、本技術の説明に際して、本発
明を説明するためにUNIXの用語および概念がしばし
ば使用される。ただし、これは例示を目的とするもので
あり、この特定のオペレーティング・システムまたはフ
ァイル・システム設計に本発明を限定するものと解釈す
べきものではない。
【0041】さらに、各ノード102は下記を含むこと
ができる。 ・ オペレーティング・システム160。 ・ 呼出し側ノード上のファイル・システムまたはVF
Sをインスタンス化するために使用される、1つまたは
複数のファイル・システム(FS)ファクトリ手続き1
66。 ・ 1つまたは複数のVFS120、121、150、
151データ構造を記憶するVFSテーブル168。 ・ 1つまたは複数のPxFobjデータ構造を記憶す
るPxFobjテーブル169。 ・ 1つまたは複数のvnode117、118データ
構造を記憶するvnodeテーブル170。 ・ 1つまたは複数のPxVFSデータ構造を記憶する
プロキシVFS(PxVFS)テーブル171。 ・ 1つまたは複数のファイル・オブジェクト(Fob
j)を記憶するファイルオブジェクト(Fobj)テー
ブル172。 ・ 1つまたは複数のファイル・システム・オブジェク
ト(FSobj)を記憶するファイル・システム・オブ
ジェクト(FSobj)テーブル173。 ・ クラスタ内の全てのファイル・システム(FS)フ
ァクトリ手続き166を記憶するファイル・システム資
源構成データベース174。そのデータベース174
は、要求された資源に対応するFSファクトリ手続きを
検索するファイル・システム・タイプおよびファイル・
システム資源を含むキーを使用してアクセスされる。 ・ 1つまたは複数のキャッシュ・オブジェクト17
6。各キャッシュ・オブジェクトはPxFobjおよび
サーバ側の提供者オブジェクト177と関連づけられて
いる。キャッシュ・オブジェクトに関連づけられたメソ
ッドが特定の大域ロック182にアクセスするために使
用される。 ・ 1つまたは複数の提供者オブジェクト177。それ
ぞれの提供者オブジェクト177はFobjおよびクラ
イアント側のキャッシュ・オブジェクト176と関連づ
けられている。提供者オブジェクト177に関連づけら
れたメソッドが特定のvnodeの大域ロック182へ
の読取りまたは書込みアクセスを可能にするために使用
される。 ・ クラスタ内のファイル・システム(VFS)を記録
するマウント・リスト178。 ・ ローカルなvnodeに大域ロック能力を提供する
ために使用される、1つまたは複数のローカル・マウン
ト・キャッシュ・オブジェクト165。 ・ 1つまたは複数のプロキシ・ローカル・マウント・
オブジェクトを記憶する、プロキシ・ローカル・マウン
ト・オブジェクト・テーブル167。 ・ VFSリスト・サーバ・オブジェクト164と対話
するVFSリスト・クライアント・オブジェクト17
9。 ・ 資源をマウントおよびマウント解除するために使用
される大域マウント手続き175。 ・ ローカルなvnodeに大域ロック能力を提供する
ために使用される、ブートストラップ手続き159。 ・ その他のデータ構造および手続き。
【0042】1つのノードは、クラスタ中の大域にマウ
ントされたファイル・システムに関する情報を追跡する
ので、リスト・サーバ・ノード102sと呼ばれる。上
述のデータ構造および手続きに加えて、リスト・サーバ
・ノード102sは、クラスタ中の全ての大域にマウン
トされたファイル・システムを描写する大域マウント ・リスト162を記憶し、大域マウント・リスト162
を維持するVFSリスト ・サーバ・オブジェクト164を記憶し、大域名空間中
のマウントされた資源をサポートするために必要な要件
インフラストラクチャを生成する。
【0043】図7Aはvnode118およびプロキシ
vnode117の構成要素を詳細に示す図である。v
node118またはプロキシvnode117は、分
散ファイル・システム中の各ファイルおよびディレクト
リを表すために使用される。各プロキシvnode11
7またはvnode118は下記を含む。 ・ vnodeまたはプロキシvnodeが表すファイ
ルまたはディレクトリと関連づけられたファイル・シス
テムを表すVFSへのポインタ180。 ・ vnodeまたはプロキシvnodeをそのマウン
ト・ポイントとして使用するファイル・システムを表す
VFSに、vnodeまたはプロキシvnodeをリン
クする、mounted_hereポインタ181。 ・ vnodeまたはプロキシvnodeをそのノード
にローカルなプロセスによってロックすることができる
ようにするローカル・ロック183。 ・ vnode118またはプロキシvnode117
上で操作を実行するために使用される1つまたは複数の
メソッドを指摘する、一例としてvnodeを発見また
は生成するために使用されるルックアップ・メソッドが
あるメソッド・アレイ・ポインタ184。 ・ vnodeがプロキシである場合には、ファイル・
システム特定データが、関連づけられたFobjへのポ
インタを含むPxFobjとなる、vnodeが表すフ
ァイルに直接関係のあるファイル・システム特定データ
を指摘するデータポインタ185。 ・ vnodeがプロキシであるか否かを示すプロキシ
・フラグ187、および普通ならローカル名空間の一部
分となるvnode118が、ロックまたはロック解除
された時に大域ロック機能を使用するべきか否かを示す
大域ロック・フラグ188を含むフラグ・アレイ18
6。 ・ その他のデータ。
【0044】図7Bは、VFS120、121の構成要
素を詳細に示す図である。VFS120、121は各フ
ァイル・システムを表すために使用される。各VFSは
下記を含むことができる。 ・ そのVFSと関連づけられたファイル・システムに
ついての大域マウント・ポイントであるvnodeを指
摘する、covered_vnodeポインタ190。 ・ VFSがプロキシである場合には、ファイル・シス
テム特定データが、サーバ上のファイル・システム・オ
ブジェクトへの参照を含むPxVFSオブジェクトとな
る、ファイル・システム特定データを指摘するデータ・
ポインタ192。 ・ その他のデータ。
【0045】図7Cは、大域ロック182およびその他
のデータを含むことができるPxFobj122の構成
要素を詳細に示す図である。大域ロック182は、vn
ode上でアトミック操作を実行するために使用され
る。
【0046】大域マウント機構をサポートするために使
用されるデータ構造および手続きを含むシステム・アー
キテクチャについて上記で説明した。次に、大域マウン
ト機構の動作に注目する。大域マウント機構には、主に
2つの態様がある。第1は、大域マウント機構を使用し
て、既存の大域名空間中に新しいファイル・システムを
マウントする方法である。第2は、最初に大域名空間を
確立する機構である。既存の大域名空間中の大域マウン
ト機構の動作について最初に説明し、その後に大域名空
間を最初に生成する方法について説明する。
【0047】大域名空間中でのファイル・システムのマ
ウントおよびマウント解除 大域マウント機構は、クラスタの各ノード上の共通のマ
ウント・ポイントから大域名空間中にファイル・システ
ムをマウントする。さらに、マウントはクラスタ中の各
ノード上で同時に行われる。大域ロックは、マウント機
構が動作中である間に、全てのノード上のマウント・ポ
イントを表すプロキシvnodeをロックするために使
用される。これにより、大域マウントまたはマウント解
除操作の進行中にその他のプロセスがマウント・ポイン
トを変更することができないことが保証される。
【0048】同様に、大域マウント機構は、クラスタ中
の各ノードで同時に、共通のマウント・ポイントから、
ファイル・システムを大域名空間からマウント解除す
る。大域ロックは、マウント解除操作が動作中である時
に、マウント・ポイントのvnodeをロックするため
に使用される。
【0049】さらに、大域マウント機構により、1つの
ノードが、別のノードに常駐する資源を有するファイル
・システムをマウントすることが可能になる。これは例
えば、NFSプロトコル・スタックが単一の指定された
ノード上で実行されるように制約されている場合、また
はUFSファイル・システムを含む媒体を有するブロッ
ク特定ファイルが、そのハードウェアが接続されたノー
ドからのみ使用可能である場合に、起こる可能性があ
る。大域マウント機構は、どのノードが資源のサーバと
なるのに適しているかを決定し、次いでそのサーバのフ
ァイル・システム・ファクトリを利用して、ファイル・
システム・オブジェクトとして資源をインスタンス化す
る。ファクトリがファイル・システムをインスタンス化
した後で、大域マウント機構はリスト・サーバを使用し
て、ファイル・システムを大域にマウントされたファイ
ル・システムのリストに追加し、新しい大域にマウント
されたファイル・システムを各クライアント・ノードに
通知する。各クライアント・ノードは、ファイル・シス
テムを同時にマウント・ポイントにマウントするために
必要な要件データ構造をセットアップすることになる。
【0050】図8は、大域名空間中でファイル・システ
ムをマウントするために使用される各段階を示す図であ
る。プロセスと関連づけられたユーザは、要求側ノード
で大域マウント・コマンドを発行する(段階200)。
大域マウント・コマンドは下記の構文を有することがで
きる。 mount-g<-F file system type><resource><mount point
> ここで、−gは、資源が大域名空間中にマウントされる
ことを示し、−Fは、以下の引数が、多くの可能な値の
1つをとることができるfilesystem typ
eであることを示し、その共通に使用される2つの値と
しては、Unixファイル・システムを示すufs、ま
たはネットワーク・ファイル・システムを示すnfsが
あり、resourceフィールドは、マウントされる
ことになるファイル・システム資源を示し、mount
pointフィールドは、資源がマウントされる大域
名空間中のマウント・ポイントまたは位置を示す。
【0051】大域マウント・コマンドを受信すると、大
域マウント手続き175はルックアップ・メソッドを実
行し、要求側ノード中のマウント・ポイントと関連づけ
られたプロキシvnode117を発見する(段階20
2)。要求側ノード中のマウント・ポイントについての
プロキシvnode117が存在しない場合には、ルッ
クアップ・メソッドはそのマウント・ポイントについて
のプロキシvnode117を生成し、これをそれが含
むファイル・システムを表すVFS121にリンクする
ことになる。このメソッドは、そのマウント・ポイント
のサーバも決定し、そのサーバがマウント・ポイントの
ためのファイル・オブジェクトFobj114を生成す
るよう要求することになる。この要求に応答して、サー
バは、依然として存在していなければ、ファイル・オブ
ジェクトFobj114を生成し、マウント・ポイント
を表す、対応するサーバ側vnode118にこれをリ
ンクすることになる。さらに、サーバは、要求側ノード
のための提供者オブジェクト177も生成することにな
る。次いで、Fobj114へのオブジェクト参照は要
求側ノードに戻り、プロキシ・ファイル・オブジェクト
PxFobj122に記憶される。PxFobj122
は、次いで、マウント・ポイントのプロキシvnode
117にリンクされる。さらに、情報もまたその要求側
ノードに戻り、関連づけられたキャッシュ・オブジェク
ト176を生成する。
【0052】マウント・ポイントvnode118がサ
ーバ上で生成され、それが対応するプロキシ117が要
求側ノードで生成された後で、大域マウント手続き17
5は、書込みアクセスのためのvnodeの大域ロック
182を獲得する(段階204)。これは、単一ライタ
/複数リーダ・プロトコルを利用する分散ロック方式を
使用することによって実施される。このロック方式によ
り、マウント・ポイント・プロキシvnode117上
でマウントまたはマウント解除操作を実行しながら、同
時にその他のノード上の同じマウント・ポイントvno
de117上での矛盾する操作を阻止することができ
る。このロック方式は、参照により背景情報として本明
細書によって組み込まれる、「Decorum Fil
e System Architectural Ov
erview」、Proceedings of th
e USENIX Summer Conferenc
e1990、pgs.151−163に記載の分散ロッ
ク方式に基づいている。
【0053】ロック方式のオブジェクトは、ただ1つの
プロセスが一度にvnode117、118への書込み
アクセスを有すること、または複数のプロセスが一度に
vnode117、118への同時読取りアクセスを有
することを保証する。この方式は、キャッシュ・オブジ
ェクト176および提供者オブジェクト177を使用し
て実施される。キャッシュ・オブジェクト176は、大
域ロック182を要求するために、プロキシ・ファイル
・オブジェクトPxFobj122によって使用され
る。大域ロック182は読取りまたは書込みアクセスの
いずれかに対して獲得される。提供者オブジェクト17
7は、要求された読取りまたは書込みアクセスをその他
のノードと調整するために使用される。
【0054】図9は、分散ロック方式を示す図である。
全てのファイル・アクセスは、プロキシvnode11
7を介して実行される。vnode上でコヒーレントに
操作を実行するために、分散ロック方式は、全てのノー
ドにわたってプロキシvnode117の集合をロック
し、コヒーレントな操作を実施する。
【0055】各クライアント・ノード102a、102
cは、マウント・ポイントについてのファイル・オブジ
ェクト114と関連づけられたPxFobj122を有
する。PxFobj122は、読取りまたは書込みアク
セスのいずれかについてのファイルの大域ロックを要求
するために使用されるキャッシュ・オブジェクト176
を有する。ファイルのサーバ102bは、各クライアン
ト・ノードについての提供者オブジェクト177を有す
る。提供者オブジェクト177は、それぞれのクライア
ント側キャッシュ・オブジェクト176と対になる。提
供者オブジェクト177は、マウント・ポイントについ
てのvnode118と関連づけられたファイル・オブ
ジェクトFobj114と関連づけられる。vnode
の大域ロック182の要求は、PxFobj122を使
用してキャッシュ提供者176に対して行われる。この
要求は、キャッシュ提供者176から、その他の提供者
177と調整するそれぞれのサーバ側提供者177に送
信され、アクセスを認可するか、または阻止するかを決
定する。
【0056】マウントまたはマウント解除操作のため
に、書込みアクセスは必要である。要求は、対応する提
供者177を呼び出す、関連づけられたキャッシュ・オ
ブジェクト176に対して行われる。提供者177は、
その他の全ての提供者177と相談し、アクセスを認可
することができるかどうかを決定する。
【0057】このロック・プロトコルは、その他の読取
りまたは書込みアクセスが活動状態でないときに、書込
みアクセスを許可する。別法として、書込みアクセスが
活動状態でないときに、複数の読取りアクセスを同時に
行うこともできる。このようにして、書込みアクセスは
一度に1つだけが許可される。別の提供者177が読取
りまたは書込みアクセスのいずれかを認可されている場
合には、このアクセスを無効にする試みがなされること
になる。これを行うことができない場合には、要求側の
提供者177は、書込みアクセスを認可される前に、未
解決の書込みアクセスが完了するまで待機することにな
る。
【0058】図8を戻って参照すると、書込みアクセス
のためのvnodeの大域ロック182が獲得された後
で、大域マウント手続き175は、資源のためのサーバ
となる適当なノードを決定する(段階206)。時々、
大域マウント・コマンドをサービスするノードが、マウ
ントされることになる資源のための適当なサーバになる
ことができないこともある。これは、資源に加えられる
制約など、いくつかの異なる要因による。上述のよう
に、資源分散中の不均衡が生じる可能性がある。
【0059】この問題を解決するために、大域マウント
手続き175は、どのノードが資源のためのサーバとし
て働くのに最も適しているかを決定する(段階20
6)。これは、適当なファイル・システム・ファクトリ
(fs_factory)手続き166について、クラ
スタ・ファイル・システム資源データベース174を照
会することによって実施される。各fs_factor
y手続き166は、特定のノードと関連づけられ、ファ
イル・システムおよびVFSをインスタンス化するため
に使用される。次いで、大域マウント手続き175は適
当なfs_factory手続き166を呼び出し、マ
ウントされた資源についてのサーバ・ノード中のVFS
150、および対応するファイル・システム・オブジェ
クトFSobj156を生成する(段階206)。
【0060】次に、大域マウント手続き175は、新し
く生成されたFSobj156およびこれをインスタン
ス化するために使用される資源についての情報を有する
リスト・サーバ102sを呼び出す(段階206)。リ
スト・サーバ102sは、新しく生成されたFSobj
156をクラスタ幅大域マウント・リスト162に追加
する(段階206)。さらに、リスト・サーバ102s
はクラスタ中の各ノード102と接触し、マウントされ
た資源およびマウント・ポイントをこれに報知し、対応
するFSobj156へのオブジェクト参照を送信する
(段階206)。各ノード102は、FSobj156
についてのプロキシVFS151、およびマウント・ポ
イントFobj114についてのプロキシvnode1
17を探索する(段階206)。これらのプロキシがノ
ード中に存在しない場合には、それらは作成される。マ
ウント・ポイントについてのプロキシvnode117
が作成される場合には、ファイル・システム特定データ
またはPxFobj122も生成される。同様に、プロ
キシVFS151が作成される場合には、ファイル・シ
ステム特定データまたはPxVFS124も生成され
る。次いで、ノード102は、マウント・リスト178
をプロキシVFS151で更新する(段階206)。
【0061】次の段階は、資源をマウント・ポイントか
ら大域名空間中に挿入する段階である(段階208)。
大域マウント手続き175は、マウント・ポイントのプ
ロキシvnode117のmounted_hereポ
インタ181をマウントされた資源を表すプロキシVF
S151にセットすることによって、各ノード中でこの
タスクを実行する。マウントされた資源を表すプロキシ
VFS151のcovered_vnodeポインタ1
90は、マウント・ポイントのvnode117にリン
クされる。mounted_hereポインタ181が
セットされると、これは、ファイル・システムがマウン
ト・ポイントにマウントされていることを示す。最後
に、マウント・ポイントのvnode117、118の
大域ロックが解除される(段階210)。
【0062】図10から図13は、図2に示すファイル
・システム132の大域名空間中へのマウントを示す図
である。図10を参照すると、クライアント・ノード1
02aは、NFSファイル・システムがマウント・ポイ
ント/mntから大域名空間中にマウントされると指定
する大域マウント・コマンドを受信する。この要求側ノ
ードには、マウント・ポイントについてのvnode1
18またはプロキシvnode117がない。しかし、
サーバ・ノード102b上には、Fobj114が既に
存在する。
【0063】図11は、クライアント・ノード102a
がマウント・ポイントをルックアップした(段階20
2)後のファイル・システム100を示す図である。ル
ックアップ・メソッドは、マウント・ポイントについて
のプロキシvnode117をクライアント・ノード1
02a上で生成する。Fobj114への参照は、クラ
イアント・ノード102aに送信され、新しく作成され
たプロキシ・ファイル・オブジェクトPxFobj12
2aに記憶される。
【0064】図12は、リスト・サーバ102s(図示
せず)が、指定されたファイル・システム資源からファ
イル・システムをインスタンス化するために必要なイン
フラストラクチャを生成した(段階206)後のファイ
ル・システム100を示す図である。VFS150は、
マウントされた資源および対応するFSobj156と
関連づけられたファイル・システムについてのサーバ・
ノード102b中で生成される。リスト・サーバ102
sは、FSobj156へのオブジェクト参照、マウン
ト・ポイント・オブジェクト114へのオブジェクト参
照、およびマウント・コマンドへの引数のコピーを、各
クライアント・ノードに渡す。一方、各クライアント・
ノード102は、マウント・ポイントについてのプロキ
シvnode117、ならびにマウントされた資源を表
すプロキシVFS151、およびそのプロキシVFS1
51についてのファイル・システム特定データ124を
生成する。
【0065】図13は、マウントされた資源が大域名空
間中に挿入された(段階208)後のファイル・システ
ムを表す図である。マウント・ポイントについてのプロ
キシvnode117は、新しいファイル・システムを
表すVFS151にリンクされたmounted_he
reポインタ181を有し、VFS151は、マウント
・ポイントを表すプロキシvnode117にセットさ
れたcovered_vnodeポインタ190を有す
る。
【0066】図14は、マウントされた資源を大域名空
間からマウント解除するために大域マウント機構175
によって使用される各段階を示す図である。図15は、
図10から図13に示すマウントされたファイル・シス
テムのマウント解除の一例を示す図である。ノードと関
連づけられたプロセスは、大域マウント解除コマンドを
受信する(段階212)。大域マウント解除コマンドは
下記の構文を有することができる。 unmount <mount point> ここで、mount pointフィールドは、ファイ
ル・システム資源がそこからマウント解除される、大域
名空間中のマウント・ポイントまたは位置を示す。
【0067】次いで、大域マウント機構175は、上記
と同じ段階を利用して、マウント解除された資源のプロ
キシvnodeをルックアップすることになる(段階2
14)。図15では、マウント解除された資源のルート
・ディレクトリは、プロキシvnode236によって
表される。マウント解除された資源のルートvnode
236を発見した後で、大域マウント機構175はVF
Sポインタ180を介して関連づけられたVFS151
を得る。VFS151のcovered_vnodeポ
インタ190は、マウント・ポイントを表すvnode
117に向かって移動する。次いで、マウント・ポイン
トvnode117は、上述のロック機構によってロッ
クされる(段階216)。
【0068】マウント・ポイントvnode117がロ
ックされた後で、リスト・サーバ102sが呼び出さ
れ、各ノードが、そのノードのマウント・ポイント・プ
ロキシvnode117からファイル・システム資源を
挿入解除するようにする(段階218)。これは、mo
unted_hereVFSポインタ181の内容を削
除することによって実行される(段階218)。
【0069】次いで、大域マウント機構175は、マウ
ント解除された資源をサポートするために使用されたイ
ンフラストラクチャを削除することになる(段階22
0)。リスト・サーバ102sは、VFS121を大域
マウント・リスト162から削除し、その他のクライア
ント・ノードに、それらのVFS121およびPxFo
bj122データ構造を削除するよう報知することにな
る。
【0070】次いで、マウント・ポイントを表す大域ロ
ック182が、上述と同様の方法で解除される(段階2
22)。
【0071】上記の説明は、大域マウント機構が、ファ
イル・システムを大域名空間にマウントする、または大
域名空間からマウント解除する方法を詳述するものであ
る。次に、大域名空間を最初に生成する方法に注目す
る。
【0072】大域名空間の生成 大域名空間の特徴は、大域名空間中の各ディレクトリが
大域マウント・ポイントとして機能することができるこ
とである。新しいファイル・システムは、大域マウント
・ポイントから大域名空間中に組み込むことができる。
大域マウント・ポイントの顕著な特徴は、それを大域に
ロックすることができることである。
【0073】最初に、クラスタ中の各ノードが「ブート
アップ」した時に、大域名空間は存在しない。その代わ
りに、各ノードは、特定のノードと関連づけられたファ
イル資源を表すローカルvnodeのセットを有する。
これらのローカルvnodeを大域名空間中に組み込む
第1段階は、各ローカルvnodeに大域ロック能力を
提供する段階である。大域ロック能力により、各ノード
中の同じファイル資源を表すローカルvnodeを同時
にロックすることができる。ローカルvnodeが大域
ロック能力を獲得した後で、ローカルvnodeを大域
マウント・ポイントとして使用することができ、大域名
空間の一部分となるマウントをそこで確立することがで
きる。
【0074】ローカルvnodeが大域ロック能力を獲
得するために、分散ロック機構が生成され、2つ以上の
ノードが、同じローカルvnodeに対して同時に大域
ロック能力を確立することを防止する。このようにし
て、大域名空間の初期化手続きを実行する必要があるの
はただ1つのノードとなる。
【0075】1つのノードは、ローカルvnodeまた
はマウント・ポイントが大域ロック能力を認可されるよ
う要求することになる。リスト・サーバ102sは、ロ
ーカルvnodeまたはマウント・ポイントについての
サーバとして働き、ローカル・マウント・オブジェクト
189を生成してリスト・サーバ102s中のマウント
・ポイントを表す。リスト・サーバ102sはクラスタ
中の各ノードについてローカル・マウント提供者オブジ
ェクト161も生成する。次いでリスト・サーバ102
sはクラスタ中の各ノードを訪問し、そのノードに、そ
のノードがプロキシ・ローカル・マウント(pxloc
almnt)オブジェクト167およびローカル・マウ
ント・キャッシュ・オブジェクト165をクライアント
・ノード中で構築するのに十分な情報を与える。次い
で、キャッシュ/提供者オブジェクトの対を使用して、
クラスタ中の各ノード中に分散したマウント・ポイント
をロックする。各ノードが訪問されるにつれて、そのノ
ード上のマウント・ポイントを表すvnodeについて
のロックの責任は、vnode自体から、新しくそのv
nodeと関連づけられたキャッシュ/提供者の対に移
る。
【0076】図16および図17は、マウント・ポイン
トに大域ロック能力を提供するために使用される段階を
示す図である。これらの段階は、初期化手続き159に
よって実行することができる。ノード102は、マウン
ト・ポイントに大域ロック能力を提供するよう求める要
求を有するリスト・サーバ102sと接触する(段階2
30)。リスト・サーバ102sは、リスト・サーバ1
02s中のマウント・ポイントを表すローカル・マウン
ト・オブジェクト189、およびクラスタ中の各ノード
についてのローカル・マウント提供者オブジェクト16
1を作成する(段階232)。
【0077】次いで、リスト・サーバ102sは、要求
を開始したクライアント・ノード102aから始めて各
ノード上のリスト・クライアントを呼び出すことによっ
て、各クライアント・ノードを「訪問」する(段階23
4)。リスト・サーバ102sは、各クライアント・ノ
ード102a、102cに、クライアント・ノード10
2a、102cのリスト・クライアントが以下のタスク
を実行するために使用する情報を提供する。クライアン
ト・ノード102a、102cは、マウント・ポイント
上でパス名ルックアップ・メソッドを実行し、それによ
りマウント・ポイントについてのvnode118を生
成することになる。リスト・サーバ102sは、クライ
アント・ノード102a、102cに、クライアント・
ノード102a、102cがプロキシ・ローカル・マウ
ント・オブジェクト167(pxlocalmnt)を
構築するために使用するローカル・マウント・オブジェ
クト189へのオブジェクト参照を送信することにな
る。pxlocalmnt167は、マウント・ポイン
トを表すvnode118にリンクされる。さらに、ク
ライアント・ノード102a、102cは、対応するロ
ーカル・マウント提供者161と対になるローカル・マ
ウント・キャッシュ・オブジェクト165を生成する
(段階234)。
【0078】次に、マウント・ポイントのvnode1
18と関連づけられたローカル・ロック183が獲得さ
れる。これは、図8および図9に関して上述した方法と
同様にして実行される(段階234)。
【0079】ローカル・ロック183が獲得された後
で、マウント・ポイントのvnode118中の大域ロ
ック・フラグ188がオンになる。大域ロック・フラグ
188がオンになる、またはセットされると、これは、
関連づけられたマウント・ポイントが大域ロック能力を
獲得したことを示す。次いで、要求側のクライアント・
ノード102aに、大域ロック182への書込みアクセ
スが与えられる。最後に、ローカル・ロック183が解
除される(段階234)。
【0080】この手続きは、各クライアント・ノード1
02a、102cにおいて実行される(段階234)。
この手続きが完了すると、マウント・ポイントは大域ロ
ック能力を獲得している。
【0081】次いで、これは、新しいファイル・システ
ム資源についてのマウント・ポイントとして使用するこ
とができる。この場合には、上述の大域マウント手続き
175を使用して、新しいファイル・システム資源をマ
ウント・ポイントからマウントすることができる。
【0082】したがって、各ノードのローカル名空間中
のローカルvnodeから大域マウント・ポイントを作
成することによって、大域名空間が生成される。次い
で、新しいファイル・システム資源を、新しく作成され
た大域マウント・ポイントから大域名空間中にマウント
することができる。これらの段階を進行させると、大域
名空間が生成されることになる。
【0083】代替実施形態 いくつかの特定の実施形態に関連して本発明について説
明したが、この説明は本発明を例示するものであり、本
発明を限定するものと解釈されるべきではない。添付の
特許請求の範囲によって規定する本発明の真の趣旨およ
び範囲を逸脱することなく、様々な修正形態を当業者な
ら思いつくことができるであろう。
【0084】本発明は、図1に関連して説明したコンピ
ュータ・システムに限定されるものではない。これらの
特定の詳細を使用せずに実施することもでき、また様々
な構成、構造またはモデルの分散計算システムおよび密
結合プロセッサ、あるいは様々な構成の疎結合マイクロ
プロセッサ・システムで実施することができる。
【0085】さらに、本明細書の上記に記載した方法お
よびシステムは、ランダム・アクセス・メモリなどのメ
モリ装置以外の様々なタイプの実行可能な記録媒体上で
の実行に適している。任意のメモリ装置にすることがで
きるコンピュータ可読記憶媒体や、コンパクト・ディス
ク、フロッピィ・ディスクなど、その他のタイプの実行
可能な媒体を使用することができるが、これらに限定さ
れるわけではない。
【図面の簡単な説明】
【図1】 本発明の好ましい実施形態を組み込む分散計
算システムを示すブロック・ダイアグラムである。
【図2】 例示的な大域名空間およびこの大域名空間に
マウントされることになるファイル・システムを示す図
である。
【図3】 ファイル・システムのマウントを実行した後
の、図2の大域名空間を表す図である。
【図4】 図2に示す大域名空間の例示的な分散ファイ
ル・システムを示す図である。
【図5】 図3に示す大域名空間の例示的な分散ファイ
ル・システムを示す図である。
【図6】 本発明の好ましい実施形態を組み込む分散計
算システムを示すブロック・ダイアグラムである。
【図7】 本発明の一実施形態で使用されるvnode
およびVFSデータ構造を示す図(A)、本発明の一実
施形態で使用されるvnodeおよびVFSデータ構造
を示す図(B)、本発明の一実施形態で使用されるPx
Fobjデータ構造を示す図(C)である。
【図8】 新しいファイル・システム資源を大域名空間
中にマウントする際に大域マウント機構によって使用さ
れる段階を示すフローチャートである。
【図9】 本発明の一実施形態で使用される分散ロック
機構を示す図である。
【図10】 図8の大域マウント機構の一例を示す図で
ある。
【図11】 図8の大域マウント機構の一例を示す図で
ある。
【図12】 図8の大域マウント機構の一例を示す図で
ある。
【図13】 図8の大域マウント機構の一例を示す図で
ある。
【図14】 マウントしたファイル・システム資源を大
域名空間からマウント解除する際に大域マウント機構に
よって使用される段階を示す図である。
【図15】 図14の大域マウント解除機構の一例を示
す図である。
【図16】 ローカル名空間中で大域マウント・ポイン
トを生成するために使用される段階を示す図である。
【図17】 図16で使用される分散ロック機構を示す
図である。
【符号の説明】
100 分散計算システム 102a クライアント・ノード 102b サーバ・ノード 104 通信リンク 112 ネットワーク・インタフェース 117 プロキシvnode 121 プロキシVFS
─────────────────────────────────────────────────────
【手続補正書】
【提出日】平成10年9月25日
【手続補正1】
【補正対象書類名】図面
【補正対象項目名】全図
【補正方法】変更
【補正内容】
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図16】
【図15】
【図17】
フロントページの続き (71)出願人 591064003 901 SAN ANTONIO ROAD PALO ALTO,CA 94303,U. S.A. (72)発明者 グレン・シイ・スキナー アメリカ合衆国・94306・カリフォルニア 州・パロ アルト・チマラス ドライブ・ 850

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】 通信リンクによって相互接続された複数
    のノードを有する計算システムで大域名空間を維持する
    方法であって、その大域名空間は各ノードからアクセス
    可能な複数の大域ファイル・システム資源を表し、各大
    域ファイル・システム資源は複数のファイル資源を含
    み、大域名空間はそれぞれに1つの大域ファイル資源を
    表す大域パス名を表し、各大域パス名は1つ又は複数の
    大域ディレクトリを含み、名大域名空間がノードに分散
    されている、大域名空間を維持する方法において、 (a)大域ディレクトリから選択した指定された第1マ
    ウント・ポイントで大域名空間にマウントするための第
    1ファイル・システム資源を提供する段階と、 (b)各ノードの第1マウント・ポイントを同時にロッ
    クする段階と、 (c)第1ファイル・システム資源を各ノードの第1マ
    ウント・ポイントでマウントする段階と、 (d)各ノードの第1マウント・ポイントを同時にロッ
    ク解除する段階とを含む方法。
  2. 【請求項2】 大域ディレクトリから選択した第2マウ
    ント・ポイントで大域名空間からマウント解除するため
    の第2ファイル・システム資源を提供する段階と、 各ノードの第2マウント・ポイントを同時にロックする
    段階と、 第2ファイル・システム資源を各ノードの第2マウント
    ・ポイントからマウント解除する段階と、 各ノードの第2マウント・ポイントをロック解除する段
    階とをさらに含む請求項1に記載の方法。
  3. 【請求項3】 計算システムが複数のローカル名空間を
    含み、各ローカル名空間が1つのノードと関連づけられ
    たローカル・ファイル・システム資源を表し、各ローカ
    ル・ファイル・システム資源がローカル・ファイル資源
    を表し、このローカル名空間がローカル・パス名を含
    み、各ローカル・パス名が1つのローカル・ファイル資
    源を表し、1つまたは複数のローカル・ディレクトリを
    含む方法であって、 大域名空間中の大域ディレクトリであるイネーブルなロ
    ーカル・ディレクトリを各ノードによってロックするこ
    とができるようにする大域ロック能力を有する、1つま
    たは複数のローカル・ディレクトリをイネーブルにする
    段階と、 1つまたは複数のローカル・ファイル・システム資源
    を、選択した1つの大域ディレクトリで大域名空間中に
    同時にマウントする段階とを含み、マウントされた各ロ
    ーカル・ファイル・システム資源が大域ファイル・シス
    テム資源となる請求項1に記載の方法。
  4. 【請求項4】 同時にマウントする段階が、 (i)各ノード中の選択大域ディレクトリを同時にロッ
    クする段階と、 (ii)第1ローカル・ファイル・システム資源を各ノー
    ドの選択大域ディレクトリでマウントする段階と、 (iii )各ノードの選択大域ディレクトリをを同時にロ
    ック解除する段階とを含む請求項3に記載の方法。
  5. 【請求項5】 通信リンクによって相互接続された複数
    のノードを含む大域名空間を維持する計算システムであ
    って、 それぞれに大域ファイル資源を表す、各ノードからアク
    セス可能な複数の大域ファイル・システム資源と、 それぞれが新しいファイル・システム資源をマウントす
    ることができる大域マウント・ポイントである1つまた
    は複数の大域ディレクトリをそれぞれに含む、それぞれ
    に1つの大域ファイル資源を表す複数の大域パス名を含
    み、大域ファイル・システム資源を表す、ノードにわた
    って分散された大域名空間と、 ノードにわたって分散された、各ノード中の同じ大域デ
    ィレクトリを同時にロックする第1ロック機構と、 ノードにわたって分散された、新しいファイル・システ
    ム資源を各ノード中の指定されたマウント・ポイントで
    大域名空間中にマウントする大域マウント機構とを含む
    システム。
  6. 【請求項6】 各ノード中で大域名空間と関連づけられ
    た大域ディレクトリをそれぞれに表す複数のvnode
    機構と、 各ノード中で大域名空間と関連づけられたファイル・シ
    ステム資源をそれぞれに表す複数の仮想ファイル・シス
    テム(VFS)機構と、 各ノード中の新しくマウントされたファイル・システム
    資源についてのVFS機構を確立し、大域マウント・ポ
    イントについてのvnode機構を各ノード中で確立
    し、各ノード中のvnode機構を新しいファイル・シ
    ステム資源を表すVFS機構にリンクする大域マウント
    機構とをさらに含む請求項5に記載のシステム。
  7. 【請求項7】 それぞれに選択ノード中のファイル・シ
    ステム資源を表す複数のファイル・システム・オブジェ
    クト(FSobj)と、 それぞれに対応するFSobjを参照するために使用さ
    れる複数のプロキシ・ファイル・システム・オブジェク
    ト(PxFSobj)と、 1つのノードを、新しくマウントされたファイル・シス
    テム資源についてのサーバ・ノードとして指定する大域
    マウント機構とをさらに含み、このサーバ・ノードが、
    新しくマウントされたファイル・システム資源について
    のFSobjを生成し、新しくマウントされたファイル
    ・システム資源を表す対応するVFSにFSobjをリ
    ンクし、新しくマウントされたファイル・システム資源
    へのオブジェクト参照をその他の全てのノードに渡し、
    このオブジェクト参照を受信した各ノードが、このオブ
    ジェクト参照からプロキシ・ファイル・システム・オブ
    ジェクト(PxFSobj)を生成し、各ノード中の新
    しくマウントされたファイル・システム資源を表す対応
    するVFSにこのPxFSobjをリンクする請求項6
    に記載のシステム。
  8. 【請求項8】 大域マウント機構が、マウントされたフ
    ァイル・システム資源を大域名空間からマウント解除す
    る手段を有し、マウントされたファイル・システム資源
    がそこからマウント解除される各ノード中の同じマウン
    ト・ポイントを位置指定し、各ノード中の同じマウント
    ・ポイントを同時にロックし、マウントされたファイル
    ・システム資源を各ノード中の同じマウント・ポイント
    からマウント解除し、各ノード中のマウント・ポイント
    をロック解除する請求項5に記載のシステム。
  9. 【請求項9】 それぞれに特定のノードと関連づけられ
    て、その特定のノードに関連づけられた、それぞれにロ
    ーカル・ファイル資源を表すローカル・ファイル・シス
    テム資源をそれぞれに表す、複数のローカル名空間であ
    って、それぞれに1つのローカル・ファイル資源を表
    す、1つまたは複数のローカル・ディレクトリを含むロ
    ーカルパス名を含む、ローカル名空間と、 大域ロック能力を有する第1ローカル・ディレクトリを
    イネーブルにして、それによりイネーブルなローカル・
    ディレクトリを大域マウント・ポイントにし、またロー
    カル・ファイル・システム資源を大域名空間中に大域マ
    ウント・ポイントからマウントする、初期化機構とをさ
    らに含む請求項5に記載のシステム。
  10. 【請求項10】 各ノード中に分散した、各ノード中の
    同じローカル・ディレクトリを同時にロックする能力を
    有する第2ロック機構と、 第2ロック機構を使用して、各ノード中の第1ローカル
    ・ディレクトリをロックし、大域ロック能力を有する第
    1ローカル・ディレクトリをイネーブルにする初期化機
    構とをさらに含む請求項9に記載のシステム。
JP10182222A 1997-06-27 1998-06-29 大域名空間を維持する方法およびシステム Pending JPH11120065A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/884,252 US5946685A (en) 1997-06-27 1997-06-27 Global mount mechanism used in maintaining a global name space utilizing a distributed locking mechanism
US08/884252 1997-06-27

Publications (1)

Publication Number Publication Date
JPH11120065A true JPH11120065A (ja) 1999-04-30

Family

ID=25384268

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10182222A Pending JPH11120065A (ja) 1997-06-27 1998-06-29 大域名空間を維持する方法およびシステム

Country Status (4)

Country Link
US (1) US5946685A (ja)
EP (1) EP0887751A3 (ja)
JP (1) JPH11120065A (ja)
CA (1) CA2241438A1 (ja)

Families Citing this family (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6493811B1 (en) * 1998-01-26 2002-12-10 Computer Associated Think, Inc. Intelligent controller accessed through addressable virtual space
US6101607A (en) * 1998-04-24 2000-08-08 International Business Machines Corporation Limit access to program function
US6115715A (en) * 1998-06-29 2000-09-05 Sun Microsystems, Inc. Transaction management in a configuration database
US9361243B2 (en) 1998-07-31 2016-06-07 Kom Networks Inc. Method and system for providing restricted access to a storage medium
US7392234B2 (en) 1999-05-18 2008-06-24 Kom, Inc. Method and system for electronic file lifecycle management
US6842841B1 (en) * 1999-09-21 2005-01-11 Storage Technology Corporation Method and system for dynamically selecting tape drives to connect with host computers
US6425014B1 (en) * 1999-09-22 2002-07-23 International Business Machines Corporation Methods, systems and computer program products for providing network connection information in a cluster of data processing systems
US7596563B1 (en) * 1999-10-28 2009-09-29 Hewlett-Packard Development Company, L.P. Computerized file system and method
US6535970B1 (en) * 2000-01-04 2003-03-18 International Business Machines Corporation Method and apparatus for enhanced performance caching for path names
US7418439B2 (en) * 2000-03-17 2008-08-26 Twin Peaks Software, Inc. Mirror file system
US6834324B1 (en) * 2000-04-10 2004-12-21 Storage Technology Corporation System and method for virtual tape volumes
US6965892B1 (en) * 2000-05-31 2005-11-15 International Business Machines Corporation Method, system and program products for concurrently accessing a global data repository by multithreaded clients
US7487152B1 (en) * 2000-05-31 2009-02-03 International Business Machines Corporation Method for efficiently locking resources of a global data repository
CA2413434A1 (en) * 2000-06-26 2002-01-03 International Business Machines Corporation Data management application programming interface for a parallel file system
US6751635B1 (en) * 2000-08-18 2004-06-15 Network Appliance, Inc. File deletion and truncation using a zombie file space
US6751719B1 (en) * 2000-10-26 2004-06-15 International Business Machines Corporation Method and an apparatus to dynamically order features and to resolve conflicts in a multiple-layer logical volume management environment
US6754798B1 (en) * 2000-10-26 2004-06-22 International Business Machines Corporation Method and an apparatus for volume creation in the presence of multiple aggregators
US6868417B2 (en) * 2000-12-18 2005-03-15 Spinnaker Networks, Inc. Mechanism for handling file level and block level remote file accesses using the same server
US7062660B2 (en) * 2001-08-06 2006-06-13 International Business Machines Corporation Method and apparatus for controlling the performance of a file system mount operation by a user lacking superuser authority
US6993566B2 (en) * 2001-09-13 2006-01-31 International Business Machines Corporation Entity self-clustering and host-entity communication such as via shared memory
US6931410B2 (en) * 2002-01-11 2005-08-16 International Business Machines Corporation Method, apparatus, and program for separate representations of file system locations from referring file systems
US20040030731A1 (en) * 2002-04-03 2004-02-12 Liviu Iftode System and method for accessing files in a network
US7574488B2 (en) * 2002-05-31 2009-08-11 Hitachi, Ltd. Method and apparatus for peer-to-peer file sharing
US6947940B2 (en) * 2002-07-30 2005-09-20 International Business Machines Corporation Uniform name space referrals with location independence
US7873700B2 (en) * 2002-08-09 2011-01-18 Netapp, Inc. Multi-protocol storage appliance that provides integrated support for file and block access protocols
US7552223B1 (en) * 2002-09-16 2009-06-23 Netapp, Inc. Apparatus and method for data consistency in a proxy cache
US7233946B1 (en) * 2003-04-11 2007-06-19 Sun Microsystems, Inc. File interval lock generation interface system and method
US7376744B2 (en) * 2003-05-09 2008-05-20 Oracle International Corporation Using local locks for global synchronization in multi-node systems
US7814131B1 (en) * 2004-02-02 2010-10-12 Network Appliance, Inc. Aliasing of exported paths in a storage system
WO2005078606A2 (en) * 2004-02-11 2005-08-25 Storage Technology Corporation Clustered hierarchical file services
US20050188246A1 (en) * 2004-02-25 2005-08-25 Emberty Robert G. Persistent worldwide names assigned to removable media storage
US20050234961A1 (en) * 2004-04-16 2005-10-20 Pinnacle Systems, Inc. Systems and Methods for providing a proxy for a shared file system
US8037169B2 (en) 2005-05-18 2011-10-11 Oracle International Corporation Determining affinity in a cluster
US7814065B2 (en) * 2005-08-16 2010-10-12 Oracle International Corporation Affinity-based recovery/failover in a cluster environment
US8666957B2 (en) * 2005-08-29 2014-03-04 Hewlett-Packard Development Company, L.P. Method or apparatus for locking shared data
US7913105B1 (en) * 2006-09-29 2011-03-22 Symantec Operating Corporation High availability cluster with notification of resource state changes
US20080154986A1 (en) * 2006-12-22 2008-06-26 Storage Technology Corporation System and Method for Compression of Data Objects in a Data Storage System
US8005790B2 (en) * 2007-02-07 2011-08-23 Agfa Healthcare N.V. Object cloning management system and method
CN101470735B (zh) * 2007-12-27 2011-05-04 财团法人工业技术研究院 虚拟文件管理系统及其系统配置建立与文件存取方法
US8271437B2 (en) * 2008-07-28 2012-09-18 International Business Machines Corporation Managing locks across distributed computing nodes
US20100082675A1 (en) * 2008-09-30 2010-04-01 Hitachi, Ltd Method and apparatus for enabling wide area global name space
US9996572B2 (en) * 2008-10-24 2018-06-12 Microsoft Technology Licensing, Llc Partition management in a partitioned, scalable, and available structured storage
US8255373B2 (en) * 2008-10-24 2012-08-28 Microsoft Corporation Atomic multiple modification of data in a distributed storage system
US9454444B1 (en) 2009-03-19 2016-09-27 Veritas Technologies Llc Using location tracking of cluster nodes to avoid single points of failure
CN101621405B (zh) * 2009-07-07 2012-02-29 中兴通讯股份有限公司 分布式管理监控系统及其监控方法、创建方法
US8458515B1 (en) 2009-11-16 2013-06-04 Symantec Corporation Raid5 recovery in a high availability object based file system
CN102209087B (zh) * 2010-03-31 2014-07-09 国际商业机器公司 在具有存储网络的数据中心进行MapReduce数据传输的方法和系统
US8495323B1 (en) 2010-12-07 2013-07-23 Symantec Corporation Method and system of providing exclusive and secure access to virtual storage objects in a virtual machine cluster
JP5664441B2 (ja) * 2011-04-27 2015-02-04 日本電気株式会社 資源管理システム、データ更新方法およびプログラム
US10346422B2 (en) * 2012-10-18 2019-07-09 International Business Machines Corporation Use of proxy objects for integration between a content management system and a case management system
US20140114864A1 (en) * 2012-10-22 2014-04-24 International Business Machines Corporation Case management integration with external content repositories
US10841089B2 (en) * 2017-08-25 2020-11-17 Nutanix, Inc. Key managers for distributed computing systems
CN110045929B (zh) * 2019-04-19 2020-06-19 苏州浪潮智能科技有限公司 一种挂载点管理方法及相关装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5151989A (en) * 1987-02-13 1992-09-29 International Business Machines Corporation Directory cache management in a distributed data processing system
US5202971A (en) * 1987-02-13 1993-04-13 International Business Machines Corporation System for file and record locking between nodes in a distributed data processing environment maintaining one copy of each file lock
AU649455B2 (en) * 1990-07-11 1994-05-26 American Telephone And Telegraph Company Distributed computing system
US5689706A (en) * 1993-06-18 1997-11-18 Lucent Technologies Inc. Distributed systems with replicated files
US5701462A (en) * 1993-12-29 1997-12-23 Microsoft Corporation Distributed file system providing a unified name space with efficient name resolution
JP3488500B2 (ja) * 1994-02-07 2004-01-19 富士通株式会社 分散ファイルシステム
US5778168A (en) * 1995-09-11 1998-07-07 Sun Microsystems, Inc. Transaction device driver technique for a journaling file system to ensure atomicity of write operations to a computer mass storage device

Also Published As

Publication number Publication date
US5946685A (en) 1999-08-31
EP0887751A3 (en) 2004-01-14
EP0887751A2 (en) 1998-12-30
CA2241438A1 (en) 1998-12-27

Similar Documents

Publication Publication Date Title
US5946685A (en) Global mount mechanism used in maintaining a global name space utilizing a distributed locking mechanism
US5689701A (en) System and method for providing compatibility between distributed file system namespaces and operating system pathname syntax
US6804674B2 (en) Scalable Content management system and method of using the same
EP0720091B1 (en) Multi-level token management for distributed file systems
US6947940B2 (en) Uniform name space referrals with location independence
US6298390B1 (en) Method and apparatus for extending traditional operating systems file systems
JP3968242B2 (ja) 共有データにアクセスするための方法と装置
KR0170561B1 (ko) 화일 시스템 캐쉬의 관리 방법, 컴퓨터 화일 시스템 및 컴퓨터 시스템 캐쉬 장치
US7120650B2 (en) Implementing data management application programming interface access rights in a parallel file system
US5202971A (en) System for file and record locking between nodes in a distributed data processing environment maintaining one copy of each file lock
US6654794B1 (en) Method, data processing system and program product that provide an internet-compatible network file system driver
US6594671B1 (en) Separating privileged functions from non-privileged functions in a server instance
US6973455B1 (en) File server system providing direct data sharing between clients with a server acting as an arbiter and coordinator
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
US7539704B2 (en) Method, apparatus, system, and program product for attaching files and other objects to a partially replicated database
KR20060032579A (ko) 하드웨어/소프트웨어 인터페이스 시스템에 의해 관리가능한 정보의 단위들에 대한 관계 및 계층적 동기화서비스를 제공하는 시스템 및 방법
JPH07175704A (ja) ファイル装置およびデータオブジェクトアクセス方法
Carter et al. Khazana: An infrastructure for building distributed services
Thiel Locus operating system, a transparent system
US7167867B1 (en) Self-describing file system
Welch A comparison of the Vnode and Sprite file system architectures
Krzyzanowski Distributed file systems design
JP2000505921A (ja) 分散オペレーティング・システム
Scott Differences in Database Containers
KR101109390B1 (ko) 하드웨어/소프트웨어 인터페이스 시스템에 의해 관리가능한 정보의 단위들에 대한 동기화 서비스를 제공하는시스템 및 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050628

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080826

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090217