JPH09506195A - 拡張属性ファイルシステム - Google Patents

拡張属性ファイルシステム

Info

Publication number
JPH09506195A
JPH09506195A JP7516332A JP51633294A JPH09506195A JP H09506195 A JPH09506195 A JP H09506195A JP 7516332 A JP7516332 A JP 7516332A JP 51633294 A JP51633294 A JP 51633294A JP H09506195 A JPH09506195 A JP H09506195A
Authority
JP
Japan
Prior art keywords
extended
record
attributes
extended attribute
field
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP7516332A
Other languages
English (en)
Inventor
カルロス エイ. ネバレツ,
Original Assignee
ノベル, インコーポレイテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ノベル, インコーポレイテッド filed Critical ノベル, インコーポレイテッド
Publication of JPH09506195A publication Critical patent/JPH09506195A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99942Manipulating data structure, e.g. compression, compaction, compilation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99943Generating database or data structure, e.g. via user interface

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)
  • Management Or Editing Of Information On Record Carriers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

(57)【要約】 本発明は、ファイルシステムを管理、保守、及び制御するために拡張属性(210)の定義、フォーマット、及び構造を提供する。このことは、ファイルシステムのディレクトリエントリ(110A〜110D)に関連した、管理、保守、制御及びその他にユーザが規定するデータを含むデータベースを生成することによって、達成される。データベースは、1つ或いはセットになった拡張属性(210)の内部に記憶される。本発明によれば、各々の拡張属性(210)は、第1の複数のフィールド(310〜318)を備える拡張属性を規定するヘッダ(210A)を含んでいる。各々の拡張属性は、データを記憶する複数のレコード(210B)も含んでいる。さらに、複数のレコードのうちの各レコードは、第2の複数のフィールド(340〜348)を備えている。拡張属性は、ファイルシステムのディレクトリエントリテーブル(110)のディレクトリエントリ(110A〜110D)に記憶されたストリングによって特定される。ストリングは、本発明のデータベースアーキテクチャを有する拡張属性を示す所定のサブストリングを備えている。拡張属性の第1の複数のフィールドは、ヘッダ長(310)、へッダのバージョン番号(312)、ヘッダの改訂番号(314)、データベースにおける拡張属性の数(316)、及びデータベースにおける複数のレコードのレコード数(318)を含む。第2の複数のフィールドは、レコードのネーム(346)とデータ(348)とレコード長(340)とレコード名の長さ(342)とデータ長(344)とを記憶するフィールドを備えている。ネーム及びデータの双方は、ストリングスとして記憶される。

Description

【発明の詳細な説明】 拡張属性ファイルシステム 発明の背景 1.発明の分野 本発明は、拡張属性を使用するファイルシステムの分野に関する。2.背景技術 先行技術において、いくつかのオペレーティングシステムは、拡張属性(EA )の概念をサポートしている。通常、先行技術の拡張属性は、「属性」すなわち データベースの内容を記憶するために使用される。 1993年6月8日にBairdらに対して発行された米国特許第5,218 ,696号に開示されている先行技術の方法は、UNIXのトリーをベースにし たファイルディレクトリシステムにおいて、ファイルディレクトリを動的に拡張 し且つ高速にアクセスする方法を実行している。その技術は、少なくとも零レコ ードを有するファイルのネーム指向なアクセスを提供し、コンピュータに結合し ている外部記憶を通ったファイル及びレコードへのアクセスパスが、一対の関連 するディレクトリによって規定される。レコードエントリの属性ディレクトリは 、2部トークン上にソートされる。トークンは、レコードに割り当てられた固有 のシリアル番号と、親のレコードエントリに割り当てられた固有のシリアル番号 と、からなっている。各々のレコードエントリは、トークンと、ファイル或いは レコードのネームと、外部記憶のアドレス或いはポインタと、を含んでいる。ネ ームディレクトリは、属性ディレクトリのサブセットである。トークンを介した 横断路は、リーフをサーチ可能なBトリーを構成する。ネームディレクトリは、 属性ディレクトリへの高速なアクセスを提供する。このように、Bairdらは 、ファイルディレクトリを動的に拡張し且つ高速にアクセスする方法に関してい る。しかし、この先行技術は、拡張属性の内部にデータベースを生成及び記憶す ることによる、改良されたファイルシステムの管理、保守及び制御を提供する拡 張属 性のアーキテクチャを欠いている。 1992年5月12日にJohnsonらに対して発行された米国特許第5, 113,519号に開示されている他の先行技術の方法は、分散データ処理シス テムのサーバデータ処理システムにて、ファイル属性を維持するシステム及び方 法を実行している。ファイル属性は、ファイルサイズ、改良時刻、及びアクセス 時刻を含んでいる。このシステム及び方法は、分散環境のプロセスをファイルに アクセスさせるプロトコルを提供する。ファイルは、システムコールを通じて、 或いはファイルを各プロセスのアドレス空間にマッピングするメカニズムを通じ て、アクセスされる。これによって、ファイルの属性は、関連するプロセスのす べてに分散される。属性は、分散環境の他の属性の各々からは別個に且つ独立し て維持される。Johnsonらは、分散データ処理システムのサーバデータ処 理システムで、ファイルサイズ、改良時刻、及びアクセス時刻を維持するシステ ム及び方法に関する。しかし、この先行技術は、拡張属性の内部にデータベース を生成及び記憶することによって改良されたファイルシステムの管理、保守及び 制御を提供する拡張属性のアーキテクチャを欠いている。 先行技術は、拡張属性に名前を付けて情報を記憶できるが、拡張属性に情報を 記憶するアーキテクチャを規定していない。これより、先行技術は、拡張属性を 使用した高性能なファイル管理を提供しない。 本発明の要旨 本発明は、ファイルシステムを管理、保守及び制御するための拡張属性の定義 、フォーマット及び構成を提供する。このことは、ファイルシステムのディレク トリエントリに関連した、管理、保守、制御及びその他にユーザが規定するデー タを含むデータベースを生成することによって、達成される。データベースは、 1つ或いはセットになった拡張属性の内部に記憶される。 本発明によれば、各々の拡張属性は、第1の複数のフィールドを備える拡張属 性を規定するヘッダを含んでいる。各々の拡張属性は、データを記憶する複数の レコードも含んでいる。さらに、複数のレコードのうちの各レコードは、第2の 複数のフィールドを備えている。拡張属性は、ファイルシステムのディレクトリ エントリテーブルのディレクトリエントリに記憶されたストリングによって特定 される。ストリングは、本発明のデータベースアーキテクチャを有する拡張属性 を示す所定のサブストリングを備えている。拡張属性の第1の複数のフィールド は、ヘッダ長、ヘッダのバージョン番号、ヘッダの改訂番号、データベースにお ける拡張属性の数、及びデータベースにおける複数のレコードのレコード数を含 む。第2の複数のフィールドは、レコードのネームとデータとレコード長とレコ ード名の長さとデータ長とを記憶するフィールドを備えている。ネーム及びデー タの双方は、ストリングスとして記憶される。 図面の簡単な説明 図1は、ディレクトリエントリテーブルと拡張属性とを備えるファイルシステ ムを示す図である。 図2は、ヘッダとNレコードのセットとを含む本発明の拡張属性を示す図であ る。 図3は、本発明の拡張属性の内部フォーマットを示す図である。 図4は、図3の拡張属性のヘッダフィールド及びレコードフィールドに使用さ れるデータのタイプを示す図である。 図5は、FMEAデータベースを含み得るディレクトリエントリをサーチする 方法を示す流れ図である。 本発明の詳細な説明 拡張属性を使用してファイルシステム管理を提供する方法が述べられる。以下 の記載では、本発明のより十分な記述を提供するために、ファイルフォーマット やポインタなどの数々の特定の詳細が詳しく述べられる。しかし、本発明がこれ らの特定の詳細なしに実施し得ることは、当業者には明らかであろう。また、不 必要に本発明を不明確にしないように、既知の特徴は詳細には述べられない。拡張属性アーキテクチャをサポートするファイルシステム 本発明は、拡張属性のサポートでファイルシステム(例えば、ネットウェアフ ァイルシステムのバージョン3.X及びそれ以上のもの)を管理するアーキテク チャである。図1は、ファイルシステム、すなわちネットウェアファイルシステ ムのバージョン3.Xの典型を示す図である。ファイルシステム104は、ディ レクトリエントリテーブル110と拡張属性120、130及び140とを備え る。ディレクトリエントリテーブル110は、ディレクトリエントリ110A〜 110Dを備えている。図1は、単一の拡張属性120或いは拡張属性120及 び130のリストが、各々のディレクトリエントリ110A〜110Dに関連し 得ることを示している。ディレクトリエントリ110A〜110Dは、ファイル システム110の中のファイル或いはディレクトリとして規定される。各々のデ ィレクトリエントリ110A〜110Dの拡張属性は、ファイルシステム104 のユーザからは「隠されて」いて、通常はファイルシステム104のどのクライ アントからも「見えない」。アプリケーションソフトウエア及びオペレーティン グシステム(例えばOS/2)は、拡張属性(例えば拡張属性120及び130 )を使用して、ファイルについての情報を記憶する。この情報は、所有者やアプ リケーションに依存した情報を含む。 本発明は、ファイルシステム104を管理、保守及び制御する目的で、拡張属 性120及び130の定義、フォーマット、及び構成を、より明確に特定する。 これは、ディレクトリエントリ110A〜110Dに関連した管理、保守、制御 、及びその他のユーザが規定するデータを含むデータベースを生成することによ って、実現される。データベースは、拡張属性120或いは拡張属性120及び 130のセットの内部に記憶される。 以下の記載では、このアーキテクチャをサポートする拡張属性120及び13 0は、ファイル管理拡張属性(FMEA)として参照される。本発明のファイル システム104は、既知の長さのテキストストリングを有する拡張属性120、 130及び140を許容する。本発明の好適な実施形態では、テキストストリン グは、長さにして255キャラクタまでを備え得る。FMEAアークテクチャを サポートしている拡張属性120及び130は、そのネームのはじめに「FME A」というサブストリングを含むことを要求される。本発明は、サブストリング 「FMEA」に限られものではなく、本発明の範囲から逸脱することなく他のキ ャラクタの組み合わせも使用し得る。サブストリングの後には、ファイルシステ ム104の拡張属性のネーミング規定によって許されるキャラクタの組み合わせ が続き得る。「FMEA」でそのネームが始まるストリングを有する拡張属性は 、特定のディレクトリエントリのためのFMEAデータベースの一部とみなされ る。他の拡張属性がディレクトリエントリ110A〜110Dに関連し得るが、 FMEAアーキテクチャに従ったツール或いは方法によってはサポートされてい ない。例えば、ディレクトリエントリ110Aの拡張属性140はサブストリン グ「XYZ123」で始まるネームを有し、FMEAデータベースの一部ではな い。しかし、ディレクトリエントリ110Cの拡張属性120は、FMEAデー タベースの一部である。拡張属性アーキテクチャを使用するデータベース FMEAデータベースは、図2に示されるようにフォーマットされた1つまた はそれ以上のFMEAとして構成される。図2は、FMEA210が、ヘッダ2 10A及びNレコードのセット210B(すなわち、レコード1からレコードN )を含むことを示す図である。ディレクトリエントリ110DのFMEA210 は、「FMEA TWO」というネームで参照される。ヘッダ210Aの後には 、一つまたはそれ以上のレコードのセット210Bが続く。このアーキテクチャ のためには、レコードのないFMEAはデータベースから削除される。すなわち 、もしFMEA210がレコードを有していなければ、FMEA210はデータ ベースから削除される。図2は、データベースの内部構造を図示する。拡張属性の内部アーキテクチャ 図3は、FMEAの内部フォーマットを示す図である。拡張属性210は、サ ブストリング「FMEA」で始まるそのネームが示すように、FMEAである。 拡張属性210は、ヘッダ210AとNレコードのセット210Bとを備えてい る。Nレコードのセット210Bは、レコード2を含んでいる。ヘッダ210A とレコード2とが、(点線で示されて)詳細に示されている。 ヘッダ210Aは可変長構造を有していて、長さフィールドの調整及びヘッダ 構造の末尾への付加的な情報の添付によって、拡張し得る。ヘッダ210Aは、 フィールド310、312、314、316及び318を備えている。ヘッダ3 10の長さはヘッダ構造の長さを(すなわちバイトで)特定し、拡張属性210 の中の第1のレコード(すなわち、レコード1)のオフセットを決定するために も使用される。フィールド312及び314は、FMEAのバージョンと改訂と をそれぞれ記憶する。フィールド316は、データベースにおけるFMEAの数 を含んでいる。データベースにおける各々のFMEAは、そのヘッダのフィール ド316にこの数を記憶している。FMEA210のフィールド318は、デー タベースのすべての必要なFMEAの存在を決定する目的で使用される。レコー ドフィールド318の数は、フィールド316によって与えられるFMEAデー タベースのレコード総数というよりは、特定のFMEA210の内部のレコード を意味する。 図3の拡張属性210は、レコード2を含むNレコードのセット210Bを含 んでいる。FMEA210のレコード2は図3の詳細に示されていて、フィール ド340、342、344、346及び348を備えている。レコードフィール ド340の長さは、レコード構造の長さを(即ちバイトで)特定する。フィール ド342は、そのネームに、所定の数(例えば255キャラクタ)までのキャラ クタの数を特定するネームの長さを含んでいる。フィールド344は、レコード (すなわちレコード2)に含まれるデータ長を記憶する。フィールド346は、 特定のレコード(すなわち、この例ではレコード2)のネームを含む。FMEA 210のフィールド348は、レコード2に記憶されているデータを含む。 図4は、本発明の好適な実施形態において、図3のFMEA210のためのヘ ッダ210Aのフィールド310〜318及びレコードのフィールド340〜3 48に使用される特定のデータのタイプを示す図である。本発明の好適な実施形 態では、バイトは、符号無しの8ビットの整数として規定され、ワードは、符号 無しの16ビットの整数として規定され、dワードは、符号無しの32ビットの 整数として規定され、ストリングはバイトのシーケンスとして規定される。 ヘッダ210Aのヘッダフィールド310の長さは、ヘッダ210Aが65、 535バイトの長さ迄をとり得るようなワードデータタイプである。FMEAの バージョン及び改訂のフィールド312及び314は、各々がダブルワード(す なわち、32ビットの整数)である。データベースフィールド316におけるF MEAの数は、データベースが4ギガバイト(4GB)迄の拡張属性を含み得る ようなダブルワードである。レコードフィールド318の数は、拡張属性(すな わち、特定のFMEA210)が65、535レコードまでを含み得るようなワ ードである。 レコード2のレコードフィールド340の長さは、レコードが65、535バ イトまでの長さであり得るようなワードデータタイプである。ネームフィールド 342の長さは、レコードネーム346(ストリング)が255キャラクタまで を含み得るバイトである。データフィールド344の長さは、データ348(ス トリング)が65、535キャラクタまでを含み得るワードである。上述のよう に、ネームフィールド346及びデータフィールド348は、(それぞれ255 バイトまで及び65、535バイトまでの)バイトのシーケンスである。拡張属性アーキテクチャを使用するデータベースの動作 図1〜4に示されている拡張属性のアーキテクチャ(FMEA)は、レコード ネーム346をサーチキーとして使用するディレクトリエントリ(すなわち、図 1のディレクトリエントリテーブル110のディレクトリエントリ110A〜1 10D)へのアクセスを提供するツール及び方法によって、使用され得る。例え ば、アプリケーションプログラムは、ファイルシステムが、図1のディレクトリ エントリ110A〜110Dに「ワードプロセッシング」や「スプレッドシート 」などのアプリケーションのタイプの「標識を付ける」ことを認め得る。これに より、全ファイルシステム104は、「ワードプロセッシング」というタイプを 有するすべてのファイル及びディレクトリ(すなわち、ディレクトリエントリテ ーブル110のディレクトリエントリ110A〜110D)をサーチされ得る。 「ワードプロセッシング」というストリングは、ファイルシステム104のファ イル及びディレクトリのためのFMEAデータベースの中のあるレコード(例え ば、図2〜4に示されるセット210Bのレコード2)のネームフィールド34 6に記憶される。これによって、ファイルシステム104の監督者は、例えば実 行可能ファイルとは対照的なテキストファイルによって使用される記憶空間を決 定し得る。「ワードプロセッシング」というタイプを有するファイル及びディレ クトリの検索という特定の例が示されているが、本発明がファイルシステム(例 えばノベルネットワーク環境)のファイル及びディレクトリの管理、保守及び制 御を実行するためのツール及び方法によっても使用され得ることは、当業者には 明らかであろう。 拡張属性アーキテクチャを提供する本発明は、ファイルシステムの監督者が、 コンピュータネットワーク環境(例えば、ノベルネットワーク環境)においてフ ァイル及びディレクトリを容易に管理することを可能にする。表1は、ノベルネ ットワークのユーティリティを使用し得る本発明のいくつかのアプリケーション を含んでいる。 NCOPYユーティリティは、FMEAネーム346にマッチするすべてのフ ァイルをコピーする。NDIRユーティリティは、ファイルシステム104の中 でFMEAレコードネーム(例えば、「ワードプロセッシング」)にマッチする ファイルのディレクトリ情報を表示する。SMSユーティリティは、FMEAレ コードネーム346にマッチするディレクトリエントリ110A〜110Dのバ ックアップコピーをとる。FILERユーティリティは、FMEAデータベース 及びその内容の生成及び監督を行う。FLAGユーティリティは、レコードネー ムをFMEAデータベースに追加する。これは、ファイル或いはディレクトリ( ディレクトリエントリ110A〜110D)にストリングで「標識を付ける」こ とによって実行される。 本発明は、ファイルのバージョン制御システムを実現するために使用され得る 。拡張属性アーキテクチャを使用すれば、バージョン制御システムは、ファイル のバージョン番号、ファイルが作成された日付、ファイルの所有者(或いは責任 者)、及びFMEAではないアプリケーションがファイルを改良したときを検知 するための電子フットプリントなどのファイル情報を追跡し続けることができる 。先行技術のバージョン制御システムは、特にソフトウエアファイルのリリース に関して非効率である。FMEAアーキテクチャ及びファイルシステムユーティ リティを用いると、ソースコードのライブラリアンは、「リリース」というスト リングを使用してレコードネーム346にリリースファイルとして「標識を付け 」得る。NCOPYユーティリティが、例えばすべての「リリース」ファイルを コンパクトディスク(CD)に記憶のためにコピーするために使用され得る。先 行技術においては、この操作は「リリース」ファイルを手作業でコピーすること によって手作業で行われているが、これは速度が遅く非効率的である。これより 、本発明は、「リリース」ファイルをコピーする効率的な方法を提供する。 本発明の拡張属性(FMEA)アーキテクチャによれば、複数のFMEAデー タベースがファイルに関連させられる。アプリケーションプログラムは、アプリ ケーションプログラムが本発明のアーキテクチャに従っている限りは、アプリケ ーションプログラムによる使用のためのFMEAのセットを生成し得て、ファイ ルシステムのユーティリティ及び他のFMEAアプリケーション(及び方法)が それらをサポートし得る。本発明を使用したディレクトリエントリのサーチ 図5は、関連したFMEAデータベースを含み得るディレクトリエントリをサ ーチする方法を示す図である。図はさらに、FMEAデータベースの各レコード を読みレコードのネーム及びデータをユーザに出力する方法を示している。図5 は、本発明に従ってファイルシステムの管理、保守及び制御のために拡張属性の 定義、フォーマット及び構造を使用するデータフローを示す例として、用いられ ている。処理は、ステップ500で始まる。ステップ502で、ディレクトリエ ントリ(DE)が見つかる(例えば、DE110A〜110D)。決定ブロック 504では、ディレクトリエントリが関連したFMEAデータベースを有してい るかどうかを決定するためのチェックが行われる。本発明の好適な実施形態では 、このチェックは、拡張属性のネームの開始サブストリングを見て、それが「F MEA」を含んでいるかどうかを決定することによって行われる。拡張属性のネ ームが「FMEA」で始まっているときには、拡張属性はFMEAデータベース を含むと推定される。これより、決定ブロック504が偽(no)を返すと、処 理は決定ブロック512に進む。決定ブロック512では、ファイルシステム( 例えばファイルシステム104)にさらにディレクトリエントリがあるかどうか を決定するためのチェックが行われる。決定ブロック512が偽(no)を返す と、処理はステップ514に進む。ステップ514で、処理は終了する。決定ブ ロック512が真(yes)を返すと、処理はステップ502に進む。決定ブロ ック504が真(yes)を返すと、処理はステップ506に進む。 ステップ506で、拡張属性のカウントが零にセットされる。ステップ508 で、ディレクトリエントリのFMEAがオープンされる(例えば、図1のDE1 10Cの拡張属性120)。ステップ510で、FMEAデータベースのヘッダ が、データベースにおける拡張属性の数を得るために読まれる(例えば、図4に 示されるヘッダ210Aのフィールド316)。ステップ516で、拡張属性の カウントがFMEAデータベースの中の拡張属性の数よりも小さいかどうかを決 定するためのチェックが行われる。決定ブロック516が偽(no)を返すと、 処理は(上述した)決定ブロック512に進む。決定ブロック516が真(ye s)を返すと、処理はステップ518に進む。 ステップ518で、FMEAのヘッダが、特定の拡張属性の中のレコードの数 を得るために読まれる(すなわち、図3及び4に示されているヘッダ210Aの フィールド318)。ステップ520で、拡張属性のネームがユーザに出力され る。ステップ522で、レコードのカウントが零にセットされる。決定ブロック 524で、レコードのカウントが拡張属性の中のレコードの数よりも小さいかど うかを決定するためのチェックが行われる。決定ブロック524が偽(no)を 返すと、処理はステップ534に進む。ステップ534で、FMEAデータベー スを含む他の拡張属性(FMEA)が得られる。ステップ536では、拡張属性 のカウントがインクリメントされる。処理は、決定ブロック516に進む。決定 ブロック524が真(yes)を返すと、処理はステップ526に進む。 ステップ526で、拡張属性のレコード(例えば、図3に示されている拡張属 性210のレコード2)が読まれる。ステップ528で、レコードのネーム(す なわち、図3及び4に示されているフィールド346)が出力される。ステップ 530で、レコードのデータ(すなわち、図3及び4に示されているフィールド 348)がユーザに出力される。レコードのネーム346及び/或いはデータ3 48が解釈或いは他の処理を必要とし得ることは、当業者には明らかであろう。 ステップ532で、レコードのカウントがインクリメントされる。処理は、決定 ブロック524に進む。 このようにして、ファイルシステムの管理、保守、及び制御のために拡張属性 の定義、フォーマット、及び構造を提供する方法が開示される。
───────────────────────────────────────────────────── フロントページの続き (81)指定国 EP(AT,BE,CH,DE, DK,ES,FR,GB,GR,IE,IT,LU,M C,NL,PT,SE),OA(BF,BJ,CF,CG ,CI,CM,GA,GN,ML,MR,NE,SN, TD,TG),AP(KE,MW,SD,SZ),AM, AT,AU,BB,BG,BR,BY,CA,CH,C N,CZ,DE,DK,ES,FI,GB,GE,HU ,JP,KE,KG,KP,KR,KZ,LK,LT, LU,LV,MD,MG,MN,MW,NL,NO,N Z,PL,PT,RO,RU,SD,SE,SI,SK ,TJ,TT,UA,UZ,VN 【要約の続き】 備えている。拡張属性の第1の複数のフィールドは、ヘ ッダ長(310)、へッダのバージョン番号(31 2)、ヘッダの改訂番号(314)、データベースにお ける拡張属性の数(316)、及びデータベースにおけ る複数のレコードのレコード数(318)を含む。第2 の複数のフィールドは、レコードのネーム(346)と データ(348)とレコード長(340)とレコード名 の長さ(342)とデータ長(344)とを記憶するフ ィールドを備えている。ネーム及びデータの双方は、ス トリングスとして記憶される。

Claims (1)

  1. 【特許請求の範囲】 1.複数のディレクトリエントリを有するファイルシステムの拡張属性に含まれ るデータベースをナビゲートする方法であって、該方法は、 (a) ファイルシステムの内部の該複数のディレクトリエントリの一つを読 むステップと、 (b) 拡張属性が該ディレクトリエントリに関連しているかを決定し、もし そうであるならば、ステップ(c)に進むステップと、 (c) 該拡張属性の第1のフィールドを調べるステップであって、該第1の フィールドが該ディレクトリエントリに関連している拡張属性の数を示している 、ステップと、 (d) 該拡張属性に記憶されているレコードの数を該拡張属性の第2のフィ ールドから読むステップと、 (e) 該拡張属性のレコードを調べるステップと、 (f) 該拡張属性の調べられたレコードの第1のカウンタをインクリメント するステップと、 (g) 調べられたレコードの該カウンタの値を該拡張属性に記憶されている レコードの該数と比較するステップと、 (h) 調べられたレコードの該カウンタの値が該拡張属性に記憶されている レコードの数よりも小さいならば、ステップ(e)からステップ(g)を繰り返 すステップと、 (i) 該複数のディレクトリエントリの残りに対してステップ(a)からス テップ(h)を繰り返すステップと、 を包含している、方法。 2.前記複数のディレクトリエントリがファイルのためのエントリとサブディレ クトリのためのエントリとを備えている、請求項1に記載の方法。 3.前記拡張属性のレコードを調べる前記ステップが、 該レコードのデータを調べるステップと、 該レコードの該データをユーザによって特定されるレコード選択規準と比較す るステップと、 該データが該規準に適合するならば、該レコードの該データを該ユーザに供給 するステップと、 を包含している、請求項1に記載の方法。 4.前記拡張属性の第1のフィールドを調べる前記ステップが、 前記第1のディレクトリエントリのために調べられた拡張属性のカウンタをイ ンクリメントするステップと、 調べられた拡張属性の該カウンタの値を該ディレクトリエントリに関連する拡 張属性の前記数と比較するステップと、 調べられた拡張属性の該カウンタの該数が拡張属性の該数と等しいならば、該 ディレクトリエントリに関連した他の拡張属性を読まないステップと、 を包含する、請求項1に記載の方法。 5.前記拡張属性の第1のフィールドを調べる前記ステップが、該拡張属性のヘ ッダを調べるステップを含み、該ヘッダは該ヘッダの長さを特定するデータを備 えている、請求項1に記載の方法。 6.前記ヘッダが前記第1のフィールド及び前記第2のフィールドを備えている 、請求項5に記載の方法。 7.前記拡張属性の前記レコードの各々が前記レコードの長さを特定するデータ を備えている、請求項6に記載の方法。 8.前記拡張属性の第1のレコードの冒頭が前記ヘッダの前記長さを特定する前 記データから決定されて、該拡張属性の引き続くレコードの冒頭が該第1のレコ ードの該長さを特定する該データから決定されている、請求項7に記載の方法。 9.ファイルシステムのディレクトリエントリに関連した拡張属性からデータを 読む方法であって、該方法は、 (a) 第1のディレクトリエントリを読んで、第1のFMEAコンプライア ントな拡張属性が該第1のディレクトリエントリに関連しているどうかを決定す るステップと、 (b) 該第1のFMEAコンプライアントな拡張属性の第1のフィールドを 調べるステップであって、該第1のフィールドは該第1のディレクトリエントリ に関連したFMEAコンプライアントな拡張属性の数を示している、ステップと 、 (c) 該第1のFMEAコンプライアントな拡張属性の第2のフィールドを 調べるステップであって、該第2のフィールドは該第1のFMEAコンプライア ントな拡張属性に記憶されたレコードの数を示している、ステップと、 (d) 該第1のFMEAコンプライアントな拡張属性に記憶されているレコ ードを読むステップと、 を包含している、方法。 10.(e)前記第1のFMEAコンプライアントな拡張属性の残りのレコード を読むステップをさらに包含する、請求項9に記載の方法。 11.(f)前記第2のフィールドを調べて、前記第1のディレクトリに関連し た残りのFMEAコンプライアントな拡張属性のレコードを読むステップをさら に包含する、請求項10に記載の方法。 12.(g)前記ファイルシステムの残りのディレクトリエントリに対してステ ップ(a)から(f)を繰り返すステップをさらに包含する、請求項11の方法 。 13.前記ステップ(d)が、前記第1のレコードに記憶されていたデータをユ ーザに表示するステップをさらに包含する、請求項9に記載の方法。 14.ファイルシステムの中のディレクトリエントリの拡張属性にデータベース を記憶する方法であって、該方法は、 複数の拡張属性をファイルシステムのディレクトリエントリに関連付けるステ ップであって、該複数の拡張属性の各々が該ディレクトリエントリに関連した該 複数の拡張属性の数を示す第1のフィールドを備えている、ステップと、 該ディレクトリエントリに関連した該複数の拡張属性の各々に任意の内容の任 意の数のレコードを記憶するステップと、 を包含する、方法。 15.前記複数の拡張属性がネームを有していて、複数の拡張属性をディレクト リエントリに関連付ける前記ステップが、該複数の拡張属性の該ネームの中のあ らかじめ規定されたテキストストリングを用いるステップを含み、該テキストス トリングは、該複数の拡張属性をFMEAコンプライアントなアーキテクチャを 有していると特定する、請求項14に記載の方法。 16.前記複数の拡張属性の各々が、該複数の拡張属性の各々に記憶されている レコードの数を示す第2のフィールドを備えている、請求項14に記載の方法。
JP7516332A 1993-12-10 1994-12-07 拡張属性ファイルシステム Pending JPH09506195A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US165,971 1993-12-10
US08/165,971 US5499358A (en) 1993-12-10 1993-12-10 Method for storing a database in extended attributes of a file system
PCT/US1994/014097 WO1995016241A1 (en) 1993-12-10 1994-12-07 Extended attributes file system

Publications (1)

Publication Number Publication Date
JPH09506195A true JPH09506195A (ja) 1997-06-17

Family

ID=22601259

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7516332A Pending JPH09506195A (ja) 1993-12-10 1994-12-07 拡張属性ファイルシステム

Country Status (8)

Country Link
US (2) US5499358A (ja)
EP (1) EP0733238B1 (ja)
JP (1) JPH09506195A (ja)
AT (1) ATE164696T1 (ja)
AU (1) AU1432095A (ja)
CA (1) CA2178753C (ja)
DE (1) DE69409404T2 (ja)
WO (1) WO1995016241A1 (ja)

Families Citing this family (79)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5499358A (en) * 1993-12-10 1996-03-12 Novell, Inc. Method for storing a database in extended attributes of a file system
US5794251A (en) * 1994-06-06 1998-08-11 Canon Kabushiki Kaisha Information file processing apparatus and method
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
US5677851A (en) * 1994-12-15 1997-10-14 Novell, Inc. Method and apparatus to secure digital directory object changes
US5701452A (en) * 1995-04-20 1997-12-23 Ncr Corporation Computer generated structure
US5819275A (en) * 1995-06-07 1998-10-06 Trusted Information Systems, Inc. System and method for superimposing attributes on hierarchically organized file systems
US5761499A (en) * 1995-12-21 1998-06-02 Novell, Inc. Method for managing globally distributed software components
US5829023A (en) * 1995-07-17 1998-10-27 Cirrus Logic, Inc. Method and apparatus for encoding history of file access to support automatic file caching on portable and desktop computers
US5878419A (en) * 1996-01-19 1999-03-02 Novell, Inc. Method for creating a relational description of a formatted transaction
US6119118A (en) * 1996-05-10 2000-09-12 Apple Computer, Inc. Method and system for extending file system metadata
US5907845A (en) * 1996-07-26 1999-05-25 International Business Machines Corporation Method and system for organizing on-line books using bookcases
FI104599B (fi) * 1996-08-29 2000-02-29 Nokia Networks Oy Tapahtumien tallettaminen palvelutietokantajärjestelmässä
FI104596B (fi) 1996-08-29 2000-02-29 Nokia Networks Oy Tapahtumien tallettaminen palvelutietokantajärjestelmässä
FI104597B (fi) * 1996-08-29 2000-02-29 Nokia Networks Oy Tapahtumien tallettaminen palvelutietokantajärjestelmässä
FI104598B (fi) * 1996-08-29 2000-02-29 Nokia Networks Oy Tapahtumien tallettaminen palvelutietokantajärjestelmässä
FI104594B (fi) * 1996-08-29 2000-02-29 Nokia Networks Oy Tapahtumien tallettaminen palvelutietokantajärjestelmässä
FI104595B (fi) * 1996-08-29 2000-02-29 Nokia Networks Oy Tapahtumien tallettaminen palvelutietokantajärjestelmässä
FI104600B (fi) * 1996-08-29 2000-02-29 Nokia Networks Oy Kuormitustilanteen valvonta palvelutietokantajärjestelmässä
US5873079A (en) * 1996-09-20 1999-02-16 Novell, Inc. Filtered index apparatus and method
US5884304A (en) * 1996-09-20 1999-03-16 Novell, Inc. Alternate key index query apparatus and method
US5870739A (en) * 1996-09-20 1999-02-09 Novell, Inc. Hybrid query apparatus and method
US5943675A (en) * 1996-09-25 1999-08-24 Allen-Bradley Company, Llc Change log historian system for memory shared by multiple workstations
DE19645128C2 (de) * 1996-11-04 1999-02-11 Anja David Verfahren zum Verwalten von Dokumenten sowie Gerätetreiber zur Durchführung des Verfahrens
US6029229A (en) * 1997-01-29 2000-02-22 Emc Corporation Digital data storage subsystem including directory for efficiently providing formatting information for stored records
EP0914636A4 (en) * 1997-04-07 2008-07-30 At & T Corp SYSTEM AND METHOD FOR PROCESSING AUDIOVISUAL INFORMATION OBJECT-ORIENTED
US5978815A (en) * 1997-06-13 1999-11-02 Microsoft Corporation File system primitive providing native file system support for remote storage
US5940841A (en) * 1997-07-11 1999-08-17 International Business Machines Corporation Parallel file system with extended file attributes
US6016499A (en) * 1997-07-21 2000-01-18 Novell, Inc. System and method for accessing a directory services respository
JP3024619B2 (ja) * 1997-11-20 2000-03-21 三菱電機株式会社 ファイル管理方法
US6654931B1 (en) 1998-01-27 2003-11-25 At&T Corp. Systems and methods for playing, browsing and interacting with MPEG-4 coded audio-visual objects
US6925477B1 (en) * 1998-03-31 2005-08-02 Intellisync Corporation Transferring records between two databases
US6189103B1 (en) 1998-07-21 2001-02-13 Novell, Inc. Authority delegation with secure operating system queues
US6510450B1 (en) 1999-02-04 2003-01-21 Novell, Inc. Multiple storage class distributed nametags for locating items in a distributed computing system
US6922708B1 (en) * 1999-02-18 2005-07-26 Oracle International Corporation File system that supports transactions
JP4251726B2 (ja) * 1999-07-08 2009-04-08 三菱電機株式会社 ファイル管理方法
US7620620B1 (en) * 1999-08-05 2009-11-17 Oracle International Corporation Basing directory contents on a query that is associated with a file identifier
US6381600B1 (en) * 1999-09-22 2002-04-30 International Business Machines Corporation Exporting and importing of data in object-relational databases
JP3573012B2 (ja) * 1999-09-29 2004-10-06 三菱電機株式会社 データ管理装置およびデータ管理方法
US7302399B1 (en) * 1999-11-10 2007-11-27 Electronic Data Systems Corporation Method and system for processing travel reservation data
US6424976B1 (en) 2000-03-23 2002-07-23 Novell, Inc. Method of implementing a forward compatibility network directory syntax
US6625597B1 (en) 2000-07-25 2003-09-23 Mobashar Yazdani Information exchange system
US6625614B1 (en) * 2000-09-07 2003-09-23 International Business Machines Corporation Implementation for efficient access of extended attribute data
US6970892B2 (en) * 2001-02-16 2005-11-29 Stratus Technologies Bermuda Ltd Implementing standards-based file operations in proprietary operating systems
US6721758B1 (en) 2001-03-30 2004-04-13 Novell, Inc. System and method for using schema attributes as meta-data in a directory service
US7139763B1 (en) * 2001-09-28 2006-11-21 Sonic Solutions Method and system for processing data selected for recording to optical media
AU2003210795A1 (en) * 2002-02-01 2003-09-02 John Fairweather System and method for analyzing data
US7562089B2 (en) * 2002-06-26 2009-07-14 Seagate Technology Llc Systems and methods for storing information to allow users to manage files
US20060168089A1 (en) * 2002-09-30 2006-07-27 Sampson Scott E Controlling incoming communication by issuing tokens
US8051172B2 (en) * 2002-09-30 2011-11-01 Sampson Scott E Methods for managing the exchange of communication tokens
US6804687B2 (en) 2002-09-30 2004-10-12 Scott E. Sampson File system management with user-definable functional attributes stored in a token action log
US20040073688A1 (en) * 2002-09-30 2004-04-15 Sampson Scott E. Electronic payment validation using Transaction Authorization Tokens
US6909994B2 (en) * 2002-11-25 2005-06-21 General Electric Company Method, system and computer product for performing failure mode and effects analysis throughout the product life cycle
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
US20040220941A1 (en) * 2003-04-30 2004-11-04 Nielson Mark R. Sorting variable length keys in a database
US7877426B2 (en) * 2003-07-17 2011-01-25 International Business Machines Corporation Performance-enhancing system and method of accessing file system objects
US7412632B2 (en) * 2003-11-25 2008-08-12 Ford Motor Company Method to facilitate failure modes and effects analysis
WO2005086003A1 (ja) * 2004-03-08 2005-09-15 Annex Systems Incorporated データベース・システム
JP4491273B2 (ja) * 2004-05-10 2010-06-30 株式会社日立製作所 ストレージシステム、ファイルアクセス制御プログラム及びファイルアクセス制御方法
US7904906B2 (en) * 2004-11-23 2011-03-08 Stratus Technologies Bermuda Ltd. Tracking modified pages on a computer system
US7921076B2 (en) 2004-12-15 2011-04-05 Oracle International Corporation Performing an action in response to a file system event
US9639554B2 (en) 2004-12-17 2017-05-02 Microsoft Technology Licensing, Llc Extensible file system
WO2007016360A2 (en) * 2005-07-28 2007-02-08 Metaldyne Company, Llc Look-across system
US8949455B2 (en) 2005-11-21 2015-02-03 Oracle International Corporation Path-caching mechanism to improve performance of path-related operations in a repository
US20070136517A1 (en) * 2005-11-29 2007-06-14 Quantum Corporation Use of directory revision number to validate directory
US7865464B2 (en) 2006-09-29 2011-01-04 Presenceid, Inc. Systems and methods for notifying multiple systems and applications of changes to data attributes
US7788708B2 (en) 2006-10-02 2010-08-31 Presenceid, Inc. Systems and methods for delegating information technology authorization to at least one other person
WO2008042907A2 (en) * 2006-10-02 2008-04-10 Presenceid, Inc. Systems and methods for managing identities in a database system
US8103673B2 (en) * 2006-10-02 2012-01-24 Presenceid, Inc. Systems and methods for provisioning content from multiple sources to a computing device
US7840590B2 (en) * 2006-12-18 2010-11-23 Oracle International Corporation Querying and fragment extraction within resources in a hierarchical repository
US20090049047A1 (en) * 2007-08-15 2009-02-19 Microsoft Corporation Storing custom metadata using custom access control entries
US8214641B2 (en) * 2007-08-23 2012-07-03 Microsoft Corporation File access in multi-protocol environment
US8037113B2 (en) * 2009-01-20 2011-10-11 Novell, Inc. Techniques for file system searching
US8656454B2 (en) * 2010-12-01 2014-02-18 Microsoft Corporation Data store including a file location attribute
US9996549B2 (en) * 2014-03-21 2018-06-12 Entangled Media Corp. Method to construct a file system based on aggregated metadata from disparate sources
US10642789B2 (en) 2014-11-01 2020-05-05 Hewlett Packard Enterprise Development Lp Extended attribute storage
CN107239712A (zh) * 2016-03-29 2017-10-10 阿里巴巴集团控股有限公司 基于应用程序的用户信息的隐藏方法及装置
US10528557B1 (en) * 2017-12-31 2020-01-07 Allscripts Software, Llc Database methodology for searching encrypted data records
US10528556B1 (en) 2017-12-31 2020-01-07 Allscripts Software, Llc Database methodology for searching encrypted data records
CN113377721B (zh) * 2021-07-02 2023-03-24 电信科学技术第五研究所有限公司 一种数据库中存储文件的文件表设计方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5047918A (en) * 1985-12-31 1991-09-10 Tektronix, Inc. File management system
US5113519A (en) * 1989-05-15 1992-05-12 International Business Machines Corporation Maintenance of file attributes in a distributed data processing system
US5218696A (en) * 1989-07-24 1993-06-08 International Business Machines Corporation Method for dynamically expanding and rapidly accessing file directories
US5371885A (en) * 1989-08-29 1994-12-06 Microsoft Corporation High performance file system
US5367671A (en) * 1990-09-25 1994-11-22 International Business Machines Corp. System for accessing extended object attribute (EA) data through file name or EA handle linkages in path tables
CA2067650C (en) * 1991-07-24 1996-10-22 Eric Jonathan Bauer Method and apparatus for operating a computer-based file system
DE4212796A1 (de) * 1992-04-16 1993-10-21 Bayer Ag Propenoyl-imidazolderivate
US5499358A (en) * 1993-12-10 1996-03-12 Novell, Inc. Method for storing a database in extended attributes of a file system

Also Published As

Publication number Publication date
WO1995016241A1 (en) 1995-06-15
US5628007A (en) 1997-05-06
AU1432095A (en) 1995-06-27
DE69409404T2 (de) 1998-09-03
EP0733238A4 (en) 1997-01-08
DE69409404D1 (de) 1998-05-07
EP0733238B1 (en) 1998-04-01
EP0733238A1 (en) 1996-09-25
US5499358A (en) 1996-03-12
CA2178753C (en) 2000-06-13
CA2178753A1 (en) 1995-06-15
ATE164696T1 (de) 1998-04-15

Similar Documents

Publication Publication Date Title
JPH09506195A (ja) 拡張属性ファイルシステム
JP6006267B2 (ja) 索引キーを使用して検索を絞込むシステムおよび方法
US7860907B2 (en) Data processing
US9898545B2 (en) Path-caching mechanism to improve performance of path-related operations in a repository
US6427123B1 (en) Hierarchical indexing for accessing hierarchically organized information in a relational system
JP2708331B2 (ja) ファイル装置およびデータファイルアクセス方法
US7444317B2 (en) System and method for managing file names for file system filter drivers
US8296312B1 (en) Search and update of attributes in file systems
US8095678B2 (en) Data processing
WO2019116167A1 (en) Storing unstructured data in a structured framework
JP2000003321A (ja) 高性能なメッセ―ジ格納構造
WO2003098477A1 (en) Search and presentation engine
US20080005524A1 (en) Data processing
US8176087B2 (en) Data processing
US20050102276A1 (en) Method and apparatus for case insensitive searching of ralational databases
EP1116137B1 (en) Database, and methods of data storage and retrieval
JPH06500656A (ja) 拡張テーブルを使用するページングシステム
US6618724B1 (en) Human-natural string compare for filesystems
US20210342333A1 (en) Partial updates in data collections in a data storage system
KR20130078594A (ko) 해시 함수 기반의 인덱스를 이용한 텍스트 검색 장치 및 방법
US20210286794A1 (en) Data tree checkpoint and restoration system and method
JPH0528194A (ja) データアクセス方式
Hickey SUPERIMPOSED CODING VERSUS SEQUENTIAL AND INVERTED FILES.
JPH0231425B2 (ja)
JPS63150724A (ja) デ−タアクセス処理方式