(57)【要約】【構成】複数の下位ディレクトリを管理する上位ディレクトリは、１または２以上のクラスタに記憶される。各々のクラスタは、ステップＳ８１およびＳ９１で順に指定される。指定クラスタを形成する複数のセクタの各々は、ステップＳ９３およびＳ１０３で順に指定される。指定クラスタが末尾クラスタであるか否かはステップＳ８５で判別され、指定セクタが末尾セクタであるか否かはステップＳ１０１で判別される。指定クラスタに記憶されたデータは、ステップＳ８５の判別結果が否定的であるとき、ステップＳ８７で読み出される。指定セクタに記憶されたデータは、ステップＳ８５の判別結果が肯定的でかつステップＳ１０１の判別結果が否定的であるとき、ステップＳ９５で読み出される。読み出されたデータに含まれる下位ディレクトリ名は、ステップＳ９７でディレクトリリストに追加される。【効果】ディレクトリリストを短時間で作成できる。【選択図】図１４
2007141124.tif 000002
【特許請求の範囲】
【請求項１】
複数の下位アイテムを管理する上位アイテムが記憶された１または２以上の第１単位領域の各々を順に指定する第１単位領域指定手段、
前記第１単位領域指定手段によって指定された第１単位領域を形成する複数の第２単位領域の各々を順に指定する第２単位領域指定手段、
前記第１単位領域指定手段によって指定された第１単位領域が末尾の第１単位領域であるか否かを判別する第１単位領域判別手段、
前記第２単位領域指定手段によって指定された第２単位領域が末尾の第２単位領域であるか否かを判別する第２単位領域判別手段、
前記第１単位領域判別手段の判別結果が否定的であるとき前記第１単位領域指定手段によって指定された第１単位領域から上位アイテムデータを読み出す第１読み出し手段、
前記第１単位領域判別手段の判別結果が肯定的でかつ前記第２単位領域判別手段の判別結果が否定的であるとき前記第２単位領域指定手段によって指定された第２単位領域から他の上位アイテムデータを読み出す第２読み出し手段、および
前記第１読み出し手段および前記第２読み出し手段の各々によって読み出された上位アイテムデータに基づいて下位アイテムリストを作成する作成手段を備える、リスト作成装置。
【請求項２】
前記第２読み出し手段によって読み出された上位アイテムデータに基づいて前記上位アイテムの終端を検出する検出手段、および
前記検出手段の検出に応答して前記作成手段の作成処理を終了させる終了手段をさらに備える、請求項１記載のリスト作成装置。
【請求項３】
前記第１単位領域は記録媒体上に離散的に分布しかつ配置管理テーブルによって管理され、
前記第１単位領域判別手段は前記配置管理テーブルを参照して判別動作を行う、請求項１または２記載のリスト作成装置。
【請求項４】
前記第２単位領域は各々の第１単位領域内で連続し、
各々の第１単位領域に属する第２単位領域の数は固定であり、
前記第２単位領域判別手段は前記第２単位領域指定手段によって指定された第２単位領域の数をカウントして判別動作を行う、請求項１ないし３のいずれかに記載のリスト作成装置。
【請求項５】
前記第１単位領域はクラスタに相当し、
前記第２単位領域はセクタに相当し、そして
前記アイテムはディレクトリまたはファイルに相当する、請求項１ないし４のいずれかに記載のリスト作成装置。
【請求項６】
リスト作成装置のプロセサに、
複数の下位アイテムを管理する上位アイテムが記憶された１または２以上の各々を順に指定する第１単位領域指定ステップ、
前記第１単位領域指定ステップによって指定された第１単位領域を形成する複数の第２単位領域の各々を順に指定する第２単位領域指定ステップ、
前記第１単位領域指定ステップによって指定された第１単位領域が末尾の第１単位領域であるか否かを判別する第１単位領域判別ステップ、
前記第２単位領域指定ステップによって指定された第２単位領域が末尾の第２単位領域であるか否かを判別する第２単位領域判別ステップ、
前記第１単位領域判別ステップの判別結果が否定的であるとき前記第１単位領域指定ステップによって指定された第１単位領域から上位アイテムデータを読み出す第１読み出しステップ、
前記第１単位領域判別ステップの判別結果が肯定的でかつ前記第２単位領域判別ステップの判別結果が否定的であるとき前記第２単位領域指定ステップによって指定された第２単位領域から他の上位アイテムデータを読み出す第２読み出しステップ、および
前記第１読み出しステップおよび前記第２読み出しステップの各々によって読み出された上位アイテムデータに基づいて下位アイテムリストを作成する作成ステップを実行させるための、リスト作成プログラム。
【請求項７】
(a) 複数の下位アイテムを管理する上位アイテムが記憶された１または２以上の第１単位領域の各々を順に指定し、
(b) 前記ステップ(a)によって指定された第１単位領域を形成する複数の第２単位領域の各々を順に指定し、
(c) 前記ステップ(a)によって指定された第１単位領域が末尾の第１単位領域であるか否かを判別し、
(d) 前記ステップ(b)によって指定された第２単位領域が末尾の第２単位領域であるか否かを判別し、
(e) 前記ステップ(c)の判別結果が否定的であるとき前記ステップ(a)によって指定された第１単位領域から上位アイテムデータを読み出し、
(f) 前記ステップ(c)の判別結果が肯定的でかつ前記ステップ(d)の判別結果が否定的であるとき前記第ステップ(b)によって指定された第２単位領域から他の上位アイテムデータを読み出し、そして
(g) 前記ステップ(e)および前記ステップ(f)の各々によって読み出された上位アイテムデータに基づいてアイテムリストを作成する、リスト作成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、リスト作成装置に関し、特にたとえば保存場所に保存された複数のアイテムのリストを作成する、リスト作成装置に関する。
【背景技術】
【０００２】
従来のこの種の装置の一例が、特許文献１に開示されている。この従来技術によれば、記録開始操作または再生開始操作が行われると、ハードディスクに記録された全てのディレクトリ（アイテム）の名称が検出され、検出された名称がテーブルに登録される。記録処理または再生処理は、こうして作成されたディレクトリリスト（アイテムリスト）を参照して実行される。
【特許文献１】特開２００２−３４２１３９号公報［G06F 12/00, H04N 5/76］
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ハードディスクがＦＡＴ方式で複数のディレクトリを管理する場合、これらのディレクトリは複数のクラスタに分散して記録される。なお、ＦＡＴ方式では、各々のクラスタは複数のセクタによって形成される。このようなハードディスクからディレクトリ名を検出する方法としては、１セクタずつディレクトリ情報を読み出す方法（１）と、１クラスタずつディレクトリ情報を読み出す方法（２）とが考えられる。
【０００４】
しかし、方法（１）では、多数のディレクトリがハードディスクに存在する場合に、ハードディスクへの頻繁なアクセスが発生する。一方、方法（２）では、複数のディレクトリが複数のクラスタにそれぞれ記憶され、かつ各々のディレクトリのサイズが各々のクラスタのサイズよりも小さい場合に、無駄な読み出し処理が発生する。したがって、方法（１）および（２）のいずれを採用しても、ディレクトリリストの作成に時間がかかる可能性がある。
【０００５】
それゆえに、この発明の主たる目的は、アイテムリストの作成に要する時間を短縮できる、リスト作成装置を提供することである。
【課題を解決するための手段】
【０００６】
請求項１の発明に従うデータ読み出し装置(10)は、複数の下位アイテムを管理する上位アイテムが記憶された１または２以上の第１単位領域の各々を順に指定する第１単位領域指定手段(S81, S91, S131, S141)、第１単位領域指定手段によって指定された第１単位領域を形成する複数の第２単位領域の各々を順に指定する第２単位領域指定手段(S93, S103, S143, S153)、第１単位領域指定手段によって指定された第１単位領域が末尾の第１単位領域であるか否かを判別する第１単位領域判別手段(S85, S135)、第２単位領域指定手段によって指定された第２単位領域が末尾の第２単位領域であるか否かを判別する第２単位領域判別手段(S101, S151)、第１単位領域判別手段の判別結果が否定的であるとき第１単位領域指定手段によって指定された第１単位領域から上位アイテムデータを読み出す第１読み出し手段(S87, S137)、第１単位領域判別手段の判別結果が肯定的でかつ第２単位領域判別手段の判別結果が否定的であるとき第２単位領域指定手段によって指定された第２単位領域から他の上位アイテムデータを読み出す第２読み出し手段(S95, S145)、および第１読み出し手段および第２読み出し手段の各々によって読み出された上位アイテムデータに基づいて下位アイテムリストを作成する作成手段(S121, S173)を備える。
【０００７】
複数の下位アイテムを管理する上位アイテムが記憶された１または２以上の第１単位領域の各々は、第１単位領域指定手段によって順に指定される。また、第１単位領域指定手段によって指定された第１単位領域を形成する複数の第２単位領域の各々は、第２単位領域指定手段によって順に指定される。第１単位領域判別手段は、第１単位領域指定手段によって指定された第１単位領域が末尾の第１単位領域であるか否かを判別する。また、第２単位領域判別手段は、第２単位領域指定手段によって指定された第２単位領域が末尾の第２単位領域であるか否かを判別する。
【０００８】
第１単位領域指定手段によって指定された第１単位領域にある上位アイテムデータは、第１単位領域判別手段の判別結果が否定的であるとき、第１読み出し手段によって読み出される。第２単位領域指定手段によって指定された第２単位領域にある他の上位アイテムデータは、第１単位領域判別手段の判別結果が肯定的でかつ第２単位領域判別手段の判別結果が否定的であるとき、第２読み出し手段によって読み出される。作成手段は、第１読み出し手段および第２読み出し手段の各々によって読み出された上位アイテムデータに基づいて、下位アイテムリストを作成する。
【０００９】
したがって、第１単位領域指定手段によって指定された第１単位領域が末尾の第１単位領域に先行する第１単位領域であれば、この第１単位領域の上位アイテムデータが第１読み出し手段によって読み出される。第１単位領域指定手段は注目する複数の第１単位領域の各々を順に指定するため、第１読み出し手段は、末尾の第１単位領域に先行する第１単位領域に記憶された上位アイテムデータを順に読み出すこととなる。
【００１０】
第１単位領域指定手段によって指定された第１単位領域が末尾の第１単位領域で、かつ第２単位領域指定手段によって指定された第２単位領域が末尾の第２単位領域に先行する第２単位領域であれば、この第２単位領域の上位アイテムデータが第２読み出し手段によって読み出される。第２単位領域指定手段もまた注目する複数の第２単位領域の各々を順に指定するため、第２読み出し手段は、末尾の第２単位領域に先行する第２単位領域に記憶された上位アイテムデータを順に読み出すこととなる。
【００１１】
つまり、末尾の第１単位領域が検出されるまでは、上位アイテムデータは第１単位領域毎に読み出される。末尾の第１単位領域が検出されると、上位アイテムデータは第２単位領域毎に読み出される。この結果、頻繁なアクセス動作の低減と無駄なデータ読み出し処理の回避が図られ、下位アイテムリストの作成に要する時間の短縮化が可能となる。
【００１２】
請求項２の発明に従うリスト作成装置は、請求項１に従属し、第２読み出し手段によって読み出された上位アイテムデータに基づいて上位アイテムの終端を検出する検出手段(S115, S125, S165, S177)、および検出手段の検出に応答して作成手段の作成処理を終了させる終了手段(S99, S149)をさらに備える。これによって、下位アイテムリストの作成に要する時間をさらに短縮することができる。
【００１３】
請求項３の発明に従うリスト作成装置は、請求項１または２に従属し、第１単位領域は記録媒体(32)上に離散的に分布しかつ配置管理テーブル(FAT1, FAT2)によって管理され、第１単位領域判別手段は配置管理テーブルを参照して判別動作を行う。
【００１４】
請求項４の発明に従うリスト作成装置は、請求項１ないし３のいずれかに従属し、第２単位領域は各々の第１単位領域内で連続し、各々の第１単位領域に属する第２単位領域の数は固定であり、第２単位領域判別手段は第２単位領域指定手段によって指定された第２単位領域の数をカウントして判別動作を行う。
【００１５】
請求項５の発明に従うリスト作成装置は、請求項１ないし４のいずれかに従属し、第１単位領域はクラスタに相当し、第２単位領域はセクタに相当し、そしてアイテムはディレクトリまたはファイルに相当する。
【００１６】
請求項６の発明に従うリスト作成プログラムは、リスト作成装置(10)のプロセサ(38)に、複数の下位アイテムを管理する上位アイテムが記憶された１または２以上の各々を順に指定する第１単位領域指定ステップ(S81, S91, S131, S141)、第１単位領域指定ステップによって指定された第１単位領域を形成する複数の第２単位領域の各々を順に指定する第２単位領域指定ステップ(S93, S103, S143, S153)、第１単位領域指定ステップによって指定された第１単位領域が末尾の第１単位領域であるか否かを判別する第１単位領域判別ステップ(S85, S135)、第２単位領域指定ステップによって指定された第２単位領域が末尾の第２単位領域であるか否かを判別する第２単位領域判別ステップ(S101, S151)、第１単位領域判別ステップの判別結果が否定的であるとき第１単位領域指定ステップによって指定された第１単位領域から上位アイテムデータを読み出す第１読み出しステップ(S87, S137)、第１単位領域判別ステップの判別結果が肯定的でかつ第２単位領域判別ステップの判別結果が否定的であるとき第２単位領域指定ステップによって指定された第２単位領域から他の上位アイテムデータを読み出す第２読み出しステップ(S95, S145)、および第１読み出しステップおよび第２読み出しステップの各々によって読み出された上位アイテムデータに基づいて下位アイテムリストを作成する作成ステップ(S121, S173)を実行させるためのリスト作成プログラムである。
【００１７】
請求項１と同様、下位アイテムリストの作成に要する時間の短縮化が可能となる。
【００１８】
請求項７の発明に従うリスト作成方法は、(a)複数の下位アイテムを管理する上位アイテムが記憶された１または２以上の第１単位領域の各々を順に指定し、(b)ステップ(a)によって指定された第１単位領域を形成する複数の第２単位領域の各々を順に指定し、(c)ステップ(a)によって指定された第１単位領域が末尾の第１単位領域であるか否かを判別し、(d)ステップ(b)によって指定された第２単位領域が末尾の第２単位領域であるか否かを判別し、(e)ステップ(c)の判別結果が否定的であるときステップ(a)によって指定された第１単位領域から上位アイテムデータを読み出し、(f)ステップ(c)の判別結果が肯定的でかつステップ(d)の判別結果が否定的であるとき第ステップ(b)によって指定された第２単位領域から他の上位アイテムデータを読み出し、そして(g)ステップ(e)およびステップ(f)の各々によって読み出された上位アイテムデータに基づいてアイテムリストを作成する、リスト作成方法である。
【００１９】
請求項１と同様、下位アイテムリストの作成に要する時間の短縮化が可能となる。
【発明の効果】
【００２０】
この発明によれば、末尾の第１単位領域が検出されるまでは、上位アイテムデータは第１単位領域毎に読み出される。末尾の第１単位領域が検出されると、上位アイテムデータは第２単位領域毎に読み出される。この結果、頻繁なアクセス動作の低減と無駄なデータ読み出し処理の回避が図られ、下位アイテムリストの作成に要する時間の短縮化が可能となる。
【００２１】
この発明の上述の目的，その他の目的，特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【発明を実施するための最良の形態】
【００２２】
図１を参照して、この実施例のディジタルカメラ１０は、光学レンズ１２を含む。被写界の光学像は、光学レンズ１２を経てイメージセンサ１４の撮像面に照射され、光電変換を施される。この結果、被写界を表す生画像信号が生成される。
【００２３】
キー入力装置４０によってカメラモードが選択されかつ撮影操作が行われると、撮影処理が実行される。ＣＰＵ３８は、ＴＧ(Timing Generator)１８に本露光を命令する。ＴＧ１８はイメージセンサ１４に本露光を施し、これによって生成された生画像信号をラスタ走査態様でイメージセンサ１４から読み出す。ＣＤＳ／ＡＧＣ／ＡＤ回路１６は、イメージセンサ１４から出力された生画像信号に相関２重サンプリング，自動ゲイン調整およびＡ／Ｄ変換の一連の処理を施し、ディジタル信号である生画像データを出力する。
【００２４】
生画像データは、信号処理回路２０によって白バランス調整，色分離，ＹＵＶ変換などの処理を施される。こうして得られたＹＵＶ形式の画像データは、メモリ制御回路２２によってＳＤＲＡＭ２４に書き込まれる。図２を参照して、ＳＤＲＡＭ２４は、ＹＵＶ画像エリア２４ａ，ＪＰＥＧエリア２４ｂ，ワークエリア２４ｃ…を有する。信号処理回路２０からの画像データは、ＹＵＶ画像エリア２４ａに書き込まれる。
【００２５】
ＪＰＥＧコーデック３６は、ＹＵＶ画像エリア２４ａに確保された画像データをメモリ制御回路２２を通して読み出し、読み出された画像データをＪＰＥＧ方式に従って圧縮し、そして圧縮画像データつまりＪＰＥＧデータをメモリ制御回路２２を通してＳＤＲＡＭ２４のＪＰＥＧエリア２４ｂに書き込む。撮影操作が行われた時点の被写界像は、以上のような撮影処理の実行によって、ＪＰＥＧデータとしてＪＰＥＧエリア２４ｂに確保される。
【００２６】
ＣＰＵ３８は、ＪＰＥＧエリア２４ｂに格納されたＪＰＥＧデータをメモリ制御回路２４を通して読み出し、読み出されたＪＰＥＧデータを含むＪＰＥＧファイルをＩ／Ｆ３０を通して記録媒体３２に記録する。
【００２７】
キー入力装置４０によって再生モードが選択されると、所望のＪＰＥＧファイルの再生処理が実行される。ＣＰＵ３８は、Ｉ／Ｆ３０を通して記録媒体３２にアクセスし、所望のＪＰＥＧファイルに格納されたＪＰＥＧデータを読み出す。読み出されたＪＰＥＧデータは、メモリ制御回路２２を通してＳＤＲＡＭ２４のＪＰＥＧエリア２４ｂに書き込まれる。
【００２８】
ＪＰＥＧコーデック３６は、メモリ制御回路２２を通してＪＰＥＧエリア２４ｂからＪＰＥＧデータを読み出し、読み出されたＪＰＥＧデータを伸長し、そして伸長された画像データをメモリ制御回路２２を通してＳＤＲＡＭ２４のＹＵＶ画像エリア２４ａに書き込む。
【００２９】
ビデオエンコーダ２６は、ＹＵＶ画像エリア２４ａに格納された画像データをメモリ制御回路２２を通して読み出し、読み出された画像データをＮＴＳＣ方式のコンポジットビデオ信号に変換し、そして変換されたコンポジットビデオ信号をＬＣＤモニタ２８に出力する。この結果、再生画像がモニタ画面に表示される。
【００３０】
キー入力装置４０によって更新操作が行われると、別のＪＰＥＧファイルについて再生処理が実行される。これによって、モニタ画面に表示される再生画像が別の再生画像によって更新される。
【００３１】
図３を参照して、記録媒体３２は、ＭＳ−ＤＯＳフォーマットを施されたメモリカードである。リザーブエリア３２ａは、ＭＢＲ(Master Boot Area)，ＰＢＲ(Partition Boot Area)，ＦＡＴ(File Allocation Table)１，ＦＡＴ１の複製であるＦＡＴ２およびルートディレクトリを有する。データエリア３２ｂは複数のクラスタによって形成され、各々のクラスタは３２個のセクタによって形成される。また、“２”から始まる識別番号（クラスタ番号）が、各々のクラスタに割り当てられる。
【００３２】
ここで、各々のセクタのサイズは５１２バイトであり、各々のクラスタのサイズは１６３８４バイトである。さらに、ディレクトリ情報またはファイル情報が記述されるＤＥブロック(DE：Directory Entry)のサイズは、３２バイトである。
【００３３】
図４を参照して、ルートディレクトリの先頭のＤＥブロックには、ディレクトリ名“ＤＣＩＭ”，属性“ディレクトリ”および開始クラスタ番号“２”が、ディレクトリ情報として記述される。２番目のＤＥブロックには、自分が無効ブロックであることを示す“０ｘＥ５”が記述される。３番目のＤＥブロックには、ディレクトリ名“ＭＩＳＣ”，属性“ディレクトリ”および開始クラスタ番号“３”が、ディレクトリ情報として記述される。４番目のＤＥブロックには、自分以降が無効ブロックであることを示す“０ｘ００”が記述される。
【００３４】
クラスタ２の先頭のＤＥブロックには、ディレクトリ名“１００ＳＡＮＹＯ”，属性“ディレクトリ”および開始クラスタ番号“４”が、ディレクトリ情報として記述される。２番目のＤＥブロックには、ディレクトリ名“１０１ＳＡＮＹＯ”，属性“ディレクトリ”および開始クラスタ番号“１００”が、ディレクトリ情報として記述される。また、クラスタ３の先頭のＤＥブロックには、自分以降が無効ブロックであることを示す“０ｘ００”が記述される。
【００３５】
図５を参照して、クラスタ４の先頭のＤＥブロックには、ファイル名“ＳＡＮＹ０００１．ＪＰＧ”，属性“アーカイブ”および開始クラスタ番号“５”が、ファイル情報として記述される。２番目のＤＥブロックには、ファイル名“ＳＡＮＹ０００２．ＪＰＧ”，属性“アーカイブ”および開始クラスタ番号“１５”が、ファイル情報として記述される。３番目のＤＥブロックには、自分が無効ブロックであることを示す“０ｘＥ５”が記述される。これ以降、同様の記述を有する複数のＤＥブロックがクラスタ４および２８を跨いで形成される。クラスタ１００にも、同様の記述を有する複数のＤＥブロックが形成される。
【００３６】
ＪＰＥＧファイル“ＳＡＮＹ０００１．ＪＰＧ”はクラスタ５〜１４に跨って記憶され、ＪＰＥＧファイル“ＳＡＮＹ０００２．ＪＰＧ”はクラスタ１５〜２６に跨って記憶され、そしてＪＰＥＧファイル“ＳＡＮＹ０００４．ＪＰＧ”はクラスタ３８〜４１に跨って記憶される。他のＪＰＥＧファイルも、同じ要領で複数のクラスタに跨って記憶される。なお、１つのクラスタ内では、データの連続性が保証される。つまり、データは、各々のクラスタを形成する３２個のセクタに連続的に記憶される。
【００３７】
図４および図５に示すＤＥブロックの構造から、ディレクトリ“ＤＣＩＭ”がクラスタ２に記憶され、ディレクトリ“ＭＩＳＣ”がクラスタ３に記憶されることが分かる。さらに、ディレクトリ“ＤＣＩＭ”の下階層にディレクトリ“１００ＳＡＮＹＯ”および“１０１ＳＡＮＹＯ”が存在し、ディレクトリ“１００ＳＡＮＹＯ”がクラスタ４および２８に記憶される一方、ディレクトリ“１０１ＳＡＮＹＯ”がクラスタ１００に記憶されることが分かる。
【００３８】
互いに関連する複数のクラスタのリンク状態は、ＦＡＴ１およびＦＡＴ２によって、図６に示す要領で管理される。図６を参照して、“終端”を示すマーカはクラスタ２，３，１４，２６，２８および４１に割り当てられる。また、“空き”を示すマーカは、クラスタ２７および２９〜３７に割り当てられる。他のクラスタは、自分が記憶するデータに続くデータが記憶されたクラスタの識別番号を示すマーカを有する。
【００３９】
このようなＦＡＴ１またはＦＡＴ２を参照することで、ディレクトリ“１００ＳＡＮＹＯ”がクラスタ４の他にクラスタ２８にも記憶され、ＪＰＥＧファイル“ＳＡＮＹ０００１．ＪＰＧ”がクラスタ５〜１４に記憶され、ＪＰＥＧファイル“ＳＡＮＹ０００２．ＪＰＧ”がクラスタ１５〜２６に記憶され、そしてＪＰＥＧファイル“ＳＡＮＹ０００３．ＪＰＧ”がクラスタ３８〜４１に記憶されていることが判明する。
【００４０】
カメラモードまたは再生モードが選択されると、まずディレクトリ“ＤＣＩＭ”に記述されたディレクトリ名“１００ＳＡＮＹＯ”および“１０１ＳＡＮＹＯ”がクラスタ２から検出される。検出されたディレクトリ名は、ＳＤＲＡＭ２４のワークエリア２４ｃに書き込まれる。これによって、図７に示すディレクトリリストＤＬがワークエリア２４ｃ上に得られる。
【００４１】
カメラモードが選択されたときは、ディレクトリリストＤＬに列挙されたディレクトリのいずれか１つに記述されたファイル名が読み出される。ディレクトリ“１００ＳＡＮＹＯ”が指定されたときは、これに記述されたファイル名がクラスタ４および２８から検出される。ディレクトリ“１０１ＳＡＮＹＯ”が指定されたときは、これに記述されたファイル名がクラスタ１００から検出される。検出されたファイル名はＳＤＲＡＭ２４ｃのワークエリア２４ｃに書き込まれ、これによって図８に示すファイルリストＦＬ１または図９に示すファイルリストＦＬ２が得られる。
【００４２】
再生モードが選択されたときは、ディレクトリリストＤＬに記述されたディレクトリ“１００ＳＡＮＹＯ”および“１０１ＳＡＮＹＯ”の両方に注目して、ファイルリストＦＬ１およびＦＬ２のいずれもがワークエリア２４ｃ上に得られる。
【００４３】
カメラモードの撮影処理によって作成されたＪＰＥＧファイルは、空き状態にある複数のクラスタに跨って書き込まれ、このＪＰＥＧファイルのファイル情報は指定されたディレクトリの下階層のＤＥブロックに記述される。さらに、この新規ＪＰＥＧファイルを記憶する複数のクラスタにリンクが形成されるように、ＦＡＴ１およびＦＡＴ２の各々が更新される。
【００４４】
なお、各々のディレクトリが管理できるＪＰＥＧファイルの数は、“１０００”である。したがって、指定されたディレクトリが満杯であれば、別のディレクトリが作成される。カメラモードで作成されたＪＰＥＧファイルのファイル情報は、この新規ディレクトリの下階層のＤＥブロックに記述される。
【００４５】
再生モードでは、キー入力装置４０を利用した更新操作によって、所望のＪＰＥＧファイルが選択される。選択されたＪＰＥＧファイルを記憶するクラスタは、ＦＡＴ１またはＦＡＴ２を参照して特定される。再生モードではまた、キー入力装置４０を利用した削除操作によって、現時点で再生されているＪＰＥＧファイルが削除される。具体的には、注目するＪＰＥＧファイルのファイル情報がディレクトリから削除され、対応するＦＡＴ１および２のマーカが“空き”に更新される
ＣＰＵ３８は、図１０に示すメインタスク，図１１〜図１２に示す撮影タスク，図１３に示す再生タスクを含む複数のタスクを並列的に実行する。ＣＰＵ３８はまた、図１４〜図１７に示すサブルーチンを適宜実行する。なお、これらのフロー図に対応する制御プログラムは、フラッシュメモリ３４に記憶される。
【００４６】
図１０を参照して、ステップＳ１では初期化処理を行う。これによって、ＳＤＲＡＭ２４上のワークエリア２４ｃ（図２参照）がクリアされる。ステップＳ３では、現時点で選択されているモードがカメラモードであるか否かを判別する。ここでＹＥＳであればステップＳ５で撮影タスクを起動し、ＮＯであればステップＳ７で再生タスクを起動する。ステップＳ５またはＳ７の処理が完了すると、モード切換操作が行われたか否かをステップＳ９で判別する。ここでＹＥＳであれば、起動中のタスクをステップＳ１１で停止し、その後にステップＳ３に戻る。
【００４７】
図１１を参照して、ステップＳ２１では、ディレクトリ“ＤＣＩＭ”によって管理される複数のディレクトリ名が列挙されたディレクトリリストＤＬをワークエリア２４ｃ上に作成するべく、ディレクトリ取得処理を実行する。ステップＳ２３では、ディレクトリリストＤＬに列挙されたディレクトリ名のいずれか１つを指定する。続くステップＳ２５では、指定されたディレクトリによって管理される複数のファイル名が列挙されたファイルリストＦＬ＊（＊：１または２）をワークエリア２４ｃ上に作成するべく、ファイルリスト取得処理を実行する。
【００４８】
ステップＳ２７では撮影操作が行われた否かを判別し、ＹＥＳであればステップＳ２９で撮影処理を実行する。この結果、撮影操作が行われた時点の被写界像に対応するＪＰＥＧデータが、ＳＤＲＡＭ２４のＪＰＥＧエリア２４ｂ（図２参照）に確保される。
【００４９】
ステップＳ３１では、ディレクトリを新規に作成する必要があるか否かを判別する。具体的には、ファイルリストＦＬ＊の末尾に記述されたファイル名を形成する識別番号が“１０００”に達しているか否かを判別する。ここでＮＯであれば、新規に作成されるＪＰＥＧファイルは現時点で指定されているディレクトリの下で管理できるとみなし、そのままステップＳ３９に進む。これに対して、ステップＳ３１でＹＥＳであれば、新規に作成されるＪＰＥＧファイルは現時点で指定されているディレクトリの下で管理できないとみなし、ステップＳ３３に進む。
【００５０】
ステップＳ３３では、新規のディレクトリをディレクトリ“ＤＣＩＭ”の下階層に作成する。図４の例では、新規のディレクトリ情報をクラスタ２内のＤＥブロックに追加的に書き込む。ステップＳ３５では、ディレクトリリストＤＬを更新するべく、ディレクトリリスト取得処理を再度実行する。更新されたディレクトリリストＤＬには、新規のディレクトリ情報を形成するディレクトリ名が記述される。ステップＳ３７では新規のディレクトリを指定し、その後にステップＳ３９に進む。
【００５１】
ステップＳ３９では、ＪＰＥＧエリア２４ｂに格納されたＪＰＥＧデータを含むＪＰＥＧファイルを記録媒体３２のデータエリア３２ｂに記録する。ステップＳ４１では、こうして記録されたＪＰＥＧファイルのファイル情報を、指定されたディレクトリのＤＥブロックに追加的に書き込む。続くステップＳ４３では、ＪＰＥＧファイルが書き込まれた複数のクラスタの間にリンクが形成されるように、ＦＡＴ１および２を更新する。ステップＳ４３の処理が完了すると、ステップＳ２５に戻る。
【００５２】
図１３を参照して、ステップＳ５１〜Ｓ５５では、図１１に示すステップＳ２１〜Ｓ２５と同様の処理を実行する。これによって、ディレクトリＤＣＩＭによって管理される複数のディレクトリ名が列挙されたディレクトリリストＤＬと、ステップＳ５３で指定されたディレクトリによって管理される複数のファイル名が列挙されたファイルリストＦＬ＊とが、ワークエリア２４ｃ上に得られる。
【００５３】
ステップＳ５７では、ディレクトリリストＤＬ上の全てのディレクトリが指定されたか否かを判別する。ここでＮＯであれば未だ指定されていないディレクトリをステップＳ５３で指定し、ステップＳ５５の処理を再度実行する。この結果、図８および図９にそれぞれ示すファイルリストＦＬ１およびＦＬ２が、ワークエリア２４ｃ上に得られる。
【００５４】
ステップＳ５９では、ディレクトリリストＤＬ上のいずれか１つのディレクトリと、これに対応するファイルリストＦＬ＊上のいずれか１つのＪＰＥＧファイルを指定する。ステップＳ６１では、指定されたＪＰＥＧファイルに再生処理を施す。この結果、再生画像がＬＣＤモニタ２８から出力される。
【００５５】
更新操作が行われると、ステップＳ６５でＹＥＳと判断し、ステップＳ７１でディレクトリおよび／またはファイルの指定を更新してからステップＳ６１に戻る。この結果、ＬＣＤモニタ２８から出力される再生画像が更新される。
【００５６】
削除操作が行われると、ステップＳ６７で削除処理を実行する。これによって、現時点で再生されているＪＰＥＧファイルのファイル情報が上階層のディレクトリから削除され、削除に対応してＦＡＴ１および２が更新される。ＦＡＴ１および２の更新が完了すると、ステップＳ６９でファイルリスト取得処理を再度実行し、その後にステップＳ５９に戻る。
【００５７】
図１１に示すステップＳ２１，図１２に示すステップＳ３５または図１３に示すステップＳ５１のディレクトリリスト取得処理は、図１４に示すサブルーチンに従って実行される。図１４を参照して、ステップＳ８１では、ルートディレクトリ上でディレクトリ“ＤＣＩＭ”に割り当てられた開始クラスタ番号を取得する。ステップＳ８３では、取得されたクラスタ番号を有するクラスタつまり指定クラスタに割り当てられたマーカを、ＦＡＴ１またはＦＡＴ２から検出する。ステップＳ８５では、検出されたマーカが“終端”を示すか否か、つまり指定クラスタが末尾クラスタであるか否かを判別する。
【００５８】
ここでＮＯであれば、指定クラスタに記憶されたクラスタデータをＳＤＲＡＭ２４のワークエリア２４ｃに読み出す。ステップＳ８９では、読み出されたクラスタデータに注目してディレクトリリスト追加処理を実行する。読み出されたクラスタデータに含まれるディレクトリ名は、この処理によってディレクトリリストＤＬに追加される。続くステップＳ９１では、ステップＳ８３で検出されたマーカに記述されたクラスタ番号を取得する。ステップＳ９１の処理が完了すると、ステップＳ８３に戻る。
【００５９】
これによって、ステップＳ８１で取得されたクラスタ番号にリンクするクラスタ番号が順に検出され、検出されたクラスタ番号を有するクラスタに記憶されたクラスタデータがワークエリア２４ｃに順に読み出される。指定クラスタが末尾クラスタであれば、ステップＳ８５でＹＥＳと判断し、ステップＳ９３に進む。なお、図４および図６に示す例では、１回目のステップＳ８５の処理でＹＥＳと判断される。
【００６０】
ステップＳ９３では、末尾クラスタを形成する第Ｋセクタを指定するべく、変数Ｋを“１”に設定する。続くステップＳ９５では第Ｋセクタに記憶されたセクタデータをワークエリア２４ｃに読み出し、ステップＳ９７では読み出されたセクタデータに注目して上述と同様のディレクトリリスト追加処理を実行する。
【００６１】
ステップＳ９９ではフラグＦｄｃｐが“１”であるか否かを判別し、ステップＳ１０１では変数Ｋが“３２”以上であるか否かを判別する。フラグＦｄｃｐは、ディレクトリＤＣＩＭの終端が検出されたときに、ディレクトリリスト追加処理によって“１”に設定される。また、１つのクラスタは３２個のセクタによって形成されるため、変数Ｋは、現時点で注目するセクタが末尾セクタのとき、“３２”を示す。
【００６２】
ステップＳ９９およびＳ１０１のいずれもＮＯであれば、次のセクタを指定するべくステップＳ１０３で変数Ｋをインクリメントし、その後にステップＳ９５に戻る。ステップＳ９９またはＳ１０１でＹＥＳであれば、上階層のルーチンに復帰する。
【００６３】
ステップＳ８９またはＳ９７のディレクトリリスト追加処理は、図１５に示すサブルーチンに従って実行される。まずステップＳ１１１で、フラグＦｄｃｐを“０”に設定する。ステップＳ１１３では、ワークエリア２４ｃ上のクラスタデータまたはセクタデータから先頭のＤＥ(Data Entry)ブロックを取得する。
【００６４】
ステップＳ１１５では、注目するＤＥブロックの先頭に記述された数値が“０ｘ００”であるか否か、つまり注目するＤＥブロック以降の全てが無効ブロックであるか否かを判別する。ステップＳ１１７では、注目するＤＥブロックの先頭に記述された数値が“０ｘＥ５”であるか否か、つまり注目するＤＥブロックのみが無効ブロックであるか否かを判別する。ステップＳ１１９では、注目するＤＥブロックに記述された属性が“ディレクトリ”であるか否かを判別する。
【００６５】
ステップＳ１１５でＹＥＳであれば、ディレクトリＤＣＩＭの終端が検出されたとみなして、ステップＳ１２５でフラグＦｄｃｐを“１”に設定し、その後に上階層のルーチンに復帰する。ステップＳ１１７でＹＥＳであるか、あるいはステップＳ１１９でＮＯであれば、ステップＳ１２７でワークエリア２４ｃから次のＤＥブロックを取得し、その後にステップＳ１１５に戻る。
【００６６】
ステップＳ１１７でＮＯと判断され、かつステップＳ１１９でＹＥＳと判断されると、ステップＳ１２１に進み、取得されたＤＥブロックに記述されたディレクトリ名をディレクトリリストＤＬに追加する。ステップＳ１２３では、未取得のＤＥブロックが存在するか否かを判別し、ＹＥＳであればステップＳ１２７に進む一方、ＮＯであれば上階層のルーチンに復帰する。
【００６７】
図１１に示すステップＳ２５または図１３に示すステップＳ５５のファイルリスト取得処理は、図１６に示すサブルーチンに従って実行される。ただし、図１６に示すステップＳ１３１〜Ｓ１５３の処理は、ディレクトリＤＣＩＭ上で指定ディレクトリに割り当てられた開始クラスタ番号をステップＳ１３１で取得し、ステップＳ１３９またはＳ１４７でファイルリスト追加処理を実行し、そしてフラグＦｆｃｐが“１”であるか否かをステップＳ１４９で判別する点を除き、図１４に示すステップＳ８１〜Ｓ１０３の処理と同じである。したがって、重複した説明は省略する。
【００６８】
ステップＳ１３９またはＳ１４７のファイルリスト追加処理は、図１７に示すサブルーチンに従って実行される。ただし、図１７に示すステップＳ１６１〜Ｓ１７９の処理は、ステップＳ１６１でフラグＦｆｃｐを“０”に設定し、ステップＳ１７１でフラグＦｆｃｐを“１”に設定し、ステップＳ１７３でファイル名をファイルリストに追加する点、ならびにステップＳ１６９およびＳ１７１の各々でＤＥブロックの属性を判別し、この属性が“ディレクトリ”または“ボリュームレベル”であるときにステップＳ１７９に進む一方、この属性が“ディレクトリ”および“ボリュームレベル”のいずれでもないときにステップＳ１７３に進む点を除き、図１５に示すステップＳ１１１〜Ｓ１２７の処理と同じである。したがって、重複した説明は省略する。なお、フラグＦｆｃｐは、ファイル情報の終端が検出されたときに、ステップＳ１７７で“１”に設定される。
【００６９】
以上の説明から分かるように、複数の下位ディレクトリ（下位アイテム）を管理する上位ディレクトリ（上位アイテム）は、１または２以上のクラスタ（第１単位領域）に記憶される。このクラスタの各々は、ステップＳ８１およびＳ９１によって順に指定される。指定されたクラスタを形成する複数のセクタ（第２単位領域）の各々は、ステップＳ９３およびＳ１０３によって順に指定される。指定されたクラスタが末尾クラスタであるか否かはステップＳ８５で判別され、指定されたセクタが末尾セクタであるか否かはステップＳ１０１で判別される。
【００７０】
指定されたクラスタに記憶されたデータ（上位アイテムデータ）は、ステップＳ８５の判別結果が否定的であるとき、ステップＳ８７で読み出される。指定されたセクタに記憶されたデータ（他の上位アイテムデータ）は、ステップＳ８５の判別結果が肯定的でかつステップＳ１０１の判別結果が否定的であるとき、ステップＳ９５で読み出される。読み出されたデータに含まれる下位ディレクトリ名は、ステップＳ１２１でディレクトリリストＤＬ（下位アイテムリスト）に追加される。
【００７１】
このように、指定されたクラスタが末尾クラスタに先行するクラスタであれば、このクラスタに記憶されたデータがステップＳ８７で読み出される。ステップＳ９１は注目する１または２以上のクラスタの各々を順に指定するため、ステップＳ８７は末尾クラスタに先行するクラスタに記憶されたデータを順に読み出すこととなる。
【００７２】
指定されたクラスタが末尾クラスタで、かつ指定されたセクタが末尾セクタに先行するセクタであれば、このセクタに記憶されたデータがステップＳ９５で読み出される。ステップＳ１０３もまた注目する複数のセクタの各々を順に指定するため、ステップＳ９５は、末尾セクタに先行するセクタに記憶されたデータを順に読み出すこととなる。
【００７３】
つまり、末尾クラスタが検出されるまでは１クラスタ毎のデータ読み出しが実行され、末尾クラスタが検出されると１セクタ毎のデータ読み出しが実行される。この結果、頻繁なアクセス動作の低減と無駄なデータ読み出し処理の回避が図られ、ディレクトリリストＤＬの作成に要する時間の短縮化が可能となる。
【００７４】
同様に、複数のＪＰＥＧファイル（下位アイテム）を管理するディレクトリ（上位アイテム）は、１または２以上のクラスタ（第１単位領域）に記憶される。このクラスタの各々は、ステップＳ１３１およびＳ１４１によって順に指定される。指定されたクラスタを形成する複数のセクタの各々は、ステップＳ１４３およびＳ１５３によって順に指定される。指定されたクラスタが末尾クラスタであるか否かはステップＳ１３５で判別され、指定されたセクタが末尾セクタであるか否かはステップＳ１５１で判別される。
【００７５】
指定されたクラスタに記憶されたデータ（上位アイテムデータ）は、ステップＳ１３５の判別結果が否定的であるとき、ステップＳ１３７で読み出される。指定されたセクタに記憶されたデータ（上位アイテムデータ）は、ステップＳ１３５の判別結果が肯定的でかつステップＳ１５１の判別結果が否定的であるとき、ステップＳ１４５で読み出される。読み出されたデータに含まれるファイル名は、ステップＳ１７３でファイルリストＦＬ１またはＦＬ２（下位アイテムリスト）に追加される。
【００７６】
このように、指定されたクラスタが末尾クラスタに先行するクラスタであれば、このクラスタに記憶されたデータがステップＳ１３７で読み出される。ステップＳ１４１は注目する１または２以上のクラスタの各々を順に指定するため、ステップＳ１３７は末尾クラスタに先行するクラスタに記憶されたデータを順に読み出すこととなる。
【００７７】
指定されたクラスタが末尾クラスタで、かつ指定されたセクタが末尾セクタに先行するセクタであれば、このセクタに記憶されたデータがステップＳ１４５で読み出される。ステップＳ１５３もまた注目する複数のセクタの各々を順に指定するため、ステップＳ１４５は、末尾セクタに先行するセクタに記憶されたデータを順に読み出すこととなる。
【００７８】
つまり、末尾クラスタが検出されるまでは１クラスタ毎のデータ読み出しが実行され、末尾クラスタが検出されると１セクタ毎のデータ読み出しが実行される。この結果、頻繁なアクセス動作の低減と無駄なデータ読み出し処理の回避が図られ、ファイルリストＦＬ１またはＦＬ２の作成に要する時間の短縮化が可能となる。
【００７９】
なお、この実施例では、ディジタルカメラを用いて説明したが、この発明は据え置き型のビデオレコーダなどのコンテンツ記録再生装置にも適用できる。また、この実施例では、１つのクラスタを“第１単位領域”と定義し、１つのセクタを“第２単位領域”と定義しているが、２以上の既定数のクラスタを“第１単位領域”と定義してもよく、さらには２以上の既定数のセクタを“第２単位領域”と定義してもよい。
【図面の簡単な説明】
【００８０】
【図１】この発明の一実施例の構成を示すブロック図である。
【図２】図１実施例に適用されるＳＤＲＡＭのマッピング状態の一例を示す図解図である。
【図３】図１実施例に適用される記録媒体のマッピング状態の一例を示す図解図である。
【図４】図１実施例に適用される記録媒体に記録されたディレクトリの構造の一部を示す図解図である。
【図５】図１実施例に適用される記録媒体に記録されたディレクトリの構造の他の一部を示す図解図である。
【図６】図１実施例に適用される記録媒体に記憶されたＦＡＴの構造の一部を示す図解図である。
【図７】図１実施例に適用されるディレクトリリストの一例を示す図解図である。
【図８】図１実施例に適用されるファイルリストの一例を示す図解図である。
【図９】図１実施例に適用されるファイルリストの他の一例を示す図解図である。
【図１０】図１実施例に適用されるＣＰＵの動作の一部を示すフロー図である。
【図１１】図１実施例に適用されるＣＰＵの動作の他の一部を示すフロー図である。
【図１２】図１実施例に適用されるＣＰＵの動作のその他の一部を示すフロー図である。
【図１３】図１実施例に適用されるＣＰＵの動作のさらにその他の一部を示すフロー図である。
【図１４】図１実施例に適用されるＣＰＵの動作の他の一部を示すフロー図である。
【図１５】図１実施例に適用されるＣＰＵの動作のその他の一部を示すフロー図である。
【図１６】図１実施例に適用されるＣＰＵの動作のさらにその他の一部を示すフロー図である。
【図１７】図１実施例に適用されるＣＰＵの動作の他の一部を示すフロー図である。
【符号の説明】
【００８１】
１０  …ディジタルカメラ
１４  …イメージセンサ
２２  …メモリ制御回路
２４  …ＳＤＲＡＭ
３２  …記録媒体
３４  …フラッシュメモリ
３８  …ＣＰＵ
【図１】
2007141124.tif 000003
【図２】
2007141124.tif 000004
【図３】
2007141124.tif 000005
【図４】
2007141124.tif 000006
【図５】
2007141124.tif 000007
【図６】
2007141124.tif 000008
【図７】
2007141124.tif 000009
【図８】
2007141124.tif 000010
【図９】
2007141124.tif 000011
【図１０】
2007141124.tif 000012
【図１１】
2007141124.tif 000013
【図１２】
2007141124.tif 000014
【図１３】
2007141124.tif 000015
【図１４】
2007141124.tif 000016
【図１５】
2007141124.tif 000017
【図１６】
2007141124.tif 000018
【図１７】
2007141124.tif 000019