(57)【要約】【課題】  既存のシンボリックリンクを支援しないファイルシステムの構造を維持しつつ、アプリケーションレベルでのシンボリックリンクを支援する方法および装置を提供する。【解決手段】  ユーザによって絶対経路とシンボリックリンク経路とを含むシンボリックリンク生成命令が入力されるステップと、前記絶対経路が存在して前記シンボリックリンク経路が存在しない場合、前記シンボリックリンク経路を含むシンボリックリンクファイルを生成するステップと、前記生成されたシンボリックリンクファイルのディレクトリエントリのうち、特定フィールドを前記シンボリックリンクを示す特定値に変更するステップとからなる。【選択図】  図３
2007188501.tif 000002
【特許請求の範囲】
【請求項１】
シンボリックリンク識別フィールドを有しないファイルシステムと互換性を維持するシンボリックリンク生成方法であって、
ユーザによって絶対経路とシンボリックリンク経路を含むシンボリックリンク生成命令が入力されるステップと、
前記絶対経路が存在して前記シンボリックリンク経路が存在しない場合、前記シンボリックリンク経路を含むシンボリックリンクファイルを生成するステップと、
前記生成されたシンボリックリンクファイルのディレクトリエントリのうち、特定フィールドを前記シンボリックリンクを示す特定値に変更するステップとを含むシンボリックリンク生成方法。
【請求項２】
前記ディレクトリエントリは、
ファイル名を書き込むフィールド、ファイルの属性を書き込むフィールド、ファイル生成時刻および日付を書き込むフィールド、ファイルが最終変更された時刻および日付を書き込むフィールド、およびファイルサイズを書き込むフィールドを含む請求項１に記載のシンボリックリンク生成方法。
【請求項３】
前記特定フィールドは、
前記ファイル生成時刻および日付を書き込むフィールドを含む請求項２に記載のシンボリックリンク生成方法。
【請求項４】
前記特定フィールドは、
前記ファイルサイズを書き込むフィールドをさらに含む請求項３に記載のシンボリックリンク生成方法。
【請求項５】
前記変更するステップは、
前記ファイルサイズを書き込むフィールドに、前記ファイルシステムで定めている最大径路の大きさを書き込むステップを含む請求項４に記載のシンボリックリンク生成方法。
【請求項６】
シンボリックリンク識別フィールドを有しないファイルシステムと互換性を維持するように生成されたシンボリックリンクを用いてファイルまたはディレクトリにアクセスする方法であって、
ユーザによってある経路へのアクセス命令が入力されるステップと、
前記経路に該当するファイルまたはディレクトリに対するディレクトリエントリのうち、特定フィールドに書き込まれた値がシンボリックリンクであることを示す特定値と同一であるか否かを判断するステップと、
前記判断の結果、同一であれば、前記経路を前記ファイルまたはディレクトリの内容に含まれた経路に変換するステップと、
前記変換された経路に該当するファイルまたはディレクトリにアクセスするステップとを含むアクセス方法。
【請求項７】
前記ディレクトリエントリは、
ファイル名を書き込むフィールド、ファイルの属性を書き込むフィールド、ファイル生成時刻および日付を書き込むフィールド、ファイルが最終変更された時刻および日付を書き込むフィールド、およびファイルサイズを書き込むフィールドを含む請求項６に記載のアクセス方法。
【請求項８】
前記特定フィールドは、
ファイル生成時刻および日付を書き込むフィールドを含む請求項６に記載のアクセス方法。
【請求項９】
前記特定フィールドは、
ファイルサイズを書き込むフィールドをさらに含む請求項８に記載のアクセス方法。
【請求項１０】
前記ファイルサイズを書き込むフィールドには、
前記ファイルシステムで定めている最大径路の大きさが書き込まれている請求項６に記載のアクセス方法。
【請求項１１】
シンボリックリンク識別フィールドを有しないファイルシステムと互換性を維持するように生成されたシンボリックリンクを用いてファイルまたはディレクトリにアクセスする装置であって、
ユーザによってある経路へのアクセス命令が入力されるユーザ命令入力部と、
前記経路に該当するファイルまたはディレクトリに対するディレクトリエントリのうち、特定フィールドに書き込まれた値がシンボリックリンクであることを示す特定値と同一であるか否かを判断する属性読取部と、
前記判断の結果、同一であれば、前記経路を前記ファイルまたはディレクトリの内容に含まれた経路に変換する経路変換部と、
前記変換された経路に該当するファイルまたはディレクトリにアクセスする制御部とを含むアクセス装置。
【請求項１２】
前記ディレクトリエントリは、
ファイル名を書き込むフィールド、ファイルの属性を書き込むフィールド、ファイル生成時刻および日付を書き込むフィールド、ファイルが最終変更された時刻および日付を書き込むフィールド、およびファイルサイズを書き込むフィールドを含む請求項１１に記載のアクセス装置。
【請求項１３】
前記特定フィールドは、
ファイル生成時刻および日付を書き込むフィールドを含む請求項１１に記載のアクセス装置。
【請求項１４】
前記特定フィールドは、
ファイルサイズを書き込むフィールドをさらに含む請求項１３に記載のアクセス装置。
【請求項１５】
前記ファイルサイズを書き込むフィールドには、
前記ファイルシステムで定めている最大径路の大きさが書き込まれている請求項１１に記載のアクセス装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はファイルシステムに関し、より詳しくは、既存のシンボリックリンクを支援しないファイルシステムの構造をそのまま維持しつつ、アプリケーションレベルでのシンボリックリンクを支援する方法および装置に関するものである。
【背景技術】
【０００２】
一般に、オペレーティングシステム（ＯＳ）は、自身が設けられたシステム上に存在するデータを管理するためにファイルシステムを用いる。ファイルシステムとは、ファイルを管理するために最も先に構成されるべき論理的構造である。例えば、マイクロソフトウィンドウズ（登録商標）でのフォーマット命令は、このようなファイルシステムを作成して初期化する過程である。このようにファイルシステムが生成されてようやくユーザはファイルを格納したり削除したりすることができる。
【０００３】
ところで、ファイルシステムはＯＳによってその種類が非常に多様である。ウィンドウ系列のＯＳでは、ＦＡＴ（Ｆｉｌｅ  Ａｌｌｏｃａｔｉｏｎ  Ｔａｂｌｅ）またはＮＴＦＳ（Ｎｅｗ  Ｔｅｃｈｎｏｌｏｇｙ  Ｆｉｌｅ  Ｓｙｓｔｅｍ）というファイルシステムがあり、Ｕｎｉｘ（登録商標）／Ｌｉｎｕｘ系列のＯＳではＵＦＳ（Ｕｎｉｘ（登録商標）  Ｆｉｌｅ  Ｓｙｓｔｅｍ）、ＥＸＴ２（Ｅｘｔｅｎｄｅｄ  ２）、ＥＸＴ３（Ｅｘｔｅｎｄｅｄ  ３）、ＪＦＳ（Ｊｏｕｒｎａｌｉｎｇ  Ｆｉｌｅ  Ｓｙｓｔｅｍ）など多様なファイルシステムがある。これら各ファイルシステムごとにデータの暗号化、データの圧縮など多様な付加機能を提供している。
【０００４】
ファイルを格納して管理するための従来のファイルシステムは、大きく２種類領域で構成されている。１つはファイルの実際データが格納されているデータ領域であり、他の１つはこのファイル情報が格納されている情報領域である。情報領域には、ファイルの属性、権限、名称、ファイルの位置情報などが格納される。
【０００５】
ところが、前記ＯＳのうち、Ｕｎｉｘ（登録商標）／Ｌｉｎｕｘ系列のＯＳやＮＴＦＳなどは、ファイルシステムそのものにシンボリックリンクを支援するためのフィールドを別途に置いているため、このようなファイルシステムに基づくアプリケーションではシンボリックリンクを自由に使える。シンボリックリンクはファイルあるいはディレクトリを示す特別なファイルであり、ユーザはシンボリックリンクを本来のファイルあるいはディレクトリのように使える。長い経路名を介してファイルやディレクトリにアクセスする場合、その経路に対して簡単にシンボリックリンクを生成し、そのリンクを実際ファイルやディレクトリのように用いることによって、より容易に長い経路のファイルあるいはディレクトリにアクセスできるのである。これに対し、ＦＡＴ系列のファイルシステム（ＦＡＴ１２、ＦＡＴ１６、ＦＡＴ３２等）では、別途にシンボリックリンクを支援するフィールドを置いていない。
【０００６】
最近になって脚光を浴びている携帯電話、ＰＤＡ、ＰＭＰ、ＭＰ３プレーヤー、ＵＳＢメモリスティックなどの携帯用機器は、ＦＡＴ系列のファイルシステムを主に採択している。しかし、前記ＦＡＴ系列のファイルシステムはシンボリックリンクを支援しないため、いちいち長い経路名を用いて特定データ（ファイルやディレクトリ）にアクセスしなければならない不便がある。
【０００７】
ファイルシステムがシンボリックリンクを支援するように設計されない場合、ファイル属性を示すフィールドにシンボリックリンクのための値が割り当てられていないため、そのようなファイルシステムではシンボリックリンクを使えない。シンボリックリンクを使えないファイルシステムでは、長い経路名を有するファイルあるいはディレクトリにアクセスしようとする場合、ユーザが仕方がなくその経路名を使わなければならないためファイルを用いるのに困難がある。シンボリックリンク機能を用いるためにファイル属性フィールドを任意に変更して用いる場合は、ファイルシステムの互換性を妨げる可能性がある。したがって、既存のファイルシステムの構造および互換性をそのまま維持しつつ、シンボリックリンク機能を提供するための特別な方法を模索する必要がある。
【発明の開示】
【発明が解決しようとする課題】
【０００８】
本発明が達成しようとする技術的課題は、既存のファイルシステムの互換性を維持しつつ、シンボリックリンク機能を支援するものである。特に、シンボリックリンクを支援しないファイルシステムにおいてもシンボリックリンク機能を用いることができるようにし、ユーザが絶対経路を介してファイルやディレクトリにアクセスすることによって生じる不便を減らすことにある。
【０００９】
本発明の目的は、以上で言及した目的に制限されず、言及していないまた他の目的は下記記載によって当業者が明確に理解できるものである。
【課題を解決するための手段】
【００１０】
前記技術的課題を達成するために、シンボリックリンク識別フィールドを有しないファイルシステムと互換性を維持するシンボリックリンク生成方法であって、ユーザによって絶対経路とシンボリックリンク経路を含むシンボリックリンク生成命令が入力されるステップと、前記絶対経路が存在して前記シンボリックリンク経路が存在しない場合、前記シンボリックリンク経路を含むシンボリックリンクファイルを生成するステップと、前記生成されたシンボリックリンクファイルのディレクトリエントリのうち、特定フィールドを前記シンボリックリンクを示す特定値に変更するステップとを含む。
【００１１】
前記技術的課題を達成するために、シンボリックリンク識別フィールドを有しないファイルシステムと互換性を維持するように生成されたシンボリックリンクを用いてファイルまたはディレクトリにアクセスする方法であって、ユーザによってある経路へのアクセス命令が入力されるステップと、前記経路に該当するファイルまたはディレクトリに対するディレクトリエントリのうち、特定フィールドに書き込まれた値がシンボリックリンクであることを示す特定値と同一であるか否かを判断するステップと、前記判断の結果、同一ならば、前記経路を前記ファイルまたはディレクトリの内容に含まれた経路に変換するステップと、前記変換された経路に該当するファイルまたはディレクトリにアクセスするステップとを含む。
【００１２】
前記技術的課題を達成するために、シンボリックリンク識別フィールドを有しないファイルシステムと互換性を維持するように生成されたシンボリックリンクを用いてファイルまたはディレクトリにアクセスする装置であって、ユーザによってある経路へのアクセス命令が入力されるユーザ命令入力部と、前記経路に該当するファイルまたはディレクトリに対するディレクトリエントリのうち、特定フィールドに書き込まれた値がシンボリックリンクであることを示す特定値と同一であるか否かを判断する属性読取部と、前記判断の結果、同一ならば、前記経路を前記ファイルまたはディレクトリの内容に含まれた経路に変換する経路変換部と、前記変換された経路に該当するファイルまたはディレクトリにアクセスする制御部とを含む。
【発明の効果】
【００１３】
本発明によれば、既存のファイルシステムの互換性を維持しつつ、シンボリックリンク機能を支援することができる。これによって、ユーザが絶対経路を介してファイルやディレクトリにアクセスすることによって生じる不便が減少する。
【発明を実施するための最良の形態】
【００１４】
その他、実施形態の具体的な事項は、詳細な説明および図面に含まれている。本発明の利点および特徴、そしてそれらを達成する方法は、添付する図面と共に詳細に後述する実施形態を参照すれば明確になる。しかし、本発明は以下にて開示する実施形態に限定されず、互いに異なる多様な形態によって実施され、単に本実施形態は本発明の開示が完全なものとなるようにし、本発明が属する技術分野で通常の知識を有する者に発明の範疇を完全に知らせるために提供されるものであって、本発明は請求項の範疇によってのみ定義されるものである。明細書の全体に亘り、同一参照符号は同一構成要素を示す。
【００１５】
図１は、ＦＡＴファイルシステム５の概略的な構成を示す図である。ファイルシステム５は、ＭＢＲ（Ｍａｓｔｅｒ  Ｂｏｏｔ  Ｒｅｃｏｒｄ）領域１と、ＦＡＴ領域２と、ディレクトリエントリ領域３と、データ領域４とから形成される。このうち、ＭＢＲ領域１、ＦＡＴ領域２、およびディレクトリエントリ領域３は、ファイルシステム５の情報領域に該当する。前記ディレクトリエントリ領域３には、各ディレクトリまたはファイル別にディレクトリエントリが書き込まれる。
【００１６】
一般的なディレクトリエントリ５０の構造は次の図２に示す通りである。図２で示す一目盛りは１バイトに該当するため、ディレクトリエントリ５０は合わせて３２バイトでなり得る。
【００１７】
Ｆｉｌｅ  Ｎａｍｅフィールド１１は、該当ディレクトリまたはファイルの名称および拡張子を書き込む。前記フィールド１１は、名称に対する８バイトと拡張子に対する３バイト、合わせて１１バイトが割り当てられる。これは短い名称を用いる場合であって、長い名称を用いるためには前記３２バイト以外のフィールドが付加的に用いられる。
【００１８】
Ａｔｔｒフィールド１２は、該当ディレクトリまたはファイルの属性を書き込むフィールドである。このような属性としては、文書ファイルであるか否か（ＡＴＴＲ＿ＡＲＣＨＩＶＥ）、読み取り専用であるか否か（ＡＴＴＲ＿ＲＥＡＤ＿ＯＮＬＹ）、システムファイルであるか否か（ＡＴＴＲ＿ＳＹＳＴＥＭ）、隠しファイルであるか否か（ＡＴＴＲ＿ＨＩＤＤＥＮ）、ディレクトリであるかファイルであるか（ＡＴＴＲ＿ＤＩＲＥＣＴＯＲＹ）、およびディスクボリュームＩＤがあるか否か（ＡＴＴＲ＿ＶＯＬＵＭＥ＿ＩＤ）などを含む。
【００１９】
Ｒｓｖフィールド１３は、マイクロソフトウィンドズ（登録商標）ウＮＴによって予約されたフィールドである。
【００２０】
Ｔｅｎｔｈフィールド１４は、１／１０秒のカウントが書き込まれ、有効な値の範囲は０〜１９９である。
【００２１】
Ｃｒｅａｔｅｄ  Ｔｉｍｅフィールド１５には、該当ディレクトリまたはファイルが生成された時刻が書き込まれる。前記フィールド１５には総２バイト（１６ビット）が割り当てられる。この内、０〜４番のビットには０〜２９の有効範囲を有する２秒単位のカウントが書き込まれる。５〜１０番のビットには０〜５９の有効値を有する「分（ｍｉｎｕｔｅ）」が書き込まれる。また、１１〜１５番のビットには０〜２３の有効値を有する「時（ｈｏｕｒ）」が書き込まれる。したがって、全体時間の有効範囲は００：００：００から２３：５９：５８以内である。
【００２２】
Ｃｒｅａｔｅｄ  Ｄａｔｅフィールド１６には、該当ディレクトリまたはファイルが生成された日付が書き込まれる。前記フィールド１６にも総２バイトが割り当てられる。この内、０〜４番のビットには１〜３１の有効範囲を有する「日（ｄａｙ）」が書き込まれる。５〜８番のビットには１〜１２の有効範囲を有する「月（ｍｏｎｔｈ）」が書き込まれる。また、９〜１５番のビットには０〜１２７の有効範囲を有する「年（ｙｅａｒ）」が書き込まれる。前記年が０であれば１９８０年を、１２７であれば２１０７年を示す。
【００２３】
Ｌａｓｔ  Ａｃｃｅｓｓ  Ｔｉｍｅフィールド１７には、該当ディレクトリまたはファイルが最終的にアクセス（読み込みまたは書き込み）された時刻が書き込まれる。時刻記録の方法はフィールド１５の場合と同様である。
【００２４】
フィールド１８は、開始クラスタ番号のＨｉｇｈ  ｗｏｒｄが書き込まれる。ところが、ＦＡＴ１２やＦＡＴ１６では、この値は常に０と書き込まれる。
【００２５】
Ｌａｓｔ  Ｍｏｄｉｆｉｅｄ  Ｔｉｍｅフィールド１９には、該当ディレクトリまたはファイルが最終的に変更された時刻が書き込まれる。時刻記録の方法はフィールド１５の場合と同様である。
【００２６】
Ｌａｓｔ  Ｍｏｄｉｆｉｅｄ  Ｄａｔｅフィールド２０には、該当ディレクトリまたはファイルが最終的に変更された日付が書き込まれる。日付の書き込み方法はフィールド１６の場合と同様である。
【００２７】
Ｆｉｌｅ  Ｓｉｚｅフィールド２２には、バイト単位で該当ファイルサイズが書き込まれる。
【００２８】
このように、一般的なＦＡＴファイルシステムに伴うディレクトリエントリには、該当ファイルがシンボリックリンクファイルであるか否かを示すフィールドが存在しない。かといって、別途の属性やフィールドを付加すれば、従来のＦＡＴファイルシステムとの互換性がなくなるという問題がある。
【００２９】
したがって、本発明では図２のフィールド中、あるフィールド値が予め定められた特定値を有する場合、前記フィールドが有する本来の意味を示すのではなく、該当ファイルがシンボリックリンクファイルであるか否かを示すと解析する。特に、本発明ではこのような解析のために、該当ファイルの生成日付、生成時刻、およびファイルサイズのうち少なくとも１つをその基準とする。
【００３０】
一般的にファイルの生成日付／時刻は、最終アクセス時間や最終修正時間とは異なり、ひとまず生成した後には変更しない値であり、誤って表示されていたとしても該当ファイルに大きく影響を及ぼさない。したがって、本発明ではファイルの生成日付および／または生成時刻が特定の時間値を有する場合には、該当ファイルをシンボリックリンクファイルと判断する。
【００３１】
前記特定の時間値は任意に定められるが、実際に表れにくい値を選択する方が良い。例えば、生成日付および時刻が１９８０−０１−０１、００：００：００と表示されているファイルはシンボリックリンクファイルと見なされる。勿論、生成日付や生成時刻のうちの１つだけが満たされてもシンボリックリンクファイルを示すことにもできるが、識別の正確性を高めるためには共に用いられることが好ましい。
【００３２】
しかし、システムのエラー、その他の多様な理由によってシンボリックリンクファイルではなく、あるファイルの生成日付／時刻が前記特定値を有する場合も多くはないが発生することもある。本発明ではこの場合を考慮し、シンボリックリンクファイルの追加的な識別手段として、ファイルサイズを用いる。この実施形態によれば、あるファイルの生成日付／時刻が前記特定の時間値を有し、ファイルサイズが特定のサイズ値を有する場合には、前記ファイルはシンボリックリンクファイルと見なされる。
【００３３】
前記特定のサイズ値は任意に定められるが、シンボリックリンクファイルの実際サイズには関わらず、すべてのシンボリックリンクファイルに対して同一の値に定めることが好ましい。例えば、前記特定のサイズ値はシンボリックリンクファイルが該当ファイルシステムで定めている最大径路を有する時のファイルサイズ（例：ＦＡＴの場合２０６４ｂｙｔｅｓ）に決めることができる。
【００３４】
図３は、本発明の一実施形態に係るシンボリックリンク管理装置１００の構成を示すブロック図である。シンボリックリンク管理装置１００は、ユーザ命令入力部１１０、制御部１２０、経路解析部１３０、属性記録部１４０、リンクファイル生成部１５０、属性読取部１６０、および経路変換部１７０を含んで構成することができる。
【００３５】
ユーザ命令入力部１１０は、ユーザによってシンボリックリンク生成命令が入力されるか、あるいはシンボリックリンクが既に生成している場合、前記シンボリックリンクを用いた特定ファイルまたはディレクトリに対するアクセス（読み込み、書き込みなど）命令が入力される。前記シンボリックリンク生成命令は、シンボリックリンクの経路と、これに対応する絶対経路を含む。
【００３６】
経路解析部１３０は、ユーザから提供されるシンボリックリンクの経路またはシンボリックリンクファイルが示す絶対経路を解析する。また、解析された経路名に該当するファイルやディレクトリが存在するか否かを確認する。
【００３７】
リンクファイル生成部１５０は、前記入力されたシンボリックリンク生成命令に応じてシンボリックリンクファイルを生成する。例えば、シンボリックリンクファイル７０は、図４のような構造を有することができる。
【００３８】
「／ｓｙｍｂｏｌｉｃ＿ｌｉｎｋ」というシンボリックリンク経路７１（ルートディレクトリの下に存在する「ｓｙｍｂｏｌｉｃ＿ｌｉｎｋ」というファイルを示す）を有するシンボリックリンクファイルは、前記シンボリックリンク経路に対応する絶対経路７２である「／ｔｅｓｔ／ｃａｓｅ／ｏｒｉｇｉｎａｌｐａｔｈ」をその内容とする。
【００３９】
一方、シンボリックリンクファイル８０は、図５に示すようにその内容である絶対経路８２をファイル（「／ｔｅｓｔ／ｃａｓｅ／ｏｒｉｇｉｎａｌｐａｔｈ／ｔｅｓｔ．ｍｐ３」）として有することができる。このように、対応する絶対経路８２がディレクトリを表すかファイルを表わすかに関わらず、シンボリックリンク経路を用いて絶対経路をエイリアシング（ａｌｉａｓｉｎｇ）できるのである。
【００４０】
属性記録部１４０は、リンクファイル生成部１５０で生成されたシンボリックリンクファイルのディレクトリエントリにシンボリックリンクファイルであることを示す属性を書き込む。図６はこのような過程を示す図である。まず、リンクファイル生成部１５０によって生成された「ｓｙｍｂｏｌｉｃ＿ｌｉｎｋ」というファイル名を有するファイルのディレクトリエントリ１０には、ファイル名、属性、生成時刻／日付、ファイルサイズなどのメタデータが書き込まれる。この時、ディレクトリエントリ１０に表示された生成時刻／日付やファイルサイズは、ｓｙｍｂｏｌｉｃ＿ｌｉｎｋファイルの実際の時刻／日付およびファイルサイズからなっている。
【００４１】
ところで、属性記録部１４０では、このうちで生成時刻／日付およびファイルサイズを、シンボリックリンクファイルを識別するために予め定義された時間値およびサイズ値に変更する。例えば、生成時刻／日付は１９８０年１月１日０時０分０秒に、ファイルサイズは２０６４バイトに変更する。勿論、生成時刻／日付およびファイルサイズのうちの１つだけを用いてシンボリックリンクファイルを識別することもでき、生成時刻および日付のうちの１つだけを用いるのも可能である。しかし、その識別をより正確にするためには、図６のように生成時刻／日付およびファイルサイズを共に特定値に変更することが好ましい。
【００４２】
属性読取部１６０は、ユーザによって特定ファイルまたはディレクトリに対するアクセス（読み込み、書き込みなど）命令が入力された場合、前記ファイルまたはディレクトリのディレクトリエントリを確認することによって、前記ファイルまたはディレクトリがシンボリックリンクファイルであるか否かを判断する。この時、属性読取部１６０は、前記ディレクトリエントリの生成日付／時刻および／またはファイルサイズが特定値になっているかを確認し、そうである場合はシンボリックリンクファイルであると、そうでない場合は一般ファイルであると判断する。
【００４３】
経路変換部１７０は、前記属性読取部１６０によってシンボリックリンクファイルであると判断された場合、シンボリックリンク経路を前記シンボリックリンクファイルが含む絶対経路に変換して制御部１２０に提供する。
【００４４】
制御部１２０は、図３の他の構成ブロックの動作を制御し、特定ファイル／ディレクトリに対するアクセスを制御する。制御部１２０は、経路変換部１７０から変換された絶対経路が提供される場合、前記絶対経路を用いて該当ファイルまたはディレクトリにアクセス（読み込み、書き込みなど）する。
【００４５】
例えば、シンボリックリンクファイルが図４のように設定されていると仮定する。ユーザによって‘ｄｅｌｅｔｅ  ／ｓｙｍｂｏｌｉｃ＿ｌｉｎｋ／ｈｅｌｌｏ．ｔｘｔ」という命令（ここで、ｄｅｌｅｔｅはファイル削除命令である）が入力されれば、前記命令は結局「ｄｅｌｅｔｅ  ／ｔｅｓｔ／ｃａｓｅ／ｏｒｉｇｉｎａｌｐａｔｈ／ｈｅｌｌｏ．ｔｘｔ」に変換して制御部１２０に提供され、これによって制御部１２０は該当経路のｈｅｌｌｏ．ｔｘｔを削除するようになる。
【００４６】
シンボリックリンクファイルが図５のように設定されていると仮定する。ユーザによって「ｄｅｌｅｔｅ  ／ｓｙｍｂｏｌｉｃ＿ｌｉｎｋ」という命令が入力されれば、前記命令は結局「ｄｅｌｅｔｅ  ／ｔｅｓｔ／ｃａｓｅ／ｏｒｉｇｉｎａｌｐａｔｈ／ｔｅｓｔ．ｍｐ３」に変換されて制御部１２０に提供され、これによって制御部１２０は該当経路のｔｅｓｔ．ｍｐ３を削除するようになる。
【００４７】
図７は、本発明の一実施形態に係るシンボリックリンクファイルを生成する過程を示すフローチャートである。
【００４８】
先ず、ユーザ命令入力部１１０ではユーザによってシンボリックリンク生成命令が入力される（Ｓ１１）。前記生成命令は、シンボリックリンクの経路と、これに対応する絶対経路を少なくとも含む。
【００４９】
そうすると、経路解析部１３０は、前記絶対経路を解析して（Ｓ１２）、該当経路が存在するか否かを判断する（Ｓ１３）。この時、該当経路が存在しなければ、シンボリックリンクを設定する対象が存在しないことになるため、ユーザにエラーメッセージを出力して終了する。
【００５０】
該当経路が存在すれば（Ｓ１３の「はい」）、前記シンボリックリンク経路を解析し（Ｓ１４）、該当経路が存在すれば（Ｓ１５の「はい」）、すでに設定されたシンボリックリンクが存在することになるため、ユーザに他のシンボリックリンクを設定することを示すエラーメッセージを出力して終了する。Ｓ１５で該当経路が存在しなければ、経路解析部１３０は始めてリンクファイル生成部１５０にシンボリックリンクファイルを生成することを通知する。
【００５１】
これによって、リンクファイル生成部１５０はシンボリックリンクファイルを生成する（Ｓ１６）。この時、前記生成されたシンボリックリンクファイルのディレクトリエントリの生成日付／時刻およびファイルサイズは実際値で書き込まれる。
【００５２】
属性記録部１４０は、前記生成日付／時刻およびファイルサイズのうち少なくとも１つをシンボリックリンクファイルであることを識別するための特定値に変更する（Ｓ１７）。これにより、シンボリックリンクファイルを生成する過程は完了する。
【００５３】
図８は、図７のようにシンボリックリンクファイルが生成した後、特定ファイルまたはディレクトリにアクセスする過程の一例を示すフローチャートである。
【００５４】
先ず、ユーザ命令入力部１１０には、ユーザによってある経路へのアクセス命令が入力される（Ｓ２１）。前記経路はあるファイルまたはディレクトリを指示する。
【００５５】
そうすると、経路解析部１３０は、前記経路を解析して（Ｓ２２）、該当経路が存在するか否かを判断する（Ｓ２３）。該当経路が存在しなければ（Ｓ２３の「いいえ」）命令入力が誤っているため、ユーザにエラーメッセージを出力して終了する。
【００５６】
前記該当経路が存在すれば（Ｓ２３の「はい」）、属性読取部１６０は該当経路のファイルまたはディレクトリのディレクトリエントリを確認する。特に、この内でも生成日付／時刻フィールドおよび／またはファイルサイズフィールドを確認する。前記生成日付／時刻フィールドおよび／またはファイルサイズフィールドにシンボリックリンクファイルであることを識別する特定値が書き込まれていれば、前記ファイルまたはディレクトリはシンボリックリンクファイルであることが確認される（Ｓ２５の「はい」）。シンボリックリンクファイルではないと確認された場合には（Ｓ２５の「いいえ」）、制御部１２０は前記ユーザによって入力された経路に該当するファイルまたはディレクトリにアクセスする（Ｓ３０）。
【００５７】
シンボリックリンクファイルであることが確認されれば（Ｓ２５の「はい」）、制御部１２０はシンボリックリンクファイルを読み取って（Ｓ２６）、前記シンボリックリンクファイルに含まれた経路（絶対経路）を経路解析部１３０を介して解析する（Ｓ２７）。
【００５８】
経路解析部１３０は、前記含まれた経路が存在するか否かを判断し（Ｓ２８）、そうでなければ（Ｓ２８の「いいえ」）ユーザにエラーメッセージを出力した後、終了する。
【００５９】
制御部１２０は、経路解析部１３０によってシンボリックリンク経路が存在すると判断されれば（Ｓ２８の「はい」）、前記Ｓ２７で解析された経路に該当するファイルまたはディレクトリにアクセスする（Ｓ２９）。
【００６０】
図３の各構成要素は、メモリ上の所定領域で行われるタスク、クラス、サブルーチン、プロセス、オブジェクト、実行スレッド、プログラムのようなソフトウェアや、ＦＰＧＡやＡＳＩＣのようなハードウェアで具現でき、また、前記ソフトウェアおよびハードウェアの組み合わせで形成できる。前記構成要素はコンピュータで読取可能な格納媒体に含まれることもでき、複数のコンピュータにその一部が分散して分布することもできる。
【００６１】
以上、添付した図面を参照して本発明の実施形態を説明したが、本発明が属する技術分野で通常の知識を有する者であれば、本発明がその技術的思想や必須の特徴を変更せず、他の具体的な形態によって実施することができるということを理解できる。したがって、以上で記述した実施形態はすべての面で例示的なものであり、限定的なものではないことを理解しなければならない。
【図面の簡単な説明】
【００６２】
【図１】ＦＡＴファイルシステムの概略的な構成を示す図である。
【図２】ＦＡＴファイルシステムでのディレクトリエントリの構造を示す図である。
【図３】本発明の一実施形態に係るシンボリックリンク管理装置の構成を示すブロック図である。
【図４】シンボリックリンクファイルの一例を示す図である。
【図５】シンボリックリンクファイルの他の例を示す図である。
【図６】属性記録部によってディレクトリエントリの内容が変更する例を示す図である。
【図７】本発明の一実施形態に係るシンボリックリンクファイルを生成する過程を示すフローチャートである。
【図８】図７のようにシンボリックリンクファイルが生成された後、特定ファイルまたはディレクトリにアクセスする過程の一例を示すフローチャートである。
【符号の説明】
【００６３】
１０      変更前ディレクトリエントリ
１１      Ｆｉｌｅ  Ｎａｍｅフィールド
１２      Ａｔｔｒｉｂｕｔｅフィールド
１３      Ｒｅｓｅｒｖｅｄフィールド
１４      Ｔｅｎｔｈフィールド
１５      Ｃｒｅａｔｅｄ  Ｔｉｍｅフィールド
１６      Ｃｒｅａｔｅｄ  Ｄａｔｅフィールド
１７      Ｌａｓｔ  Ａｃｃｅｓｓ  Ｔｉｍｅフィールド
１９      Ｌａｓｔ  Ｍｏｄｉｆｉｅｄ  Ｔｉｍｅフィールド
２０      Ｌａｓｔ  Ｍｏｄｉｆｉｅｄ  Ｄａｔｅフィールド
２１      Ｆｉｒｓｔ  Ｃｌｕｓｔｅｒフィールド
２２      Ｆｉｌｅ  Ｓｉｚｅフィールド
３０      変更後ディレクトリエントリ
７０      シンボリックリンクファイル
８０      シンボリックリンクファイル
１００    シンボリックリンク管理装置
１１０    ユーザ命令入力部
１２０    制御部
１３０    経路解析部
１４０    属性記録部
１５０    リンクファイル生成部
１６０    属性読取部
１７０    経路変換部
【図１】
2007188501.tif 000003
【図２】
2007188501.tif 000004
【図３】
2007188501.tif 000005
【図４】
2007188501.tif 000006
【図５】
2007188501.tif 000007
【図６】
2007188501.tif 000008
【図７】
2007188501.tif 000009
【図８】
2007188501.tif 000010