JPH1031612A - 高度ファイル・サーバ - Google Patents
高度ファイル・サーバInfo
- Publication number
- JPH1031612A JPH1031612A JP8284848A JP28484896A JPH1031612A JP H1031612 A JPH1031612 A JP H1031612A JP 8284848 A JP8284848 A JP 8284848A JP 28484896 A JP28484896 A JP 28484896A JP H1031612 A JPH1031612 A JP H1031612A
- Authority
- JP
- Japan
- Prior art keywords
- file
- file name
- operating system
- name
- computer
- 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 OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
- G06F16/164—File meta data generation
- G06F16/166—File name conversion
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (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)
Abstract
(57)【要約】 (修正有)
【課題】 いくつかの異なるオペレーティング・システ
ムを使用しているコンピュータを含むネットワークのユ
ーザが、相互のファイルに容易にアクセスできるように
する。 【解決手段】 ホスト・コンピュータ100の固有のネ
ームスペースからのファイル名と、このファイルに割り
当てられたファイル・システムの「インノード」番号か
ら、特定のアルゴリズムによって、合法で意味のあるフ
ァイル名を作り出すようにする。。必要な予備情報はた
とえばUNIXであればgetdents(2)システ
ム呼出で求められる。クライアントのオペレーティング
・システムが特定のファイル名についてサポートできな
い場合は合法的となるように・フライでさらに計算がさ
れる。たとえば、UNIXの「longfilenam
e」「1234」の組からDOSのために「long1
234」が生成される。
ムを使用しているコンピュータを含むネットワークのユ
ーザが、相互のファイルに容易にアクセスできるように
する。 【解決手段】 ホスト・コンピュータ100の固有のネ
ームスペースからのファイル名と、このファイルに割り
当てられたファイル・システムの「インノード」番号か
ら、特定のアルゴリズムによって、合法で意味のあるフ
ァイル名を作り出すようにする。。必要な予備情報はた
とえばUNIXであればgetdents(2)システ
ム呼出で求められる。クライアントのオペレーティング
・システムが特定のファイル名についてサポートできな
い場合は合法的となるように・フライでさらに計算がさ
れる。たとえば、UNIXの「longfilenam
e」「1234」の組からDOSのために「long1
234」が生成される。
Description
【0001】
【発明の属する技術分野】本発明は、コンピュータ・シ
ステムの分野に関し、特にコンピュータ・システムの共
有ファイルにアクセスするための装置および方法に関す
る。
ステムの分野に関し、特にコンピュータ・システムの共
有ファイルにアクセスするための装置および方法に関す
る。
【0002】
【従来の技術、及び、発明が解決しようとする課題】コ
ンピュータ・オペレーティング・システムは、「ファイ
ル名」によりコンピュータ・システムに記憶されている
ファイルにアクセスする。この場合ファイル名は、一般
に特定の命名規則に従ったものでなければならない。少
なくとも、上記の命名規則は、使用できる文字および一
つのファイル名で使用できる文字の最大数を指定してい
る。さらに、あるオペレーティング・システムは、特定
のファイル名の書式を指定している場合がある。例え
ば、マイクロソフト社のMS−DOSオペレーティング
・システムは、ファイル名に使用できる文字を、アルフ
ァベット(A−Z)、数字(0−9)およびいくつかの
記号(例えば、「.」、「_」、「−」等)に限定して
いるし、一方、ファイル名に含まれる文字の数を1−8
個の文字および0−3個の拡張子、例えば、「AUTO
EXEC.BAT」のように限定している。この書式
は、よく「8.3」書式と呼ばれる。一方、AT&Tの
MP−RAS UNIXオペレーティング・システム
は、スラッシュ文字「/」を除く255文字までのファ
イル名をサポートしている。
ンピュータ・オペレーティング・システムは、「ファイ
ル名」によりコンピュータ・システムに記憶されている
ファイルにアクセスする。この場合ファイル名は、一般
に特定の命名規則に従ったものでなければならない。少
なくとも、上記の命名規則は、使用できる文字および一
つのファイル名で使用できる文字の最大数を指定してい
る。さらに、あるオペレーティング・システムは、特定
のファイル名の書式を指定している場合がある。例え
ば、マイクロソフト社のMS−DOSオペレーティング
・システムは、ファイル名に使用できる文字を、アルフ
ァベット(A−Z)、数字(0−9)およびいくつかの
記号(例えば、「.」、「_」、「−」等)に限定して
いるし、一方、ファイル名に含まれる文字の数を1−8
個の文字および0−3個の拡張子、例えば、「AUTO
EXEC.BAT」のように限定している。この書式
は、よく「8.3」書式と呼ばれる。一方、AT&Tの
MP−RAS UNIXオペレーティング・システム
は、スラッシュ文字「/」を除く255文字までのファ
イル名をサポートしている。
【0003】いずれにせよ、あるオペレーティング・シ
ステムは、他のオペレーティング・システムと比較する
と制限が厳しいので、例えば、ファイル名がすべての有
効な文字を255バイトの長さまで含むことができるウ
ィンドウズNTのようにより制限が緩やかなオペレーテ
ィング・システムに対しては、いつでも、有効なファイ
ル名を付けることができるが、一方そのファイル名はM
S−DOSのようなより制限の厳しいオペレーティング
・システムには無効である。
ステムは、他のオペレーティング・システムと比較する
と制限が厳しいので、例えば、ファイル名がすべての有
効な文字を255バイトの長さまで含むことができるウ
ィンドウズNTのようにより制限が緩やかなオペレーテ
ィング・システムに対しては、いつでも、有効なファイ
ル名を付けることができるが、一方そのファイル名はM
S−DOSのようなより制限の厳しいオペレーティング
・システムには無効である。
【0004】いくつかの異なるオペレーティング・シス
テムを実行しているコンピュータが、同時にファイルに
アクセスする場合があるネットワーク・オペレーティン
グ・システムにおいては、異なるファイルの命名に対す
る制限が問題になる。一例をあげると、ウィンドウズN
Tのユーザが、共有ファイル・システム上に「1995
DepartmentBudget」という名前のファ
イルを作ろうとすると、MS−DOSのユーザは、その
ように命名されたファイルにアクセスすることはできな
い。何故なら、そのようなファイルは、MS−DOSの
8.3ファイル名書式に適合していないからである。
テムを実行しているコンピュータが、同時にファイルに
アクセスする場合があるネットワーク・オペレーティン
グ・システムにおいては、異なるファイルの命名に対す
る制限が問題になる。一例をあげると、ウィンドウズN
Tのユーザが、共有ファイル・システム上に「1995
DepartmentBudget」という名前のファ
イルを作ろうとすると、MS−DOSのユーザは、その
ように命名されたファイルにアクセスすることはできな
い。何故なら、そのようなファイルは、MS−DOSの
8.3ファイル名書式に適合していないからである。
【0005】上記のような共有ファイル・システム・ネ
ットワーク環境におけるこのような問題に対する誰でも
思いつく解決法をとった場合、コンピュータのユーザは
ファイル名規則の最小公倍数に適合するファイル名をつ
くらなければならない。すなわち、最も制限の厳しい規
則を、通常はMS−DOSの8.3ファイル名書式規則
である、共通ファイルおよびディレクトリを有する各サ
ポート・オペレーティング・システムに適用しなければ
ならない。
ットワーク環境におけるこのような問題に対する誰でも
思いつく解決法をとった場合、コンピュータのユーザは
ファイル名規則の最小公倍数に適合するファイル名をつ
くらなければならない。すなわち、最も制限の厳しい規
則を、通常はMS−DOSの8.3ファイル名書式規則
である、共通ファイルおよびディレクトリを有する各サ
ポート・オペレーティング・システムに適用しなければ
ならない。
【0006】よりよい解決法は、各ファイルが、各ネー
ムスペースに一つの名前を持っている「ネームスペース
表」を使用する方法である。例えば、ウィンドウズNT
のファイル・システム(NTFS)は、1994年マイ
クロソフト出版社出版のヘレン・カスター著の「ウィン
ドウズNTファイル・システムの内幕」、ISBN−5
5615−660−X、69−72ページに記載されて
いるように、各ファイルに対して、255バイトまでの
長さの長いファイル名と、MS−DOS式の8.3書式
のファイル名の両方を使用している。同様に、ノベルの
「ポ−タブル・ネットウェア」は、OS/2およびマッ
キントッシュ・オペレーティング・システムに対する追
加のネームスペースをサポートしている、ユーザ・レベ
ルでファイルを管理している。
ムスペースに一つの名前を持っている「ネームスペース
表」を使用する方法である。例えば、ウィンドウズNT
のファイル・システム(NTFS)は、1994年マイ
クロソフト出版社出版のヘレン・カスター著の「ウィン
ドウズNTファイル・システムの内幕」、ISBN−5
5615−660−X、69−72ページに記載されて
いるように、各ファイルに対して、255バイトまでの
長さの長いファイル名と、MS−DOS式の8.3書式
のファイル名の両方を使用している。同様に、ノベルの
「ポ−タブル・ネットウェア」は、OS/2およびマッ
キントッシュ・オペレーティング・システムに対する追
加のネームスペースをサポートしている、ユーザ・レベ
ルでファイルを管理している。
【0007】しかし、この解決法は、UNIX環境に対
しては満足できるものではない。何故なら、システム上
の各ファイルに対して、MS−DOS式のファイル名の
静的記録を保管しておかなければならないからである。
他のファイル・システムが、離れた場所で、もっと制限
の厳しいオペレーティング・システムを使用しているユ
ーザも参照できる、NFS(ネットワーク・ファイル・
システム)と一緒に、UNIX上で使用されている可能
性がある場合には、保管しておかなければならない情報
量は膨大なものになり、管理することができなくなる。
しては満足できるものではない。何故なら、システム上
の各ファイルに対して、MS−DOS式のファイル名の
静的記録を保管しておかなければならないからである。
他のファイル・システムが、離れた場所で、もっと制限
の厳しいオペレーティング・システムを使用しているユ
ーザも参照できる、NFS(ネットワーク・ファイル・
システム)と一緒に、UNIX上で使用されている可能
性がある場合には、保管しておかなければならない情報
量は膨大なものになり、管理することができなくなる。
【0008】
【課題を解決するための手段】それ故、本発明の一つの
目的は、種々のオペレーティング・システムを使用して
いるコンピュータのネットワーク間で、ファイルを共有
することができるもっと簡単な方法を提供することであ
る。本発明の他の目的は、ネットワークのユーザ・オペ
レーティング・システムの種々の命名方法に対応する複
数の静的ファイル名記録の保管を軽減および/または必
要としないようにすることである。
目的は、種々のオペレーティング・システムを使用して
いるコンピュータのネットワーク間で、ファイルを共有
することができるもっと簡単な方法を提供することであ
る。本発明の他の目的は、ネットワークのユーザ・オペ
レーティング・システムの種々の命名方法に対応する複
数の静的ファイル名記録の保管を軽減および/または必
要としないようにすることである。
【0009】本発明は、コンピュータ・ネットワークの
ユーザ間で共有しているコンピュータ用の一意のファイ
ル名を計算する方法を提供する。上記のネットワーク
は、ホスト・オペレーティング・システムと、このホス
ト・オペレーティング・システムとは異なるユーザ・オ
ペレーティング・システムを使用している少なくとも一
台のユーザ・コンピュータを使用しているホスト・コン
ピュータに、ファイル・サーバを含む。上記方法は、上
記のファイル・サーバから、ファイルに対する上記ホス
ト・コンピュータに固有のファイル名を提供するステッ
プと;上記ファイル・サーバによって、上記ファイルに
指定されたインノード番号にアクセスするステップと;
上記の一意のファイル名が上記ユーザ・オペレーティン
グ・システムに対して有効である場合に、上記の一意の
ファイル名を作るために、上記ファイル名と上記インノ
ード番号とを組み合わせるステップを特徴としている。
ユーザ間で共有しているコンピュータ用の一意のファイ
ル名を計算する方法を提供する。上記のネットワーク
は、ホスト・オペレーティング・システムと、このホス
ト・オペレーティング・システムとは異なるユーザ・オ
ペレーティング・システムを使用している少なくとも一
台のユーザ・コンピュータを使用しているホスト・コン
ピュータに、ファイル・サーバを含む。上記方法は、上
記のファイル・サーバから、ファイルに対する上記ホス
ト・コンピュータに固有のファイル名を提供するステッ
プと;上記ファイル・サーバによって、上記ファイルに
指定されたインノード番号にアクセスするステップと;
上記の一意のファイル名が上記ユーザ・オペレーティン
グ・システムに対して有効である場合に、上記の一意の
ファイル名を作るために、上記ファイル名と上記インノ
ード番号とを組み合わせるステップを特徴としている。
【0010】
【発明の実施の形態】本発明は、種々のオペレーティン
グ・システムを使用しているコンピュータを含むネット
ワークのユーザが、共有の他のファイルに容易にアクセ
スすることができる装置および方法に関する。意味のあ
るファイル名は、ホスト・コンピュータの「固有の」ネ
ームスペースからのファイル名と、このファイルに割り
当てられたホスト・コンピュータのファイル・システム
からの一意のインノード番号、すなわち、他の一意のフ
ァイル特性の両方を組み合わせることによって作られ
る。
グ・システムを使用しているコンピュータを含むネット
ワークのユーザが、共有の他のファイルに容易にアクセ
スすることができる装置および方法に関する。意味のあ
るファイル名は、ホスト・コンピュータの「固有の」ネ
ームスペースからのファイル名と、このファイルに割り
当てられたホスト・コンピュータのファイル・システム
からの一意のインノード番号、すなわち、他の一意のフ
ァイル特性の両方を組み合わせることによって作られ
る。
【0011】図1は、コンピュータおよび本発明の動作
を説明する際に役に立つそのオペレーティング・システ
ムのブロック図である。本明細書の各図の各品目または
ブロックには、関連参照番号がついている。最初の数字
はその品目が最初に表示された図面の番号である。(例
えば、110は、図1に表示されているし、501は図
5に表示されている。) 図1は、高度のアーキテククチャ階層図を使用している
UNIX(R)オペレーティング・システム110の制
御の下で動作するコンピュータ・システム100であ
る。階層図は、ユーザ・レベル120、カーネル・レベ
ル130、およびハードウェア・レベル140を含む。
ユーザ・レベル120は、ユーザ101がディスク18
0上に記憶されている物理的ファイルへのファイル・シ
ステム・ドライバ132を通して、ファイル・システム
にアクセスすることができるようにするインタフェース
である。
を説明する際に役に立つそのオペレーティング・システ
ムのブロック図である。本明細書の各図の各品目または
ブロックには、関連参照番号がついている。最初の数字
はその品目が最初に表示された図面の番号である。(例
えば、110は、図1に表示されているし、501は図
5に表示されている。) 図1は、高度のアーキテククチャ階層図を使用している
UNIX(R)オペレーティング・システム110の制
御の下で動作するコンピュータ・システム100であ
る。階層図は、ユーザ・レベル120、カーネル・レベ
ル130、およびハードウェア・レベル140を含む。
ユーザ・レベル120は、ユーザ101がディスク18
0上に記憶されている物理的ファイルへのファイル・シ
ステム・ドライバ132を通して、ファイル・システム
にアクセスすることができるようにするインタフェース
である。
【0012】ユーザ・レベル120は、ユーザ・プログ
ラム121およびライブラリ122を含む。AT&Tの
UNIXシステム用の高度サーバは、ネットワーク・コ
ンピュータを、UNIXオペレーティング・システムを
使用しているコンピュータによって管理されているファ
イル、プリンタおよび他の資源にアクセスさせるユーザ
・プログラムの一例である。ハードウェア・レベル14
0は、オペレーティング・システム110に、コンピュ
ータ100が必要とする基本的なサービスを提供する。
カーネル・レベル130は、ハードウェア・レベル14
0と直接相互に作用し、ユーザ・プログラム121に共
通のサービスを提供し、ユーザ・プログラムをハードウ
ェアのイディオシンクレイシスから分離する。このシス
テムを一組の階層と見れば、オペレーティング・システ
ムは、ユーザ・プログラムからのその独立性を強調する
ために、普通システム・カーネル130、または単にカ
ーネルと呼ばれる。ユーザ・プログラムは、このプログ
ラム用のハードウェアから独立しているので、異なるハ
ードウェア上で動作しているUNIXシステム間で容易
に移動させることができる。UNIXオペレーティング
・システムの周知の一般的な説明は、モーリス J.バ
ッハ著の「UNIXオペレーティング・システムの設
計」という本の第2章に記載されている。
ラム121およびライブラリ122を含む。AT&Tの
UNIXシステム用の高度サーバは、ネットワーク・コ
ンピュータを、UNIXオペレーティング・システムを
使用しているコンピュータによって管理されているファ
イル、プリンタおよび他の資源にアクセスさせるユーザ
・プログラムの一例である。ハードウェア・レベル14
0は、オペレーティング・システム110に、コンピュ
ータ100が必要とする基本的なサービスを提供する。
カーネル・レベル130は、ハードウェア・レベル14
0と直接相互に作用し、ユーザ・プログラム121に共
通のサービスを提供し、ユーザ・プログラムをハードウ
ェアのイディオシンクレイシスから分離する。このシス
テムを一組の階層と見れば、オペレーティング・システ
ムは、ユーザ・プログラムからのその独立性を強調する
ために、普通システム・カーネル130、または単にカ
ーネルと呼ばれる。ユーザ・プログラムは、このプログ
ラム用のハードウェアから独立しているので、異なるハ
ードウェア上で動作しているUNIXシステム間で容易
に移動させることができる。UNIXオペレーティング
・システムの周知の一般的な説明は、モーリス J.バ
ッハ著の「UNIXオペレーティング・システムの設
計」という本の第2章に記載されている。
【0013】システム呼出インタフェース131は、ユ
ーザ・レベル120(ユーザ・プログラム121とユー
ザ・ライブラリ122)とカーネル・レベル130との
境界となっている。システム呼出インタフェースは、ユ
ーザ・プログラム機能呼出をUNIXオペレーティング
・システム呼出に変換する。オペレーティング・システ
ム呼出はCプログラムの普通の機能呼出に類似してい
て、ライブラリはこれらの機能呼出を、オペレーティン
グ・システムを周知の方法で入力する際に必要なプリミ
ティブにマップする。一組のオペレーティング・システ
ム呼出は、ファイル・システム・ドライバ132と相互
に作用する呼出、およびプロセス制御サブシステム13
3と相互に作用する呼出を含む。ファイル・システム・
ドライバ132は、ファイルを管理し、ファイル・スペ
ースを割り当て、ファイルへのアクセスを制御し、ユー
ザ用のデータを検索する。プロセスは、(読み書きのた
めにファイルを開くための)open呼出、(ファイル
の属性を問い合わせるための)close、read、
write、stat呼出、(ファイルの所有者の記録
を変更する)chown呼出、(ファイルのアクセス許
可を変更する)chmod呼出のような、特定の組のシ
ステム呼出を通して、ファイル・システム・ドライバ1
32と相互に作用する。ファイル・システム・ドライバ
132は、カーネルと二次記憶装置との間のデータの流
れを規制するバッファ136を使用して、ファイル・デ
ータにアクセスする。バッファ機構は、カーネルへまた
はカーネルからのデータ移送を開始するために、ブロッ
クI/O装置ドライバ137と相互に作用する。デバイ
ス・ドライバ134は、周辺装置の動作を制御するカー
ネル・モジュ−ルである。ブロックI/Oドライバ14
1は、ランダム・アクセス記憶装置であり、別の場合に
は、、それらのデバイス・ドライバ137は、自らをシ
ステムの残りの装置に対してランダム・アクセス記憶装
置のように見せかける。例えば、テープ・ドライバによ
り、カーネルはテープ・ユニットをランダム・アクセス
記憶装置のように取り扱うことができる。ファイル・シ
ステムは、またバッファ機構を通さずに、「生」すなわ
ち、文字I/Oデバイス・ドライバ138と直接相互に
作用する。文字I/O装置142と呼ばれることもある
生装置は、ブロック装置ではないすべての装置を含む。
ーザ・レベル120(ユーザ・プログラム121とユー
ザ・ライブラリ122)とカーネル・レベル130との
境界となっている。システム呼出インタフェースは、ユ
ーザ・プログラム機能呼出をUNIXオペレーティング
・システム呼出に変換する。オペレーティング・システ
ム呼出はCプログラムの普通の機能呼出に類似してい
て、ライブラリはこれらの機能呼出を、オペレーティン
グ・システムを周知の方法で入力する際に必要なプリミ
ティブにマップする。一組のオペレーティング・システ
ム呼出は、ファイル・システム・ドライバ132と相互
に作用する呼出、およびプロセス制御サブシステム13
3と相互に作用する呼出を含む。ファイル・システム・
ドライバ132は、ファイルを管理し、ファイル・スペ
ースを割り当て、ファイルへのアクセスを制御し、ユー
ザ用のデータを検索する。プロセスは、(読み書きのた
めにファイルを開くための)open呼出、(ファイル
の属性を問い合わせるための)close、read、
write、stat呼出、(ファイルの所有者の記録
を変更する)chown呼出、(ファイルのアクセス許
可を変更する)chmod呼出のような、特定の組のシ
ステム呼出を通して、ファイル・システム・ドライバ1
32と相互に作用する。ファイル・システム・ドライバ
132は、カーネルと二次記憶装置との間のデータの流
れを規制するバッファ136を使用して、ファイル・デ
ータにアクセスする。バッファ機構は、カーネルへまた
はカーネルからのデータ移送を開始するために、ブロッ
クI/O装置ドライバ137と相互に作用する。デバイ
ス・ドライバ134は、周辺装置の動作を制御するカー
ネル・モジュ−ルである。ブロックI/Oドライバ14
1は、ランダム・アクセス記憶装置であり、別の場合に
は、、それらのデバイス・ドライバ137は、自らをシ
ステムの残りの装置に対してランダム・アクセス記憶装
置のように見せかける。例えば、テープ・ドライバによ
り、カーネルはテープ・ユニットをランダム・アクセス
記憶装置のように取り扱うことができる。ファイル・シ
ステムは、またバッファ機構を通さずに、「生」すなわ
ち、文字I/Oデバイス・ドライバ138と直接相互に
作用する。文字I/O装置142と呼ばれることもある
生装置は、ブロック装置ではないすべての装置を含む。
【0014】プロセス制御サブシステム133は、プロ
セスの同期、プロセス間の通信、メモリ管理およびプロ
セス・スケジュール作成を管理する。実行のためにファ
イルをメモリにロードすると、ファイル・システム・ド
ライバ132およびプロセス制御サブシステム133は
相互に作用する。プロセス制御サブシステム133は、
実行可能なファイルを、実行を行う前にメモリに読み込
む。
セスの同期、プロセス間の通信、メモリ管理およびプロ
セス・スケジュール作成を管理する。実行のためにファ
イルをメモリにロードすると、ファイル・システム・ド
ライバ132およびプロセス制御サブシステム133は
相互に作用する。プロセス制御サブシステム133は、
実行可能なファイルを、実行を行う前にメモリに読み込
む。
【0015】プロセスを制御するためのある種のシステ
ム呼出は、下記のものを含む。すなわち、(新しいプロ
セスを生成する)fork呼出、(実行中のプロセス上
にプログラムのイメージを重ね書きする)exec呼
出、(プロセスの実行を終了する)exit呼出、(す
でにフォークされたプロセスの終了とプロセスの実行を
同期させる)wait呼出、(プロセスに割り当てられ
たメモリの大きさを制御する)brk呼出、および(例
外的な事象に応じてプロセスを制御する)signal
呼出である。
ム呼出は、下記のものを含む。すなわち、(新しいプロ
セスを生成する)fork呼出、(実行中のプロセス上
にプログラムのイメージを重ね書きする)exec呼
出、(プロセスの実行を終了する)exit呼出、(す
でにフォークされたプロセスの終了とプロセスの実行を
同期させる)wait呼出、(プロセスに割り当てられ
たメモリの大きさを制御する)brk呼出、および(例
外的な事象に応じてプロセスを制御する)signal
呼出である。
【0016】すでに説明したように、コンピュータ10
0を使用して、ユーザはディスク180上に記憶されて
いるファイルにアクセスすることができる。「ファイ
ル」は一つまたはそれ以上のデータ・ストリームを含む
ことができ、オーナーおよび許可および他の属性および
一つまたはそれ以上のファイル名を持っている論理的情
報対象と考えれば、もっともその実体に近い。データ・
ストリームは、コンピュータ上の任意の他のデータ・ス
トリームとは無関係に、延長または短縮することができ
るデータ・バイトの独立したシーケンスであると考えれ
ば、最もその実体に近い。それ故、下記の動作はファイ
ルの動作である。すなわち、ファイル名のつけ替え、リ
ンク、所有者の変更、グループ所有者の変更、およびモ
ードの変更である。下記の動作はデータ・ストリームの
動作である。すなわち、読み取り、書き込み、および
(データ・ストリームの一部の)ロックである。
0を使用して、ユーザはディスク180上に記憶されて
いるファイルにアクセスすることができる。「ファイ
ル」は一つまたはそれ以上のデータ・ストリームを含む
ことができ、オーナーおよび許可および他の属性および
一つまたはそれ以上のファイル名を持っている論理的情
報対象と考えれば、もっともその実体に近い。データ・
ストリームは、コンピュータ上の任意の他のデータ・ス
トリームとは無関係に、延長または短縮することができ
るデータ・バイトの独立したシーケンスであると考えれ
ば、最もその実体に近い。それ故、下記の動作はファイ
ルの動作である。すなわち、ファイル名のつけ替え、リ
ンク、所有者の変更、グループ所有者の変更、およびモ
ードの変更である。下記の動作はデータ・ストリームの
動作である。すなわち、読み取り、書き込み、および
(データ・ストリームの一部の)ロックである。
【0017】図1、図2および図3を一緒に参照しなが
ら、ファイル・システムの概要を説明する。各ファイル
には、一つまたはそれ以上のパス名310がつけられて
いる。310に示すように、パス名は区切り文字(/)
で区切られているファイル名(例えば、ホーム)を含
む。ファイルの内部での表現は、ファイル・データのデ
ィスク・レイアウトおよびファイル・オーナー、アクセ
ス許可およびアクセス時間のような他の情報の説明を含
むインノードによって与えられる。インノードという用
語、用語インデックス・ノードを短縮したもので、一般
にUNIXシステムに関する文献で使用される。各ファ
イルは一つのインノードを持っているが、いくつかのパ
ス名を持つことができ、それらすべてはインノードにマ
ップされる。各パス名はリンクと呼ばれる。プロセスが
パス名でファイルを参照すると、カーネルは一回でパス
名を一つのファイル名構成部分に分解し、そのプロセス
がパスのディレクトリをサーチする許可を持っているか
どうかをチェックし、最後にファイルに対するインノー
ドを検索する。例えば、プロセスが「open(/ho
me/jqp)」という呼出を行った場合には、カーネ
ルは、「/home/jqp」に対するインノードを検
索する。315で示すように、すべてのパス名に対する
「ファイル・システム・ツリー」はスラッシュ
(「/」)で始まり、パス名がファイル・システム・ツ
リーの「ルート」に関連していることを示す。パス名
「/home/jqp/memoirs」の連続してい
る構成部分の名称に接続しているブランチを辿っていく
と、パス名全体を指定できるが、「home/memo
irs」の場合はそうはならない。パス名はルートから
始める必要はなく、パス名の最初のスラッシュを省略し
て、実行中のプロセスの「現在のディレクトリ」に関連
させて指定することもできる。それ故、現在のディレク
トリ「/home」から始まる場合、パス名「bin」
は、その省略しないパス名が「/home/bin」で
あるファイルを指定する。
ら、ファイル・システムの概要を説明する。各ファイル
には、一つまたはそれ以上のパス名310がつけられて
いる。310に示すように、パス名は区切り文字(/)
で区切られているファイル名(例えば、ホーム)を含
む。ファイルの内部での表現は、ファイル・データのデ
ィスク・レイアウトおよびファイル・オーナー、アクセ
ス許可およびアクセス時間のような他の情報の説明を含
むインノードによって与えられる。インノードという用
語、用語インデックス・ノードを短縮したもので、一般
にUNIXシステムに関する文献で使用される。各ファ
イルは一つのインノードを持っているが、いくつかのパ
ス名を持つことができ、それらすべてはインノードにマ
ップされる。各パス名はリンクと呼ばれる。プロセスが
パス名でファイルを参照すると、カーネルは一回でパス
名を一つのファイル名構成部分に分解し、そのプロセス
がパスのディレクトリをサーチする許可を持っているか
どうかをチェックし、最後にファイルに対するインノー
ドを検索する。例えば、プロセスが「open(/ho
me/jqp)」という呼出を行った場合には、カーネ
ルは、「/home/jqp」に対するインノードを検
索する。315で示すように、すべてのパス名に対する
「ファイル・システム・ツリー」はスラッシュ
(「/」)で始まり、パス名がファイル・システム・ツ
リーの「ルート」に関連していることを示す。パス名
「/home/jqp/memoirs」の連続してい
る構成部分の名称に接続しているブランチを辿っていく
と、パス名全体を指定できるが、「home/memo
irs」の場合はそうはならない。パス名はルートから
始める必要はなく、パス名の最初のスラッシュを省略し
て、実行中のプロセスの「現在のディレクトリ」に関連
させて指定することもできる。それ故、現在のディレク
トリ「/home」から始まる場合、パス名「bin」
は、その省略しないパス名が「/home/bin」で
あるファイルを指定する。
【0018】プロセスが新しいファイルを生成する場
合、ファイル・システム・ドライバ132は、そのファ
イルに未使用のインノードを割り当てる。インノード
は、以下に簡単に説明するように、物理的ファイル・シ
ステム220のセクション223に記憶されるが、ファ
イル・システム・ドライバ132は、ファイルを操作す
る際、上記インノードをインコア・メモリ・インデック
ス・ノード表に読み込む。UNIXシステムは、通常は
ディスクのようなブロック装置上に正規のファイルおよ
びディレクトリを持っている。一つのインストレーショ
ンは、それぞれが一つまたはそれ以上のファイル・シス
テムを含んでいる数個の物理的ディスク・ユニットを持
つことができる。ファイル・システム220は、それぞ
れがシステムの実行に従って、512、1024、20
48または512バイトの任意の倍数を含む一連の論理
ブロックの形に形成されている。512の倍数は、慣習
的に使用されているもので、512バイトのブロックに
する必然的な理由は何もない。物理的ファイル・システ
ムは、図2に220で示した物理的構造を持つことがで
きる。(ある種のファイル・システムには一つしかな
い)ブート・ブロック221は、ファイル・システムの
先頭、通常第一セクタにあり、オペレーティングシステ
ムをブートまたは初期化するために、コンピュータに読
み込まれるブートストラップ・システム・コードを含む
ことができる。システムをブートするにはブート・ブロ
ック221は一つだけあればいいのだが、各ファイル・
システムは、(恐らくは空の)ブート・ブロックを持つ
ことができる。スーパー・ブロック222は、ファイル
・システムの状態、すなわち、その大きさ、記憶するこ
とができるファイルの数、ファイル・システム上の自由
スペースの場所、および他の情報を記述している。イン
ノード・リスト223は、ファイル・システムでスーパ
ー・ブロックの後に続くインノードのリストである。ア
ドミニストレータは、ファイル・システムを構成すると
きに、インノード・リスト223の大きさを指定する。
ファイル・システム・ドライバ132は、インデックス
により、インノードのインノードのリスト223を参照
する。一つのインノードが、ファイル・システムのルー
ト・インノードである。ルート・インノードとは、それ
によって、ファイル・システムのルート・ディレクトリ
構造が、数量システム呼出の実行の後でアクセスするこ
とができるインノードである。データ・ブロック224
は、インノード・リストの終わりから始まり、データ・
ストリーム(すなわち、ファイル・データ)の内容を保
持している。割り当てられたデータ・ブロックはファイ
ルのデータ・ストリームの実際のデータを含み、ファイ
ル・システムの一つ、そしてただ一つのファイルに属す
ことができる。
合、ファイル・システム・ドライバ132は、そのファ
イルに未使用のインノードを割り当てる。インノード
は、以下に簡単に説明するように、物理的ファイル・シ
ステム220のセクション223に記憶されるが、ファ
イル・システム・ドライバ132は、ファイルを操作す
る際、上記インノードをインコア・メモリ・インデック
ス・ノード表に読み込む。UNIXシステムは、通常は
ディスクのようなブロック装置上に正規のファイルおよ
びディレクトリを持っている。一つのインストレーショ
ンは、それぞれが一つまたはそれ以上のファイル・シス
テムを含んでいる数個の物理的ディスク・ユニットを持
つことができる。ファイル・システム220は、それぞ
れがシステムの実行に従って、512、1024、20
48または512バイトの任意の倍数を含む一連の論理
ブロックの形に形成されている。512の倍数は、慣習
的に使用されているもので、512バイトのブロックに
する必然的な理由は何もない。物理的ファイル・システ
ムは、図2に220で示した物理的構造を持つことがで
きる。(ある種のファイル・システムには一つしかな
い)ブート・ブロック221は、ファイル・システムの
先頭、通常第一セクタにあり、オペレーティングシステ
ムをブートまたは初期化するために、コンピュータに読
み込まれるブートストラップ・システム・コードを含む
ことができる。システムをブートするにはブート・ブロ
ック221は一つだけあればいいのだが、各ファイル・
システムは、(恐らくは空の)ブート・ブロックを持つ
ことができる。スーパー・ブロック222は、ファイル
・システムの状態、すなわち、その大きさ、記憶するこ
とができるファイルの数、ファイル・システム上の自由
スペースの場所、および他の情報を記述している。イン
ノード・リスト223は、ファイル・システムでスーパ
ー・ブロックの後に続くインノードのリストである。ア
ドミニストレータは、ファイル・システムを構成すると
きに、インノード・リスト223の大きさを指定する。
ファイル・システム・ドライバ132は、インデックス
により、インノードのインノードのリスト223を参照
する。一つのインノードが、ファイル・システムのルー
ト・インノードである。ルート・インノードとは、それ
によって、ファイル・システムのルート・ディレクトリ
構造が、数量システム呼出の実行の後でアクセスするこ
とができるインノードである。データ・ブロック224
は、インノード・リストの終わりから始まり、データ・
ストリーム(すなわち、ファイル・データ)の内容を保
持している。割り当てられたデータ・ブロックはファイ
ルのデータ・ストリームの実際のデータを含み、ファイ
ル・システムの一つ、そしてただ一つのファイルに属す
ことができる。
【0019】本発明の好適な実施例の場合には、UNI
Xオペレーティング・システムを使用して動作する図1
のホスト・コンピュータ100は、例えば、図4に示す
ように、MS−DOSのようなUNIX以外のオペレー
ティング・システムを使用している種々の他のコンピュ
ータ420−450とネットワークを構成している。本
発明を、UNIXおよびMS−DOSオペレーティング
・システムを参照しながら説明してきたが、開示の方法
のコンセプトは、当業者なら理解できるように、OS/
2およびマッキントッシュのような他のオペレーティン
グ・システムにも、同様に適用できることを理解された
い。
Xオペレーティング・システムを使用して動作する図1
のホスト・コンピュータ100は、例えば、図4に示す
ように、MS−DOSのようなUNIX以外のオペレー
ティング・システムを使用している種々の他のコンピュ
ータ420−450とネットワークを構成している。本
発明を、UNIXおよびMS−DOSオペレーティング
・システムを参照しながら説明してきたが、開示の方法
のコンセプトは、当業者なら理解できるように、OS/
2およびマッキントッシュのような他のオペレーティン
グ・システムにも、同様に適用できることを理解された
い。
【0020】異なるオペレーティング・システムを使用
しているコンピュータ(420、430、440、45
0)でファイルを参照し、アクセスする場合には、ホス
ト・コンピュータの「固有の」ネームスペースからのフ
ァイル名と、そのファイルに割り当てられたホスト・コ
ンピュータのファイル・システムからの「インノード」
番号の両方を組み合わせて、合法で意味のあるファイル
名を作るために、明示のネームスペース表を保守するの
ではなく、アルゴリズムが使用される。上記アルゴリズ
ムを適用するのに必要な予備的情報は、どちらかといえ
ば容易に入手することができる。何故なら、ホスト・コ
ンピュータのファイル名およびインノード番号は、「g
etdents(2)]という周知のUNIXオペレー
ティングシステムの呼出によって変換されるからであ
る。そのオペレーティング・システムが特定のファイル
名をサポートしていないクライアント・コンピュータ
は、このファイル名がホスト・コンピュータ上のファイ
ル・システムにも、ファイルにも、実際に記憶されず、
それによりシステムに何等の追加情報を記憶する必要が
ない場合には、オン・ザ・フライで計算した特定のファ
イル名によって、特定のファイルの閲覧とアクセスの両
方を行う。長いファイル名だけではなく、長いファイル
名のマッピングを計算するためのインノード番号のよう
な、一意のファイル特性、または疑似の一意の特性を使
用することにより、クライアントが類似のファイル名
で、ファイルの大きなディレクトリを取り扱っている場
合には、非常に重要な結果として得られるファイル名の
一意性が改善される。
しているコンピュータ(420、430、440、45
0)でファイルを参照し、アクセスする場合には、ホス
ト・コンピュータの「固有の」ネームスペースからのフ
ァイル名と、そのファイルに割り当てられたホスト・コ
ンピュータのファイル・システムからの「インノード」
番号の両方を組み合わせて、合法で意味のあるファイル
名を作るために、明示のネームスペース表を保守するの
ではなく、アルゴリズムが使用される。上記アルゴリズ
ムを適用するのに必要な予備的情報は、どちらかといえ
ば容易に入手することができる。何故なら、ホスト・コ
ンピュータのファイル名およびインノード番号は、「g
etdents(2)]という周知のUNIXオペレー
ティングシステムの呼出によって変換されるからであ
る。そのオペレーティング・システムが特定のファイル
名をサポートしていないクライアント・コンピュータ
は、このファイル名がホスト・コンピュータ上のファイ
ル・システムにも、ファイルにも、実際に記憶されず、
それによりシステムに何等の追加情報を記憶する必要が
ない場合には、オン・ザ・フライで計算した特定のファ
イル名によって、特定のファイルの閲覧とアクセスの両
方を行う。長いファイル名だけではなく、長いファイル
名のマッピングを計算するためのインノード番号のよう
な、一意のファイル特性、または疑似の一意の特性を使
用することにより、クライアントが類似のファイル名
で、ファイルの大きなディレクトリを取り扱っている場
合には、非常に重要な結果として得られるファイル名の
一意性が改善される。
【0021】一意のファイル名を計算するための例示と
してのアルゴリズムについて説明する。UNIXを使用
しているサーバ・コンピュータと、図4に示すようにM
S−DOSを使用しているクライアント・コンピュータ
の場合を考えてみよう。例示の場合には、「longf
ilename」という共有ファイルは、getden
ts(2)オペレーティング・システム呼出によって報
告されたインノード1234を持っている。お分かりの
ことと思うが、「longfilename」は、有効
なMS−DOSファイル名ではない。何故なら、このフ
ァイル名は8.3書式ではないからである。
してのアルゴリズムについて説明する。UNIXを使用
しているサーバ・コンピュータと、図4に示すようにM
S−DOSを使用しているクライアント・コンピュータ
の場合を考えてみよう。例示の場合には、「longf
ilename」という共有ファイルは、getden
ts(2)オペレーティング・システム呼出によって報
告されたインノード1234を持っている。お分かりの
ことと思うが、「longfilename」は、有効
なMS−DOSファイル名ではない。何故なら、このフ
ァイル名は8.3書式ではないからである。
【0022】図5に簡単なアルゴリズムのフローチャー
トを示す。最初のステップ500において、アルゴリズ
ムを実行するかしないかを決定する。すなわち、例え
ば、ファイル名が特定のクライアントのオペレーティン
グ・システムに対して有効かどうかを判断するために、
ファイル名がチェックされる。有効である場合には、通
常の処理を行うことができる。有効でない場合には、本
発明のアルゴリズムが実行される。ファイル名のチェッ
クが行われた後の最初のステップ510においては、ク
ライアント・オペレーティング・システムに対して無効
な元来のファイル名から任意の文字が除去される。この
ファイル名はクライアント・オペレーティング・システ
ムが要求する長さおよび書式に合わせて短縮される(ス
テップ520)。次に、必要な場合には、特定のファイ
ルに対するインノード番号から切り取った文字を使用し
て、数個の文字が追加または重ね書きされる(ステップ
530)。簡単なインノード番号切り取りアルゴリズム
は、インノード番号モジュ−ラス1000の3桁の小数
表示を短縮するためのものである。それ故、インノード
番号1234を持つ「longfilename」の場
合には、ファイル名がろ過され「longfile」に
短縮される。短縮されたインノード番号は、「234」
で、この「234」は、「longf234」を作るた
めに、「longfile]の最後の三つの文字「il
e」の上に重ね書きされる。
トを示す。最初のステップ500において、アルゴリズ
ムを実行するかしないかを決定する。すなわち、例え
ば、ファイル名が特定のクライアントのオペレーティン
グ・システムに対して有効かどうかを判断するために、
ファイル名がチェックされる。有効である場合には、通
常の処理を行うことができる。有効でない場合には、本
発明のアルゴリズムが実行される。ファイル名のチェッ
クが行われた後の最初のステップ510においては、ク
ライアント・オペレーティング・システムに対して無効
な元来のファイル名から任意の文字が除去される。この
ファイル名はクライアント・オペレーティング・システ
ムが要求する長さおよび書式に合わせて短縮される(ス
テップ520)。次に、必要な場合には、特定のファイ
ルに対するインノード番号から切り取った文字を使用し
て、数個の文字が追加または重ね書きされる(ステップ
530)。簡単なインノード番号切り取りアルゴリズム
は、インノード番号モジュ−ラス1000の3桁の小数
表示を短縮するためのものである。それ故、インノード
番号1234を持つ「longfilename」の場
合には、ファイル名がろ過され「longfile」に
短縮される。短縮されたインノード番号は、「234」
で、この「234」は、「longf234」を作るた
めに、「longfile]の最後の三つの文字「il
e」の上に重ね書きされる。
【0023】「longfilename」ファイル
は、例えば、MS−DOSのDIRコマンドによって、
「longf234」という計算された名前でMS−D
OSクライアントに報告され、計算された名前は、例え
ば、「PRINT longf234」のような、すべ
てのMS−DOSコマンドで使用することができる。ホ
スト・コンピュータのファイル・サーバ・プログラム
は、二つの動作の処理、すなわち、ファイル名の報告お
よびファイル名へのアクセスを修正することによって、
上記変更を実行する。
は、例えば、MS−DOSのDIRコマンドによって、
「longf234」という計算された名前でMS−D
OSクライアントに報告され、計算された名前は、例え
ば、「PRINT longf234」のような、すべ
てのMS−DOSコマンドで使用することができる。ホ
スト・コンピュータのファイル・サーバ・プログラム
は、二つの動作の処理、すなわち、ファイル名の報告お
よびファイル名へのアクセスを修正することによって、
上記変更を実行する。
【0024】ファイル名をクライアント・コンピュータ
に報告するとき、サーバはファイル名がクライアント・
コンピュータのオペレーティング・システムに対して有
効かどうかを判断するために、各ファイルの名前を走査
する。名前がクライアント・コンピュータのオペレーテ
ィング・システムに対して有効である場合には、サーバ
はクライアント・コンピュータのオペレーティング・シ
ステムで有効であると同時に、ディレクトリで(疑似)
一意である上記アルゴリズムに従って、そのファイルに
対する名前を計算する。
に報告するとき、サーバはファイル名がクライアント・
コンピュータのオペレーティング・システムに対して有
効かどうかを判断するために、各ファイルの名前を走査
する。名前がクライアント・コンピュータのオペレーテ
ィング・システムに対して有効である場合には、サーバ
はクライアント・コンピュータのオペレーティング・シ
ステムで有効であると同時に、ディレクトリで(疑似)
一意である上記アルゴリズムに従って、そのファイルに
対する名前を計算する。
【0025】クライアントが、サーバ上のファイルにア
クセスするとき、クライアントは、サーバにクライアン
トのオペレーティング・システムの命名方法でファイル
名を渡す。上記の例においては、クライアントは、サー
バにMS−DOS8.3のファイル名を渡す。サーバ
は、このファイル名でファイルを発見しようとする。上
記の名前のファイルが存在しない場合には、サーバはそ
のファイル名は長いファイル名を8.3書式にマッピン
グした結果生成されたものであるとみなし、この長いフ
ァイル名を発見しようとする。サーバは、例えば、特定
ファイル名が上記の方法を使用して、8.3書式の名前
で発見されると考えられるディレクトリの各ファイル名
のマッピングを計算する。クライアントから受け取った
ファイル名は、結果として得られた名前と比較される。
一致する場合には、一致したものに対応する長いファイ
ル名が、クライアントが探している名前である。一致し
ない場合には、システムにファイルが存在しないと見な
される。すでに説明したように、本発明は、MS−DO
S以外のオペレーティング・システムを使用しているク
ライアントがアクセスしたファイルにも適用することが
できる。上記適用は、当業者なら理解できると思うが、
上記アルゴリズムを使用する類似の方法で行うことがで
きる。
クセスするとき、クライアントは、サーバにクライアン
トのオペレーティング・システムの命名方法でファイル
名を渡す。上記の例においては、クライアントは、サー
バにMS−DOS8.3のファイル名を渡す。サーバ
は、このファイル名でファイルを発見しようとする。上
記の名前のファイルが存在しない場合には、サーバはそ
のファイル名は長いファイル名を8.3書式にマッピン
グした結果生成されたものであるとみなし、この長いフ
ァイル名を発見しようとする。サーバは、例えば、特定
ファイル名が上記の方法を使用して、8.3書式の名前
で発見されると考えられるディレクトリの各ファイル名
のマッピングを計算する。クライアントから受け取った
ファイル名は、結果として得られた名前と比較される。
一致する場合には、一致したものに対応する長いファイ
ル名が、クライアントが探している名前である。一致し
ない場合には、システムにファイルが存在しないと見な
される。すでに説明したように、本発明は、MS−DO
S以外のオペレーティング・システムを使用しているク
ライアントがアクセスしたファイルにも適用することが
できる。上記適用は、当業者なら理解できると思うが、
上記アルゴリズムを使用する類似の方法で行うことがで
きる。
【0026】本発明が命名したファイルの一意性の確率
を高めるために、インノード関連の数値を含んでいる
が、このステップは、本発明にとって必ずしも必要でな
いことを理解されたい。本発明の他の好適な実施例の場
合には、必要に応じて、非合法の文字をホスト・ファイ
ル名から削除し、短縮している。必要な場合には、イン
ノード関連の数値を含むことができる。例えば、MS−
DOSオペレーティング・システム環境の場合には、フ
ァイル名「file:2」は合法であるとは見なされな
い。なぜなら、コロンが使用されているからである。本
発明は、「:」文字を削除し、ファイル名をホスト・オ
ペレーティング・システムに対して合法的なものにする
ために、このファイルをすっきりと「file2」また
は[file_2」に変換するか、他の何らかの有効な
置き換えを行う。
を高めるために、インノード関連の数値を含んでいる
が、このステップは、本発明にとって必ずしも必要でな
いことを理解されたい。本発明の他の好適な実施例の場
合には、必要に応じて、非合法の文字をホスト・ファイ
ル名から削除し、短縮している。必要な場合には、イン
ノード関連の数値を含むことができる。例えば、MS−
DOSオペレーティング・システム環境の場合には、フ
ァイル名「file:2」は合法であるとは見なされな
い。なぜなら、コロンが使用されているからである。本
発明は、「:」文字を削除し、ファイル名をホスト・オ
ペレーティング・システムに対して合法的なものにする
ために、このファイルをすっきりと「file2」また
は[file_2」に変換するか、他の何らかの有効な
置き換えを行う。
【0027】さらに、本発明は、またホスト・オペレー
ティング・システムが、クライアントの装置のファイル
・システムよりもっと制限が厳しい場合に、異なるファ
イル命名パラメータの下で動作するコンピュータ装置
を、相互に接続するのに使用することができる。例え
ば、本発明を、マッキントッシュCD−ROMと、MS
−DOSコンピュータとを接続するときに使用すること
ができる。(マッキントッシュのファイル名は最大31
文字の長さにすることができることを思い出された
い。)本発明の他の類似の適用としては、UNIX C
D−ROMのMS−DOSコンピュータでの使用、ウィ
ンドウズNT/ウィンドウズ95およびUNIXCD−
ROMのマッキントッシュ・システムでの使用のような
類似の組み合わせ等がある。このような場合には、クラ
イアントのファイル名はホスト装置のオペレーティング
・システム上で使用できるように修正される。
ティング・システムが、クライアントの装置のファイル
・システムよりもっと制限が厳しい場合に、異なるファ
イル命名パラメータの下で動作するコンピュータ装置
を、相互に接続するのに使用することができる。例え
ば、本発明を、マッキントッシュCD−ROMと、MS
−DOSコンピュータとを接続するときに使用すること
ができる。(マッキントッシュのファイル名は最大31
文字の長さにすることができることを思い出された
い。)本発明の他の類似の適用としては、UNIX C
D−ROMのMS−DOSコンピュータでの使用、ウィ
ンドウズNT/ウィンドウズ95およびUNIXCD−
ROMのマッキントッシュ・システムでの使用のような
類似の組み合わせ等がある。このような場合には、クラ
イアントのファイル名はホスト装置のオペレーティング
・システム上で使用できるように修正される。
【図1】 ホスト・コンピュータと、本発明の動作を説
明するのに役に立つそのオペレーティング・システムの
ブロック図である。
明するのに役に立つそのオペレーティング・システムの
ブロック図である。
【図2】 ファイルおよびファイル・システムの論理的
および物理的構造である。
および物理的構造である。
【図3】 本発明を説明する際に役に立つ種々の用語の
定義である。
定義である。
【図4】 種々のオペレーティング・システムを使用し
ている、複数のユーザ・コンピュータに接続しているサ
ーバを持つ、ホスト・コンピュータを含むネットワーク
である。
ている、複数のユーザ・コンピュータに接続しているサ
ーバを持つ、ホスト・コンピュータを含むネットワーク
である。
【図5】 本発明の種々の動作の特徴を説明するための
フローチャートである。
フローチャートである。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 エレナ ネスベタエバ アメリカ合衆国 ニュージャージー州 07747 マタワン、レキシントン サーク ル 107
Claims (2)
- 【請求項1】 ホスト・オペレーティング・システムを
使用しているホスト・コンピュータ(100)と、上記
ホスト・オペレーティング・システムとは異なるクライ
アント・オペレーティング・システムを使用する場合が
ある少なくとも一台のクライアント・コンピュータ・ネ
ットワーク(420、430、440、450)のユー
ザ間で共有しているコンピュータ・ファイル用の一意の
ファイル名を計算する方法であって、 ファイル・サーバから、ファイル(200)に対して、
ホスト・コンピュータ(100)固有のファイル名を命
名するステップと、 上記ファイル・サーバによって、上記のファイルに割り
当てられたインノード番号に、アクセスするステップ
と、 一意のファイル名が、上記クライアント・オペレーティ
ング・システムに対して有効なファイル名である場合
に、一意のファイル名を作るために、上記ファイル名と
上記のインノード番号とを、組み合わせるステップとを
特徴とする方法。 - 【請求項2】 上記のファイル・サーバを含み、ホスト
・オペレーティング・システムを使用しているホスト・
コンピュータ(100)と、上記ホスト・オペレーティ
ング・システムとは異なるクライアント・オペレーティ
ング・システムを使用する場合があるクライアント・コ
ンピュータ(420、430、440、450)を含む
コンピュータ・ネットワーク(100、420、43
0、440、450)のユーザ間で共有しているコンピ
ュータ・ファイルを記憶するためのファイル・サーバ装
置であって、 ファイル・サーバ装置から、ファイルに対して、ホスト
・コンピュータ(100)固有のファイル名を命名する
手段と、 上記ホスト・コンピュータによって上記ファイルに割り
当てられたインノード番号に、アクセスするための手段
と、 一意のファイル名が、上記クライアント・オペレーティ
ング・システムに対して有効なファイル名である場合
に、一意のファイル名を作るために、上記ファイル名
と、上記のインノード番号とを組み合わせるための手段
とを特徴とする装置。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US54949995A | 1995-10-27 | 1995-10-27 | |
| US08/549,499 | 1995-10-27 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH1031612A true JPH1031612A (ja) | 1998-02-03 |
Family
ID=24193256
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP8284848A Pending JPH1031612A (ja) | 1995-10-27 | 1996-10-28 | 高度ファイル・サーバ |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US5745888A (ja) |
| EP (1) | EP0770966B1 (ja) |
| JP (1) | JPH1031612A (ja) |
| DE (1) | DE69623227T2 (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7996430B2 (en) | 2006-08-24 | 2011-08-09 | Seiko Epson Corporation | File retrieval device and file retrieval method |
Families Citing this family (35)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6144969A (en) * | 1996-02-09 | 2000-11-07 | Sony Corporation | File name conversion |
| US5991763A (en) * | 1996-10-29 | 1999-11-23 | Sun Microsystems, Inc. | Method and apparatus for embedding concatenated data files into object files during runtime in a virtual file system |
| JPH10171681A (ja) * | 1996-12-10 | 1998-06-26 | Fujitsu Ltd | オブジェクト指向装置管理システム |
| US6401114B1 (en) * | 1997-05-01 | 2002-06-04 | Stratum Technologies Corporation | Method and apparatus for dynamic programming across a computer network |
| US7162519B2 (en) | 1998-05-01 | 2007-01-09 | Stratum Technologies Corporation | Structure and method for providing customized web pages-therefor |
| US6718540B1 (en) | 1997-11-17 | 2004-04-06 | International Business Machines Corporation | Data processing system and method for storing data in a communication network |
| US6801911B1 (en) | 1997-11-21 | 2004-10-05 | International Business Machines Corporation | Data processing system and method for accessing files |
| US6026405A (en) * | 1997-11-21 | 2000-02-15 | International Business Machines Corporation | Method of locating and downloading files on a network |
| US5995975A (en) * | 1997-11-25 | 1999-11-30 | International Business Machines Corporation | Dictionary based process for object containment |
| US6216162B1 (en) * | 1998-10-19 | 2001-04-10 | International Business Machines Corp. | Extending alias support to heterogeneous servers |
| US7398262B1 (en) * | 1999-06-18 | 2008-07-08 | Multex.Com, Inc. | Method and system for referencing, archiving and retrieving symbolically linked information |
| JP3831154B2 (ja) * | 1999-08-13 | 2006-10-11 | 株式会社東芝 | プログラム多重化拡大方法 |
| US6425078B1 (en) * | 1999-08-30 | 2002-07-23 | Dell Usa, L.P. | Method for factory-installation of files and directories with long filenames while maintaining proper reference to their short filename equivalents |
| US20020152168A1 (en) * | 2000-07-11 | 2002-10-17 | First Data Corporation | Automated transfer with stored value fund |
| US7747758B2 (en) * | 2001-10-29 | 2010-06-29 | International Business Machines Corporation | Dynamic port assignment |
| US7124152B2 (en) * | 2001-10-31 | 2006-10-17 | Seagate Technology Llc | Data storage device with deterministic caching and retention capabilities to effect file level data transfers over a network |
| JP4211285B2 (ja) * | 2002-05-24 | 2009-01-21 | 株式会社日立製作所 | ネットワークストレージシステムの仮想一元化方法及び装置 |
| KR100550288B1 (ko) * | 2003-12-02 | 2006-02-08 | 주식회사 하우리 | Ext2파일 시스템의 데이터 복구방법과 그 프로그램을기록한 기록매체 |
| WO2005098627A1 (ja) * | 2004-03-31 | 2005-10-20 | Matsushita Electric Industrial Co., Ltd. | ファイル名生成装置 |
| US7509343B1 (en) * | 2004-06-09 | 2009-03-24 | Sprint Communications Company L.P. | System and method of collecting and reporting system performance metrics |
| US8090691B2 (en) * | 2004-08-13 | 2012-01-03 | Computer Associates Think, Inc. | System and method for variable block logging with log-ahead buffers |
| TW200622687A (en) * | 2004-12-17 | 2006-07-01 | Hon Hai Prec Ind Co Ltd | Method for searching a file in a file directory |
| US20060206484A1 (en) * | 2005-03-14 | 2006-09-14 | Hitachi, Ltd. | Method for preserving consistency between worm file attributes and information in management servers |
| US20060259516A1 (en) * | 2005-05-11 | 2006-11-16 | Stakutis Christopher J | Nondisruptive method for encoding file meta-data into a file name |
| US7761432B2 (en) * | 2005-11-04 | 2010-07-20 | Oracle America, Inc. | Inheritable file system properties |
| US20070106700A1 (en) * | 2005-11-04 | 2007-05-10 | Sun Microsystems, Inc. | Hierarchical file system naming |
| TWI484355B (zh) | 2009-05-06 | 2015-05-11 | Htc Corp | 作業系統/電子裝置與檔案之存取方法 |
| US20100287205A1 (en) * | 2009-05-06 | 2010-11-11 | Htc Corporation | Operating system / electronic device and method for storing or reading a file |
| US20140157324A1 (en) * | 2012-11-30 | 2014-06-05 | Comcast Cable Communications, Llc | Content Identification and Management |
| US11016941B2 (en) | 2014-02-28 | 2021-05-25 | Red Hat, Inc. | Delayed asynchronous file replication in a distributed file system |
| US9965505B2 (en) | 2014-03-19 | 2018-05-08 | Red Hat, Inc. | Identifying files in change logs using file content location identifiers |
| US10025808B2 (en) | 2014-03-19 | 2018-07-17 | Red Hat, Inc. | Compacting change logs using file content location identifiers |
| US9986029B2 (en) * | 2014-03-19 | 2018-05-29 | Red Hat, Inc. | File replication using file content location identifiers |
| US10210191B2 (en) * | 2014-03-20 | 2019-02-19 | International Business Machines Corporation | Accelerated access to objects in an object store implemented utilizing a file storage system |
| US11860819B1 (en) * | 2017-06-29 | 2024-01-02 | Amazon Technologies, Inc. | Auto-generation of partition key |
Family Cites Families (16)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS6359639A (ja) * | 1986-08-29 | 1988-03-15 | Fujitsu Ltd | フアイルアクセス互換制御方式 |
| US4887204A (en) * | 1987-02-13 | 1989-12-12 | International Business Machines Corporation | System and method for accessing remote files in a distributed networking environment |
| US4875159A (en) * | 1987-12-22 | 1989-10-17 | Amdahl Corporation | Version management system using plural control fields for synchronizing two versions of files in a multiprocessor system |
| DE69032649T2 (de) * | 1989-08-01 | 1999-05-06 | Silicon Graphics Inc., Mountain View, Calif. 94039 | Dateiveränderungsmonitor für rechner-, betriebs- und dateiverwaltungssysteme |
| US5226163A (en) * | 1989-08-01 | 1993-07-06 | Silicon Graphics, Inc. | File characterization for computer operating and file management systems |
| DE69033092D1 (de) * | 1989-09-08 | 1999-06-10 | Auspex Systems Inc Santa Clara | Betriebssystemaufbau mit mehreren verarbeitungseinheiten |
| CA2067650C (en) * | 1991-07-24 | 1996-10-22 | Eric Jonathan Bauer | Method and apparatus for operating a computer-based file system |
| JPH05233570A (ja) * | 1991-12-26 | 1993-09-10 | Internatl Business Mach Corp <Ibm> | 異オペレーティング・システム間分散データ処理システム |
| US5627996A (en) * | 1992-08-19 | 1997-05-06 | At&T | Method and apparatus for accessing the same computer file using different file name formats |
| US5555388A (en) * | 1992-08-20 | 1996-09-10 | Borland International, Inc. | Multi-user system and methods providing improved file management by reading |
| US5649200A (en) * | 1993-01-08 | 1997-07-15 | Atria Software, Inc. | Dynamic rule-based version control system |
| US5574898A (en) * | 1993-01-08 | 1996-11-12 | Atria Software, Inc. | Dynamic software version auditor which monitors a process to provide a list of objects that are accessed |
| GB9316948D0 (en) * | 1993-08-14 | 1993-09-29 | Ibm | Programming aid for distributed computing systems |
| US5495607A (en) * | 1993-11-15 | 1996-02-27 | Conner Peripherals, Inc. | Network management system having virtual catalog overview of files distributively stored across network domain |
| US5611066A (en) * | 1994-02-28 | 1997-03-11 | Data/Ware Development, Inc. | System for creating related sets via once caching common file with each unique control file associated within the set to create a unique record image |
| 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 |
-
1996
- 1996-10-23 DE DE69623227T patent/DE69623227T2/de not_active Expired - Lifetime
- 1996-10-23 EP EP96307663A patent/EP0770966B1/en not_active Expired - Lifetime
- 1996-10-28 JP JP8284848A patent/JPH1031612A/ja active Pending
-
1997
- 1997-07-28 US US08/901,381 patent/US5745888A/en not_active Expired - Lifetime
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7996430B2 (en) | 2006-08-24 | 2011-08-09 | Seiko Epson Corporation | File retrieval device and file retrieval method |
Also Published As
| Publication number | Publication date |
|---|---|
| EP0770966A2 (en) | 1997-05-02 |
| EP0770966A3 (en) | 1997-08-27 |
| US5745888A (en) | 1998-04-28 |
| EP0770966B1 (en) | 2002-08-28 |
| DE69623227T2 (de) | 2003-04-17 |
| DE69623227D1 (de) | 2002-10-02 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH1031612A (ja) | 高度ファイル・サーバ | |
| US7676526B1 (en) | System, method and computer program product for multi-level file-sharing by concurrent users | |
| US5412808A (en) | System for parsing extended file names in an operating system | |
| US5388257A (en) | Method and apparatus for operating a computer based file system | |
| US5627996A (en) | Method and apparatus for accessing the same computer file using different file name formats | |
| JP4799936B2 (ja) | 条件別スナップショット取得方法及びシステム | |
| US7783665B1 (en) | Effective file-sharing among virtual environments | |
| US7293033B1 (en) | System and method for providing effective file-sharing in a computer system to allow concurrent multi-user access | |
| US7860907B2 (en) | Data processing | |
| US7680836B2 (en) | Systems and methods for a snapshot of data | |
| CN101535966B (zh) | 受限命名空间环境中的反向名称映射 | |
| US20080059541A1 (en) | Systems and methods for a snapshot of data | |
| HU219996B (hu) | Kliens számítógép, valamint eljárás annak üzemeltetésére | |
| US7325017B2 (en) | Method of implementation of data storage quota | |
| US8762434B1 (en) | Aliasing of exported paths in a storage system | |
| JPH04246742A (ja) | 異なるファイル・システムにまたがる記憶管理システム | |
| JP2001229056A (ja) | ファイルアクセス要求処理方法 | |
| US7958097B1 (en) | Method and system for implementation of data storage quota | |
| US20080005524A1 (en) | Data processing | |
| GB2439576A (en) | Storing related small data fragments in the same block | |
| GB2440357A (en) | Data storage method | |
| Grimm | Exodisk--maximizing application control over storage management | |
| JP2000148566A (ja) | 修正可能なデ―タ管理機能を有するディスク記憶装置 | |
| Strobel et al. | The Basics | |
| Brennan | Operating System Internals |