(57)【要約】      （修正有）【課題】クラスタチェーンに関するソフトウェア処理の高速化を図ること。【解決手段】ファイルクラスタチェーン項目のクラスタチェーン情報フィールドに、ファイルデータのクラスタ番号を記録するようにした。そのため、ファイルデータが複数のクラスタにまたがって記録されているとき（クラスタチェーンが生成されているとき）に、クラスタチェーンの解析が必要な処理を行う場合には、ファイルクラスタチェーン項目のクラスタチェーン情報フィールドのフィールド値を解析することで、クラスタチェーン情報を取得することができる。【選択図】図２
2006309400.tif 000002
【特許請求の範囲】
【請求項１】
ＦＡＴファイルシステムに基づき、各ファイルデータをクラスタチェーンを用いて記録するファイル管理プログラムであって、
前記ファイルデータを格納しているクラスタを示すクラスタチェーン情報を、当該クラスタチェーン情報を記録するためのファイルクラスタチェーン項目に記録する記録機能をコンピュータに実行させることを特徴とするファイル管理プログラム。
【請求項２】
前記ファイルクラスタチェーン項目から前記クラスタチェーン情報を取得する情報取得機能をコンピュータに実行させることを特徴とする請求項１に記載のファイル管理プログラム。
【請求項３】
ＦＡＴファイルシステムに基づき、各ファイルデータをクラスタチェーンを用いて記録するファイル管理装置であって、
前記ディレクトリ項目を格納しているクラスタを示すクラスタチェーン情報を、当該クラスタチェーン情報を記録するためのファイルクラスタチェーン項目に記録する記録手段を備えたことを特徴とするファイル管理装置。
【請求項４】
前記ファイルクラスタチェーン項目から前記クラスタチェーン情報を取得する情報取得手段を備えたことを特徴とする請求項３に記載のファイル管理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＦＡＴファイルシステムに基づいて、ファイルデータを記録するファイル管理プログラム、及びファイル管理装置に関する。
【背景技術】
【０００２】
従来、ファイル管理プログラムとしては、例えば、マイクロソフト社のオペレーティングシステム(Windows(登録商標)やMS-DOS(登録商標)) に搭載されたファイルシステム、つまり、ＦＡＴファイルシステムが知られている（例えば特許文献１参照）。
このようなファイル管理プログラムにあっては、一般に、ファイルデータの記録に使用される領域のサイズが１つのクラスタ領域のサイズより小さい場合には、ファイルデータを１つのクラスタ領域に格納する。また、その領域のサイズが、１つのクラスタのサイズより大きい場合には、途中までのファイルデータを格納したクラスタ領域に引き続くクラスタ領域を新しく確保し、その確保されたクラスタ領域に継続してファイルデータを格納する。なお、クラスタ領域が新しく確保された場合には、その新しく確保されたクラスタ領域のクラスタ番号のリンク状態を、クラスタチェーンとして、ＦＡＴに記録する。
【特許文献１】特開平６−３０９２０７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、上記従来のファイル管理プログラムにあっては、ファイルデータをＦＡＴで管理するようになっているため、例えば、低消費電力化や小型化といった要求のために、ハードウエア性能に厳しい制約がある組み込み機器に適用した場合、ファイルデータのクラスタチェーンの解析処理に、多くの時間が掛かってしまう恐れがあった。
本発明は、上記従来技術の未解決の問題点を解決することを目的とするものであって、クラスタチェーンに関するソフトウェア（ファームウェア）処理を高速化することが可能なファイル管理プログラム、及びファイル管理装置を提供することを課題とする。
【課題を解決するための手段】
【０００４】
上記課題を解決するために、本発明のファイル管理プログラムは、ＦＡＴファイルシステムに基づき、各ファイルデータをクラスタチェーンを用いて記録するファイル管理プログラムであって、前記ファイルデータを格納しているクラスタを示すクラスタチェーン情報を、当該クラスタチェーン情報を記録するためのファイルクラスタチェーン項目に記録する記録機能をコンピュータに実行させることを特徴とする。
【０００５】
また、前記ファイルクラスタチェーン項目から前記クラスタチェーン情報を取得する情報取得機能をコンピュータに実行させるようにしてもよい。
また、本発明のファイル管理装置は、ＦＡＴファイルシステムに基づき、各ファイルデータをクラスタチェーンを用いて記録するファイル管理装置であって、前記ディレクトリ項目を格納しているクラスタを示すクラスタチェーン情報を、当該クラスタチェーン情報を記録するためのファイルクラスタチェーン項目に記録する記録手段を備えたことを特徴とする。
【０００６】
さらに、前記ファイルクラスタチェーン項目から前記クラスタチェーン情報を取得する情報取得手段を備えるようにしてもよい。
このような構成によれば、ファイルデータが複数のクラスタ領域にまたがって記録されているときに（クラスタチェーンがあるとき）に、クラスタチェーンの解析が必要な処理を行う場合には、ファイルクラスタチェーン項目のフィールド値を解析させることで、クラスタチェーン情報を取得させることができる。そのため、例えば、ＦＡＴを参照させることでクラスタチェーン情報を取得させる方法に比べ、クラスタチェーンに関するソフトウェア（ファームウェア）処理の高速化（改善）を図ることが可能である。
【発明を実施するための最良の形態】
【０００７】
以下、本発明のファイル管理プログラムの実施形態として、画像データを生成可能なＣＣＤカメラ等の撮像ユニットを備える携帯端末に適用した例を図面に基づいて説明する。
即ち、この携帯端末１にあっては、撮像ユニットで画像データが生成されると、その画像データのファイルデータを格納する。なお、その際、ファイルデータが複数のクラスタに格納された場合には、当該クラスタのクラスタ番号を示すフィールド値をファイルクラスタチェーン項目（本発明で新しく設けた項目）のクラスタチェーン情報フィールドに記録する。そして、この携帯端末１にあっては、クラスタチェーンの解析が必要な処理を実行するときに、ＦＡＴを解析することなく、処理対象であるファイルに対応するファイルクラスタチェーン項目を解析することで、前記処理を効率的に実行することができる。
【０００８】
＜携帯端末の構成＞
図１は、本実施形態の携帯端末の内部構成を示すブロック図である。この図１に示すように、携帯端末１は、撮像ユニット２、文字入力ユニット３、メモリーカードユニット４、表示ユニット５、Ｉ／Ｆ（Interface）６、ＣＰＵ（Central Processing Unit）７、ＲＡＭ（Random Access Memory）８及びＲＯＭ(Read Only Memory)９を含んで構成される。そして、携帯端末１は、撮像ユニット２、文字入力ユニット３、メモリーカードユニット４及び表示ユニット５を除く各部が、バス１０で互いに接続される。
【０００９】
撮像ユニット２は、背面側の平面視上部に配され、ＣＣＤカメラ（不図示）を含んで構成される。そして、撮像ユニット２は、所定の操作がされると、被写体の画像データをＣＣＤカメラで生成し、その画像データをＩ／Ｆ６経由でＣＰＵ７に出力する。
また、文字入力ユニット３は、前面側の平面視下部に配され、任意の文字列を入力可能なキーボード（不図示）を含んで構成される。そして、文字入力ユニット３は、そのキーボードから入力される文字列の情報をＩ／Ｆ６経由でＣＰＵ７に出力する。
【００１０】
さらに、メモリーカードユニット４は、平面視左端部に配され、電力供給を停止してもデータを保持可能な不揮発性のメモリーカード（不図示）が着脱可能に構成される。そして、メモリーカードユニット４は、ＣＰＵ７からファイル格納指令（後述）が出力されると、ＣＰＵ７で生成されたファイル（後述）をメモリーカードに記録する。
また、メモリーカードユニット４は、ＣＰＵ７からディレクトリ項目記録指令（後述）が出力されると、後述するようにＣＰＵ７で生成されるフィールド値をファイルクラスタチェーン項目のクラスタチェーン情報フィールドに記録し、また、ＣＰＵ７で生成されるファイル名のディレクトリ項目をメモリーカードに記録する。さらに、メモリーカードユニット４は、ＣＰＵ７からＩ／Ｆ６経由でディレクトリ項目読出指令（後述）が出力されると、そのディレクトリ項目読出指令で指定されるファイルのファイル名のディレクトリ項目を、メモリーカードから読み出してＩ／Ｆ６経由でＣＰＵ７に出力する。
【００１１】
さらに、表示ユニット５は、前面側の平面視中央部に配され、任意の画像を表示可能な表示装置（不図示）を含んで構成される。そして、表示ユニット５は、ＣＰＵ７からＩ／Ｆ６経由で処理結果が出力されると、その出力された処理結果を表示装置に表示させる。
また、Ｉ／Ｆ６は、携帯端末１が備える各ユニット２〜５間や、各ユニット２〜５とＣＰＵ７との間で授受されるデータを受信側２〜５、７が読込可能な形式に変換する。
【００１２】
さらに、ＣＰＵ７は、ＲＯＭ９に記録されている基本制御プログラム(OS:Operating System)や、アプリケーションプログラム等の各種プログラムを読み出し、それら読み出された各種プログラムを実行して、携帯端末１が備える各部２〜９を制御する。
また、ＣＰＵ７は、撮像ユニット２から画像データが出力されると、その出力された画像データのファイルデータを生成する。また、ＣＰＵ７は、その生成されたファイルデータ（以下、「新生成ファイルデータ」とも呼ぶ。）を記録するディレクトリのファイルパス、及び新生成ファイルデータのファイル名として文字入力ユニット３から文字列の情報が入力されると、その新生成ファイルデータをメモリーカードに記録させる指令（以下、「ファイル格納指令」とも呼ぶ。）をＩ／Ｆ６経由でメモリーカードユニット４に出力し、また同時に、書き込み処理（後述）を実行する。そして、ＣＰＵ７は、書き込み処理が実行されると、ファイルデータが複数のクラスタに格納されたか否かを判定する。複数のクラスタに格納された場合には、当該クラスタのクラスタ番号を示すフィールド値をファイルクラスタチェーン項目のクラスタチェーン情報フィールドに記録させ、さらに、前記ファイル名のディレクトリ項目を記録させるディレクトリ項目記録指令をＩ／Ｆ６経由でメモリーカードユニット４に出力してから、この演算処理を終了する。なお、ファイルデータが大きく、書き込み処理の実行中に、前記ファイルクラスタチェーン項目の全クラスタチェーン情報フィールドにフィールド値が書き込まれて埋まった場合には、前記ファイルクラスタチェーン項目に引き続くファイルクラスタチェーン項目を確保し、その確保されたファイルクラスタチェーン項目にフィールド値を引き続き書き込む。
【００１３】
具体的には、ファイルクラスタチェーン項目は、図２に示すように、インデックスフィールド、クラスタチェーン情報フィールド、予約フィールド、属性フィールド、及びチェックサムフィールドで構成される。
インデックスフィールドには、ファイルクラスタチェーン項目の番号（何番目のファイルクラスタチェーン項目であるのかを示す番号）を１６進数表記したものを設定する。なお、最後のファイルクラスタチェーン項目には、ファイルクラスタチェーン項目の終端を示すビット（ビット６）を設定する。そのため、このビットを、ファームウェアの内部処理のチェックフラグとして利用でき、安全性を高めることができる。
【００１４】
クラスタチェーン情報フィールドには、サブディレクトリ識別項目の先頭クラスタ番号フィールドのフィールド値が示すクラスタ（先頭クラスタ）に引き続くクラスタのクラスタ番号を１６進数表記したものを設定する。なお、クラスタチェーン情報フィールドの領域は、ＦＡＴ３２では４バイト（３２ビット）、ＦＡＴ１６では２バイト（１６ビット）、ＦＡＴ１２では３バイト（２４ビット、注：フィールド情報は２個分が入る（１２ビット×２）とする。また、クラスタチェーン情報フィールドの数（ディレクトリ項目に記録可能なクラスタの数）は、ＦＡＴ３２では６個、ＦＡＴ１６では１３個、ＦＡＴ１２では１６個（８個のフィールドに２情報）とする。
【００１５】
予約フィールドには、ＦＡＴファイルシステムのロングファイルネーム項目（ＶＦＡＴ動作時に、ロングファイルネームを表すディレクトリ項目）と同じものを設定する。
属性フィールドには、このディレクトリ項目が、クラスタチェーン項目であることを示す情報（例えば、「０ｘ０Ｆ＆０ｘ２０」）を設定する。なお、ロングファイルネーム項目の属性フィールドには、フィールド値「０ｘ０Ｆ」が設定される。
【００１６】
チェックサムフィールドには、ショートファイルネームを表すディレクトリ項目のチェックサムと一致しない数値「０ｘ００」を設定する。なお、ロングファイルネーム項目のチェックサムフィールドには、通常、前記チェックサムと一致する数値が設定される。
したがって、ＶＦＡＴが搭載されていない動作環境では、属性フィールドの下位４ビット「０ｘ０Ｆ」により、このディレクトリ項目は無視される。なお、本実施形態では、属性フィールドに「０ｘ０Ｆ＆０ｘ２０」を設定する例を示したが、これに限られるものではなく、ファイルクラスタチェーン項目であることを示す他の情報でもよい。
【００１７】
また同様に、ＶＦＡＴが搭載されている動作環境にあっても、チェックサムフィールドのフィールド値（ショートファイルネームを表すディレクトリ項目のチェックサムと一致しないフィールド値「０ｘ００」）により、このディレクトリ項目は無視される。
また、ＣＰＵ７は、メモリーカードに記録されているファイルデータに、クラスタチェーンの解析が必要な処理を実行するために、処理対象となるファイルのファイルパスとして文字入力ユニット３から文字列の情報が入力されると読み込み処理（後述）を実行する。そして、ＣＰＵ７は、読み込み処理が実行されると、ディレクトリ項目読出指令をＩ／Ｆ６経由でメモリーカードユニット４に出力して、前記ファイルに対応するファイル項目及びファイルクラスタチェーン項目を読み出す。また、ＣＰＵ７は、その読み出されたファイルクラスタチェーン項目からクラスタチェーン情報フィールドのフィールド値を読み出して前記処理を実行し、その処理結果を表示ユニット５に表示させてから、この読み込み処理を終了する。なお、読み込み処理の実行中に、前記ファイルクラスタチェーン項目のクラスタチェーン情報フィールドのフィールド値を全て読み出し終えた場合には、前記ファイルクラスタチェーン項目に引き続くファイルクラスタチェーン項目を読み出し、その読み出されたファイルクラスタチェーン項目のフィールド値を引き続き読み出す。
【００１８】
さらに、ＲＡＭ８は、ＣＰＵ７で実行される各種プログラムを展開するためのワークエリアと、それら各種プログラムの実行時に用いられるデータを記録するためのメモリ領域とを形成する。そして、ＲＡＭ８は、ＣＰＵ７から読み出し要求が出力されると、ＲＡＭ８に記録されているデータから当該読み出し要求に応じたデータをＣＰＵ７に出力する。
また、ＲＯＭ９は、ＣＰＵ７で実行される各種プログラムとデータとを記録する。そして、ＲＯＭ９は、ＣＰＵ７から読み出し要求が出力されると、ＲＯＭ９に記録されているプログラムやデータから当該読み出し要求に応じたプログラム等をＣＰＵ７に出力する。
【００１９】
＜携帯端末の動作＞
次に、ＣＰＵ７で実行される書き込み処理を、図３のフローチャートに従って説明する。この書き込み処理は、新生成ファイルデータを格納するディレクトリのファイルパス、及び新生成ファイルデータのファイル名の組み合わせとして、文字入力ユニット３から文字列の情報が入力されると実行される。そして、この演算処理が実行されると、まず、そのステップＳ１０１で、ＦＡＴファイルシステムの規格に従い、前記入力された文字列の情報に基づいて、前記新生成ファイルデータのファイル項目、及びロングファイルネーム項目（ロングファイルネームが指定された場合）を生成する。そして、そのディレクトリ項目を、前記ディレクトリに対応するクラスタに記録させる指令をメモリーカードユニット４に出力する。
【００２０】
次にステップＳ１０２に移行して、前記新生成ファイルデータが複数のクラスタに格納された場合、当該クラスタのクラスタ番号を、前記ロングファイルネーム項目と同じクラスタ内のファイルクラスタチェーン項目のクラスタチェーン情報フィールドに設定する。
具体的には、クラスタチェーン情報フィールドには、前記新生成ファイルの記録時にバッファに記録しておいたクラスタ番号をディレクトリ項目の先頭から記録する。また、クラスタチェーンの終端が明確となるように、クラスタチェーンの終端に対応するクラスタ番号を記録しているフィールドより後のクラスタチェーン情報フィールドには、「オールＦＦ」を記録する。なお、その際、ファイルシステムのフォーマット種別（ＦＡＴ１２、ＦＡＴ１６、ＦＡＴ３２）に応じて、各フィールドの配置フォーマットを設定する。
【００２１】
次にステップＳ１０３に移行して、前記ロングファイルネーム項目と同じクラスタに格納されているファイルクラスタチェーン項目の予約フィールド、属性フィールド、及びチェックサムフィールドにフィールド値を設定する。具体的には、予約フィールドには、ロングファイルネーム項目と同じフィールド値を設定する。また、属性フィールドには、「０ｘ０Ｆ＆０ｘ２０」を設定する。そして、チェックサムフィールドには、「０ｘ００」を設定する。
【００２２】
次にステップＳ１０４に移行して、ファイルクラスタチェーン項目が引き続くか否かを判定する。具体的には、前記ファイルデータのクラスタチェーンが長く、１個のファイルクラスタチェーン項目では後続するクラスタ番号を記録しきれないか否かを判定する。そして、１個のファイルクラスタチェーン項目では記録しきれない場合には、ステップＳ１０５に移行し、記録できる場合には、ステップＳ１０６に移行する。
【００２３】
前記ステップＳ１０５では、前記ロングファイルネーム項目と同じクラスタ内のファイルクラスタチェーン項目のインデックスフィールドのフィールド値を設定し、また、新しいファイルクラスタチェーン項目を生成した後、前記ステップＳ１０２に移行する。なお、その際、前記同じクラスタ内のファイルクラスタチェーン項目がセクタ領域の先頭に記録されていた場合、つまり、新しいファイルクラスタチェーン項目を記録可能な空き領域がない場合には、次のセクタに生成する。また、当該次のセクタが、クラスタ領域の最終セクタである場合には、新しいクラスタ領域を確保して生成するクラスタアロケート処理を行う。
【００２４】
なお、新しく生成したファイルクラスタチェーン項目を記録するタイミングとしては、例えば、生成のたびに記録するようにしてもよいし、最後に一括して記録するようにしてもよく、このファイルシステムが実装される製品の仕様に応じて設定すればよい。
一方、前記ステップＳ１０６では、前記ロングファイルネーム項目と同じクラスタ内のファイルクラスタチェーン項目のインデックスフィールドにフィールド値とビット６とを設定する。
【００２５】
次にステップＳ１０７に移行して、前記ステップＳ１０２〜Ｓ１０６で設定されたフィールド値を、ファイルクラスタチェーン項目の各フィールドに記録させる指令（以下、「ディレクトリ項目記録指令」とも呼ぶ。）をメモリーカードユニット４に出力する。
次にステップＳ１０８に移行して、ＦＡＴファイルシステムの規格に従い、通常のファイルシステム処理を実行してから、この演算処理を終了する。
【００２６】
次に、ＣＰＵ７で実行される読み込み処理を、図４のフローチャートに従って説明する。この読み込み処理は、メモリーカードに記録されているファイルデータに、クラスタチェーンの解析が必要な処理を実行するために、処理対象となるファイルのファイルパスとして文字入力ユニット３から文字列の情報が入力されると実行される処理であって、まず、そのステップＳ２０１で、文字入力ユニット３から情報が入力された文字列に対応するファイル項目を読み出してＣＰＵ７に出力させる指令（以下、「ディレクトリ項目読出指令」とも呼ぶ。）をＩ／Ｆ６経由でメモリーカードユニット４に出力する。
【００２７】
次にステップＳ２０２に移行し、前記ロングファイルネーム項目と同じクラスタ内のファイルクラスタチェーン項目、或いは後述するステップＳ２０５で特定されたファイルクラスタチェーン項目の属性フィールドのフィールド値「０ｘ２Ｆ」を確認する。
次にステップＳ２０３に移行して、前記ロングファイルネーム項目と同じクラスタ内のファイルクラスタチェーン項目、或いは後述するステップＳ２０５で特定されたクラスタチェーン項目の先頭のクラスタチェーン情報フィールドから順番にフィールド値を取得する。なお、その際、「オールＦＦ」が記録されているフィールドの前までが有効なクラスタチェーン情報である。また、ファイルシステムのフォーマット種別に応じてファイルクラスタチェーン項目の各フィールドはフォーマットが異なるので、そのフォーマット種別を参照して、各クラスタチェーン情報フィールドからクラスタチェーン情報を取得する。
【００２８】
次にステップＳ２０４に移行して、ファイルクラスタチェーン項目が引き続くか否かを判定する。具体的には、前記ロングファイルネーム項目と同じクラスタに格納されているファイルクラスタチェーン項目のインデックスフィールドに、ファイルクラスタチェーン項目の終端を示すビット（ビット６）が記録されていないか否かを判定する。そして、ファイルクラスタチェーン項目の終端を示すビットが記録されていない場合には（Ｙｅｓ）ステップＳ２０５に移行し、記録されている場合には（Ｎｏ）ステップＳ２０６に移行する。
【００２９】
前記ステップＳ２０５では、前記ロングファイルネーム項目と同じクラスタ内のファイルクラスタチェーン項目に引き続くファイルクラスタチェーン項目を特定してから、前記ステップＳ２０２に移行する。なお、その際、前記同じクラスタ内のファイルクラスタチェーン項目がセクタ領域の先頭に記録されていた場合には、次のセクタから特定する。また、当該セクタがクラスタ領域の最終セクタである場合には、次のクラスタから特定する。
【００３０】
一方、前記ステップＳ２０６では、ＦＡＴファイルシステムの規格に従い、通常のファイルシステム処理を実行し、その処理結果をＩ／Ｆ６経由で表示ユニットに出力してから、この演算処理を終了する。なお、その際、クラスタチェーンの情報が必要となった場合には、上記フローで取得したフィールド値を参照し、ＦＡＴの走査処理は一切行わない。
【００３１】
＜携帯端末の具体的動作＞
次に、本実施形態の携帯端末１の動作を具体的状況に基づいて詳細に説明する。
＜ファイルの生成＞
まず、被写体の画像データが撮像ユニット２のＣＣＤカメラで生成されたとする。すると、図１に示すように、撮像ユニット２によって、その生成された画像データがＣＰＵ７に出力され、ＣＰＵ７によって、その画像データのファイルデータが生成される。
【００３２】
次いで、その生成されたファイルデータ（新生成ファイルデータ）を記録するディレクトリ（メモリーカード内のディレクトリ）のファイルパス、及び新生成ファイルデータのファイル名の組み合わせとして、利用者が文字入力ユニット３のキーボードから文字列を入力したとする。すると、ＣＰＵ７によって、ファイル格納指令がＩ／Ｆ６経由でメモリーカードユニット４に出力される。そして、メモリーカードユニット４によって、前記生成された新生成ファイルデータが前記ディレクトリに格納される（前記新生成ファイルが複数のクラスタに格納されて、クラスタチェーンが生成される。）。
【００３３】
また同時に、ＣＰＵ７によって、書き込み処理が実行され、図３に示すように、まずそのステップＳ１０１で、ＦＡＴファイルシステムの規格に従い、前記入力された文字列の情報に基づいて、前記新生成ファイルデータのファイル項目、及びロングファイルネーム項目（ロングファイルネームが指定された場合）が生成される。そして、メモリーカードユニット４によって、そのファイル項目、及びロングファイル項目が前記ディレクトリに対応するクラスタに記録される。
【００３４】
また、ステップＳ１０２で、前記新生成ファイルデータが格納されたクラスタのクラスタ番号が、図５に示すように、前記ロングファイルネーム項目と同じクラスタに格納されているファイルクラスタチェーン項目のクラスタチェーン情報フィールドに設定される。さらに、ステップＳ１０３で、前記ファイルクラスタチェーン項目の予約フィールドに、ロングファイルネーム項目と同じフィールド値が設定され、属性フィールドに「０ｘ０Ｆ＆０ｘ２０」が設定され、チェックサムフィールドに「０ｘ００」が設定される。そして、ステップＳ１０４の判定が「Ｎｏ」となり、ステップＳ１０６で、前記ファイルクラスタチェーン項目のインデックスフィールドにフィールド値とビット７とが設定される。
【００３５】
なお、図５は、新生成ファイルデータを、クラスタ番号１０→１１→１２→１３→１４→１５→１６→１７→１８→１９というクラスタチェーンで記録したときの状態である。
そして、ステップＳ１０７で、ディレクトリ項目記録指令がＩ／Ｆ６経由でメモリーカードユニット４に出力され、メモリーカードユニット４によって、上記ステップＳ１０２〜Ｓ１０６で設定されたフィールド値が、前記ファイルクラスタチェーン項目の各フィールドに記録され、ステップＳ１０８で、通常のファイルシステム処理が実行される。
【００３６】
＜ファイルの処理＞
また、上記フローが実行され、ファイルデータがメモリーカード内に記録された後に、メモリーカード内に記録されているファイルデータに、クラスタチェーンの解析が必要な処理を実行するために、処理対象となるファイルのファイルパスとして利用者が文字入力ユニット３から文字列の情報を入力したとする。すると、ＣＰＵ７によって、読み込み処理が実行され、図４に示すように、まず、そのステップＳ２０１で、ディレクトリ項目読出指令がＩ／Ｆ６経由でメモリーカードユニット４に出力される。そして、メモリーカードユニット４によって、前記利用者によって指定されたファイルパス（ファイル）に対応するファイル項目がメモリーカードから読み出されてＣＰＵ７に出力される。
【００３７】
また、ステップＳ２０２で、前記ロングファイルネーム項目と同じクラスタに格納されているファイルクラスタチェーン項目の属性フィールドのフィールド値が「０ｘ２Ｆ」であることが確認され、ステップＳ２０３で、前記ファイルクラスタチェーン項目の先頭のクラスタチェーン情報フィールドから順番に有効なフィールド値が取得される。つまり、ＦＡＴの走査なしに、ファイルデータのクラスタチェーンの情報が取得される。
【００３８】
ここで、前記ファイルクラスタチェーン項目のインデックスフィールドにビット７が記録されていたとする。すると、ステップＳ２０４の判定が「Ｎｏ」となり、ステップＳ２０６で、ＦＡＴファイルシステムの規格に従い、通常のファイルシステム処理が実行され、その出力された処理結果がＩ／Ｆ６経由で表示ユニットに出力される。そして、表示ユニット５によって、その出力された処理結果の画像データが表示装置に表示される。
【００３９】
このように、本実施形態の携帯端末１にあっては、ファイルクラスタチェーン項目のクラスタチェーン情報フィールドに、ファイルデータのクラスタ番号を記録するようにした。そのため、ファイルデータが複数のクラスタにまたがって記録されているとき（クラスタチェーンが生成されているとき）に、クラスタチェーンの解析が必要な処理を行う場合には、ファイルクラスタチェーン項目のクラスタチェーン情報フィールドのフィールド値を解析することで、クラスタチェーン情報を取得することができる。そのため、例えば、ＦＡＴを参照することでクラスタチェーン情報を取得する方法に比べ、クラスタチェーンに関するソフトウェア（ファームウェア）処理の高速化を図ることが可能である。
【００４０】
また、ファイルクラスタチェーン項目以外のディレクトリ項目は、ＦＡＴファイルシステムの規格に従って設定した。そのため、携帯端末１で生成されたファイルは、ＦＡＴファイルシステムを搭載したパソコンでも適切に認識させることができ、それらのパソコンでファイルをそのまま扱わせることができる。即ち、従来のファイルシステムに大幅な改修や変更をせずに、従来のＦＡＴファイルシステムをベースとして実装を図ることができ、導入に必要なプロセスを最小限に留めることができる。さらに、従来のＦＡＴファイルシステム及びＶＦＡＴファイルシステム上でも正常に認識され互換性を保持できる。
【００４１】
以上、図３のステップＳ１０６が特許請求の範囲に記載の記録機能を構成し、以下同様に、図４のステップＳ２０１が情報取得機能を構成し、図１のメモリーカードユニット４、ＣＰＵ７、図３のステップＳ１０６が記録手段を構成し、図１のメモリーカードユニット４、ＣＰＵ７、図４のステップＳ２０１が情報取得手段を構成する。
なお、本発明のファイル管理プログラム及びファイル管理装置は、上記実施の形態の内容に限定されるものではなく、本発明の趣旨を逸脱しない範囲で適宜変更可能である。
【図面の簡単な説明】
【００４２】
【図１】実施形態における携帯端末の内部構成を示すブロック図である。
【図２】ファイルクラスタチェーン項目を説明するための説明図である。
【図３】書き込み処理のフローチャートである。
【図４】読み込み処理のフローチャートである。
【図５】携帯端末の動作を説明するための説明図である。
【符号の説明】
【００４３】
１は携帯端末、２は撮像ユニット、３は文字入力ユニット、４はメモリーカードユニット、５は表示ユニット、６はＩ／Ｆ、７はＣＰＵ、８はＲＡＭ、９はＲＯＭ、１０はバス
【図１】
2006309400.tif 000003
【図２】
2006309400.tif 000004
【図３】
2006309400.tif 000005
【図４】
2006309400.tif 000006
【図５】
2006309400.tif 000007