JPH04297934A - データ処理システム - Google Patents
データ処理システムInfo
- Publication number
- JPH04297934A JPH04297934A JP3268660A JP26866091A JPH04297934A JP H04297934 A JPH04297934 A JP H04297934A JP 3268660 A JP3268660 A JP 3268660A JP 26866091 A JP26866091 A JP 26866091A JP H04297934 A JPH04297934 A JP H04297934A
- Authority
- JP
- Japan
- Prior art keywords
- data
- file
- operating system
- name
- storing
- 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
-
- 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)
- 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)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【0001】
【産業上の利用分野】本発明は、データ処理システムに
関し、具体的には、このようなシステムに記憶された情
報オブジェクトに関する拡張属性の記憶及び管理に関す
る。
関し、具体的には、このようなシステムに記憶された情
報オブジェクトに関する拡張属性の記憶及び管理に関す
る。
【0002】
【従来の技術】情報オブジェクト(またはオブジェクト
)という用語は、ここでは離散的にアクセス可能なファ
イル・エンティティとしてディスク上に記憶可能な、デ
ータ・ファイル、プログラム、及びその他の情報項目の
総称として使用される。以下では、「オブジェクト」及
び「ファイル」という用語は同じ意味で使用する。
)という用語は、ここでは離散的にアクセス可能なファ
イル・エンティティとしてディスク上に記憶可能な、デ
ータ・ファイル、プログラム、及びその他の情報項目の
総称として使用される。以下では、「オブジェクト」及
び「ファイル」という用語は同じ意味で使用する。
【0003】オブジェクト属性(または単に「属性」)
という用語は、現在、オペレーティング・システムによ
って維持される標準的な1組のファイル特性に関連する
用語として使用されている。たとえば、DOS及びOS
/2(IBM社の商標)オペレーティング・システムは
、ファイルごとに、ファイル名、ファイルへの最近のア
クセスの日時、ファイルの最近の改訂(ファイルが作成
されたばかりの場合は作成)の日時、ファイルのアクセ
ス可能性(隠しファイルか、非隠しファイルか)、ファ
イルの変更可能性(読出し専用か、否か)、及びファイ
ル・データの記憶場所の情報からなる、標準的な1組の
属性を維持する。
という用語は、現在、オペレーティング・システムによ
って維持される標準的な1組のファイル特性に関連する
用語として使用されている。たとえば、DOS及びOS
/2(IBM社の商標)オペレーティング・システムは
、ファイルごとに、ファイル名、ファイルへの最近のア
クセスの日時、ファイルの最近の改訂(ファイルが作成
されたばかりの場合は作成)の日時、ファイルのアクセ
ス可能性(隠しファイルか、非隠しファイルか)、ファ
イルの変更可能性(読出し専用か、否か)、及びファイ
ル・データの記憶場所の情報からなる、標準的な1組の
属性を維持する。
【0004】拡張オブジェクト属性(または単に「拡張
属性」または「EA」)という用語は、一般的に標準的
な1組の属性に含まれる属性以外の諸属性の総称として
使用する。
属性」または「EA」)という用語は、一般的に標準的
な1組の属性に含まれる属性以外の諸属性の総称として
使用する。
【0005】「要求」と「機能呼出し」は、オペレーテ
ィング・システムにデータ処理システムに関するある種
の機能の実行を指令させるためにオペレーティング・シ
ステムに適用された情報を特徴づけるものとして同じ意
味で使用する。
ィング・システムにデータ処理システムに関するある種
の機能の実行を指令させるためにオペレーティング・シ
ステムに適用された情報を特徴づけるものとして同じ意
味で使用する。
【0006】コンピュータ・システムでは、ファイルは
一般に、直接アクセス記憶サブシステム(たとえば、固
定された形または取外し可能な形の1つまたは複数のデ
ィスク記憶装置を含むもの)内に、ファイルのある種の
特徴及びその記憶装置内の位置を記述する標準の1組の
属性(上記の「属性」の定義参照)と関連づけて記憶さ
れる。ファイル及びそれに関連する標準的属性は、適用
業務プログラムによって作成され、改訂可能である。フ
ァイル及びその標準の1組の属性の記憶は、一般にオペ
レーティング・システムによってリンク式に管理され、
したがってそれらのファイル及びそれらの標準的属性は
、それらの記憶装置内の位置が異なっていても、単一の
エンティティである場合と同様に、オペレーティング・
システム及びその他の適用業務(ファイルを作成した適
用業務とは異なる適用業務)にとってアクセス可能であ
る。ファイル及び属性のこのタイプの協調的操作を、以
下では、「コンジョイント」な操作と呼ぶ。
一般に、直接アクセス記憶サブシステム(たとえば、固
定された形または取外し可能な形の1つまたは複数のデ
ィスク記憶装置を含むもの)内に、ファイルのある種の
特徴及びその記憶装置内の位置を記述する標準の1組の
属性(上記の「属性」の定義参照)と関連づけて記憶さ
れる。ファイル及びそれに関連する標準的属性は、適用
業務プログラムによって作成され、改訂可能である。フ
ァイル及びその標準の1組の属性の記憶は、一般にオペ
レーティング・システムによってリンク式に管理され、
したがってそれらのファイル及びそれらの標準的属性は
、それらの記憶装置内の位置が異なっていても、単一の
エンティティである場合と同様に、オペレーティング・
システム及びその他の適用業務(ファイルを作成した適
用業務とは異なる適用業務)にとってアクセス可能であ
る。ファイル及び属性のこのタイプの協調的操作を、以
下では、「コンジョイント」な操作と呼ぶ。
【0007】標準的属性に加えて、適用業務プログラム
は、ファイル・データと関連づけた拡張属性(EA)を
作成または改訂することができる。これまで、EAは作
成側適用業務によって形成され、したがってオペレーテ
ィング・システム及びその他の適用業務にとってEAが
実際にはアクセス不可能であった。より具体的には、こ
のようなEAは、適用業務によって作成または改訂され
た他のファイル・データから有効に分離され、作成側適
用業務によってのみそれらのファイル・データと関連づ
けのできる離散型ファイルとして形成され、あるいはE
Aを作成した適用業務にとってのみ有効に区別できるよ
うな形で他のファイル・データと結合されていた。した
がって、全てのデータの記憶がオペレーティング・シス
テムによって管理されるが、EAはオペレーティング・
システム及び作成側適用業務以外の適用業務にとって実
際にはアクセス不可能なままであった。
は、ファイル・データと関連づけた拡張属性(EA)を
作成または改訂することができる。これまで、EAは作
成側適用業務によって形成され、したがってオペレーテ
ィング・システム及びその他の適用業務にとってEAが
実際にはアクセス不可能であった。より具体的には、こ
のようなEAは、適用業務によって作成または改訂され
た他のファイル・データから有効に分離され、作成側適
用業務によってのみそれらのファイル・データと関連づ
けのできる離散型ファイルとして形成され、あるいはE
Aを作成した適用業務にとってのみ有効に区別できるよ
うな形で他のファイル・データと結合されていた。した
がって、全てのデータの記憶がオペレーティング・シス
テムによって管理されるが、EAはオペレーティング・
システム及び作成側適用業務以外の適用業務にとって実
際にはアクセス不可能なままであった。
【0008】したがって、たとえば、従来技術のオペレ
ーティング・システムに適切なコマンドを呼び出すこと
によってあるファイルが別の媒体またはディレクトリに
コピーされたとき、関連するEAは全くコピーされず、
あるいはファイル・データとともに区別不可能な形で転
送されていた。いずれの場合にも、コピーされたファイ
ル・データと関連するEAは、オペレーティング・シス
テムまたは別の適用業務にとって有用でなかった。これ
は、他の適用業務によって作成されたファイル・データ
を使用できるように適用業務を適合できることがしばし
ば望ましく、拡張属性情報へのアクセスなしではそのよ
うな適合が無効となるような場合、適用業務の開発者に
とって欠点になり得る。
ーティング・システムに適切なコマンドを呼び出すこと
によってあるファイルが別の媒体またはディレクトリに
コピーされたとき、関連するEAは全くコピーされず、
あるいはファイル・データとともに区別不可能な形で転
送されていた。いずれの場合にも、コピーされたファイ
ル・データと関連するEAは、オペレーティング・シス
テムまたは別の適用業務にとって有用でなかった。これ
は、他の適用業務によって作成されたファイル・データ
を使用できるように適用業務を適合できることがしばし
ば望ましく、拡張属性情報へのアクセスなしではそのよ
うな適合が無効となるような場合、適用業務の開発者に
とって欠点になり得る。
【0009】さらに、(たとえば、作成側適用業務によ
ってベース・ファイル内に置かれたリンク情報を介して
)そのようなEAへのアクセスを他の適用業務が得たと
しても、リンクするためにそのような方法に頼るのは、
異なる適用業務開発者によって様々な言語及び識別技法
が使用されるので不都合である。したがって、与えられ
たベース・ファイルにリンクしようとする適用業務の開
発者は、関連するEAを識別するために作成側適用業務
が使用する技法を知る必要がある。言うまでもなく、そ
の技法は、異なる企業または個人によって作成された適
用業務同士の間で異なり得る。さらに、EAへのそのよ
うな「間接アクセス」は、本発明に関連する諸技法と比
較して、オペレーティング・システムに対してだけでな
く開始側適用業務とリンク適用業務の両方にも追加の処
理負担を負わせることになる。
ってベース・ファイル内に置かれたリンク情報を介して
)そのようなEAへのアクセスを他の適用業務が得たと
しても、リンクするためにそのような方法に頼るのは、
異なる適用業務開発者によって様々な言語及び識別技法
が使用されるので不都合である。したがって、与えられ
たベース・ファイルにリンクしようとする適用業務の開
発者は、関連するEAを識別するために作成側適用業務
が使用する技法を知る必要がある。言うまでもなく、そ
の技法は、異なる企業または個人によって作成された適
用業務同士の間で異なり得る。さらに、EAへのそのよ
うな「間接アクセス」は、本発明に関連する諸技法と比
較して、オペレーティング・システムに対してだけでな
く開始側適用業務とリンク適用業務の両方にも追加の処
理負担を負わせることになる。
【0010】OS/2バージョン1.2の最近の導入以
前には、オペレーティング・システムによって管理され
る諸属性は、上記のような小さな標準セット、すなわち
関連するファイル・ディレクトリ・エントリに関する固
定された文字の文脈及び固定された文字長さ位置を有す
る標準セット(一般に、記憶空間を保存するのに役立つ
)に限られていたと考えられる。すなわち、たとえば、
DOSの既存のバージョン及びOS/2のバージョン1
.2以前にリリースされた各バージョンは、上記の標準
の1組の属性だけを管理するように適合されてきた。そ
の結果、これら早期のオペレーティング・システムは、
EAへのコンジョイント・アクセスを提供できなかった
。しかし、上記の分析を考慮すると、このようなコンジ
ョイント・アクセスはきわめて有用になり得ることが理
解できよう。
前には、オペレーティング・システムによって管理され
る諸属性は、上記のような小さな標準セット、すなわち
関連するファイル・ディレクトリ・エントリに関する固
定された文字の文脈及び固定された文字長さ位置を有す
る標準セット(一般に、記憶空間を保存するのに役立つ
)に限られていたと考えられる。すなわち、たとえば、
DOSの既存のバージョン及びOS/2のバージョン1
.2以前にリリースされた各バージョンは、上記の標準
の1組の属性だけを管理するように適合されてきた。そ
の結果、これら早期のオペレーティング・システムは、
EAへのコンジョイント・アクセスを提供できなかった
。しかし、上記の分析を考慮すると、このようなコンジ
ョイント・アクセスはきわめて有用になり得ることが理
解できよう。
【0011】
【発明が解決しようとする課題】したがって、本発明の
目的は、拡張属性(EA)データ・セット及び関連する
ベース・ファイル・データ構造の記憶を、EA及びベー
ス・データが単一のファイル内にあるかのようにコンジ
ョイントに管理するように、オペレーティング・システ
ムを適合させるための方法及び手段を提供することであ
る。関連する目的は、単一のファイル名を指定する適用
業務要求に応答して、オペレーティング・システムが、
データ・ファイル構造及び1つまたは複数のEAに割り
振られた複数の別々の記憶空間に自動的にアクセスでき
、それらの空間のどれかまたは全てに関するデータを別
々にまたは一緒に処理するように動作できるような方式
で、ベース・ファイル・データ構造及び関連するEAデ
ータをコンジョイントに動作するようにオペレーティン
グ・システムを適合させることである。
目的は、拡張属性(EA)データ・セット及び関連する
ベース・ファイル・データ構造の記憶を、EA及びベー
ス・データが単一のファイル内にあるかのようにコンジ
ョイントに管理するように、オペレーティング・システ
ムを適合させるための方法及び手段を提供することであ
る。関連する目的は、単一のファイル名を指定する適用
業務要求に応答して、オペレーティング・システムが、
データ・ファイル構造及び1つまたは複数のEAに割り
振られた複数の別々の記憶空間に自動的にアクセスでき
、それらの空間のどれかまたは全てに関するデータを別
々にまたは一緒に処理するように動作できるような方式
で、ベース・ファイル・データ構造及び関連するEAデ
ータをコンジョイントに動作するようにオペレーティン
グ・システムを適合させることである。
【0012】本発明の別の目的は、EAに関連するファ
イル名に関する形式、長さ、及び情報文脈が実質的に制
限されないEAを作成し管理するようにオペレーティン
グ・システムを適合させるためのアーキテクチャー上の
拡張を提供することである。
イル名に関する形式、長さ、及び情報文脈が実質的に制
限されないEAを作成し管理するようにオペレーティン
グ・システムを適合させるためのアーキテクチャー上の
拡張を提供することである。
【0013】本発明の別の目的は、記憶装置内で長さ、
文脈、及び位置検出可能性が変化するEAのコンジョイ
ントな動作が実現できるように適用業務及びオペレーテ
ィング・システムを適合させるための手段を提供するこ
とである。関連する目的は、異なる適用業務によって作
成されたEAを一義的に区別して、このようなEAのあ
いまいさのない動作を保証するための手段を提供するこ
とである。
文脈、及び位置検出可能性が変化するEAのコンジョイ
ントな動作が実現できるように適用業務及びオペレーテ
ィング・システムを適合させるための手段を提供するこ
とである。関連する目的は、異なる適用業務によって作
成されたEAを一義的に区別して、このようなEAのあ
いまいさのない動作を保証するための手段を提供するこ
とである。
【0014】
【課題を解決するための手段】オペレーティング・シス
テムは、ファイル名に関連する1つまたは複数の空間内
のEA情報を修正またはアクセスしたいというある要求
に応答し、かつ同じそのファイル名に関連する空間内の
ベース・ファイル・データを修正またはアクセスしたい
という他の要求に応答し、かつそのファイル名に関連す
る全てのベース・ファイル・データ及びEA情報を修正
またはアクセスしたいというさらに別の要求に応答して
動作するように適合させることができる。最後の要求活
動の例は、指名されたファイル名に関連するデータをコ
ピーまたは消去したいという要求に応答して、オペレー
ティング・システムがそのファイル名に関して(別々に
)記憶された全てのベース・データ及びEAデータを自
動的にコピーまたは削除できることである。
テムは、ファイル名に関連する1つまたは複数の空間内
のEA情報を修正またはアクセスしたいというある要求
に応答し、かつ同じそのファイル名に関連する空間内の
ベース・ファイル・データを修正またはアクセスしたい
という他の要求に応答し、かつそのファイル名に関連す
る全てのベース・ファイル・データ及びEA情報を修正
またはアクセスしたいというさらに別の要求に応答して
動作するように適合させることができる。最後の要求活
動の例は、指名されたファイル名に関連するデータをコ
ピーまたは消去したいという要求に応答して、オペレー
ティング・システムがそのファイル名に関して(別々に
)記憶された全てのベース・データ及びEAデータを自
動的にコピーまたは削除できることである。
【0015】一般に、いま考慮したコンジョイントな動
作にとって有用であるためには、記憶されたEAは、他
のファイル・データに関する長さ、文脈、及び位置が、
前記の他のデータ及び前記の他のデータを記述するのに
使用される任意の名前に関連する標準属性セットよりも
ずっと制約が少なくなければならない。しかしながら、
そのようなEAは、他のファイル・データ(以下では「
ベース・ファイル」とも呼ぶ)に確実に関連づけできる
何らかの識別情報をもたなければならないことが現在で
は認識されている。こうすれば、1つの適用業務プログ
ラムによって作成されたEAは、別の適用業務プログラ
ムによってアクセスされたとき、競合的使用または間違
った使用を受けなくなる。そうしないと、たとえば、異
なるワード・プロセッサによって作成されたファイルが
、同じに見えるがそれぞれのベース(テキスト)ファイ
ルに関して異なる意味をもつEAをもち、そのようなフ
ァイルが、作成側適用業務とは異なるワード・プロセッ
サ(または他のプログラム)によって検索されたとき、
このような不確実な意味のために使用不可能になる、ま
たは完全には有用ではなくなることが起こり得る。
作にとって有用であるためには、記憶されたEAは、他
のファイル・データに関する長さ、文脈、及び位置が、
前記の他のデータ及び前記の他のデータを記述するのに
使用される任意の名前に関連する標準属性セットよりも
ずっと制約が少なくなければならない。しかしながら、
そのようなEAは、他のファイル・データ(以下では「
ベース・ファイル」とも呼ぶ)に確実に関連づけできる
何らかの識別情報をもたなければならないことが現在で
は認識されている。こうすれば、1つの適用業務プログ
ラムによって作成されたEAは、別の適用業務プログラ
ムによってアクセスされたとき、競合的使用または間違
った使用を受けなくなる。そうしないと、たとえば、異
なるワード・プロセッサによって作成されたファイルが
、同じに見えるがそれぞれのベース(テキスト)ファイ
ルに関して異なる意味をもつEAをもち、そのようなフ
ァイルが、作成側適用業務とは異なるワード・プロセッ
サ(または他のプログラム)によって検索されたとき、
このような不確実な意味のために使用不可能になる、ま
たは完全には有用ではなくなることが起こり得る。
【0016】
【実施例】1.システム環境
図1を参照すると、本発明が有利に使用できる代表的な
システムが、全体的に1で示されている。このようなシ
ステムのハードウェアは通常、マイクロプロセッサまた
はプロセッサ2、メモリ・サブシステム3(通常、直接
メモリ・アクセス制御装置(図示せず)、及びランダム
・アクセス・メモリを含む。ランダム・アクセス・メモ
リは今日の技術環境では主に非持久性のものであるが、
恐らく重要なシステム構成パラメータを記憶するための
CMOSメモリなど若干の持久性部分を含む)、バス4
、及びディスク記憶サブシステム5(通常、制御装置(
図示せず)及び1つまたは複数のディスク・ドライブを
含む)を含む。マイクロプロセッサ2には、周知の形の
基本入出力システム(BIOS)「ファームウェア」2
aが連結されている。BIOSは、サブシステム3に関
連するメモリ・アドレス空間の読出し専用メモリ(RO
M)部分に記憶することができる。当技術分野で周知の
ように、バス4は、情報信号の交換のために要素1−3
、及び5をリンクする。このようなシステムで通常使用
されるユーザ入力装置(キーボード、マウスなど)、及
び本発明を理解するのに重要であると思われないその他
のシステム要素は図示されていない。
システムが、全体的に1で示されている。このようなシ
ステムのハードウェアは通常、マイクロプロセッサまた
はプロセッサ2、メモリ・サブシステム3(通常、直接
メモリ・アクセス制御装置(図示せず)、及びランダム
・アクセス・メモリを含む。ランダム・アクセス・メモ
リは今日の技術環境では主に非持久性のものであるが、
恐らく重要なシステム構成パラメータを記憶するための
CMOSメモリなど若干の持久性部分を含む)、バス4
、及びディスク記憶サブシステム5(通常、制御装置(
図示せず)及び1つまたは複数のディスク・ドライブを
含む)を含む。マイクロプロセッサ2には、周知の形の
基本入出力システム(BIOS)「ファームウェア」2
aが連結されている。BIOSは、サブシステム3に関
連するメモリ・アドレス空間の読出し専用メモリ(RO
M)部分に記憶することができる。当技術分野で周知の
ように、バス4は、情報信号の交換のために要素1−3
、及び5をリンクする。このようなシステムで通常使用
されるユーザ入力装置(キーボード、マウスなど)、及
び本発明を理解するのに重要であると思われないその他
のシステム要素は図示されていない。
【0017】システム立上げ時に、オペレーティング・
システム・プログラム6(たとえば、DOSまたはOS
/2)が、オペレーティング・システム及びその他のプ
ログラムによって作成されたファイルへのサブシステム
5内記憶空間の割振りを管理し、それらのファイルがサ
ブシステム5内に記憶された後のそれらのファイルへの
アクセスを管理するために、メモリ・サブシステム3に
ロードされる。その後、各種のタスク(ワード・プロセ
シング、スプレッドシートなど)を実行し、タスク実行
中に作成され、改訂され、またはその他の形で使用され
たデータ・ファイル(一般に、情報オブジェクト)を記
憶しアクセスするためにオペレーティング・システム及
びBIOSファームウェアと協働するように、1つまた
は複数の適用業務7がメモリ3にロードされる。この協
働関係は、破線8で概略的に図示されているが、オペレ
ーティング・システム及び適用業務の命令及びデータを
構成する信号は、バス4を介してマイクロプロセッサ2
とメモリ3の間でのみ処理されることを理解されたい。
システム・プログラム6(たとえば、DOSまたはOS
/2)が、オペレーティング・システム及びその他のプ
ログラムによって作成されたファイルへのサブシステム
5内記憶空間の割振りを管理し、それらのファイルがサ
ブシステム5内に記憶された後のそれらのファイルへの
アクセスを管理するために、メモリ・サブシステム3に
ロードされる。その後、各種のタスク(ワード・プロセ
シング、スプレッドシートなど)を実行し、タスク実行
中に作成され、改訂され、またはその他の形で使用され
たデータ・ファイル(一般に、情報オブジェクト)を記
憶しアクセスするためにオペレーティング・システム及
びBIOSファームウェアと協働するように、1つまた
は複数の適用業務7がメモリ3にロードされる。この協
働関係は、破線8で概略的に図示されているが、オペレ
ーティング・システム及び適用業務の命令及びデータを
構成する信号は、バス4を介してマイクロプロセッサ2
とメモリ3の間でのみ処理されることを理解されたい。
【0018】2.従来技術による、ベース・ファイルへ
の記憶域割振り及びアクセスの管理 DOSオペレーティング・システムの既存のバージョン
が、コンジョイントにリンクされたEAをもたないファ
イルに対する記憶空間の割振りを管理する、「従来技術
」の方法は、K.W.クリストファー・ジュニア(Ch
ristopher Jr.)、B.A.ファイゲン
バウム(Feigenbaum)及びS.O.サリガ(
Saliga)の共著“Developing Ap
plications Using DOS”、1
990年、John Wiley & Sons
,Inc.刊の第9章及び第10章に詳しく記述されて
いる。コンジョイントにリンクされたEAをもつファイ
ルに対する記憶域の管理の説明の基礎を提供するために
、本発明の好ましい実施例に従って、従来のベース・フ
ァイル及び標準属性の管理方法について以下で簡単に説
明する。ただし、この方法は周知のものであり、クリス
トファー・ジュニアらの上記の書籍を含む公表された文
献により完全に記述されていることを理解されたい。
の記憶域割振り及びアクセスの管理 DOSオペレーティング・システムの既存のバージョン
が、コンジョイントにリンクされたEAをもたないファ
イルに対する記憶空間の割振りを管理する、「従来技術
」の方法は、K.W.クリストファー・ジュニア(Ch
ristopher Jr.)、B.A.ファイゲン
バウム(Feigenbaum)及びS.O.サリガ(
Saliga)の共著“Developing Ap
plications Using DOS”、1
990年、John Wiley & Sons
,Inc.刊の第9章及び第10章に詳しく記述されて
いる。コンジョイントにリンクされたEAをもつファイ
ルに対する記憶域の管理の説明の基礎を提供するために
、本発明の好ましい実施例に従って、従来のベース・フ
ァイル及び標準属性の管理方法について以下で簡単に説
明する。ただし、この方法は周知のものであり、クリス
トファー・ジュニアらの上記の書籍を含む公表された文
献により完全に記述されていることを理解されたい。
【0019】ファイルが作成されたとき、オペレーティ
ング・システムは、記憶装置内に維持される下記のディ
レクトリ・ツリー構造内に関連するリストを作成する。 このリストは、ファイル名、1つまたは複数の標準属性
、及び下記の他のある種の情報を含む。各リストに割り
当てられた空間は、標準のDOS慣行(すなわち長さ3
2バイト)に従って固定される。標準属性は、ファイル
の作成または改訂(いずれか最後に行われた方)の日時
、ファイルに対する最近のアクセスの日時、ファイルの
アクセス可能性(隠しファイルか、非隠しファイルか)
、ファイルの変更可能性(読出し専用か、読出し専用で
ないか)、及び記憶装置内の(ベース)ファイル・デー
タの位置を特定するための情報を含めて、ファイルのあ
る種の特性を規定する。新しく作成されたファイルが記
憶すべきデータを含む場合、適用業務は、ファイル名と
記憶装置に転送すべきソース・データを含むシステム・
メモリ内の位置とを識別する要求を、オペレーティング
・システムに出す。オペレーティング・システムは、下
記のようにしてそのデータを記憶するための空間を割り
振り、データをその空間内に記憶するための(出力)動
作を呼び出す。
ング・システムは、記憶装置内に維持される下記のディ
レクトリ・ツリー構造内に関連するリストを作成する。 このリストは、ファイル名、1つまたは複数の標準属性
、及び下記の他のある種の情報を含む。各リストに割り
当てられた空間は、標準のDOS慣行(すなわち長さ3
2バイト)に従って固定される。標準属性は、ファイル
の作成または改訂(いずれか最後に行われた方)の日時
、ファイルに対する最近のアクセスの日時、ファイルの
アクセス可能性(隠しファイルか、非隠しファイルか)
、ファイルの変更可能性(読出し専用か、読出し専用で
ないか)、及び記憶装置内の(ベース)ファイル・デー
タの位置を特定するための情報を含めて、ファイルのあ
る種の特性を規定する。新しく作成されたファイルが記
憶すべきデータを含む場合、適用業務は、ファイル名と
記憶装置に転送すべきソース・データを含むシステム・
メモリ内の位置とを識別する要求を、オペレーティング
・システムに出す。オペレーティング・システムは、下
記のようにしてそのデータを記憶するための空間を割り
振り、データをその空間内に記憶するための(出力)動
作を呼び出す。
【0020】記憶装置内にある既存のファイルへのアク
セスが必要なとき、ファイル名及びそのディレクトリ・
リストへの経路(たとえば、C:¥WORK¥FILE
NAME、ここでCはルート・ディレクトリ、WORK
はサブディレクトリ、FILENAMEはファイル名)
を示す1つまたは複数の要求がオペレーティング・シス
テムに出される。データをファイルから読み出す場合、
またはファイルに書き込む場合、その機能を指定する要
求は、データが転送されるシステム・メモリ内の宛先、
または転送されるデータのシステム・メモリ内の転送元
を示す。ファイル・データを読み出す場合、オペレーテ
ィング・システムは、関連するディレクトリ・リストを
介してそのデータの位置を特定し、そのデータをシステ
ム・メモリに読み出すための入力動作を呼び出す。ファ
イル・データを書き込む場合で、そのファイルに現在割
り振られている空間がそれを受け取るのに不十分な場合
、オペレーティング・システムは、下記のようにしてそ
の空間を拡張し、そのデータを記憶するための動作を呼
び出す。
セスが必要なとき、ファイル名及びそのディレクトリ・
リストへの経路(たとえば、C:¥WORK¥FILE
NAME、ここでCはルート・ディレクトリ、WORK
はサブディレクトリ、FILENAMEはファイル名)
を示す1つまたは複数の要求がオペレーティング・シス
テムに出される。データをファイルから読み出す場合、
またはファイルに書き込む場合、その機能を指定する要
求は、データが転送されるシステム・メモリ内の宛先、
または転送されるデータのシステム・メモリ内の転送元
を示す。ファイル・データを読み出す場合、オペレーテ
ィング・システムは、関連するディレクトリ・リストを
介してそのデータの位置を特定し、そのデータをシステ
ム・メモリに読み出すための入力動作を呼び出す。ファ
イル・データを書き込む場合で、そのファイルに現在割
り振られている空間がそれを受け取るのに不十分な場合
、オペレーティング・システムは、下記のようにしてそ
の空間を拡張し、そのデータを記憶するための動作を呼
び出す。
【0021】図2及び図3は、上記のプロセスの単純化
した概略図を示す。図2に示すように、ファイルを作成
しようとする適用業務(またはオペレーティング・シス
テム・ユーティリティ)11は、ファイル名(図中の名
前“N”)及びディレクトリ経路を識別する要求をオペ
レーティング・システムに出し、オペレーティング・シ
ステム12は、その経路と関連するディレクトリ・ツリ
ー構造13にアクセスし、その構造内の指名されたファ
イル用の適切なディレクトリ・リストを記憶するように
機能する。同様に、既存のファイルからデータを読み出
そうとする、または既存のファイルに書き込もうとする
適用業務は、ファイル名、必要な動作、データが転送さ
れるバッファのシステム・メモリ内の宛先または転送元
、及びそのバッファの長さを識別する要求をオペレーテ
ィング・システムに出す。次に、オペレーティング・シ
ステムはその転送を実行するのに必要な動作の実行を指
令する。
した概略図を示す。図2に示すように、ファイルを作成
しようとする適用業務(またはオペレーティング・シス
テム・ユーティリティ)11は、ファイル名(図中の名
前“N”)及びディレクトリ経路を識別する要求をオペ
レーティング・システムに出し、オペレーティング・シ
ステム12は、その経路と関連するディレクトリ・ツリ
ー構造13にアクセスし、その構造内の指名されたファ
イル用の適切なディレクトリ・リストを記憶するように
機能する。同様に、既存のファイルからデータを読み出
そうとする、または既存のファイルに書き込もうとする
適用業務は、ファイル名、必要な動作、データが転送さ
れるバッファのシステム・メモリ内の宛先または転送元
、及びそのバッファの長さを識別する要求をオペレーテ
ィング・システムに出す。次に、オペレーティング・シ
ステムはその転送を実行するのに必要な動作の実行を指
令する。
【0022】データをファイルに書き込む場合で、デー
タ記憶のためにそのファイルに現在割り振られている空
間が指定された長さのデータを受け取るには不十分であ
る場合、オペレーティング・システム12は、必要な追
加の空間を割り振るように動作し、システム・メモリか
ら記憶装置にデータを転送するために必要な(出力)動
作を開始する。データ記憶のための空間が現在ファイル
に割り振られていない場合、オペレーティング・システ
ムは(下記のようにして)必要な空間を割り振り、その
空間の位置を指定するポインタを含むようにディレクト
リ・リストを修正するように動作する。ファイルにデー
タを記憶する動作では、データを記憶すべき空間の位置
を特定するために、ポインタによって指定された位置が
サブシステム制御装置に渡される。
タ記憶のためにそのファイルに現在割り振られている空
間が指定された長さのデータを受け取るには不十分であ
る場合、オペレーティング・システム12は、必要な追
加の空間を割り振るように動作し、システム・メモリか
ら記憶装置にデータを転送するために必要な(出力)動
作を開始する。データ記憶のための空間が現在ファイル
に割り振られていない場合、オペレーティング・システ
ムは(下記のようにして)必要な空間を割り振り、その
空間の位置を指定するポインタを含むようにディレクト
リ・リストを修正するように動作する。ファイルにデー
タを記憶する動作では、データを記憶すべき空間の位置
を特定するために、ポインタによって指定された位置が
サブシステム制御装置に渡される。
【0023】データを既存のファイルから読み出す場合
、オペレーティング・システムは、ポインタを検索する
ように動作し、ポインタによって指定された空間からシ
ステム・メモリ内の指定されたバッファにデータを転送
するための入力動作を開始する。この動作では、データ
をそこから読み出すべき空間の位置を特定するために、
ポインタによって指定された位置がサブシステム制御装
置に渡される。
、オペレーティング・システムは、ポインタを検索する
ように動作し、ポインタによって指定された空間からシ
ステム・メモリ内の指定されたバッファにデータを転送
するための入力動作を開始する。この動作では、データ
をそこから読み出すべき空間の位置を特定するために、
ポインタによって指定された位置がサブシステム制御装
置に渡される。
【0024】記憶サブシステム内の各ハード・ファイル
区画及びフロッピー・ディスクは、13などの関連する
ディレクトリ・ツリー構造をもつ。これはそれぞれの区
画またはフロッピー・ディスクに記憶され、必要なとき
オペレーティング・システムによってアクセスされる。 このディレクトリ・ツリーのコピーが必要なときシステ
ム・メモリ内にキャッシュ記憶されていない場合、オペ
レーティング・システムは必要なツリーを取り出すため
に記憶サブシステムに関する動作を指令する。このツリ
ー構造及び関連のファイル位置検出要素の構成は図3に
示されている。
区画及びフロッピー・ディスクは、13などの関連する
ディレクトリ・ツリー構造をもつ。これはそれぞれの区
画またはフロッピー・ディスクに記憶され、必要なとき
オペレーティング・システムによってアクセスされる。 このディレクトリ・ツリーのコピーが必要なときシステ
ム・メモリ内にキャッシュ記憶されていない場合、オペ
レーティング・システムは必要なツリーを取り出すため
に記憶サブシステムに関する動作を指令する。このツリ
ー構造及び関連のファイル位置検出要素の構成は図3に
示されている。
【0025】ツリーは、ルート・ディレクトリ17から
出発する。ルート・ディレクトリ内にはファイル名及び
サブディレクトリ名がリストされている。ルート・ディ
レクトリが空でないとき、それは1つないし複数のファ
イル・リストまたは1つないし複数のサブディレクトリ
・リストあるいはその両方を含む。通常のファイル・リ
スト及びサブディレクトリ・リストは、それぞれ18及
び19に示されている。このようなリストの諸要素は、
図のリスト行内に頭文字で示してあり、行の右側にその
説明がある。各ファイル・リストは、ファイル名(FN
)、ファイルの標準属性(SA)、以下で説明する「第
1クラスタ」ポインタ(FC)、及びいくつかの未使用
または予約済みの空間(U)を含む。19などの各ディ
レクトリ・リストは、ディレクトリ名(DN)、標準属
性(SA)、及び未使用または予約済みの位置(U)を
含む。
出発する。ルート・ディレクトリ内にはファイル名及び
サブディレクトリ名がリストされている。ルート・ディ
レクトリが空でないとき、それは1つないし複数のファ
イル・リストまたは1つないし複数のサブディレクトリ
・リストあるいはその両方を含む。通常のファイル・リ
スト及びサブディレクトリ・リストは、それぞれ18及
び19に示されている。このようなリストの諸要素は、
図のリスト行内に頭文字で示してあり、行の右側にその
説明がある。各ファイル・リストは、ファイル名(FN
)、ファイルの標準属性(SA)、以下で説明する「第
1クラスタ」ポインタ(FC)、及びいくつかの未使用
または予約済みの空間(U)を含む。19などの各ディ
レクトリ・リストは、ディレクトリ名(DN)、標準属
性(SA)、及び未使用または予約済みの位置(U)を
含む。
【0026】ファイルがデータを含む場合、ポインタF
Cはクラスタ(以下で説明する)の位置を指定する働き
をする。このクラスタは、全てのデータを含むか、ある
いはデータを含む1連の連鎖クラスタの最初のクラスタ
である。(0以外の値をもつ)各ポインタは、やはりデ
ィスク上に記憶されているファイル割振りテーブル(F
AT)内の特定の位置を指定する。0の値をもつポイン
タは、空のファイルと関連し、FAT位置を指定しない
。各FAT位置は、数バイトを含み、当該のディスクま
たは区画上の単一のクラスタと1対1対応で関連づけら
れている。クラスタは、オペレーティング・システムが
割り振りできる記憶空間の最小単位を表し、ディスクま
たはディスケットの連続する部分を含む。クラスタのサ
イズは、媒体によって異なるが、一般に512バイトの
倍数である。
Cはクラスタ(以下で説明する)の位置を指定する働き
をする。このクラスタは、全てのデータを含むか、ある
いはデータを含む1連の連鎖クラスタの最初のクラスタ
である。(0以外の値をもつ)各ポインタは、やはりデ
ィスク上に記憶されているファイル割振りテーブル(F
AT)内の特定の位置を指定する。0の値をもつポイン
タは、空のファイルと関連し、FAT位置を指定しない
。各FAT位置は、数バイトを含み、当該のディスクま
たは区画上の単一のクラスタと1対1対応で関連づけら
れている。クラスタは、オペレーティング・システムが
割り振りできる記憶空間の最小単位を表し、ディスクま
たはディスケットの連続する部分を含む。クラスタのサ
イズは、媒体によって異なるが、一般に512バイトの
倍数である。
【0027】各FAT位置に記憶された値は、当該のク
ラスタが空いているかそれとも使用中(空でないファイ
ルのデータを含む)かを示し、使用中のクラスタに関し
ては、さらに他のクラスタに関するそのクラスタの連鎖
関係を示す。上述のように、あるファイルのデータに割
り振られた空間は、1つのクラスタより大きい場合、2
つ以上の連鎖クラスタから構成される。このような各連
鎖クラスタに関しては、その連鎖内の第1クラスタが、
関連するファイル名に対するディレクトリ・リスト内の
FCポインタによって指定される。FATテーブル内で
、所与のファイルに割り振られた連鎖内の各クラスタに
対応する位置は、その連鎖内の最後のクラスタを除き、
その連鎖内の次のクラスタに対応するFAT位置を指定
する(オペレーティング・システムによって書き込まれ
た)値を含む。その連鎖内の最後のクラスタは、それが
その連鎖内の最後のクラスタであると指定する値を含む
。
ラスタが空いているかそれとも使用中(空でないファイ
ルのデータを含む)かを示し、使用中のクラスタに関し
ては、さらに他のクラスタに関するそのクラスタの連鎖
関係を示す。上述のように、あるファイルのデータに割
り振られた空間は、1つのクラスタより大きい場合、2
つ以上の連鎖クラスタから構成される。このような各連
鎖クラスタに関しては、その連鎖内の第1クラスタが、
関連するファイル名に対するディレクトリ・リスト内の
FCポインタによって指定される。FATテーブル内で
、所与のファイルに割り振られた連鎖内の各クラスタに
対応する位置は、その連鎖内の最後のクラスタを除き、
その連鎖内の次のクラスタに対応するFAT位置を指定
する(オペレーティング・システムによって書き込まれ
た)値を含む。その連鎖内の最後のクラスタは、それが
その連鎖内の最後のクラスタであると指定する値を含む
。
【0028】このように、18にリストされたファイル
(この例ではファイル名FN=N)がデータを含む場合
、その第1クラスタ・ポインタFCは、ファイル・デー
タの全部または一部分を含むクラスタ22にマップされ
るFAT位置21を指す。ファイルNのデータが複数の
クラスタを占める場合、21に記憶された値はファイル
Nの追加データを含むクラスタに対応する第2FAT位
置への連鎖指標を含む。このクラスタがファイルNデー
タに割り振られた最後のクラスタである場合、第2FA
T位置の値は、それを最後のクラスタに関連するものと
してマークする。そうでない場合は、第2FAT位置の
値は、ファイルNの連鎖内の第3クラスタに関連する第
3FAT位置を指し、以下同様である。ファイルNの連
鎖内の第1及び第2クラスタは、図3では互いに隣あっ
て示されているが、一般に連鎖クラスタ同士は物理的に
は互いに任意の相対位置をもつことができることを理解
されたい。ただし、連鎖クラスタ同士は、その連鎖関係
から論理的には連続していると見て差し支えない。
(この例ではファイル名FN=N)がデータを含む場合
、その第1クラスタ・ポインタFCは、ファイル・デー
タの全部または一部分を含むクラスタ22にマップされ
るFAT位置21を指す。ファイルNのデータが複数の
クラスタを占める場合、21に記憶された値はファイル
Nの追加データを含むクラスタに対応する第2FAT位
置への連鎖指標を含む。このクラスタがファイルNデー
タに割り振られた最後のクラスタである場合、第2FA
T位置の値は、それを最後のクラスタに関連するものと
してマークする。そうでない場合は、第2FAT位置の
値は、ファイルNの連鎖内の第3クラスタに関連する第
3FAT位置を指し、以下同様である。ファイルNの連
鎖内の第1及び第2クラスタは、図3では互いに隣あっ
て示されているが、一般に連鎖クラスタ同士は物理的に
は互いに任意の相対位置をもつことができることを理解
されたい。ただし、連鎖クラスタ同士は、その連鎖関係
から論理的には連続していると見て差し支えない。
【0029】ルート・ディレクトリ・リスト17内の、
19などの各ディレクトリ・リストは、ルート・ディレ
クトリから直ちに分岐している23などのサブディレク
トリに関連するディレクトリ名DNを含む。サブディレ
クトリ23は、ルート・ディレクトリと同様のテーブル
であり、それぞれ24及び25に示したファイル・リス
ト及びサブディレクトリ・リストをさらに含むことがあ
る。また19や25などの各ディレクトリ・リストも、
その作成の日時などを記述する1組の標準属性を含むこ
とができる。
19などの各ディレクトリ・リストは、ルート・ディレ
クトリから直ちに分岐している23などのサブディレク
トリに関連するディレクトリ名DNを含む。サブディレ
クトリ23は、ルート・ディレクトリと同様のテーブル
であり、それぞれ24及び25に示したファイル・リス
ト及びサブディレクトリ・リストをさらに含むことがあ
る。また19や25などの各ディレクトリ・リストも、
その作成の日時などを記述する1組の標準属性を含むこ
とができる。
【0030】このような背景から、ファイルまたはサブ
ディレクトリが作成されたとき、オペレーティング・シ
ステムは、対応するディレクトリ・リスト・エントリを
作成するように指令され、そのようにして作成されたフ
ァイルがデータを含む場合、オペレーティング・システ
ムは、1つまたは複数の以前には空であったクラスタを
割り振りそれらのクラスタ内でのデータの記憶を監視す
るように指令されることが理解できよう。このような割
振りは、割り振られたクラスタにマップされた座標にお
けるFAT情報の改訂を伴い、その結果これらのクラス
タはもはや空ではないとマークされ、連鎖としてリンク
されることが理解されよう。また、既存のファイルを改
訂、交換、または削除するとき、オペレーティング・シ
ステムは、対応するディレクトリ・リスト及びFAT情
報を適切に修正するよう指令されることが理解できよう
(削除の場合は、ディレクトリ・リストが削除され、割
り振られたクラスタのFAT座標が空になったとマーク
される)。同様に、ファイル・リストをもたないサブデ
ィレクトリも削除することができ、この場合には、その
すぐ下位のディレクトリ内のそのリストが削除される。
ディレクトリが作成されたとき、オペレーティング・シ
ステムは、対応するディレクトリ・リスト・エントリを
作成するように指令され、そのようにして作成されたフ
ァイルがデータを含む場合、オペレーティング・システ
ムは、1つまたは複数の以前には空であったクラスタを
割り振りそれらのクラスタ内でのデータの記憶を監視す
るように指令されることが理解できよう。このような割
振りは、割り振られたクラスタにマップされた座標にお
けるFAT情報の改訂を伴い、その結果これらのクラス
タはもはや空ではないとマークされ、連鎖としてリンク
されることが理解されよう。また、既存のファイルを改
訂、交換、または削除するとき、オペレーティング・シ
ステムは、対応するディレクトリ・リスト及びFAT情
報を適切に修正するよう指令されることが理解できよう
(削除の場合は、ディレクトリ・リストが削除され、割
り振られたクラスタのFAT座標が空になったとマーク
される)。同様に、ファイル・リストをもたないサブデ
ィレクトリも削除することができ、この場合には、その
すぐ下位のディレクトリ内のそのリストが削除される。
【0031】もちろん、オペレーティング・システムは
、それ自体で上記の動作の全てを実行するわけではない
。ディスク上のディレクトリ・ツリー及びFAT情報へ
のアクセスが必要なとき、オペレーティング・システム
は、BIOSファームウェアに置かれた割込み呼出しを
介して情報の位置を指定する入出力動作を呼び出す。 BIOSファームウェアは、システム・マイクロプロセ
ッサを介してかつシステム・マイクロプロセッサととも
に機能し、マイクロプロセッサとディスク記憶サブシス
テムの制御装置との間で信号を交換させて、必要な情報
を実際に転送させる。ファイル・データが書き込まれる
とき、または読み出されるとき、ファイル・データの記
憶のために割り振られた記憶空間にアクセスするにも同
様なプロセスが必要である。
、それ自体で上記の動作の全てを実行するわけではない
。ディスク上のディレクトリ・ツリー及びFAT情報へ
のアクセスが必要なとき、オペレーティング・システム
は、BIOSファームウェアに置かれた割込み呼出しを
介して情報の位置を指定する入出力動作を呼び出す。 BIOSファームウェアは、システム・マイクロプロセ
ッサを介してかつシステム・マイクロプロセッサととも
に機能し、マイクロプロセッサとディスク記憶サブシス
テムの制御装置との間で信号を交換させて、必要な情報
を実際に転送させる。ファイル・データが書き込まれる
とき、または読み出されるとき、ファイル・データの記
憶のために割り振られた記憶空間にアクセスするにも同
様なプロセスが必要である。
【0032】3.従来技術による拡張属性(EA)の操
作 記憶に関する拡張属性の従来技術による操作についての
我々の現在の理解が、図4及び図5に概念的に示されて
いる。図4は、「論理的にディスジョイントな」ファイ
ルとしてのEAの記憶操作を示す。すなわち、これらの
ファイルは、オペレーティング・システム及びベース・
ファイルを作成した適用業務以外の適用業務から見ると
、当該のベース・ファイルと離れ、当該のベース・ファ
イルから有効に分離されている。図5は、EA情報をベ
ース・ファイル・データと共に論理的に1つのファイル
として、明かなリンクや定義なしに操作することを示す
。これによって、オペレーティング・システム、及びE
A情報を作成した適用業務以外の適用業務は、EA情報
をベース・データに関して知能的に使用することができ
る。
作 記憶に関する拡張属性の従来技術による操作についての
我々の現在の理解が、図4及び図5に概念的に示されて
いる。図4は、「論理的にディスジョイントな」ファイ
ルとしてのEAの記憶操作を示す。すなわち、これらの
ファイルは、オペレーティング・システム及びベース・
ファイルを作成した適用業務以外の適用業務から見ると
、当該のベース・ファイルと離れ、当該のベース・ファ
イルから有効に分離されている。図5は、EA情報をベ
ース・ファイル・データと共に論理的に1つのファイル
として、明かなリンクや定義なしに操作することを示す
。これによって、オペレーティング・システム、及びE
A情報を作成した適用業務以外の適用業務は、EA情報
をベース・データに関して知能的に使用することができ
る。
【0033】図4は、適用業務プログラムの管理下で、
オペレーティング・システムとの関連なしに提示され、
オペレーティング・システムによってそのようなものと
して扱われる、ディスジョイント・ファイルとしての、
ベース・ファイル・データ及びEA情報の従来技術によ
る操作を示す。ベース・ファイル・データは、名前Nを
もつファイルとしてオペレーティング・システムに提示
され、EAデータはN’(複数のEAファイルが使用さ
れる場合は、さらにN’’、N’’’など)という名前
の別のファイルとして提示される。このように、ファイ
ルNに対して1つのディレクトリ・リスト26が作成さ
れ、28のファイルN’に対して別の無関係のリストが
作成され、ファイルN’のデータ(すなわち、EAデー
タ)は、ファイルNまたはそのリスト26と関連してい
ない空間29に記憶される。したがって、ファイルN及
びN’は、それぞれの作成側適用業務によってしか連想
的に扱うことができず、それらのファイルはオペレーテ
ィング・システム及び他の適用業務にとってコンジョイ
ントな使用または意味をもたない。
オペレーティング・システムとの関連なしに提示され、
オペレーティング・システムによってそのようなものと
して扱われる、ディスジョイント・ファイルとしての、
ベース・ファイル・データ及びEA情報の従来技術によ
る操作を示す。ベース・ファイル・データは、名前Nを
もつファイルとしてオペレーティング・システムに提示
され、EAデータはN’(複数のEAファイルが使用さ
れる場合は、さらにN’’、N’’’など)という名前
の別のファイルとして提示される。このように、ファイ
ルNに対して1つのディレクトリ・リスト26が作成さ
れ、28のファイルN’に対して別の無関係のリストが
作成され、ファイルN’のデータ(すなわち、EAデー
タ)は、ファイルNまたはそのリスト26と関連してい
ない空間29に記憶される。したがって、ファイルN及
びN’は、それぞれの作成側適用業務によってしか連想
的に扱うことができず、それらのファイルはオペレーテ
ィング・システム及び他の適用業務にとってコンジョイ
ントな使用または意味をもたない。
【0034】図4に示された方法の変形である、従来技
術によるEA記憶のもう一つの配置構成が図5に示され
ている。この場合、EAは、31に単一のディレクトリ
・リストをもつファイルNの一部分としてオペレーティ
ング・システムに渡され、32のファイル・ベース・デ
ータと共に記憶される。したがって、EAとベース・デ
ータの間の関連または使用関係は、オペレーティング・
システムまたはそのファイルを作成した適用業務以外の
適用業務には指示されない。
術によるEA記憶のもう一つの配置構成が図5に示され
ている。この場合、EAは、31に単一のディレクトリ
・リストをもつファイルNの一部分としてオペレーティ
ング・システムに渡され、32のファイル・ベース・デ
ータと共に記憶される。したがって、EAとベース・デ
ータの間の関連または使用関係は、オペレーティング・
システムまたはそのファイルを作成した適用業務以外の
適用業務には指示されない。
【0035】4.EAの現在のコンジョイントな操作(
概念的) 図6は、オペレーティング・システムが、どのようにし
て、ファイル名“N”に関連するベース・ファイル・デ
ータ及びEAを表す別々に記憶されたデータと関連づけ
ることの可能なファイル名“N”のファイル用の記憶域
へのアクセスを割り振り、そのようなアクセスをコンジ
ョイントに管理することができるかを概念的に(実施態
様に特有の意味または制限なしで)示す。この場合、単
一のディレクトリ・リストが41で作成されるが、ファ
イルは、エントリ41にリンク可能な42a、42b、
42cで示されるように、別々に記憶される。このよう
に、ベース・データ及びEAは、オペレーティング・シ
ステムから別々にまたは一緒にアクセスすることができ
、このようにしてそれらを作成した適用業務とは異なる
適用業務が使用可能なようにすることができる。図のE
Aに関する2つの空間42b、42cは、任意の数(0
を含む)のEAがこのようにして操作できることを示す
ものである。
概念的) 図6は、オペレーティング・システムが、どのようにし
て、ファイル名“N”に関連するベース・ファイル・デ
ータ及びEAを表す別々に記憶されたデータと関連づけ
ることの可能なファイル名“N”のファイル用の記憶域
へのアクセスを割り振り、そのようなアクセスをコンジ
ョイントに管理することができるかを概念的に(実施態
様に特有の意味または制限なしで)示す。この場合、単
一のディレクトリ・リストが41で作成されるが、ファ
イルは、エントリ41にリンク可能な42a、42b、
42cで示されるように、別々に記憶される。このよう
に、ベース・データ及びEAは、オペレーティング・シ
ステムから別々にまたは一緒にアクセスすることができ
、このようにしてそれらを作成した適用業務とは異なる
適用業務が使用可能なようにすることができる。図のE
Aに関する2つの空間42b、42cは、任意の数(0
を含む)のEAがこのようにして操作できることを示す
ものである。
【0036】この構成の独特の態様は、空間42a−4
2cが、共通のディレクトリ・リスト41との関連を介
して一緒にアクセスできることである。もう一つの独特
な態様は、空間42bと、42cのどちらも空間42a
に連鎖されず、したがって、空間42bと42cが、E
Aの記憶及び検索のために別々にアクセスできることで
ある。もう一つの独特な態様は、空間42b及び42c
内に記憶されたEAデータが、別々の2組のデータを構
成するものとして(データの形式または他の区別する態
様によって)区別可能であり、したがって空間42bと
42cに別々のエンティティとしてアクセスできること
である。さらに別の独特な態様は、空間42b及び42
cが任意のサイズをもつことができ、これらの空間内に
置かれる情報が任意の文脈をもつことができることであ
る。空間42a−42cは一緒にアクセスできるので、
当該のファイル名Nに関連するベース・データ及びEA
データは、たとえば、単一の単位として任意の適用業務
にコピー、削除、または転送するのが適切なとき、その
ようにコピー、削除、または転送を行うことができる。
2cが、共通のディレクトリ・リスト41との関連を介
して一緒にアクセスできることである。もう一つの独特
な態様は、空間42bと、42cのどちらも空間42a
に連鎖されず、したがって、空間42bと42cが、E
Aの記憶及び検索のために別々にアクセスできることで
ある。もう一つの独特な態様は、空間42b及び42c
内に記憶されたEAデータが、別々の2組のデータを構
成するものとして(データの形式または他の区別する態
様によって)区別可能であり、したがって空間42bと
42cに別々のエンティティとしてアクセスできること
である。さらに別の独特な態様は、空間42b及び42
cが任意のサイズをもつことができ、これらの空間内に
置かれる情報が任意の文脈をもつことができることであ
る。空間42a−42cは一緒にアクセスできるので、
当該のファイル名Nに関連するベース・データ及びEA
データは、たとえば、単一の単位として任意の適用業務
にコピー、削除、または転送するのが適切なとき、その
ようにコピー、削除、または転送を行うことができる。
【0037】5.本発明によるEAのコンジョイントな
操作−好ましい実施例 次に図7ないし図15を参照して、本発明の好ましい実
施例によるベース・ファイル及びEAのコンジョイント
な操作のためのプロセスの実施態様を説明する。この実
施態様は、OS/2オペレーティング・システムのバー
ジョン1.2で使用される。この実施態様の詳細は、こ
のオペレーティング・システムのユーザが別途に入手で
きる、“IBM Operating Syste
m/2(TM)Programming Tools
And Information Versi
on 1.2 Control Program
Programming Reference”
,First Edition(1989年9月)、
及び“IBM Operating System
/2 Version 1.2 Program
ming Guide”,First Editi
on(1989年9月)の第33章に出ている。
操作−好ましい実施例 次に図7ないし図15を参照して、本発明の好ましい実
施例によるベース・ファイル及びEAのコンジョイント
な操作のためのプロセスの実施態様を説明する。この実
施態様は、OS/2オペレーティング・システムのバー
ジョン1.2で使用される。この実施態様の詳細は、こ
のオペレーティング・システムのユーザが別途に入手で
きる、“IBM Operating Syste
m/2(TM)Programming Tools
And Information Versi
on 1.2 Control Program
Programming Reference”
,First Edition(1989年9月)、
及び“IBM Operating System
/2 Version 1.2 Program
ming Guide”,First Editi
on(1989年9月)の第33章に出ている。
【0038】この実施態様は、ディレクトリ・ツリー・
リスト構造の以前に未使用/予約済みの部分に対して新
しい用途を割り当て、EAファイルの作成及びコンジョ
イントな管理に関連するいくつかの新しく定義された機
能呼出しを使用するためにオペレーティング・システム
及びそれと互換性のある適用業務を適合させることに基
づくものである。EAのコンジョイントな操作を実現す
るためのディレクトリ・ツリー構造の適合は、図7及び
図8に示されている。いま述べた新しい機能呼出しの名
前及びパラメータは図9に示されており、以下で説明す
る。これらの呼出しも、上記の“Control P
rogram ProgrammingRefere
nce”の第2章、及び上記の“Programmin
gGuide”の第33章に記述されている。
リスト構造の以前に未使用/予約済みの部分に対して新
しい用途を割り当て、EAファイルの作成及びコンジョ
イントな管理に関連するいくつかの新しく定義された機
能呼出しを使用するためにオペレーティング・システム
及びそれと互換性のある適用業務を適合させることに基
づくものである。EAのコンジョイントな操作を実現す
るためのディレクトリ・ツリー構造の適合は、図7及び
図8に示されている。いま述べた新しい機能呼出しの名
前及びパラメータは図9に示されており、以下で説明す
る。これらの呼出しも、上記の“Control P
rogram ProgrammingRefere
nce”の第2章、及び上記の“Programmin
gGuide”の第33章に記述されている。
【0039】図7及び図8を参照すると、ディレクトリ
・リスト45は、EAと関連づけの可能な、Nという名
前のファイル用ファイル・リスト46、及びやはりEA
(すなわち、サブディレクトリにリストされたファイル
ではなくサブディレクトリ自体に関連するEA)と関連
づけの可能なサブディレクトリ・リスト47を含む。こ
れらのリストに示されている機能は、EAで指定された
パラメータを含む。このパラメータは、ブロック45の
右側に示すように、EAハンドル値を表す。EAハンド
ル値は、そのハンドルを含むファイル・リストまたはサ
ブディレクトリ・リストに関連するEAデータを記憶す
るために割り振られた空間の位置を特定するために使用
される。EAハンドル・パラメータはリスト空間内の以
前に未使用のバイトのうちの2バイトを使用することに
留意されたい(図3参照)。いま説明している実施例で
は、全てのEAデータは、“EA DATA.SF”
という名前のファイルに割り振られた単一のファイル空
間50に記憶される。この空間の構造、及びそれがEA
データに割り振られる方式については、以下で説明する
。
・リスト45は、EAと関連づけの可能な、Nという名
前のファイル用ファイル・リスト46、及びやはりEA
(すなわち、サブディレクトリにリストされたファイル
ではなくサブディレクトリ自体に関連するEA)と関連
づけの可能なサブディレクトリ・リスト47を含む。こ
れらのリストに示されている機能は、EAで指定された
パラメータを含む。このパラメータは、ブロック45の
右側に示すように、EAハンドル値を表す。EAハンド
ル値は、そのハンドルを含むファイル・リストまたはサ
ブディレクトリ・リストに関連するEAデータを記憶す
るために割り振られた空間の位置を特定するために使用
される。EAハンドル・パラメータはリスト空間内の以
前に未使用のバイトのうちの2バイトを使用することに
留意されたい(図3参照)。いま説明している実施例で
は、全てのEAデータは、“EA DATA.SF”
という名前のファイルに割り振られた単一のファイル空
間50に記憶される。この空間の構造、及びそれがEA
データに割り振られる方式については、以下で説明する
。
【0040】ディスクまたは区画の書式化後、及びEA
データの記憶が最初に必要とされるとき、オペレーティ
ング・システムは、ファイルEA DATA.SFを
作成する。マスタ・テーブル51(図8)及び最初に記
憶されるEAのデータを含むのに十分な連鎖クラスタが
、このファイルに割り振られる。さらに多くのEAデー
タを記憶するためにもっとクラスタが必要なときは、追
加のクラスタがファイルに連鎖されるので、ファイルは
常に単一スレッドのクラスタ連鎖の外観を呈する。
データの記憶が最初に必要とされるとき、オペレーティ
ング・システムは、ファイルEA DATA.SFを
作成する。マスタ・テーブル51(図8)及び最初に記
憶されるEAのデータを含むのに十分な連鎖クラスタが
、このファイルに割り振られる。さらに多くのEAデー
タを記憶するためにもっとクラスタが必要なときは、追
加のクラスタがファイルに連鎖されるので、ファイルは
常に単一スレッドのクラスタ連鎖の外観を呈する。
【0041】マスタ・テーブルは、EAデータを個々の
オブジェクト(ファイルまたはディレクトリ)名と関連
づけ、そのデータを記憶するために割り振られたクラス
タ、またはクラスタ連鎖の開始位置を特定するために使
用される。任意の1つの名前付きオブジェクトに関する
EAデータが初めてEA DATA.SFに記憶され
るとき、そのEAデータが記憶されるクラスタまたは連
鎖の最初のクラスタを指定するエントリがマスタ・テー
ブル内の最初の位置に作成され、49などのEAハンド
ルが、そのオブジェクトの全てのEAデータに対するク
ラスタまたは開始クラスタを含むマスタ・リスト内の空
間を指すように、名前付きオブジェクトのディレクトリ
・リスト内に置かれる。他のオブジェクト名に関する最
初のEAデータが記憶されるときも、それが繰り返され
、対応するエントリは、それらの名前が最初にサービス
を受ける順序でマスタ・テーブルの連続する位置に置か
れ、対応するEAハンドルが、各オブジェクトの関連す
るディレクトリ・リスト内に置かれる。
オブジェクト(ファイルまたはディレクトリ)名と関連
づけ、そのデータを記憶するために割り振られたクラス
タ、またはクラスタ連鎖の開始位置を特定するために使
用される。任意の1つの名前付きオブジェクトに関する
EAデータが初めてEA DATA.SFに記憶され
るとき、そのEAデータが記憶されるクラスタまたは連
鎖の最初のクラスタを指定するエントリがマスタ・テー
ブル内の最初の位置に作成され、49などのEAハンド
ルが、そのオブジェクトの全てのEAデータに対するク
ラスタまたは開始クラスタを含むマスタ・リスト内の空
間を指すように、名前付きオブジェクトのディレクトリ
・リスト内に置かれる。他のオブジェクト名に関する最
初のEAデータが記憶されるときも、それが繰り返され
、対応するエントリは、それらの名前が最初にサービス
を受ける順序でマスタ・テーブルの連続する位置に置か
れ、対応するEAハンドルが、各オブジェクトの関連す
るディレクトリ・リスト内に置かれる。
【0042】連続する新しい名前がそれぞれ最初にサー
ビスを受けるとき、クラスタまたは一連の連鎖クラスタ
が、関連するEAデータに割り振られ、以前にサービス
を受けた名前に割り振られた最後のクラスタへの連鎖リ
ンクによってEADATA.SFの空間内に取り込まれ
る。したがって、EA DATA.SFは、次第に拡
大する一連の連鎖クラスタであり、新しいファイル名に
関する最初のEAデータが記憶されるとともに成長する
。 EA DATA.SFに含まれるクラスタの連鎖リン
クは、すでに説明したようにFATを介して実行される
。 すなわち、任意のオブジェクト名に1つのクラスタまた
は一連の連鎖クラスタが最初に割り振られる場合、その
クラスタまたは一連の連鎖クラスタ内の最初のクラスタ
に対応するFAT位置が、占有されたものとしてマーク
される。以前に最後に割り振られたクラスタにマップさ
れたFAT位置は、そのクラスタまたは新しく割り振ら
れた最初のクラスタに連鎖されたものとしてマークされ
る。一連の連鎖クラスタがこのように割り振られる場合
、連鎖クラスタ内の各クラスタに対するFATエントリ
は、最後のクラスタを除き、その連鎖クラスタ内の次の
クラスタを指し、連鎖クラスタ内の最後のクラスタは、
最後のクラスタであると指示される。
ビスを受けるとき、クラスタまたは一連の連鎖クラスタ
が、関連するEAデータに割り振られ、以前にサービス
を受けた名前に割り振られた最後のクラスタへの連鎖リ
ンクによってEADATA.SFの空間内に取り込まれ
る。したがって、EA DATA.SFは、次第に拡
大する一連の連鎖クラスタであり、新しいファイル名に
関する最初のEAデータが記憶されるとともに成長する
。 EA DATA.SFに含まれるクラスタの連鎖リン
クは、すでに説明したようにFATを介して実行される
。 すなわち、任意のオブジェクト名に1つのクラスタまた
は一連の連鎖クラスタが最初に割り振られる場合、その
クラスタまたは一連の連鎖クラスタ内の最初のクラスタ
に対応するFAT位置が、占有されたものとしてマーク
される。以前に最後に割り振られたクラスタにマップさ
れたFAT位置は、そのクラスタまたは新しく割り振ら
れた最初のクラスタに連鎖されたものとしてマークされ
る。一連の連鎖クラスタがこのように割り振られる場合
、連鎖クラスタ内の各クラスタに対するFATエントリ
は、最後のクラスタを除き、その連鎖クラスタ内の次の
クラスタを指し、連鎖クラスタ内の最後のクラスタは、
最後のクラスタであると指示される。
【0043】その既存のEAデータが、EA DAT
A.SF空間内で他のオブジェクトのEAデータに割り
振られたクラスタ間で連鎖されている、あるオブジェク
トに関する追加のEAデータを記憶する必要が生じた場
合、及びこの追加のEAデータがEAを記憶するために
当該のオブジェクトに割り振られた最後のクラスタ内に
収容できない場合、1つまたは複数の追加クラスタがそ
のオブジェクトに割り振られ、その連鎖の以前の最終ク
ラスタと、その最終クラスタが連鎖されるクラスタとの
間に挿入され、その結果、任意の1つのオブジェクトに
関連する全てのEAデータが、連続的に連鎖され、これ
によってマスタ・テーブル内で作成された当該のオブジ
ェクトに関する単一のエントリによってその位置が特定
できるようになる。
A.SF空間内で他のオブジェクトのEAデータに割り
振られたクラスタ間で連鎖されている、あるオブジェク
トに関する追加のEAデータを記憶する必要が生じた場
合、及びこの追加のEAデータがEAを記憶するために
当該のオブジェクトに割り振られた最後のクラスタ内に
収容できない場合、1つまたは複数の追加クラスタがそ
のオブジェクトに割り振られ、その連鎖の以前の最終ク
ラスタと、その最終クラスタが連鎖されるクラスタとの
間に挿入され、その結果、任意の1つのオブジェクトに
関連する全てのEAデータが、連続的に連鎖され、これ
によってマスタ・テーブル内で作成された当該のオブジ
ェクトに関する単一のエントリによってその位置が特定
できるようになる。
【0044】したがって、図7及び図8に示された例を
参照すると、ある時点でファイルNに関するEAデータ
の最初のセット(そのセットの名前はEA1(N))が
52に記憶され、かつファイルNに関してさらにEAデ
ータが記憶される前に他のEAデータ53がEA D
ATA.SFに記憶されると仮想した場合、EA1(N
)データを含むクラスタまたは最後のクラスタが、他の
データ53を含む最初のクラスタに連鎖される。さらに
、その後にNに関するEAデータの別のセット(図8で
EA2(N)と示されたセット)が記憶される場合、E
A1(N)に割り振られたクラスタまたは最後のクラス
タの空の部分に収容できるEA2(N)のデータの任意
の一部または全部が、そのクラスタまたは最後のクラス
タに記憶される。しかし、EA2(N)のデータがその
クラスタまたは最後のクラスタに収容できない場合は、
1つまたは複数の追加クラスタがEA2(N)からのオ
ーバーフロー・データに割り振られ、Nに以前に割り振
られた最後のクラスタと、他のEA53に割り振られた
最初のクラスタの間に挿入連鎖される。Nなどの任意の
1つのファイルに割り振られた空間内では、EA(N)
データの各セットは、そのセットを識別する働きをする
名前部分と、セットの残余のデータを構成する値部分か
ら構成される。これらの部分の長さは、当該のセットを
作成する適用業務には既知であり、その適用業務によっ
て指定され、当該のデータと共に記憶される。その場合
、Nに関連するあるEAの終りと、Nに関連する別のE
Aの始めが、オペレーティング・システムによって決定
でき、そのため、このようなセットが、必要な場合、個
別にアクセスできる。
参照すると、ある時点でファイルNに関するEAデータ
の最初のセット(そのセットの名前はEA1(N))が
52に記憶され、かつファイルNに関してさらにEAデ
ータが記憶される前に他のEAデータ53がEA D
ATA.SFに記憶されると仮想した場合、EA1(N
)データを含むクラスタまたは最後のクラスタが、他の
データ53を含む最初のクラスタに連鎖される。さらに
、その後にNに関するEAデータの別のセット(図8で
EA2(N)と示されたセット)が記憶される場合、E
A1(N)に割り振られたクラスタまたは最後のクラス
タの空の部分に収容できるEA2(N)のデータの任意
の一部または全部が、そのクラスタまたは最後のクラス
タに記憶される。しかし、EA2(N)のデータがその
クラスタまたは最後のクラスタに収容できない場合は、
1つまたは複数の追加クラスタがEA2(N)からのオ
ーバーフロー・データに割り振られ、Nに以前に割り振
られた最後のクラスタと、他のEA53に割り振られた
最初のクラスタの間に挿入連鎖される。Nなどの任意の
1つのファイルに割り振られた空間内では、EA(N)
データの各セットは、そのセットを識別する働きをする
名前部分と、セットの残余のデータを構成する値部分か
ら構成される。これらの部分の長さは、当該のセットを
作成する適用業務には既知であり、その適用業務によっ
て指定され、当該のデータと共に記憶される。その場合
、Nに関連するあるEAの終りと、Nに関連する別のE
Aの始めが、オペレーティング・システムによって決定
でき、そのため、このようなセットが、必要な場合、個
別にアクセスできる。
【0045】図9を参照すると、この場合に重要なOS
/2−1.2の機能呼出し及びそれらの主要な機能は以
下の通りである: DosOpen2−関連するEAを伴うファイルを作成
する DosMkDir2−関連するEAを伴うサブディレク
トリを作成する DosSetFileInfo−オープン・ファイルに
関する属性情報をセットする DosQFileInfo−オープン・ファイルに関す
る属性情報を読み出す DosSetPathInfo−ファイルに関する属性
情報をセットする。このファイルはオープンされている
必要はないが、オープンできるものである。 DosQPathInfo−ファイルに関する属性情報
を読み出す。このファイルはオープンされている必要は
ないが、オープンできるものである。 DosEnumAttribute−ファイルまたはデ
ィレクトリに関連するEAを識別する
/2−1.2の機能呼出し及びそれらの主要な機能は以
下の通りである: DosOpen2−関連するEAを伴うファイルを作成
する DosMkDir2−関連するEAを伴うサブディレク
トリを作成する DosSetFileInfo−オープン・ファイルに
関する属性情報をセットする DosQFileInfo−オープン・ファイルに関す
る属性情報を読み出す DosSetPathInfo−ファイルに関する属性
情報をセットする。このファイルはオープンされている
必要はないが、オープンできるものである。 DosQPathInfo−ファイルに関する属性情報
を読み出す。このファイルはオープンされている必要は
ないが、オープンできるものである。 DosEnumAttribute−ファイルまたはデ
ィレクトリに関連するEAを識別する
【0046】次に図10ないし図15に示した流れ図を
参照して、これらの呼出しの主要なパラメータ及び使用
法について説明する。主要なパラメータは図9にも示さ
れている。
参照して、これらの呼出しの主要なパラメータ及び使用
法について説明する。主要なパラメータは図9にも示さ
れている。
【0047】上記の呼出しに加えて、ファイルのコピー
と消去、及びディレクトリの削除用の既存の呼出しが、
オペレーティング・システムがそのファイル動作を、関
連するEAが包含されるように条件付きで拡大できるよ
うに、修正される。これらの既存の呼出しには、Dos
Copy、DosDelete、及びDosRmDir
が含まれる。DosCopyは、ソース経路から目的経
路にファイル及びその標準属性をコピーすることを要求
する(経路は、名前付き装置、ディレクトリ、サブディ
レクトリ、及びファイル・エンティティを含む)。目的
エンティティ上でファイルが作成されつつあるとき、ま
たは目的エンティティ上の既存のファイルがコピーされ
たファイルによって置き換えられつつあるとき、EAは
コピーされる。しかし、既存のファイルが別のファイル
に付加されつつあるときは、EAはコピーされない。
と消去、及びディレクトリの削除用の既存の呼出しが、
オペレーティング・システムがそのファイル動作を、関
連するEAが包含されるように条件付きで拡大できるよ
うに、修正される。これらの既存の呼出しには、Dos
Copy、DosDelete、及びDosRmDir
が含まれる。DosCopyは、ソース経路から目的経
路にファイル及びその標準属性をコピーすることを要求
する(経路は、名前付き装置、ディレクトリ、サブディ
レクトリ、及びファイル・エンティティを含む)。目的
エンティティ上でファイルが作成されつつあるとき、ま
たは目的エンティティ上の既存のファイルがコピーされ
たファイルによって置き換えられつつあるとき、EAは
コピーされる。しかし、既存のファイルが別のファイル
に付加されつつあるときは、EAはコピーされない。
【0048】DosDeleteは、名前付きファイル
のディレクトリ・リストを削除し、ベース・ファイル・
データまたはEAデータあるいはその両方に関してその
リストに割り振られたクラスタのFAT位置を解放し、
それによって、そのファイルに関連するベース・ファイ
ル・データ及びEAデータを有効に削除する。EAデー
タを含むクラスタに関連するFAT位置が解放されたと
き、マスタ・テーブル51(図8)内の当該のエントリ
が削除され、このように解放された最初のクラスタ及び
最後のクラスタに連鎖されたクラスタのFATエントリ
が、一緒に連鎖されるように修正され、その結果EA
DATA.SF内の空間の論理的連続性が保たれる。 DosRmDirは、名前付きサブディレクトリが空で
ある場合、そのサブディレクトリのディレクトリ・リス
トを削除し、関連するEAデータを含むクラスタのFA
T位置を解放し、その結果このようなデータが有効に削
除される。
のディレクトリ・リストを削除し、ベース・ファイル・
データまたはEAデータあるいはその両方に関してその
リストに割り振られたクラスタのFAT位置を解放し、
それによって、そのファイルに関連するベース・ファイ
ル・データ及びEAデータを有効に削除する。EAデー
タを含むクラスタに関連するFAT位置が解放されたと
き、マスタ・テーブル51(図8)内の当該のエントリ
が削除され、このように解放された最初のクラスタ及び
最後のクラスタに連鎖されたクラスタのFATエントリ
が、一緒に連鎖されるように修正され、その結果EA
DATA.SF内の空間の論理的連続性が保たれる。 DosRmDirは、名前付きサブディレクトリが空で
ある場合、そのサブディレクトリのディレクトリ・リス
トを削除し、関連するEAデータを含むクラスタのFA
T位置を解放し、その結果このようなデータが有効に削
除される。
【0049】DosOpen2
これは、OS/2の以前のバージョンで提供されたDo
sOpen呼出しの変形である(“Control
Program Programming Ref
erence”のページ2−201を参照)。DosO
penは、ファイルまたは装置(ディスクまたは区画)
に関する入出力動作を実行するために使用される。この
動作は、ファイルまたは装置をオープンする。これは、
上記の“Programming Guide”の用
語集によれば、名前付きファイルまたは装置に対して現
在作業が行われていることを示す関係を確立することを
意味する。DosOpenは、記憶されたファイルと関
連適用業務の間でこのような関係を確立し、ハンドルを
その適用業務に返す。このハンドルは、ファイルの位置
を迅速に特定するのに有用な16ビットの識別子である
。
sOpen呼出しの変形である(“Control
Program Programming Ref
erence”のページ2−201を参照)。DosO
penは、ファイルまたは装置(ディスクまたは区画)
に関する入出力動作を実行するために使用される。この
動作は、ファイルまたは装置をオープンする。これは、
上記の“Programming Guide”の用
語集によれば、名前付きファイルまたは装置に対して現
在作業が行われていることを示す関係を確立することを
意味する。DosOpenは、記憶されたファイルと関
連適用業務の間でこのような関係を確立し、ハンドルを
その適用業務に返す。このハンドルは、ファイルの位置
を迅速に特定するのに有用な16ビットの識別子である
。
【0050】図9の70に示されたDosOpen2呼
出しは、名前付きファイルに関するEAの記憶が可能と
なるように、DosOpenプロセスを拡張する。この
ファイルは、新しく作成されたファイル、既存のファイ
ル、または既存のファイルの置換ファイルである。この
呼出しに対して定義されたフィールド(いくつかは図9
に図示せず)は、名前FileName、FileHa
ndle、ActionTaken、FileSize
、FileAttribute、OpenFlag、O
penMode、EABuf、及びUnused/Re
servedを有する。
出しは、名前付きファイルに関するEAの記憶が可能と
なるように、DosOpenプロセスを拡張する。この
ファイルは、新しく作成されたファイル、既存のファイ
ル、または既存のファイルの置換ファイルである。この
呼出しに対して定義されたフィールド(いくつかは図9
に図示せず)は、名前FileName、FileHa
ndle、ActionTaken、FileSize
、FileAttribute、OpenFlag、O
penMode、EABuf、及びUnused/Re
servedを有する。
【0051】FileNameは、言うまでもなく、当
該のディレクトリ・リストに記憶されるファイルの名前
である。FileHandleは、ファイルの位置を迅
速に特定するためのファイル・ハンドルが記憶されるメ
モリ内のアドレスである。OpenFlagは、その呼
出しのソースによって要求された、取るべき措置を示し
、ActionTakenは、実際に取られた措置を示
す。取るべき措置は、一般に、ファイルが存在しない場
合にフェイル、ファイルが存在する場合にフェイル、フ
ァイルが存在する場合にオープン、ファイルが存在する
場合にファイル置換、のうちの1つである。取られた措
置は、一般に、ファイルが存在する、ファイルが作成さ
れた、ファイルが置換された、のうちの1つである。 取られた措置が、要求された措置と異なる場合がある(
たとえば、オープンするように要求された既存のファイ
ルがすでに別の適用業務によってオープンされている場
合、共用アクセスが拒否される場合)。
該のディレクトリ・リストに記憶されるファイルの名前
である。FileHandleは、ファイルの位置を迅
速に特定するためのファイル・ハンドルが記憶されるメ
モリ内のアドレスである。OpenFlagは、その呼
出しのソースによって要求された、取るべき措置を示し
、ActionTakenは、実際に取られた措置を示
す。取るべき措置は、一般に、ファイルが存在しない場
合にフェイル、ファイルが存在する場合にフェイル、フ
ァイルが存在する場合にオープン、ファイルが存在する
場合にファイル置換、のうちの1つである。取られた措
置は、一般に、ファイルが存在する、ファイルが作成さ
れた、ファイルが置換された、のうちの1つである。 取られた措置が、要求された措置と異なる場合がある(
たとえば、オープンするように要求された既存のファイ
ルがすでに別の適用業務によってオープンされている場
合、共用アクセスが拒否される場合)。
【0052】FileSizeは、ベース・ファイル・
データのサイズ及びEA以外の関連パラメータのサイズ
をバイトで示す。この情報は、ファイルを作成または置
換するとき、ベース・ファイル・データ及び関連するパ
ラメータを記憶するために、オペレーティング・システ
ムが正しい数のクラスタを割り振ることができるように
するために必要である。FileAttributeは
、16ビットで構成され、そのうち11ビットは予約済
みである。残りの5ビットは、ファイル・アーカイブ(
アーカイブ方式で記憶される)、サブディレクトリ、シ
ステム・ファイル(オペレーティング・システムと関連
する)、隠しファイル、読出し専用ファイルを表す。 非予約ビットによって示される属性は、関連するディレ
クトリ・リスト中の標準属性ビット・フィールドにセッ
トされる。これらのビットは、個々にセットすることも
、組み合わせてセットすることもできる。たとえば、こ
れらのビットを、アーカイブ保存すべき読出し専用ファ
イルを示すようにセットすることができる。
データのサイズ及びEA以外の関連パラメータのサイズ
をバイトで示す。この情報は、ファイルを作成または置
換するとき、ベース・ファイル・データ及び関連するパ
ラメータを記憶するために、オペレーティング・システ
ムが正しい数のクラスタを割り振ることができるように
するために必要である。FileAttributeは
、16ビットで構成され、そのうち11ビットは予約済
みである。残りの5ビットは、ファイル・アーカイブ(
アーカイブ方式で記憶される)、サブディレクトリ、シ
ステム・ファイル(オペレーティング・システムと関連
する)、隠しファイル、読出し専用ファイルを表す。 非予約ビットによって示される属性は、関連するディレ
クトリ・リスト中の標準属性ビット・フィールドにセッ
トされる。これらのビットは、個々にセットすることも
、組み合わせてセットすることもできる。たとえば、こ
れらのビットを、アーカイブ保存すべき読出し専用ファ
イルを示すようにセットすることができる。
【0053】OpenModeは、DASD Ope
nフラグ・ビット、Write Throughフラ
グ・ビット、Fail−Errorsフラグ・ビット、
No Cache/Cacheフラグ・ビット、3ビ
ットのReferenceフラグ、3ビットのShar
ing Modeフラグ、及び3ビットのAcces
s Modeフラグを含むいくつかのフラグ・フィー
ルドから構成される。DASDOpenビットの値は、
名前付きファイルを通常のファイルかそれとも装置(直
接アクセスのためにオープンすべき、装着されたディス
クまたはディスケット・ボリューム)であるか区別する
。Write Throughフラグ及びNoCac
he/Cacheフラグは、キャッシュに関するファイ
ル・アクセスをどのように取り扱うべきかを指示する(
このような取扱いは本発明の一部ではない)。Fail
−Errorsフラグは、エラーを報告する方式を指示
する(このような報告方式は本発明の一部分ではない)
。Referenceフラグは、ファイルが適用業務に
よってどのようにアクセスされるか、すなわち順次アク
セスかランダム・アクセスかその他のアクセスかを指示
する(このようなアクセス方式は本発明の一部分ではな
い)。Sharing Modeフラグは、(その制
限を定義するプロセス以外のプロセスに関して、呼出し
側プロセスによって、または以前に別のプロセスによっ
て)ファイルに加えられる制限を、Deny Rea
d/Write Access、Deny Wri
te Access、Deny Read Ac
cess、またはDeny None(全てのアクセ
スを許可する)のうちの1つとして定義する。Acce
ss Modeフラグは、呼出し側(呼出し側プロセ
ス)が必要とするアクセスを、Read Only、
Write Only、Read and Wr
iteのうちの1つとして定義する。
nフラグ・ビット、Write Throughフラ
グ・ビット、Fail−Errorsフラグ・ビット、
No Cache/Cacheフラグ・ビット、3ビ
ットのReferenceフラグ、3ビットのShar
ing Modeフラグ、及び3ビットのAcces
s Modeフラグを含むいくつかのフラグ・フィー
ルドから構成される。DASDOpenビットの値は、
名前付きファイルを通常のファイルかそれとも装置(直
接アクセスのためにオープンすべき、装着されたディス
クまたはディスケット・ボリューム)であるか区別する
。Write Throughフラグ及びNoCac
he/Cacheフラグは、キャッシュに関するファイ
ル・アクセスをどのように取り扱うべきかを指示する(
このような取扱いは本発明の一部ではない)。Fail
−Errorsフラグは、エラーを報告する方式を指示
する(このような報告方式は本発明の一部分ではない)
。Referenceフラグは、ファイルが適用業務に
よってどのようにアクセスされるか、すなわち順次アク
セスかランダム・アクセスかその他のアクセスかを指示
する(このようなアクセス方式は本発明の一部分ではな
い)。Sharing Modeフラグは、(その制
限を定義するプロセス以外のプロセスに関して、呼出し
側プロセスによって、または以前に別のプロセスによっ
て)ファイルに加えられる制限を、Deny Rea
d/Write Access、Deny Wri
te Access、Deny Read Ac
cess、またはDeny None(全てのアクセ
スを許可する)のうちの1つとして定義する。Acce
ss Modeフラグは、呼出し側(呼出し側プロセ
ス)が必要とするアクセスを、Read Only、
Write Only、Read and Wr
iteのうちの1つとして定義する。
【0054】記憶装置に書き込むべきEABufは、作
成中、または置換中の名前付きファイルに対する、ソー
スEAデータを含むバッファ空間のメモリ内のアドレス
を提供する。またEABufは、このようなEAデータ
の名前部分及び値部分の長さを示す情報をも含む。この
実施例では、EAデータは、EAデータ・ファイルの名
前を表す名前部分、及びEAデータ自体を表す値部分か
ら構成される。これらの部分の長さは可変であり、した
がって、オペレーティング・システム及びその他の適用
業務がこれらの部分の位置を個別に特定できるように、
この方式で明示的に指定しなければならない。既存のフ
ァイルをオープンするためにDosOpen2が使用さ
れている場合、EABufは意味をもたない。
成中、または置換中の名前付きファイルに対する、ソー
スEAデータを含むバッファ空間のメモリ内のアドレス
を提供する。またEABufは、このようなEAデータ
の名前部分及び値部分の長さを示す情報をも含む。この
実施例では、EAデータは、EAデータ・ファイルの名
前を表す名前部分、及びEAデータ自体を表す値部分か
ら構成される。これらの部分の長さは可変であり、した
がって、オペレーティング・システム及びその他の適用
業務がこれらの部分の位置を個別に特定できるように、
この方式で明示的に指定しなければならない。既存のフ
ァイルをオープンするためにDosOpen2が使用さ
れている場合、EABufは意味をもたない。
【0055】DosMkDir2
図9の71に示すこの呼出しは、一般に、1つまたは複
数の関連するEAによってサブディレクトリを作成する
ために使用される。この呼出しは、予約済みフィールド
の他に、DirName(新しいサブディレクトリの名
前)及びEABufからなる特定の機能及びパラメータ
を指定するフィールドを含む。EABufは、EAデー
タがそこから転送されるEAバッファ空間のメモリ内の
アドレス、及び転送される任意のEAデータ・エンティ
ティの名前部分と値部分の長さを提供する。
数の関連するEAによってサブディレクトリを作成する
ために使用される。この呼出しは、予約済みフィールド
の他に、DirName(新しいサブディレクトリの名
前)及びEABufからなる特定の機能及びパラメータ
を指定するフィールドを含む。EABufは、EAデー
タがそこから転送されるEAバッファ空間のメモリ内の
アドレス、及び転送される任意のEAデータ・エンティ
ティの名前部分と値部分の長さを提供する。
【0056】DosSetFileInfo及びDos
QFileInfo 図9の72及び73にそれぞれ示すこれらの相補的呼出
し機能は、それぞれ、属性データ(標準またはEA)を
オープン・ファイル(呼出し側によってオープンされた
ファイル)にセットする(書き込む)ため、及びオープ
ン・ファイルからそのようなデータを照会する(読み出
す)ために使用される。この2つの呼出しのパラメータ
は、FileHandle、FileInfoLeve
l、FileInfoBuf、及びFileInfoB
ufSizeである。
QFileInfo 図9の72及び73にそれぞれ示すこれらの相補的呼出
し機能は、それぞれ、属性データ(標準またはEA)を
オープン・ファイル(呼出し側によってオープンされた
ファイル)にセットする(書き込む)ため、及びオープ
ン・ファイルからそのようなデータを照会する(読み出
す)ために使用される。この2つの呼出しのパラメータ
は、FileHandle、FileInfoLeve
l、FileInfoBuf、及びFileInfoB
ufSizeである。
【0057】FileHandleは、以前のDosO
pen2呼出しに応答して呼出し側に返されるFile
Handleパラメータである。
pen2呼出しに応答して呼出し側に返されるFile
Handleパラメータである。
【0058】FileInfoLevelは、呼出し側
によって定義されるレベルである。Set呼出しにはレ
ベル1またはレベル2があり、Query呼出しにはレ
ベル1、レベル2、またはレベル3がある。定義された
レベルによって、以下に説明するように、記憶ファイル
とEABufによって定義されるメモリ・バッファ空間
との間で転送される情報のタイプが決まる。
によって定義されるレベルである。Set呼出しにはレ
ベル1またはレベル2があり、Query呼出しにはレ
ベル1、レベル2、またはレベル3がある。定義された
レベルによって、以下に説明するように、記憶ファイル
とEABufによって定義されるメモリ・バッファ空間
との間で転送される情報のタイプが決まる。
【0059】FileInfoBufは、データ・バッ
ファのシステム・メモリ内のアドレス、すなわちSet
機能では属性データのソース、Query機能では属性
データの宛先のアドレスを提供し、やはりFileIn
foLevel中で指定されたレベルと関連して、どの
データがこのように転送されるかを決定する。File
InfoBufSizeは、FileInfoBufに
よって定義されるシステム・メモリ内のデータ・バッフ
ァの長さを表す。
ファのシステム・メモリ内のアドレス、すなわちSet
機能では属性データのソース、Query機能では属性
データの宛先のアドレスを提供し、やはりFileIn
foLevel中で指定されたレベルと関連して、どの
データがこのように転送されるかを決定する。File
InfoBufSizeは、FileInfoBufに
よって定義されるシステム・メモリ内のデータ・バッフ
ァの長さを表す。
【0060】Set呼出しのレベルがレベル1であると
きに転送されるデータは、標準属性だけであり、ファイ
ル作成の日時、そのファイルへの最近のアクセスの日時
、及びファイル・サイズを含む。同じ呼出しがレベル2
の標識をもつときに転送されるデータは、EAデータを
含む。このようなデータは、そのファイルの名前部分及
び値部分の長さを示す名前関数及び長さ関数によって定
義される単一のEAファイル、あるいはその呼出し内で
与えられる別々の名前及び名前の長さパラメータによっ
て定義される一連のEAデータ・ファイルであることが
できる。
きに転送されるデータは、標準属性だけであり、ファイ
ル作成の日時、そのファイルへの最近のアクセスの日時
、及びファイル・サイズを含む。同じ呼出しがレベル2
の標識をもつときに転送されるデータは、EAデータを
含む。このようなデータは、そのファイルの名前部分及
び値部分の長さを示す名前関数及び長さ関数によって定
義される単一のEAファイル、あるいはその呼出し内で
与えられる別々の名前及び名前の長さパラメータによっ
て定義される一連のEAデータ・ファイルであることが
できる。
【0061】レベル1またはレベル2のQuery呼出
しに関して転送されるデータは、それぞれ標準属性デー
タ、または関連するEAデータ・ファイル(全体)のサ
イズを示す情報を伴う標準属性データである。レベル3
のQuery呼出しはEAデータを転送する。
しに関して転送されるデータは、それぞれ標準属性デー
タ、または関連するEAデータ・ファイル(全体)のサ
イズを示す情報を伴う標準属性データである。レベル3
のQuery呼出しはEAデータを転送する。
【0062】DosSetPathInfo及びDos
QPathInfo 図9の74及び75にそれぞれ示すこれらの相補的Se
t(書込み)呼出し及びQuery(読出し)呼出しは
、既存のファイルまたはサブディレクトリに関する属性
データ(標準及びEA)を転送する。Set呼出しの実
行成功の条件は、呼出し側が名前付きオブジェクトへの
排他的アクセス権をもつことであり、したがって、名前
付きファイルまたはサブディレクトリが現在別のプロセ
スによってアクセスされている場合、Set呼出しは失
敗する。この2つの呼出しは、パラメータPathNa
me、PathInfoLevel、PathInfo
Buf、及びPathInfoBufSizeをもつ。 さらに、Set機能は、下記のいくつかのフラグをもつ
。
QPathInfo 図9の74及び75にそれぞれ示すこれらの相補的Se
t(書込み)呼出し及びQuery(読出し)呼出しは
、既存のファイルまたはサブディレクトリに関する属性
データ(標準及びEA)を転送する。Set呼出しの実
行成功の条件は、呼出し側が名前付きオブジェクトへの
排他的アクセス権をもつことであり、したがって、名前
付きファイルまたはサブディレクトリが現在別のプロセ
スによってアクセスされている場合、Set呼出しは失
敗する。この2つの呼出しは、パラメータPathNa
me、PathInfoLevel、PathInfo
Buf、及びPathInfoBufSizeをもつ。 さらに、Set機能は、下記のいくつかのフラグをもつ
。
【0063】PathNameは、ファイルまたはサブ
ディレクトリの実際のASCII名である。これは、適
切なディレクトリの位置を指す迅速アクセス・ポインタ
である、DosSetFileInfo/DosQFi
leInfo中で使用されるFileHandleと区
別しなければならない。PathName情報を用いて
ファイルまたはサブディレクトリにアクセスする場合、
オペレーティング・システムは、その名前の位置を特定
するために苦労してディレクトリ・ツリーを追跡しなけ
ればならないが、FileHandleによってファイ
ルまたはサブディレクトリにアクセスする場合、オペレ
ーティング・システムは、必要なディレクトリのコピー
が記憶されているシステム・メモリ内の位置に直接導か
れる。
ディレクトリの実際のASCII名である。これは、適
切なディレクトリの位置を指す迅速アクセス・ポインタ
である、DosSetFileInfo/DosQFi
leInfo中で使用されるFileHandleと区
別しなければならない。PathName情報を用いて
ファイルまたはサブディレクトリにアクセスする場合、
オペレーティング・システムは、その名前の位置を特定
するために苦労してディレクトリ・ツリーを追跡しなけ
ればならないが、FileHandleによってファイ
ルまたはサブディレクトリにアクセスする場合、オペレ
ーティング・システムは、必要なディレクトリのコピー
が記憶されているシステム・メモリ内の位置に直接導か
れる。
【0064】PathInfoLevelは、Set呼
出しではレベル1またはレベル2、Query呼出しで
はレベル1、レベル2、またはレベル3の標識である。 レベル1は、標準属性情報の転送を指令する。Setレ
ベル2は、PathInfoBuf及びPathInf
oBufSizeによって定義されたEAデータの転送
を要求する。Set呼出しに関連するフラグは、この呼
出し動作をどのように実行すべきかを定義し、リターン
標識が呼出し側プロセスに提供される前にディスクへの
EAデータの書込みを完了しなければならないか否かを
区別する。Queryレベル2は、標準属性データ、及
び関連するファイルまたはサブディレクトリに対するE
Aデータ・ファイルの全体サイズの標識の転送を要求す
る。Queryレベル3は、EAデータ自体の転送を要
求する。
出しではレベル1またはレベル2、Query呼出しで
はレベル1、レベル2、またはレベル3の標識である。 レベル1は、標準属性情報の転送を指令する。Setレ
ベル2は、PathInfoBuf及びPathInf
oBufSizeによって定義されたEAデータの転送
を要求する。Set呼出しに関連するフラグは、この呼
出し動作をどのように実行すべきかを定義し、リターン
標識が呼出し側プロセスに提供される前にディスクへの
EAデータの書込みを完了しなければならないか否かを
区別する。Queryレベル2は、標準属性データ、及
び関連するファイルまたはサブディレクトリに対するE
Aデータ・ファイルの全体サイズの標識の転送を要求す
る。Queryレベル3は、EAデータ自体の転送を要
求する。
【0065】DosEnumAttribute図9の
76に示すこの呼出しは、オペレーティング・システム
に、名前付きファイルまたはサブディレクトリに関連す
るEAのリストを呼出し側に返させるために使用される
。
76に示すこの呼出しは、オペレーティング・システム
に、名前付きファイルまたはサブディレクトリに関連す
るEAのリストを呼出し側に返させるために使用される
。
【0066】この呼出し用のパラメータは、RefTy
pe、FileRef、EntryNum、EnumB
uf、EnumBufSize、EnumCnt、及び
InfoLevelである。
pe、FileRef、EntryNum、EnumB
uf、EnumBufSize、EnumCnt、及び
InfoLevelである。
【0067】FileRefは、RefTypeビット
の値に応じて、FileHandleのアドレス、また
はファイルのASCII名のいずれかである。
の値に応じて、FileHandleのアドレス、また
はファイルのASCII名のいずれかである。
【0068】EntryNumは、全ての関連EAの連
鎖に関する、EA情報のリターン・リストを開始する入
口点を示す数である。
鎖に関する、EA情報のリターン・リストを開始する入
口点を示す数である。
【0069】EnumBuf及びEnumBufSiz
eは、それぞれ、リターン・リストが書き込まれるシス
テム・メモリ内のバッファ空間の開始アドレス及びサイ
ズを指定する。
eは、それぞれ、リターン・リストが書き込まれるシス
テム・メモリ内のバッファ空間の開始アドレス及びサイ
ズを指定する。
【0070】EnumCntは、それに対する情報が要
求されるEAの個数を示すカウント値のアドレスである
。その値が1より大きい場合、カウント情報は、次のE
Aに対するエントリが前のEAに対するエントリに隣接
して記憶される、パックされたリスト中で返される。
求されるEAの個数を示すカウント値のアドレスである
。その値が1より大きい場合、カウント情報は、次のE
Aに対するエントリが前のEAに対するエントリに隣接
して記憶される、パックされたリスト中で返される。
【0071】InfoLevelは、返される情報のレ
ベルを指定するレベル値であり、この実施例では1に限
定されている。このレベルで返される情報は、本質的に
、EAの名前部分と値部分及びそれらの長さから構成さ
れる。
ベルを指定するレベル値であり、この実施例では1に限
定されている。このレベルで返される情報は、本質的に
、EAの名前部分と値部分及びそれらの長さから構成さ
れる。
【0072】呼出し動作のデータ・フロー(図10−図
15) 図10−図15を参照すると、前記の呼出しに応答して
オペレーティング・システムによって実行される動作の
シーケンスが簡潔に記載されている。図中の参照番号は
、以下では、当該の動作の記述の後に括弧に入れて示す
。各機能呼出しの動作は、オペレーティング・システム
が当該の呼出しを受け取ったとき(すなわち、呼出し側
プロセスによって開始された割込みまたは同等のプロセ
スが、オペレーティング・システムに、記憶装置から当
該の呼出しを取り出させるとき)開始する。
15) 図10−図15を参照すると、前記の呼出しに応答して
オペレーティング・システムによって実行される動作の
シーケンスが簡潔に記載されている。図中の参照番号は
、以下では、当該の動作の記述の後に括弧に入れて示す
。各機能呼出しの動作は、オペレーティング・システム
が当該の呼出しを受け取ったとき(すなわち、呼出し側
プロセスによって開始された割込みまたは同等のプロセ
スが、オペレーティング・システムに、記憶装置から当
該の呼出しを取り出させるとき)開始する。
【0073】DosOpen2呼出しを受け取ると(ス
テップ80、図10)、オペレーティング・システムは
、システム・ファイル(SFT)を検査して、名前付き
ファイルまたはオブジェクトに関するオープンの競合が
あるかどうかを調べる(81、図10)。競合が検出さ
れた場合、そのプロセスは失敗に終わる。競合が検出さ
れない(名前付きファイルが競合する共用フラグによっ
てオープンされない)場合、この呼出しプロセスは、名
前付きオブジェクトが存在する場合にそれに対するディ
レクトリ・リストの位置を特定するための動作を続行す
る(82)。この活動の結果に応じて、実行プロセスは
3つの動作経路(84、85、または86)のうちの1
つに進む。
テップ80、図10)、オペレーティング・システムは
、システム・ファイル(SFT)を検査して、名前付き
ファイルまたはオブジェクトに関するオープンの競合が
あるかどうかを調べる(81、図10)。競合が検出さ
れた場合、そのプロセスは失敗に終わる。競合が検出さ
れない(名前付きファイルが競合する共用フラグによっ
てオープンされない)場合、この呼出しプロセスは、名
前付きオブジェクトが存在する場合にそれに対するディ
レクトリ・リストの位置を特定するための動作を続行す
る(82)。この活動の結果に応じて、実行プロセスは
3つの動作経路(84、85、または86)のうちの1
つに進む。
【0074】ディレクトリ・リストが見つからず、かつ
これらのフラグが新しいファイルまたはオブジェクトの
作成を許す場合、出口84を取って、下記のファイル作
成動作及びファイル・オープン動作を開始する。ファイ
ルが存在し、フラグがそのオープンを許す場合、出口8
5を取って、オープン動作を開始する。ファイルが存在
し、フラグが置換を要求する場合、出口経路86を取っ
て、属性またはEA情報あるいはその両方の置換を開始
する(現在考察中の新しく定義された全ての呼出しにお
いては、ファイルに情報を記憶することに関して取られ
る唯一の措置は、標準属性情報、またはEAデータある
いはその両方の書込みであることに留意されたい。ベー
ス・ファイル・データをファイルに書き込むには、呼出
し側プロセスは既存のDosWrite呼出しの1つを
呼び出さなければならない)。フラグが失敗または打切
り動作を要求する場合は、出口87経路を取る。
これらのフラグが新しいファイルまたはオブジェクトの
作成を許す場合、出口84を取って、下記のファイル作
成動作及びファイル・オープン動作を開始する。ファイ
ルが存在し、フラグがそのオープンを許す場合、出口8
5を取って、オープン動作を開始する。ファイルが存在
し、フラグが置換を要求する場合、出口経路86を取っ
て、属性またはEA情報あるいはその両方の置換を開始
する(現在考察中の新しく定義された全ての呼出しにお
いては、ファイルに情報を記憶することに関して取られ
る唯一の措置は、標準属性情報、またはEAデータある
いはその両方の書込みであることに留意されたい。ベー
ス・ファイル・データをファイルに書き込むには、呼出
し側プロセスは既存のDosWrite呼出しの1つを
呼び出さなければならない)。フラグが失敗または打切
り動作を要求する場合は、出口87経路を取る。
【0075】動作83の結果、ファイル作成が必要とな
る場合(出口84)、必要なファイル空間を割り振り、
必要なディレクトリ・リストを作成し、必要な標準属性
とともに書き込むために動作88−90が実行される。 ファイル置換えが必要な場合、必要な属性データ(標準
またはEA)を置換するために動作91が実行される。 ファイルが作成された場合(動作88−90)、または
既存のファイルがオープンされる場合(動作83からの
出口85)、動作81についての前記の説明で述べたシ
ステム・ファイル・テーブル(SFT)に情報を入力す
るための措置が取られる(92)。このエントリは、フ
ァイル・ハンドル・パラメータを含み、このパラメータ
も呼出し側プロセスに返される。この時点でEAデータ
がまだ書き込まれていない場合、その書込みを行うため
に動作94が実行され、呼出し実行プロセスは終了する
。EAデータの書き込みが必要でない場合、このプロセ
スは動作93の後に終了する。
る場合(出口84)、必要なファイル空間を割り振り、
必要なディレクトリ・リストを作成し、必要な標準属性
とともに書き込むために動作88−90が実行される。 ファイル置換えが必要な場合、必要な属性データ(標準
またはEA)を置換するために動作91が実行される。 ファイルが作成された場合(動作88−90)、または
既存のファイルがオープンされる場合(動作83からの
出口85)、動作81についての前記の説明で述べたシ
ステム・ファイル・テーブル(SFT)に情報を入力す
るための措置が取られる(92)。このエントリは、フ
ァイル・ハンドル・パラメータを含み、このパラメータ
も呼出し側プロセスに返される。この時点でEAデータ
がまだ書き込まれていない場合、その書込みを行うため
に動作94が実行され、呼出し実行プロセスは終了する
。EAデータの書き込みが必要でない場合、このプロセ
スは動作93の後に終了する。
【0076】DosMkDir2(図11)に関連する
動作シーケンスは、オペレーティング・システムがその
呼出しを受け取ることによって始まり(100)、続い
て経路使用可能性の決定(101)、及びその経路が使
用可能な場合はサブディレクトリ・リストの作成(10
2)が行われる(呼出し中で作成すべきサブディレクト
リとして指名されたサブディレクトリへの経路の一部分
が存在しない場合、動作は動作101の後で失敗に終わ
る)。新しく作成されたサブディレクトリに関連して書
き込むべきEAデータがない場合、動作103の後で動
作が終了する。そうでない場合は、動作104−106
に進み、それぞれEAデータに対するクラスタを割り振
り、関連するEAデータ(図7及び図8)に割り振られ
たEADATA.SF内の空間を指すEAハンドル機能
を含むように名前付きサブディレクトリのディレクトリ
・リストを更新し、EAデータを割り振られた空間に書
き込むためにシステムから記憶サブシステムへの出力動
作をセット・アップする。
動作シーケンスは、オペレーティング・システムがその
呼出しを受け取ることによって始まり(100)、続い
て経路使用可能性の決定(101)、及びその経路が使
用可能な場合はサブディレクトリ・リストの作成(10
2)が行われる(呼出し中で作成すべきサブディレクト
リとして指名されたサブディレクトリへの経路の一部分
が存在しない場合、動作は動作101の後で失敗に終わ
る)。新しく作成されたサブディレクトリに関連して書
き込むべきEAデータがない場合、動作103の後で動
作が終了する。そうでない場合は、動作104−106
に進み、それぞれEAデータに対するクラスタを割り振
り、関連するEAデータ(図7及び図8)に割り振られ
たEADATA.SF内の空間を指すEAハンドル機能
を含むように名前付きサブディレクトリのディレクトリ
・リストを更新し、EAデータを割り振られた空間に書
き込むためにシステムから記憶サブシステムへの出力動
作をセット・アップする。
【0077】DosOpen2によってオープンされた
ファイルに関するベース・ファイル・データを読み出す
または書き込むための動作が、図12に示されている。 ファイルをオープンしたプロセスは、通常の(古い)D
osReadまたはDosWrite呼出しを出し、そ
れをオペレーティング・システムが受け取る(120)
。この呼出しは、DosOpen2動作が成功裏に完了
した時に呼出し側に返されるファイル・ハンドル機能の
コピーを含む。この機能は、名前付きファイルの現状況
がどうか(この呼出し側に対してオープンしているか否
か)SFTを検査するために使用される。ファイルがオ
ープンでない場合、プロセスは終了する(121)。フ
ァイルがこの呼出し側に対してオープンしている場合、
データの読出しまたは書込みを開始すべき記憶装置内の
クラスタの位置を特定する動作が実行される(122)
(データを書き込む場合で、かつ空間が現在割り振られ
ていない場合、データが書き込まれる前に、必要なクラ
スタまたはクラスタ連鎖がFATを介して割り振られる
)。次に、入力または出力システム動作が呼び出され、
必要なベース・データ・ファイルの読出しまたは書込み
を実行し(123)、その後で最終的状況が呼出し側に
返され、動作は終了する(124)。
ファイルに関するベース・ファイル・データを読み出す
または書き込むための動作が、図12に示されている。 ファイルをオープンしたプロセスは、通常の(古い)D
osReadまたはDosWrite呼出しを出し、そ
れをオペレーティング・システムが受け取る(120)
。この呼出しは、DosOpen2動作が成功裏に完了
した時に呼出し側に返されるファイル・ハンドル機能の
コピーを含む。この機能は、名前付きファイルの現状況
がどうか(この呼出し側に対してオープンしているか否
か)SFTを検査するために使用される。ファイルがオ
ープンでない場合、プロセスは終了する(121)。フ
ァイルがこの呼出し側に対してオープンしている場合、
データの読出しまたは書込みを開始すべき記憶装置内の
クラスタの位置を特定する動作が実行される(122)
(データを書き込む場合で、かつ空間が現在割り振られ
ていない場合、データが書き込まれる前に、必要なクラ
スタまたはクラスタ連鎖がFATを介して割り振られる
)。次に、入力または出力システム動作が呼び出され、
必要なベース・データ・ファイルの読出しまたは書込み
を実行し(123)、その後で最終的状況が呼出し側に
返され、動作は終了する(124)。
【0078】オープン・ファイルに関する属性情報(標
準属性またはEA)を読み出すまたは書き込むための動
作が、図13に示されている。書込み動作は、呼出しD
osSetFileInfoの受取りで始まり(130
)、続いてその呼出し中で与えられたファイル・ハンド
ルを使用して名前付きオブジェクトに対するディレクト
リ・リストの位置を特定する(131)。その呼出し中
のFileInfoBuf情報を使って、書き込むべき
属性データを含むシステム・メモリ空間が決定される(
132)。EAデータが、まだ割り振られていないクラ
スタに書き込まれる場合、そのクラスタが前述のプロセ
スによって割り振られ(このステップは図13には示さ
れていない)、次に必要とされるシステム・メモリから
記憶サブシステムへの出力動作が呼び出される(133
)。
準属性またはEA)を読み出すまたは書き込むための動
作が、図13に示されている。書込み動作は、呼出しD
osSetFileInfoの受取りで始まり(130
)、続いてその呼出し中で与えられたファイル・ハンド
ルを使用して名前付きオブジェクトに対するディレクト
リ・リストの位置を特定する(131)。その呼出し中
のFileInfoBuf情報を使って、書き込むべき
属性データを含むシステム・メモリ空間が決定される(
132)。EAデータが、まだ割り振られていないクラ
スタに書き込まれる場合、そのクラスタが前述のプロセ
スによって割り振られ(このステップは図13には示さ
れていない)、次に必要とされるシステム・メモリから
記憶サブシステムへの出力動作が呼び出される(133
)。
【0079】属性データ読出しの相補的動作は、Dos
FileInfo呼出しの受取りで始まり(140)、
続いてその呼出し中のFile Handle情報を
用いてディレクトリ・リストの位置を特定し(141)
、次に読み出されるソースEAデータの位置及びその呼
出しのFileInfoBufパラメータ中で指定され
るシステム・メモリ内のその宛先の位置を特定し(14
2)、次に必要な転送を実行するために、記憶サブシス
テムからシステム・メモリへの入力動作を開始する(1
43)。
FileInfo呼出しの受取りで始まり(140)、
続いてその呼出し中のFile Handle情報を
用いてディレクトリ・リストの位置を特定し(141)
、次に読み出されるソースEAデータの位置及びその呼
出しのFileInfoBufパラメータ中で指定され
るシステム・メモリ内のその宛先の位置を特定し(14
2)、次に必要な転送を実行するために、記憶サブシス
テムからシステム・メモリへの入力動作を開始する(1
43)。
【0080】クローズされたファイルに関する属性情報
を書き込み、読み出す動作が、図14に示されている。 DosSetPathInfo(150)によって呼び
出される書込み動作は、(ファイル・ハンドルが与えら
れていないので、ディレクトリ・ツリーの探索によって
)名前付きファイル・オブジェクトのディレクトリ・リ
ストの位置を特定することを必要とし、EAデータが書
き込まれる場合は、そのデータを受け取る宛先クラスタ
を決定すること(152)を必要とする(このクラスタ
が割り振られていない場合は、このステップで割り振ら
れ、すでに述べたようにディレクトリ・リスト内で適切
にインデックスされる)。ソース標準属性またはEAデ
ータは、その呼出し中のPathInfoBuf及びP
athInfoBufSize情報を用いて位置が検出
され(152)、必要とされるシステム・メモリから記
憶サブシステムへの出力動作が呼び出される(153)
。
を書き込み、読み出す動作が、図14に示されている。 DosSetPathInfo(150)によって呼び
出される書込み動作は、(ファイル・ハンドルが与えら
れていないので、ディレクトリ・ツリーの探索によって
)名前付きファイル・オブジェクトのディレクトリ・リ
ストの位置を特定することを必要とし、EAデータが書
き込まれる場合は、そのデータを受け取る宛先クラスタ
を決定すること(152)を必要とする(このクラスタ
が割り振られていない場合は、このステップで割り振ら
れ、すでに述べたようにディレクトリ・リスト内で適切
にインデックスされる)。ソース標準属性またはEAデ
ータは、その呼出し中のPathInfoBuf及びP
athInfoBufSize情報を用いて位置が検出
され(152)、必要とされるシステム・メモリから記
憶サブシステムへの出力動作が呼び出される(153)
。
【0081】DosQPathInfo(160)によ
って呼び出される読出し動作は、読み出すべきソース・
データを含むディレクトリ・リストまたはクラスタある
いはその両方の位置を特定し(161)、このようなデ
ータのシステム・メモリ内の宛先の位置を特定する(1
62)ための動作を開始する。その宛先は、PathI
nfoBufの内容から決定される。最後に、ソース属
性情報を宛先位置に転送するために、記憶サブシステム
からシステム・メモリへの入力動作がセット・アップさ
れる(163)。
って呼び出される読出し動作は、読み出すべきソース・
データを含むディレクトリ・リストまたはクラスタある
いはその両方の位置を特定し(161)、このようなデ
ータのシステム・メモリ内の宛先の位置を特定する(1
62)ための動作を開始する。その宛先は、PathI
nfoBufの内容から決定される。最後に、ソース属
性情報を宛先位置に転送するために、記憶サブシステム
からシステム・メモリへの入力動作がセット・アップさ
れる(163)。
【0082】ファイル・オブジェクトに関連するEA名
情報をリストするための動作が、図15に示されており
、これはオペレーティング・システムがDosEnum
Attribute呼出しを受け取ることによって開始
される(170)。システム・メモリ内のリスト・レポ
ートの宛先が、EnumBuf内の情報を用いて決定さ
れ(171)、その後、リストすべきEAの個数が決定
され(172)、リストされる情報の位置が決定される
(173)。最後に、記憶サブシステムからシステム・
メモリ宛先への入力動作がセット・アップされ(174
)、このプロセスは完了する。
情報をリストするための動作が、図15に示されており
、これはオペレーティング・システムがDosEnum
Attribute呼出しを受け取ることによって開始
される(170)。システム・メモリ内のリスト・レポ
ートの宛先が、EnumBuf内の情報を用いて決定さ
れ(171)、その後、リストすべきEAの個数が決定
され(172)、リストされる情報の位置が決定される
(173)。最後に、記憶サブシステムからシステム・
メモリ宛先への入力動作がセット・アップされ(174
)、このプロセスは完了する。
【0083】
【発明の効果】本発明は、オペレーティング・システム
を、拡張属性(EA)データ・セット及び関連するベー
ス・ファイル・データ構造が単一のファイル内にあるか
のように、これらのEA及びベース・データの記憶をコ
ンジョイントに管理できるように適合させる方法及び手
段を提供する。
を、拡張属性(EA)データ・セット及び関連するベー
ス・ファイル・データ構造が単一のファイル内にあるか
のように、これらのEA及びベース・データの記憶をコ
ンジョイントに管理できるように適合させる方法及び手
段を提供する。
【図1】本発明を利用すると有利な代表的なシステム環
境を示す概略図である。
境を示す概略図である。
【図2】図1の環境におけるベース・ファイル及び標準
属性の従来技術によるコンジョイントな操作を示す概略
図である。
属性の従来技術によるコンジョイントな操作を示す概略
図である。
【図3】ディスク上に記憶されたデータ・ファイルの位
置を特定するための従来技術ディレクトリ・ツリー構造
及びFATテーブルを示す概略図である。
置を特定するための従来技術ディレクトリ・ツリー構造
及びFATテーブルを示す概略図である。
【図4】EAがそれらを作成する適用業務にだけ有用で
ある、図1の環境におけるベース・ファイル及びEAの
従来技術によるディスジョイントな操作を示す概略図で
ある。
ある、図1の環境におけるベース・ファイル及びEAの
従来技術によるディスジョイントな操作を示す概略図で
ある。
【図5】オペレーティング・システム、及びファイルを
作成した適用業務以外の適用業務にとってEAがベース
・ファイル・データから区別できない、図1の環境にお
ける、EA及びベース・ファイル・データの従来技術に
よる「混合」を示す概略図である。
作成した適用業務以外の適用業務にとってEAがベース
・ファイル・データから区別できない、図1の環境にお
ける、EA及びベース・ファイル・データの従来技術に
よる「混合」を示す概略図である。
【図6】オペレーティング・システムが、本発明によれ
ばどのようにして、関連するベース・データ・ファイル
及びEA用の記憶装置内の空間の割振り及び使用をコン
ジョイントに管理できるように適合されるかを、単純化
した形、及び特定の実施態様に限定されない概念的レベ
ルで示した図である。
ばどのようにして、関連するベース・データ・ファイル
及びEA用の記憶装置内の空間の割振り及び使用をコン
ジョイントに管理できるように適合されるかを、単純化
した形、及び特定の実施態様に限定されない概念的レベ
ルで示した図である。
【図7】EAデータ・ファイルの位置を特定するための
、本発明の好ましい実施例による、修正されたディレク
トリ・ツリー構造を示す図である。
、本発明の好ましい実施例による、修正されたディレク
トリ・ツリー構造を示す図である。
【図8】EAデータ・ファイルが好ましい実施例でどの
ように記憶されるかを示す図である。
ように記憶されるかを示す図である。
【図9】本発明の前記の好ましい実施例による、OS/
2バージョン1.2上で走行している適用業務が、関連
ベース・データ・ファイル及びEA用のディスク記憶空
間の割振り及び使用を管理するために、そのオペレーテ
ィング・システム中で用意された動作を要求できるよう
にするために、そのオペレーティング・システム中に提
供される機能呼出しを示す図である。
2バージョン1.2上で走行している適用業務が、関連
ベース・データ・ファイル及びEA用のディスク記憶空
間の割振り及び使用を管理するために、そのオペレーテ
ィング・システム中で用意された動作を要求できるよう
にするために、そのオペレーティング・システム中に提
供される機能呼出しを示す図である。
【図10】前記の好ましい実施態様実施例による、任意
選択として1つまたは複数のEAをもつ新しいまたは既
存の(しかしオープンされていない)ファイルをオープ
ンするために、または任意選択として1つまたは複数の
EAをもつ既存のファイルを置換するために、図9に示
したタイプのDosOpen2機能呼出しに応答して、
OS/2バージョン1.2によって指令される動作を説
明するための流れ図である。
選択として1つまたは複数のEAをもつ新しいまたは既
存の(しかしオープンされていない)ファイルをオープ
ンするために、または任意選択として1つまたは複数の
EAをもつ既存のファイルを置換するために、図9に示
したタイプのDosOpen2機能呼出しに応答して、
OS/2バージョン1.2によって指令される動作を説
明するための流れ図である。
【図11】機能呼出しDosMkDir2に応答して、
任意選択のEAをもつ新しいサブディレクトリを作成す
るために、OS/2バージョン1.2によって指令され
る動作を説明する流れ図である。
任意選択のEAをもつ新しいサブディレクトリを作成す
るために、OS/2バージョン1.2によって指令され
る動作を説明する流れ図である。
【図12】DosOpen2機能呼出しに応答して、以
前に作成されたファイルに関するベース・ファイル・デ
ータを書き込み、読み出すために、OS/2バージョン
1.2によって指令される動作を説明する流れ図である
。
前に作成されたファイルに関するベース・ファイル・デ
ータを書き込み、読み出すために、OS/2バージョン
1.2によって指令される動作を説明する流れ図である
。
【図13】図9に示された呼出しDosSetFile
Info及びDosQFileInfoに応答して、オ
ープン・ファイルに関する属性データを書き込み、読み
出すために、OS/2バージョン1.2によって指令さ
れる動作を説明するための流れ図である。
Info及びDosQFileInfoに応答して、オ
ープン・ファイルに関する属性データを書き込み、読み
出すために、OS/2バージョン1.2によって指令さ
れる動作を説明するための流れ図である。
【図14】既存のファイルに関する属性データを書き込
み、読み出すために、前記の実施例において実行される
動作を説明するための流れ図である。
み、読み出すために、前記の実施例において実行される
動作を説明するための流れ図である。
【図15】指定されたファイルまたはサブディレクトリ
名に関連するEAのカウントを要求するDosEnum
Attribute機能呼出しに応答して、OS/2バ
ージョン1.2中で実行される動作を説明するための流
れ図である。
名に関連するEAのカウントを要求するDosEnum
Attribute機能呼出しに応答して、OS/2バ
ージョン1.2中で実行される動作を説明するための流
れ図である。
1 システム
2 マイクロプロセッサ
3 メモリ・サブシステム
5 ディスク記憶サブシステム
6 オペレーティング・システム
7 適用業務
Claims (13)
- 【請求項1】データ処理システムにリンクされた直接ア
クセス記憶装置内のファイル記憶空間の割振り及び使用
を管理し、前記記憶装置と前記データ処理システムのラ
ンダム・アクセス・メモリ・サブシステムの間をインタ
ーフェースするためのオペレーティング・システムを含
むデータ処理システムにおいて、単一のファイル・オブ
ジェクトに関する前記記憶装置内の複数の離散的に識別
可能な空間の割振り及び使用を管理し、それによって前
記オペレーティング・システムの指令下で前記オブジェ
クトに関連するデータの離散的に識別可能なセットに一
緒にまたは別々にアクセスできるように前記オペレーテ
ィング・システムを適合させるための改良であって、オ
ブジェクト及び経路を前記記憶装置の1つ内で指定する
、前記プログラム・プロセスの1つによって出される第
1のタイプの要求に応答して、前記の指定されたオブジ
ェクトとの第1のタイプの関連で前記記憶装置経路内の
第1のデータ・セットの記憶を指令するための、前記オ
ペレーティング・システム内の第1の手段と、やはり前
記オブジェクト及び経路を指定する、前記の第1のタイ
プの要求とは異なる第2のタイプの要求に応答して、前
記オブジェクトとの第2のタイプの関連で前記の指定さ
れたオブジェクトに関する第2のデータ・セットを記憶
するための、前記オペレーティング・システム内の第2
の手段とを含み、前記第1及び第2のデータ・セットと
前記オブジェクトとの間のそれぞれ前記第1及び第2の
タイプの関連が異なる関連関係であり、前記第1及び第
2のデータ・セットが、その後に、前記の指定されたオ
ブジェクトに関して別々にまたは一緒にアクセスできる
、データ処理システム。 - 【請求項2】前記の指定されたオブジェクトが特定のフ
ァイル名であり、前記第1及び第2のデータ・セット中
のデータが、それぞれ前記ファイル名に関連するベース
・ファイル・データ及び拡張属性(EA)データを表す
、請求項1に記載のデータ処理システム。 - 【請求項3】前記の指定されたオブジェクトが特定の名
前付きディレクトリであり、前記第1及び第2のデータ
・セット中のデータが、前記ディレクトリに関連する離
散的な別々の拡張属性値を表す、請求項1に記載のデー
タ処理システム。 - 【請求項4】前記第1のデータ・セットを記憶するため
の前記手段及び前記第2のデータ・セットを記憶するた
めの前記手段が、前記のそれぞれのデータ・セットを記
憶するための空間を前記の1つの記憶装置内で異なる方
式で割り振るための手段を含み、前記第1のデータ・セ
ットを記憶するために割り振られた空間が、前記ベース
・データを含む空間を有効に直接指す、前記ファイル名
とともに記憶された第1のポインタを用いて位置を特定
でき、前記第2のデータ・セットに割り振られた空間が
、前記ファイル名から分離して記憶された第3のポイン
タの位置を指す、前記ファイル名とともに記憶された第
2のポインタを用いて位置を特定でき、前記第3のポイ
ンタが前記EAデータを記憶するために割り振られた空
間を直接指す、請求項2に記載のデータ処理システム。 - 【請求項5】前記ベース・ファイル・データを記憶する
ための前記手段及び前記EAデータを記憶するための前
記手段が、前記要求を伴う情報に応答して、前記ファイ
ル名及び前記の第1及び第2のポインタを含むディレク
トリ・リストを確立するための手段を含み、前記EAデ
ータを記憶するための前記手段が、前記第3のポインタ
を前記第2ポインタによって示される位置に記憶するた
めの手段を含む、請求項4に記載のデータ処理システム
。 - 【請求項6】前記ベース・ファイル・データを記憶する
前記空間と前記EAデータを記憶する前記空間の間に確
立される前記の関連が、前記オペレーティング・システ
ムが前記ベース・ファイル・データ及びEAデータに別
々にまたは一緒にアクセスできるのに十分なほど明確で
ある、請求項5に記載のデータ処理システム。 - 【請求項7】アドレスによって情報の位置が特定できる
ランダム・アクセス・メモリ・サブシステムと、経路及
びファイル名によって情報の位置が特定できる直接アク
セス記憶サブシステムとを含むデータ処理システム内で
監視動作を実行し、適用業務プログラムによって指定さ
れた経路及びファイル名に関する前記記憶サブシステム
内の記憶空間の割振り及び使用を管理するために、前記
適用業務プログラムと前記メモリ・サブシステム及び記
憶サブシステムの間をインターフェースするシステムに
おいて、前記適用業務プログラムの任意の1つから前記
オペレーティング・システムが受け取った所定の機能呼
出し要求に応答して、機能呼出し要求を伴う、ファイル
・オブジェクトまたはサブディレクトリ経路を表す、名
前に関する拡張属性(EA)情報を記憶するために前記
記憶サブシステム内の1つまたは複数の離散的な別々の
記憶空間の割振りを指令するための、前記オペレーティ
ング・システム内の手段と、前記機能呼出し要求に応答
して、前記の割り振られた各空間と前記1次名の間で間
接的関連を確立するための前記オペレーティング・シス
テム内の手段と、任意選択として前記要求を伴う情報に
応答して、前記適用業務プログラムのうちの複数の異な
る構成の適用業務プログラムのどれかによる使用のため
に任意選択として前記メモリ・サブシステムから前記の
割り振られた空間にEA情報を転送するための、前記オ
ペレーティング・システム内の手段とを含む、データ処
理システム。 - 【請求項8】オペレーティング・システム・プログラム
上で走行している適用業務プログラムによってオブジェ
クトが処理されるデータ処理システムにおいて、前記E
Aが前記適用業務プログラムのうちの複数の異なる適用
業務プログラムにとってアクセス可能になるように前記
オブジェクトとコンジョイントな関連で、可変の形式、
長さ及び文脈の拡張属性(EA)の記憶を行う方法であ
って、前記オペレーティング・システムの指令下で、1
つまたは複数のEAデータのセットを含む複数の離散的
に区別可能なデータ・セットを記憶するための記憶空間
を直接アクセス記憶装置内で選択的に割り振る段階と、
前記データ・セットが前記オペレーティング・システム
の指令下で別々にまたは一緒にアクセスできるように、
前記の割り振られた記憶空間を単一のオブジェクト名と
コンジョイントに関連づける段階とを含む方法。 - 【請求項9】前記のデータのセットがベース・ファイル
・データ及びEAデータを含むように選択可能であり、
ベース・ファイル・データの前記セットの数が0または
1であるように選択可能であり、EAデータの前記セッ
トの数が0、1、または2以上のいずれかになるように
選択可能である、EAを記憶するための請求項8に記載
の方法。 - 【請求項10】前記の関連づけ段階が、EAデータの各
前記セットの一部分としてEA名を記憶する段階を含み
、EA名が、当該の開始元適用業務を区別する基礎を提
供する異なる適用業務プログラムから発するEAデータ
とともに記憶される、請求項8に記載の方法。 - 【請求項11】前記EA名が前記適用業務プログラムに
よって、ただし前記オペレーティング・システムによっ
て課せられた制約内で、1つの適用業務プログラムによ
って選択されたEA名が別の適用業務プログラムによる
競合的使用を受けない形で、選択可能である、請求項1
0に記載の方法。 - 【請求項12】前記オブジェクトが前記記憶装置上で作
成されるファイルまたはサブディレクトリであることが
でき、前記オブジェクトがサブディレクトリを表すとき
に記憶すべく選択可能なベース・ファイル・データ・セ
ットの数が常に0であり、そのオブジェクトがサブディ
レクトリを表すときに記憶すべく選択可能なEAデータ
・セットの数が0、1、または2以上であり、前記オブ
ジェクトがファイルを表すときに記憶すべく選択可能な
ベース・ファイル・データ・セットの数が0または1で
あり、そのオブジェクトがファイルを表すときに記憶す
べく選択可能なEAセットの数が0、1、または2以上
である、請求項11に記載の方法。 - 【請求項13】ベース・ファイル及びEAデータ・セッ
トを記憶するためにそれぞれ割り振られる空間が、多数
の異なる適用業務から前記オペレーティング・システム
に与えられる要求に応答して、前記の異なる適用業務に
代わって前記空間が別々にまたは一緒にアクセスできる
ように前記オブジェクト名と関連づけられ、それによっ
て、たとえば、前記オブジェクト名に関連する情報をコ
ピーまたは消去する要求を使って、前記オペレーティン
グ・システムに、その名前、ベース・ファイル・セット
及びEAデータ・セットの両方に関連する全てのデータ
・セットに含まれる情報のコピーまたは消去を指令させ
ることができ、他の要求を使って、オペレーティング・
システムに前記データ・セットのうちの単一のデータ・
セットに関するデータを転送させることができる、請求
項12に記載の方法。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US07/587,813 US5367671A (en) | 1990-09-25 | 1990-09-25 | System for accessing extended object attribute (EA) data through file name or EA handle linkages in path tables |
| US587813 | 2000-06-06 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH04297934A true JPH04297934A (ja) | 1992-10-21 |
Family
ID=24351313
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP3268660A Pending JPH04297934A (ja) | 1990-09-25 | 1991-09-20 | データ処理システム |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US5367671A (ja) |
| JP (1) | JPH04297934A (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| AU685476B2 (en) * | 1993-10-08 | 1998-01-22 | Fujitsu Limited | File name detecting methd for use with operating system |
| JP2001526815A (ja) * | 1997-06-13 | 2001-12-18 | マイクロソフト コーポレイション | リモート・ストレージに対してファイル・システムにネーティブな支援を与えるファイル・システム・プリミティブ |
| US8972348B2 (en) | 1999-10-04 | 2015-03-03 | Microsoft Corporation | Method and system for supporting off-line mode of operation and synchronization |
Families Citing this family (63)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5463774A (en) * | 1993-06-28 | 1995-10-31 | Digital Equipment Corporation | Object oriented computer architecture using directory objects |
| US5499358A (en) * | 1993-12-10 | 1996-03-12 | Novell, Inc. | Method for storing a database in extended attributes of a file system |
| JPH07175710A (ja) * | 1993-12-20 | 1995-07-14 | Canon Inc | データ管理方法及び装置 |
| EP0660235A1 (en) * | 1993-12-22 | 1995-06-28 | International Business Machines Corporation | Method for automated software application testing |
| US5633472A (en) * | 1994-06-21 | 1997-05-27 | Microsoft Corporation | Method and system using pathnames to specify and access audio data at fidelity levels other than the level at which the data is stored |
| US5930514A (en) * | 1994-08-01 | 1999-07-27 | International Business Machines Corporation | Self-deletion facility for application programs |
| US5680586A (en) * | 1995-04-18 | 1997-10-21 | International Business Machines Corporation | Method and system for storing and accessing user-defined attributes within a data processing system |
| US5701452A (en) * | 1995-04-20 | 1997-12-23 | Ncr Corporation | Computer generated structure |
| US5644736A (en) * | 1995-05-25 | 1997-07-01 | International Business Machines Corporation | System and method for selecting components of a hierarchical file structure |
| US5819275A (en) * | 1995-06-07 | 1998-10-06 | Trusted Information Systems, Inc. | System and method for superimposing attributes on hierarchically organized file systems |
| US5778227A (en) * | 1995-08-01 | 1998-07-07 | Intergraph Corporation | System for adding attributes to an object at run time in an object oriented computer environment |
| US5742817A (en) * | 1995-12-08 | 1998-04-21 | Emc Corporation | Method and apparatus for file server addressing |
| US5802510A (en) * | 1995-12-29 | 1998-09-01 | At&T Corp | Universal directory service |
| US5832221A (en) * | 1995-12-29 | 1998-11-03 | At&T Corp | Universal message storage system |
| US5870756A (en) * | 1996-04-26 | 1999-02-09 | Fujitsu Limited | Interchangeable storage medium containing program for processing data files thereupon to match a data file format to a computer system |
| US5884315A (en) * | 1996-05-09 | 1999-03-16 | Philips Electronics North America Corporation | System and method for handling technical hardware related information |
| US5968109A (en) * | 1996-10-25 | 1999-10-19 | Navigation Technologies Corporation | System and method for use and storage of geographic data on physical media |
| US7197500B1 (en) | 1996-10-25 | 2007-03-27 | Navteq North America, Llc | System and method for use and storage of geographic data on physical media |
| US5819296A (en) * | 1996-10-31 | 1998-10-06 | Veritas Software Corporation | Method and apparatus for moving large numbers of data files between computer systems using import and export processes employing a directory of file handles |
| US5903893A (en) * | 1997-09-15 | 1999-05-11 | International Business Machines Corporation | Method and apparatus for optimizing a merge-join operation across heterogeneous databases |
| US6012065A (en) * | 1997-09-30 | 2000-01-04 | Pitney Bowes Inc. | Method and system for accessing carrier data |
| US6910047B1 (en) | 1997-10-01 | 2005-06-21 | Pitney Bowes Inc. | Method and system for changing rating data via internet or modem in a carrier management system |
| US6873978B1 (en) | 1997-10-01 | 2005-03-29 | Pitney Bowes Inc. | Event interface for a carrier manager system |
| US5999730A (en) * | 1997-10-27 | 1999-12-07 | Phoenix Technologies Limited | Generation of firmware code using a graphic representation |
| US6370549B1 (en) * | 1999-01-04 | 2002-04-09 | Microsoft Corporation | Apparatus and method for searching for a file |
| GB9930124D0 (en) * | 1999-12-21 | 2000-02-09 | Ibm | File system for a computer and method of synchronising sets of files |
| US7058667B2 (en) | 2000-12-27 | 2006-06-06 | Microsoft Corporation | Method and system for creating and maintaining version-specific properties in a file |
| US6775679B2 (en) * | 2001-03-20 | 2004-08-10 | Emc Corporation | Building a meta file system from file system cells |
| US7028300B2 (en) * | 2001-11-13 | 2006-04-11 | Microsoft Corporation | Method and system for managing resources in a distributed environment that has an associated object |
| US7406519B2 (en) * | 2001-11-13 | 2008-07-29 | Microsoft Corporation | Method and system for locking resources in a distributed environment |
| US6748470B2 (en) * | 2001-11-13 | 2004-06-08 | Microsoft Corporation | Method and system for locking multiple resources in a distributed environment |
| US20030105871A1 (en) * | 2001-11-13 | 2003-06-05 | Microsoft Corporation, | Method and system for modifying lock properties in a distributed environment |
| GB0129044D0 (en) * | 2001-12-05 | 2002-01-23 | Koninkl Philips Electronics Nv | Data storage methods and apparatuses with basic and extended file system capacity |
| US6862592B1 (en) * | 2001-12-21 | 2005-03-01 | Adobe Systems Incorporated | Document processing in a cross-platform environment |
| US6909910B2 (en) | 2002-02-01 | 2005-06-21 | Microsoft Corporation | Method and system for managing changes to a contact database |
| US6985914B2 (en) * | 2002-02-20 | 2006-01-10 | Emc Corporation | Cluster meta file system of file system cells managed by respective data movers of a network file server |
| US7269612B2 (en) * | 2002-05-31 | 2007-09-11 | International Business Machines Corporation | Method, system, and program for a policy based storage manager |
| US7519984B2 (en) * | 2002-06-27 | 2009-04-14 | International Business Machines Corporation | Method and apparatus for handling files containing confidential or sensitive information |
| US7512790B2 (en) * | 2003-04-17 | 2009-03-31 | International Business Machines Corporation | Method, system and article of manufacture for management of co-requisite files in a data processing system using extended file attributes |
| US20050060287A1 (en) * | 2003-05-16 | 2005-03-17 | Hellman Ziv Z. | System and method for automatic clustering, sub-clustering and cluster hierarchization of search results in cross-referenced databases using articulation nodes |
| US7644376B2 (en) | 2003-10-23 | 2010-01-05 | Microsoft Corporation | Flexible architecture for notifying applications of state changes |
| US7610322B2 (en) | 2004-05-25 | 2009-10-27 | Microsoft Corporation | Safe handle |
| US7546601B2 (en) * | 2004-08-10 | 2009-06-09 | International Business Machines Corporation | Apparatus, system, and method for automatically discovering and grouping resources used by a business process |
| US20060036579A1 (en) * | 2004-08-10 | 2006-02-16 | Byrd Stephen A | Apparatus, system, and method for associating resources using a time based algorithm |
| US7630955B2 (en) * | 2004-08-10 | 2009-12-08 | International Business Machines Corporation | Apparatus, system, and method for analyzing the association of a resource to a business process |
| US20060059118A1 (en) * | 2004-08-10 | 2006-03-16 | Byrd Stephen A | Apparatus, system, and method for associating resources using a behavior based algorithm |
| US7661135B2 (en) * | 2004-08-10 | 2010-02-09 | International Business Machines Corporation | Apparatus, system, and method for gathering trace data indicative of resource activity |
| US8166005B2 (en) * | 2004-09-21 | 2012-04-24 | Emc Corporation | Pathname caching and protection of the root directory in a nested multilayer directory structure |
| GB0422294D0 (en) * | 2004-10-07 | 2004-11-10 | Ibm | Accessing a data structure |
| US7873596B2 (en) * | 2006-05-23 | 2011-01-18 | Microsoft Corporation | Extending cluster allocations in an extensible file system |
| US9639554B2 (en) | 2004-12-17 | 2017-05-02 | Microsoft Technology Licensing, Llc | Extensible file system |
| US8606830B2 (en) | 2004-12-17 | 2013-12-10 | Microsoft Corporation | Contiguous file allocation in an extensible file system |
| US8321439B2 (en) | 2004-12-17 | 2012-11-27 | Microsoft Corporation | Quick filename lookup using name hash |
| US9275159B1 (en) * | 2005-04-11 | 2016-03-01 | Novell, Inc. | Content marking |
| US20070283117A1 (en) * | 2006-06-05 | 2007-12-06 | Microsoft Corporation | Unmanaged memory accessor |
| US8095513B2 (en) * | 2006-06-05 | 2012-01-10 | Microsoft Corporation | Safe buffer |
| US8037113B2 (en) * | 2009-01-20 | 2011-10-11 | Novell, Inc. | Techniques for file system searching |
| EP2354980A1 (en) * | 2010-02-04 | 2011-08-10 | ST-Ericsson SA | Management of communications between a client equipment and a server equipment providing to the client equipment computer resources represented according to a file system |
| CN101901263A (zh) * | 2010-07-22 | 2010-12-01 | 华为终端有限公司 | 文件系统的访问方法及装置 |
| US10929346B2 (en) * | 2016-11-14 | 2021-02-23 | Tuxera, Inc. | Systems and methods for storing large files using file allocation table based file systems |
| US10838913B2 (en) | 2016-11-14 | 2020-11-17 | Tuxera, Inc. | Systems and methods for storing large files using file allocation table based file systems |
| TWI631461B (zh) * | 2017-06-27 | 2018-08-01 | 晨星半導體股份有限公司 | 行車記錄器之儲存裝置的控制方法與儲存裝置控制系統 |
| US11435922B2 (en) | 2017-06-27 | 2022-09-06 | Sigmastar Technology Ltd. | Control method for storage device of driving recorder and storage device control system |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5206951A (en) * | 1987-08-21 | 1993-04-27 | Wang Laboratories, Inc. | Integration of data between typed objects by mutual, direct invocation between object managers corresponding to object types |
| US5075848A (en) * | 1989-12-22 | 1991-12-24 | Intel Corporation | Object lifetime control in an object-oriented memory protection mechanism |
-
1990
- 1990-09-25 US US07/587,813 patent/US5367671A/en not_active Expired - Fee Related
-
1991
- 1991-09-20 JP JP3268660A patent/JPH04297934A/ja active Pending
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| AU685476B2 (en) * | 1993-10-08 | 1998-01-22 | Fujitsu Limited | File name detecting methd for use with operating system |
| JP2001526815A (ja) * | 1997-06-13 | 2001-12-18 | マイクロソフト コーポレイション | リモート・ストレージに対してファイル・システムにネーティブな支援を与えるファイル・システム・プリミティブ |
| US8972348B2 (en) | 1999-10-04 | 2015-03-03 | Microsoft Corporation | Method and system for supporting off-line mode of operation and synchronization |
Also Published As
| Publication number | Publication date |
|---|---|
| US5367671A (en) | 1994-11-22 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH04297934A (ja) | データ処理システム | |
| JP3984983B2 (ja) | 小さいオブジェクトデータストリームを使用する、データオブジェクトを保存する方法 | |
| US5239647A (en) | Data storage hierarchy with shared storage level | |
| US7610296B2 (en) | Prioritized files | |
| US7765189B2 (en) | Data migration apparatus, method, and program for data stored in a distributed manner | |
| CA1303747C (en) | Method of rapidly opening disk files identified by path names | |
| US6119118A (en) | Method and system for extending file system metadata | |
| US5317728A (en) | Storage management of a first file system using a second file system containing surrogate files and catalog management information | |
| US5537592A (en) | System and method for reading and writing disks formatted for an operating system foreign to the host computer | |
| US6792518B2 (en) | Data storage system having mata bit maps for indicating whether data blocks are invalid in snapshot copies | |
| US5623661A (en) | System for and method of providing delta-versioning of the contents of PCTE file objects | |
| US6275910B1 (en) | Storage device and method for data sharing | |
| JP4799936B2 (ja) | 条件別スナップショット取得方法及びシステム | |
| US5303392A (en) | Accessing current symbol definitions in a dynamically configurable operating system | |
| JPH04504018A (ja) | 消去不可能な記憶媒体上にファイルを読出しかつ書込む方法 | |
| JPH02249043A (ja) | フアイル・システム・モジュール | |
| JPH03171238A (ja) | 設置可能なファイルシステムにおいてダイナミックボリュームトラッキングを行う方法及び装置 | |
| JPH10500508A (ja) | ファイルシステムに記憶された情報に関する要求を処理する方法及び装置 | |
| JPH0934755A (ja) | 記憶装置内容整理システムおよび記憶装置内容整理方法 | |
| KR20020080458A (ko) | 가상 디스크 드라이브를 이용한 저장 시스템의 물리적섹터의 파티션 재생성 방법, 데이터 처리 장치 및 데이터저장 장치 | |
| JP2001517836A (ja) | 1つの記憶媒体の名称空間を別の記憶媒体の名称空間に移植する場合に既定のアクションを実行するシステムおよび方法 | |
| JP2006195949A (ja) | コンピュータオペレーティングシステムに渡ってコンピュータファイルへのアクセスを行うシステムおよび方法 | |
| CN102804137B (zh) | 控制对软件构件状态的访问 | |
| US6625614B1 (en) | Implementation for efficient access of extended attribute data | |
| JP2004206353A (ja) | ソフトウェアのインストール方法 |