(57)【要約】【課題】簡単な方法で、記録媒体におけるアクセスタイムを短縮する。【解決手段】  ハードディスクの記録単位であるセクタからなるクラスタのそれぞれへのファイルの配置を示すFAT（File Allocation Tables）と共に、ハードディスクにファイルが記録される場合、ページリスト生成更新部２０１により、空き領域をなすクラスタのうちの、先頭のクラスタの位置を示すクラスタ番号と、クラスタ番号で位置が示されるクラスタについてのFATを格納するセクタの位置を示すセクタのアドレスとが記憶され、FAT読み出し部２０２により、記憶されているセクタのアドレスを基に、ハードディスクからFATが読み出され、記録制御部２０５により、クラスタ番号および読み出されたFATを基に、ハードディスクへのファイルの記録が制御される。本発明は、デジタルビデオカメラに適用することができる。【選択図】図６
2005332481.tif 000002
【特許請求の範囲】
【請求項１】
ファイル記録媒体の記録単位である第１の記録領域からなる第２の記録領域のそれぞれへのファイルの配置を示すファイル配置情報と共に、前記ファイル記録媒体に前記ファイルを記録する記録装置において、
１つの空き領域をなす１または複数の前記第２の記録領域のうちの、先頭の前記第２の記録領域の位置を示す第１のアドレス情報と、前記第１のアドレス情報で位置が示される前記第２の記録領域についての前記ファイル配置情報を格納する前記第１の記録領域の位置を示す第２のアドレス情報との記憶を制御する記憶制御手段と、
記憶されている前記第２のアドレス情報を基に、前記ファイル記録媒体からの前記ファイル配置情報の読み出しを制御する読み出し制御手段と、
前記第１のアドレス情報および読み出された前記ファイル配置情報を基に、前記ファイル記録媒体へのファイルの記録を制御する記録制御手段と
を含むことを特徴とする記録装置。
【請求項２】
前記記憶制御手段は、前記第１のアドレス情報および前記第２のアドレス情報をリストとして記憶するように記憶を制御する
ことを特徴とする請求項１に記載の記録装置。
【請求項３】
前記リストには、前記第１のアドレス情報および前記第２のアドレス情報に対応して、前記空き領域の記録容量を示す情報がさらに格納されている
ことを特徴とする請求項２に記載の記録装置。
【請求項４】
前記記録制御手段は、FAT（File Allocation Tables）ファイルシステムが適用されている前記ファイル記録媒体に前記ファイルが記録されている場合、前記ファイル記録媒体における、BPB（BIOS（Basic Input/Output System） Parameter Block）と、FATが格納される領域との間に設けられる領域に前記リストを記録するように、さらに記録を制御する
ことを特徴とする請求項３に記載の記録装置。
【請求項５】
ファイル記録媒体の記録単位である第１の記録領域からなる第２の記録領域のそれぞれへのファイルの配置を示すファイル配置情報と共に、前記ファイル記録媒体に前記ファイルを記録する記録装置の記録方法において、
１つの空き領域をなす１または複数の前記第２の記録領域のうちの、先頭の前記第２の記録領域の位置を示す第１のアドレス情報と、前記第１のアドレス情報で位置が示される前記第２の記録領域についての前記ファイル配置情報を格納する前記第１の記録領域の位置を示す第２のアドレス情報との記憶を制御する記憶制御ステップと、
記憶されている前記第２のアドレス情報を基に、前記ファイル記録媒体からの前記ファイル配置情報の読み出しを制御する読み出し制御ステップと、
前記第１のアドレス情報および読み出された前記ファイル配置情報を基に、前記ファイル記録媒体へのファイルの記録を制御する記録制御ステップと
を含むことを特徴とする記録方法。
【請求項６】
ファイル記録媒体の記録単位である第１の記録領域からなる第２の記録領域のそれぞれへのファイルの配置を示すファイル配置情報と共に、前記ファイル記録媒体に前記ファイルを記録する記録する記録処理用のプログラムであって、
１つの空き領域をなす１または複数の前記第２の記録領域のうちの、先頭の前記第２の記録領域の位置を示す第１のアドレス情報と、前記第１のアドレス情報で位置が示される前記第２の記録領域についての前記ファイル配置情報を格納する前記第１の記録領域の位置を示す第２のアドレス情報との記憶を制御する記憶制御ステップと、
記憶されている前記第２のアドレス情報を基に、前記ファイル記録媒体からの前記ファイル配置情報の読み出しを制御する読み出し制御ステップと、
前記第１のアドレス情報および読み出された前記ファイル配置情報を基に、前記ファイル記録媒体へのファイルの記録を制御する記録制御ステップと
を含むことを特徴とするコンピュータが読み取り可能なプログラムが記録されている記録媒体。
【請求項７】
ファイル記録媒体の記録単位である第１の記録領域からなる第２の記録領域のそれぞれへのファイルの配置を示すファイル配置情報と共に、前記ファイル記録媒体に前記ファイルを記録する記録処理をコンピュータに行わせるプログラムにおいて、
１つの空き領域をなす１または複数の前記第２の記録領域のうちの、先頭の前記第２の記録領域の位置を示す第１のアドレス情報と、前記第１のアドレス情報で位置が示される前記第２の記録領域についての前記ファイル配置情報を格納する前記第１の記録領域の位置を示す第２のアドレス情報との記憶を制御する記憶制御ステップと、
記憶されている前記第２のアドレス情報を基に、前記ファイル記録媒体からの前記ファイル配置情報の読み出しを制御する読み出し制御ステップと、
前記第１のアドレス情報および読み出された前記ファイル配置情報を基に、前記ファイル記録媒体へのファイルの記録を制御する記録制御ステップと
を含むことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記録装置および方法、記録媒体、並びにプログラムに関し、特に、より迅速に記録媒体に記録させることができるようにした記録装置および方法、記録媒体、並びにプログラムに関する。
【背景技術】
【０００２】
従来、例えば、デジタルビデオカメラやデジタルスチルカメラ、PC(Personal Computer)や携帯電話機、および据え置き型ビデオレコーダなどにおいては、ハードディスクなどのランダムアクセス可能な記録媒体に、静止画像、動画像、または音声(または音楽)といった各種データが、FAT（File Allocation Tables）などのファイルシステムによって、ファイルとして記録されていた。
【０００３】
FAT32などのファイルシステムにおいては、１つのクラスタに、ファイルの名前やファイルに格納される実際のデータ（以下、適宜、実データと称する）へのエントリポイントなどを示すディレクトリエントリが記録され、論理フォーマット上のアドレスにおいて、ディレクトリエントリが記録されたクラスタの後のクラスタに、ディレクトリエントリに対応するファイルの実データが記録される。
【０００４】
ファイルにアクセスする場合、各ファイルが記録されるときに生成されたディレクトリエントリ内に保持されている先頭クラスタの番号を基に、FATが参照され、FATから、そのファイルの実データが記録されているクラスタのクラスタ番号（以下、適宜、クラスタの番号とも称する）が順次読み出され、クラスタ番号で示されるクラスタから実データが読み出されることにより、ファイルがアクセスされる。
【０００５】
図１は、FATファイルシステム（FAT32）によりフォーマットされているハードディスク１の種々の領域の配置を示す図である。
【０００６】
図１で示されるように、ハードディスク１には、ハードディスク１を構成するパーティションの位置やサイズなどが記録されているパーティションテーブルやアクティブなパーティションから起動用のプログラムを読み込むためのマスタブートコード（Master Boot Code）などが記録されているMBR（Master Boot Record）１１、空き領域１２、およびパーティション１３が配置されている。
【０００７】
パーティション１３には、１クラスタあたりのセクタ数など、ハードディスク１の物理的な属性が記録されているBPB（BIOS（Basic Input Output System） Parameter Block）２１、ファイルのクラスタ（データの記録単位）の配列が記録されているFAT領域２２，FAT領域２２のバックアップなどのために利用される予備の領域であるFAT領域２３が設けられている。
【０００８】
また、パーティション１３には、ディレクトリエントリおよびそのディレクトリエントリに対応する実データが記録されるデータ領域２４が設けられている。ディレクトリエントリには、ファイル名、拡張子、属性、作成された日付と時刻、先頭クラスタ番号、およびファイルのサイズなどが格納される。
【０００９】
ハードディスクなどの記録媒体においては、ファイルが記録される場合、メモリに読み出されたFATから、クラスタのクラスタ番号が格納されていない空き領域が検索されることにより、ファイルを記録させるクラスタが検出される。そして、検出されたクラスタにファイルを書き込むと、ファイルが記録されたクラスタのクラスタ番号がFATに格納される。このとき、FATをRAM（Random Access Memory）などのメモリに保持することで、空いているクラスタのクラスタ番号を迅速に検索することができる。
【００１０】
しかしながら、FATのサイズによっては、FAT全体をメモリに保持できない場合がある。FAT全体をRAMなどのメモリに保持できない場合には、ページングが行われる。すなわち、FATが所定のページ単位に分割され、分割されたページ毎に、メモリに読み出され、メモリに読み出されたページから、空いているクラスタのクラスタ番号が検索される。メモリに読み出されている（保持されている）ページに、ファイルの記録に必要な記録容量の空き領域が無い場合には、そのページが破棄され、新たなページがメモリに読み出される。必要な記録容量の空き領域が検出されるまで、以上の処理が繰り返し実行される。
【００１１】
具体的には、例えば、図１で示されるように、ハードディスク１のパーティション１３が１８．６ギガバイト（＝３９，０５３，９５２セクタ）であり、クラスタのサイズが３２キロバイト（＝６４セクタ）である場合、FAT領域２２に記録される「FAT」２２aの記録容量は、約２．３メガバイト（＝４，７６７セクタ）となる。なお、ここで１セクタは５１２バイトである。
【００１２】
なお、「FAT」２２aの個々の四角は、１つのエントリ３１を示す。例えば、図１中のエントリ３１に付された「00000003」や「00000004」などの番号は、そのエントリ３１に格納されている値を示す。すなわち、「00000003」や「00000004」などの番号を格納しているエントリ３１に対応するクラスタには、既にファイルが記録されている。
【００１３】
これに対して、「00000000」の番号を格納しているエントリ３１に対応するクラスタには、ファイルが記録されていない。すなわち、「00000000」の番号を格納しているエントリ３１に対応するクラスタは、空き領域を表す。
【００１４】
このとき、図１で示される１つのセクタが５１２バイトであり、１つのエントリ３１が４バイトである場合、１つのセクタには、１２８個のエントリ３１が配置されることになる。したがって、装置の仕様によっては、メモリにFAT全体（「FAT」２２a全体）を１度に読み出す（保持する）ことができないため、FATに対して、所定のサイズ、すなわち、所定のページ単位でアクセスすることになる。例えば、約２．３メガバイトのFATがページングされる場合、１つのページのサイズが３２キロバイト（＝６４セクタ）とされる。
【００１５】
ここで、図２のフローチャートを参照して、FATを用いた従来のファイルの記録の処理を説明する。
【００１６】
ステップＳ１において、「FAT」２２ａの１ページ目（最初のページ）がメモリに読み込まれる。例えば、図３で示されるように、「FAT」２２ａの１ページ目であるページＰ1-1がRAMなどのメモリに読み込まれる。ステップＳ２において、メモリに読み込まれているページから空き領域が検索される。ステップＳ３において、ページに空き領域があるか否かが判定される。
【００１７】
なお、図３において、１つの四角は、１つのエントリ３１を示す。図３において、白い四角は、対応するクラスタが空きであることを示すエントリ３１を表す。斜線が付されている四角は、対応するクラスタにファイルが記録されていることを示すエントリ３１を表す。
【００１８】
ステップＳ３において、ページに空き領域がないと判定された場合、ステップＳ４に進み、メモリに読み込まれているページが「FAT」２２ａにおける、最終のページであるか否かが判定される。ステップＳ４において、最終のページではないと判定された場合、ステップＳ５に進み、メモリに読み込まれているページが破棄（削除）される。
【００１９】
ステップＳ６において、次のページがメモリに読み込まれる。例えば、図３で示されるページＰ1-2がメモリに読み込まれる。その後、手続きは、ステップＳ２に戻り、上述した処理が実行される。
【００２０】
一方、ステップＳ３において、ページに空き領域があると判定された場合、ステップＳ７に進み、検索された空き領域の記録容量は、記録しようとするファイルのデータ量以上であるか否かが判定される。すなわち、記録しようとするファイルの総てを格納することができる空き領域がメモリに読み出されているページで示されるクラスタに存在するか否かが判定される。
【００２１】
例えば、ファイルが記録されるのに、２８のクラスタが必要とされる場合、メモリに読み出されているページ、例えば、ページＰ1-2に、対応するクラスタが空きであることを示すエントリ３１が２８あるか否かが判定される。
【００２２】
ステップＳ７において、検索された空き領域の記録容量は、記録しようとするファイルのデータ量以上ではない（データ量未満である）と判定された場合、ステップＳ４に戻り、上述した処理が実行される。
【００２３】
ステップＳ７において、検索された空き領域の記録容量は、記録されるファイルのデータ量以上であると判定された場合、ステップＳ８に進み、ファイルが記録される。例えば、図３で示されるページＰ1-nの２８個の白い四角で示されるエントリ３１に、クラスタ番号が格納され、図１で示されるデータ領域２４にディレクトリエントリを含むファイル（実データ）が記録される。
【００２４】
ステップＳ４において、メモリに読み込まれているページが、最終のページであると判定された場合、ファイルの記録の処理は終了する。すなわち、「FAT」２２ａには、ファイル（実データ）が記録されるクラスタのクラスタ番号を全て格納することが可能な記録容量の空き領域が存在しないため、ファイルは記録されない。
【００２５】
このように、RAMなどのメモリにFAT全体を一度に読み込むことができない場合、FATがページ単位で、メモリに読み込まれる（ページングされる）。したがって、ファイルを記録するのに２８の空いているクラスタが必要である場合、図２のステップＳ７の処理において、メモリに読み込まれているページがページＰ1-2であるとき、ページＰ1-2のみを対象にして、充分な記録容量を有する空き領域が検索され、また、同様に、メモリに読み込まれているページがページＰ1-3である場合、ページＰ1-3のみを対象にして、充分な記録容量を有する空き領域が検索される。
【００２６】
このため、図３で示されるように、対応するクラスタが空きであることを示す１４のエントリ３１がページＰ1-2に含まれ、対応するクラスタが空きであることを示す１４のエントリ３１がページＰ1-3に含まれていたとしても、すなわち、ページＰ1-2およびページＰ1-3に跨って、空いているクラスタであって、充分な記録容量の空いているクラスタを示す２８のエントリ３１があったとしても、FATがページ単位で、メモリに読み込まれ、空き領域の有無が判断されるため、ページＰ1-2とページＰ1-3とにまたがる２８のエントリ３１に対応する空き領域は、ファイルを全て格納可能な、充分な記録容量を有する空き領域として認識されない。
【００２７】
したがって、１つのページで、充分な記録容量を有する空き領域を示すページＰ1-nがメモリに読み込まれた場合、ファイルが記録され、これにより、ページＰ1-nに、ファイルが記録されたクラスタのクラスタ番号が格納される。
【００２８】
すなわち、この場合、ｎ回のページング（ハードディスク１に対するアクセス）が必要とされる。
【００２９】
上述したように、ハードディスクなどの記録媒体においては、FATが先頭からページ単位でメモリに保持される。すでにページ内の全ての領域にクラスタ番号が格納され、空き領域が存在しないページであっても、メモリに順に読み込まれていた。例えば、図２のステップＳ１の処理のように、ページの先頭からメモリに保持され、また、図３で示されるページＰ1-1のように、空き領域の存在しないページであってもメモリに読み込まれていた。
【００３０】
また、FATをメモリに保持する方法などに関する技術が種々提案されている。
【００３１】
例えば、特許文献１には、ハードディスクにおいて、データを記録または再生する場合に、データが記録される（または記録されている）領域にアクセスするためのアドレス情報（システムエントリーエリアに記録されている情報）を、不揮発性メモリであるシステムエントリーメモリに記録することが開示されている。
【００３２】
特許文献２には、ホスト装置により発行される１回の読み出し、または１回の書き込みコマンドを基に、ハードディスク装置が、ハードディスクの空き領域を検出し、その空き領域に順次ファイル（ビデオデータなど）を記録することが開示されている。
【００３３】
特許文献３には、ファイルが記録される領域の先頭クラスタのクラスタ番号を、そのファイルを特定するためのファイル識別子として、また、固定長の値として用いることが開示されている。
【特許文献１】特開２０００−３２４４３５号公報
【特許文献２】特開２００３−１１５１６１号公報
【特許文献３】特開２００３−２２６６３号公報
【発明の開示】
【発明が解決しようとする課題】
【００３４】
しかしながら、特許文献１乃至特許文献３に記載の技術においては、FATのサイズが、管理の対象となる記録媒体（パーティション）の記録容量に比例するものであるため、上述したようにFATのサイズによっては、FAT全体をRAMなどのメモリに読み込むことは困難な場合があった。また、FATのページングを行う場合には、上述したようにFATが所定のサイズ毎（ページ毎）にメモリに読み込まれていたため、ファイルを記録するクラスタのクラスタ番号を格納するのに充分なサイズの空き領域であったとしても、前後のページにまたがって存在する空き領域を、充分なサイズの空き領域であると判断することができなかった。
【００３５】
このため、ページングの回数、すなわち、ハードディスクなどの記録媒体へのアクセスの回数が増加してしまい、記録媒体に対するアクセスタイムが遅延してしまうという課題があった。
【００３６】
また、上述したようにハードディスクなどの記録媒体においては、ページングが行われる場合、FATのページが先頭からメモリに読み込まれ、また、すでにクラスタ番号が格納され、クラスタ番号を格納することが可能な空き領域が存在しないページまでも、メモリに読み込まれていた。これにより、記録媒体に対するページングの回数（アクセスの回数）がさらに増加してしまい、アクセスタイムが、より遅延してしまうという課題があった。
【００３７】
本発明は、このような状況に鑑みてなされたものであり、例えば、ハードディスクなどの記録媒体において、より簡単に、アクセスタイムをより短縮することができるようにするものである。
【課題を解決するための手段】
【００３８】
本発明の記録装置は、１つの空き領域をなす１または複数の第２の記録領域のうちの、先頭の第２の記録領域の位置を示す第１のアドレス情報と、第１のアドレス情報で位置が示される第２の記録領域についてのファイル配置情報を格納する第１の記録領域の位置を示す第２のアドレス情報との記憶を制御する記憶制御手段と、記憶されている第２のアドレス情報を基に、ファイル記録媒体からのファイル配置情報の読み出しを制御する読み出し制御手段と、第１のアドレス情報および読み出されたファイル配置情報を基に、ファイル記録媒体へのファイルの記録を制御する記録制御手段とを含むことを特徴とする。
【００３９】
記録装置は、記憶制御手段が、第１のアドレス情報および第２のアドレス情報をリストとして記憶するように記憶を制御するようにすることができる。
【００４０】
記録装置は、リストには、第１のアドレス情報および第２のアドレス情報に対応して、空き領域の記録容量を示す情報がさらに格納されているようにすることができる。
【００４１】
記録装置は、記録制御手段が、FAT（File Allocation Tables）ファイルシステムが適用されているファイル記録媒体にファイルが記録されている場合、ファイル記録媒体における、BPB（BIOS（Basic Input/Output System） Parameter Block）と、FATが格納される領域との間に設けられる領域にリストを記録するように、さらに記録を制御するようにすることができる。
【００４２】
本発明の記録方法は、１つの空き領域をなす１または複数の第２の記録領域のうちの、先頭の第２の記録領域の位置を示す第１のアドレス情報と、第１のアドレス情報で位置が示される第２の記録領域についてのファイル配置情報を格納する第１の記録領域の位置を示す第２のアドレス情報との記憶を制御する記憶制御ステップと、記憶されている第２のアドレス情報を基に、ファイル記録媒体からのファイル配置情報の読み出しを制御する読み出し制御ステップと、第１のアドレス情報および読み出されたファイル配置情報を基に、ファイル記録媒体へのファイルの記録を制御する記録制御ステップとを含むことを特徴とする。
【００４３】
本発明の記録媒体のプログラムは、１つの空き領域をなす１または複数の第２の記録領域のうちの、先頭の第２の記録領域の位置を示す第１のアドレス情報と、第１のアドレス情報で位置が示される第２の記録領域についてのファイル配置情報を格納する第１の記録領域の位置を示す第２のアドレス情報との記憶を制御する記憶制御ステップと、記憶されている第２のアドレス情報を基に、ファイル記録媒体からのファイル配置情報の読み出しを制御する読み出し制御ステップと、第１のアドレス情報および読み出されたファイル配置情報を基に、ファイル記録媒体へのファイルの記録を制御する記録制御ステップとを含むことを特徴とする。
【００４４】
本発明のプログラムは、１つの空き領域をなす１または複数の第２の記録領域のうちの、先頭の第２の記録領域の位置を示す第１のアドレス情報と、第１のアドレス情報で位置が示される第２の記録領域についてのファイル配置情報を格納する第１の記録領域の位置を示す第２のアドレス情報との記憶を制御する記憶制御ステップと、記憶されている第２のアドレス情報を基に、ファイル記録媒体からのファイル配置情報の読み出しを制御する読み出し制御ステップと、第１のアドレス情報および読み出されたファイル配置情報を基に、ファイル記録媒体へのファイルの記録を制御する記録制御ステップとを実行させることを特徴とする。
【００４５】
本発明においては、１つの空き領域をなす１または複数の第２の記録領域のうちの、先頭の第２の記録領域の位置を示す第１のアドレス情報と、第１のアドレス情報で位置が示される第２の記録領域についてのファイル配置情報を格納する第１の記録領域の位置を示す第２のアドレス情報との記憶が制御され、記憶されている第２のアドレス情報を基に、ファイル記録媒体からのファイル配置情報の読み出しが制御され、第１のアドレス情報および読み出されたファイル配置情報を基に、ファイル記録媒体へのファイルの記録が制御される。
【発明の効果】
【００４６】
本発明によれば、データを記録することができる。また、本発明によれば、より簡単にアクセスタイムをより短縮することができる。
【発明を実施するための最良の形態】
【００４７】
以下に本発明の最良の形態を説明するが、開示される発明と実施の形態との対応関係を例示すると、次のようになる。本明細書中には記載されているが、発明に対応するものとして、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その発明に対応するものではないことを意味するものではない。逆に、実施の形態が発明に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その発明以外の発明には対応しないものであることを意味するものでもない。
【００４８】
さらに、この記載は、明細書に記載されている発明の全てを意味するものではない。換言すれば、この記載は、明細書に記載されている発明であって、この出願では請求されていない発明の存在、すなわち、将来、分割出願されたり、補正により出現し、追加される発明の存在を否定するものではない。
【００４９】
本発明によれば、記録装置が提供される。この記録装置（例えば、図４のデジタルビデオカメラ１００）は、ファイル記録媒体（例えば、図５のハードディスク１７３）の記録単位である第１の記録領域からなる第２の記録領域のそれぞれへのファイルの配置を示すファイル配置情報（例えば、図２２の「FAT」３０２ａ）と共に、ファイル記録媒体にファイルを記録する記録装置であって、１つの空き領域をなす１または複数の第２の記録領域のうちの、先頭の第２の記録領域の位置を示す第１のアドレス情報（例えば、図１４の削除したファイルの先頭クラスタ番号Ａ1）と、第１のアドレス情報で位置が示される第２の記録領域についてのファイル配置情報を格納する第１の記録領域の位置を示す第２のアドレス情報（例えば、図１４の先頭クラスタ番号Ａ1のクラスタについてのエントリが記録されているセクタのアドレス）との記憶を制御する記憶制御手段（例えば、図６のページリスト生成更新部２０１）と、記憶されている第２のアドレス情報を基に、ファイル記録媒体からのファイル配置情報の読み出しを制御する読み出し制御手段（例えば、図６のFAT読み出し部２０２）と、第１のアドレス情報および読み出されたファイル配置情報を基に、ファイル記録媒体へのファイルの記録を制御する記録制御手段（例えば、図６の記録制御部２０５）とを含む。
【００５０】
この記録装置は、記憶制御手段が、第１のアドレス情報および第２のアドレス情報をリスト（例えば、図６および図１４のページリスト２１１）として記憶するように記憶を制御するようにすることができる。
【００５１】
この記録装置は、リストには、第１のアドレス情報および第２のアドレス情報に対応して、空き領域の記録容量を示す情報（例えば、図１４の“種別”）がさらに格納されているようにすることができる。
【００５２】
この記録装置は、記録制御手段が、FAT（File Allocation Tables）ファイルシステムが適用されているファイル記録媒体にファイルが記録されている場合、ファイル記録媒体における、BPB（BIOS（Basic Input/Output System） Parameter Block）（例えば、図１０のBPB３０１）と、FATが格納される領域（例えば、図１０のFAT領域３０２）との間に設けられる領域にリストを記録するように、さらに記録を制御することができる。
【００５３】
本発明によれば、記録方法が提供される。この記録方法は、ファイル記録媒体（例えば、図５のハードディスク１７３）の記録単位である第１の記録領域からなる第２の記録領域のそれぞれへのファイルの配置を示すファイル配置情報（例えば、図２２の「FAT」３０２ａ）と共に、ファイル記録媒体にファイルを記録する記録装置（例えば、図４のデジタルビデオカメラ１００）の記録方法であって、１つの空き領域をなす１または複数の第２の記録領域のうちの、先頭の第２の記録領域の位置を示す第１のアドレス情報（例えば、図１４の削除したファイルの先頭クラスタ番号Ａ1）と、第１のアドレス情報で位置が示される第２の記録領域についてのファイル配置情報を格納する第１の記録領域の位置を示す第２のアドレス情報（例えば、図１４の先頭クラスタ番号Ａ1のクラスタについてのエントリが記録されているセクタのアドレス）との記憶を制御する記憶制御ステップ（例えば、図１６のステップＳ６１）と、記憶されている第２のアドレス情報を基に、ファイル記録媒体からのファイル配置情報の読み出しを制御する読み出し制御ステップ（例えば、図２０のステップＳ１４４）と、第１のアドレス情報および読み出されたファイル配置情報を基に、ファイル記録媒体へのファイルの記録を制御する記録制御ステップ（例えば、図２０のステップＳ１４８）とを含む。
【００５４】
本発明によればプログラムが提供される。このプログラムは、ファイル記録媒体（例えば、図５のハードディスク１７３）の記録単位である第１の記録領域からなる第２の記録領域のそれぞれへのファイルの配置を示すファイル配置情報（例えば、図２２の「FAT」３０２ａ）と共に、ファイル記録媒体にファイルを記録する記録処理をコンピュータに行わせるプログラムであって、１つの空き領域をなす１または複数の第２の記録領域のうちの、先頭の第２の記録領域の位置を示す第１のアドレス情報（例えば、図１４の削除したファイルの先頭クラスタ番号Ａ1）と、第１のアドレス情報で位置が示される第２の記録領域についてのファイル配置情報を格納する第１の記録領域の位置を示す第２のアドレス情報（例えば、図１４の先頭クラスタ番号Ａ1のクラスタについてのエントリが記録されているセクタのアドレス）との記憶を制御する記憶制御ステップ（例えば、図１６のステップＳ６１）と、記憶されている第２のアドレス情報を基に、ファイル記録媒体からのファイル配置情報の読み出しを制御する読み出し制御ステップ（例えば、図２０のステップＳ１４４）と、第１のアドレス情報および読み出されたファイル配置情報を基に、ファイル記録媒体へのファイルの記録を制御する記録制御ステップ（例えば、図２０のステップＳ１４８）とが実行される。
【００５５】
このプログラムは、記録媒体（例えば、図４の磁気ディスク１４１）に記録することができる。
【００５６】
以下に、本発明の実施の形態について図面を参照して説明する。
【００５７】
図４は、本発明が適用したデジタルビデオカメラ１００の構成例を示すブロック図である。
【００５８】
CPU（Central Processing Unit）１１１は、例えば、組込型の汎用マイクロプロセッサなどからなり、デジタルビデオカメラ１００の全体を制御する。CPU１１１には、ROM（Read Only Memory）１１２およびRAM（Random Access Memory）１１３が接続されている。例えば、CPU１１１は、ROM１１２に記憶されているプログラム、または、ハードディスクドライブ（以下、HDDと称する）１１４および後述するドライブ１２５に装着された磁気ディスク１４１、光ディスク１４２、光磁気ディスク１４３、および半導体メモリ１４４などからRAM１１３にロードしたプログラムを実行して、デジタルビデオカメラ１００の全体の動作を制御する。RAM１１３にはまた、CPU１１１が各種の処理を実行する上において必要なデータなどが適宜記憶される。
【００５９】
CPU１１１にはまた、カメラ機能部１１５および画像信号処理部１１６が接続されている。カメラ機能部１１５は、専用のIC(Integrated Circuit)などからなり、CPU１１１の制御を基に、光学レンズ部１１７を制御し、駆動する。例えば、カメラ機能部１１５は、CPU１１１の制御を基に、光学レンズ部１１７による被写体１５１の撮影動作を開始させたり、終了させたりする他、光学レンズ部１１７のズーム率、取り込む光量などを適宜制御する。
【００６０】
光学レンズ部１１７は、光学レンズおよび絞りなどからなり、被写体１５１の画像を光電変換部１１８（の受光部）に結像させる。
【００６１】
CCD（Charge Coupled Device）またはC-MOS（Complementary Metal-Oxide Semiconductor）センサなどの撮像素子により構成される光電変換部１１８は、光学レンズ部１１７によって結像された画像を電気信号に変換して、変換により生成したアナログの電気信号（被写体１５１の画像に対応する電気信号）を画像信号処理部１１６に供給する。画像信号処理部１１６は、CPU１１１の制御を基に、光電変換部１１８より供給された被写体１５１の画像に対応する電気信号に、所定の画像処理を適用する。
【００６２】
以下、電気信号を単に信号と称する。
【００６３】
具体的には、例えば、デジタルビデオカメラ１００の画像信号処理部１１６は、被写体１５１の画像に対応するアナログの信号を、A/D（Analog to Digital）変換して、デジタルの画像データとし、その画像データに対して、例えば、ホワイトバランスの調整、欠陥画素の補間などの画像処理を適用した後、必要に応じてMPEG（Moving Picture Experts Group）方式等で圧縮符号化する。
【００６４】
画像信号処理部１１６は、圧縮符号化した画像データをCPU１１１に供給する。
【００６５】
すなわち、画像信号処理部１１６は、光電変換部１１８より供給された被写体１５１の画像に対応する信号を、所定のフォーマットの画像データに変換させて、CPU１１１に供給する。
【００６６】
CPU１１１は、画像信号処理部１１６より供給された画像データを、HDD１１４またはドライブ１２５に装着されている磁気ディスク１４１、光ディスク１４２、光磁気ディスク１４３、および半導体メモリ１４４などに記録させる。
【００６７】
また、画像信号処理部１１６は、ホワイトバランスを調整し、または欠陥画素を補間した画像データを液晶ディスプレイ１１９および画像入出部１２０に供給する。より具体的には、画像信号処理部１１６は、画像データを、液晶ディスプレイ１１９の入力方式である、例えば、RGB（Red,Green,Blue）信号に変換して、RGB信号を液晶ディスプレイ１１９に供給する。液晶ディスプレイ１１９は、画像信号処理部１１６より供給された信号に対応する画像（例えば、被写体１５１の撮像により取得された画像）を表示させる。
【００６８】
同様に、例えば、画像信号処理部１１６は、RGB信号を画像入出部１２０に供給する。
【００６９】
さらに、画像信号処理部１１６は、CPU１１１を介して、HDD１１４および磁気ディスク１４１、光ディスク１４２、光磁気ディスク１４３、および半導体メモリ１４４に記録されている画像データを読み出して、読み出した画像データに対応する信号を液晶ディスプレイ１１９または画像入出力部１２０に供給する。
【００７０】
画像入出力部１２０は、例えばテレビジョン受像器などの外部の画像表示装置または画像記録再生装置などの機器に画像信号である信号を入力または出力するためのインタフェースである。
【００７１】
CPU１１１にはまた、音声処理部１２１が接続されている。音声処理部１２１は、CPU１１１から供給された、HDD１１４および磁気ディスク１４１、光ディスク１４２、光磁気ディスク１４３、および半導体メモリ１４４に記録され、読み出された音声データに対して、所定の音声処理を適用する。また、音声処理部１２１は、音声入出力部１２２から供給された音声信号または音声データに音声処理を適用する。
【００７２】
音声処理部１２１は、音声処理を適用した結果得られた音声データまたは音声信号をCPU１１１または音声入出力部１２２に供給する。
【００７３】
音声入出力部１２２は、マイクロフォン、スピーカ、および外部の機器とのインタフェースである。例えば、音声入出力部１２２は、音声処理部１２１より供給された電気信号を図示せぬテレビジョン受像器などの外部の機器に供給する。また、音声入出力部１２２は、図示せぬ機器から供給される音声信号を取得して、取得した音声信号を音声処理部１２１に供給する。
【００７４】
また、音声入出力部１２２は、例えば、光学レンズ部１１７や光電変換部１１８が被写体１５１を撮影している場合、その被写体１５１自身またはその周辺で発生された音声を取得し、音声信号に変換して音声処理部１２１に供給する。
【００７５】
音声信号処理部１２１は、音声入出力部１２２から供給された音声信号に、所定の音声処理を行い、所定の音声処理を行った音声データをCPU１１１の制御の基、HDD１１４および磁気ディスク１４１、光ディスク１４２、光磁気ディスク１４３、および半導体メモリ１４４に供給し、記録させる。
【００７６】
CPU１１１にはさらにまた、操作入力部１２３、および通信部１２４が接続されている。
【００７７】
操作入力部１２３は、ボタン、スイッチ、もしくはリモートコントローラなどにより構成され、ユーザにより、所定の指令に対応する操作入力が行われた場合、その操作入力に対応する信号をCPU１１１に供給する。CPU１１１は、操作入力部１２３より供給された信号に対応する処理を実行する。
【００７８】
通信部１２４は、CPU１１１の制御を基に、図示せぬ他の情報処理装置との通信処理を実行する。すなわち、通信部１２４は、画像信号処理部１１６より出力された画像データ等の様々な情報を他の情報処理装置に送信するとともに、他の情報処理装置より送信された画像データ、またはプログラム等の様々な情報を受信する。例えば、通信部１２４が画像データを受信した場合、CPU１１１は、それをRAM１１３やドライブ１２５に装着された磁気ディスク１４１、光ディスク１４２、光磁気ディスク１４３、および半導体メモリ１４４に記憶させる。また、例えば、通信部１２４がプログラムを受信した場合、CPU１１１は、それをRAM１１３にロードする。
【００７９】
なお、通信部１２４は、無線または有線による通信を行うものでもよいし、無線と有線の両方の通信が可能なものでもよい。さらに、その通信方式も特に限定されず、例えば、無線の場合、IEEE(The Institute of Electrical and Electronic Engineers)802.11a，802.11b、および802.11gなどの無線LAN（Local Area Network）、またはBluetooth等様々な無線通信方式が利用可能である。同様に、有線の場合も、Ethernet（登録商標）やUSB（Universal Serial Bus）等様々な有線通信方式が利用可能である。
【００８０】
ドライブ１２５は、CPU１１１の制御を基に、装着されている磁気ディスク１４１、光ディスク１４２、光磁気ディスク１４３、および半導体メモリ１４４に記録されているプログラムまたはデータを読み出し、読み出したプログラムまたはデータをCPU１１１に供給する。また、CPU１１１より供給されたデータを、ドライブ１２５に装着される磁気ディスク１４１、光ディスク１４２、光磁気ディスク１４３、および半導体メモリ１４４に記録させる。
【００８１】
電源１２６は、デジタルビデオカメラ１００の各部に必要な電力を供給する。
【００８２】
図５は、CPU１１１により実行されるアプリケーションプログラム１７１、オペレーティングシステム（以下、OSと称する）１７２、およびハードディスク１７３の関係を示す図である。OS１７２には、ファイルシステム１８１およびデバイスドライバ１８２を含む。
【００８３】
アプリケーションプログラム１７１は、各種の処理を実行して、ファイルの記録およびファイルの読み出しをオペレーティングシステム１７２に要求する。オペレーティングシステム１７２は、いわゆる基本プログラムであり、例えば、デジタルビデオカメラ１００のハードウェアなどのリソースの取り扱いを制御する。
【００８４】
ハードディスク１７３は、HDD１１４に内蔵されている磁気ディスクである記録媒体である。
【００８５】
ファイルシステム１８１は、例えば、FATファイルシステム（FAT32）であり、クラスタの連鎖情報を保持し、ハードディスク１７３に記録されているデータを管理する。デバイスドライバ１８２は、HDD１１４の動作に必要な情報をOS１７２に供給し、ハードディスク１７３へのデータの記録またはハードディスク１７３に記録されているデータの読み出しなど、HDD１１４の動作を制御する。
【００８６】
アプリケーションプログラム１７１は、OS１７２のファイルシステム１８１に対して、ファイル単位（レベル）でのアクセス（読み出しまたは書き込み）を要求（指示）する。ファイルシステム１８１は、アプリケーションプログラム１７１からファイルへのアクセスが要求された場合、デバイスドライバ１８２に対して、ファイルの実データが記録されているクラスタ単位のアクセスを要求する。デバイスドライバ１８２は、ファイルシステム１８１からクラスタ単位のアクセスが要求された場合、HDD１１４に対して、セクタ（ハードディスク１７３の記録単位）単位のアクセスを要求する。このとき、ハードディスク１７３において、クラスタは、ファイルシステム１８１（FAT32）におけるデータを管理可能な最小単位であり、セクタのサイズ＝５１２バイトをｎ（ｎ＝１，２，４，・・・，６４，１２８）個集めた構成となる。
【００８７】
HDD１１４は、デバイスドライバ１８２からセクタ単位のアクセスが要求された場合、デバイスドライバ１８２に対し、セクタ単位でのアクセスの要求に対する応答を行う。例えば、HDD１１４は、デバイスドライバ１８２からセクタ単位の読み出しが要求された場合、セクタ毎に記録されているデータをデバイスドライバ１８２に供給する。
【００８８】
デバイスドライバ１８２は、ファイルシステム１８１に対し、クラスタ単位でのアクセスの要求に対する応答を行う。例えば、デバイスドライバ１８２は、ファイルシステム１８１に対し、クラスタ毎に記録されている実データをファイルシステム１８１に供給する。ファイルシステム１８１は、アプリケーションプログラム１７１に対して、ファイル単位でのアクセスの要求に対する応答を行う。例えば、ファイルシステム１８１は、ファイルをアプリケーションプログラム１７１に供給する。
【００８９】
図６は、ファイルシステム１８１のより詳細な構成を説明するブロック図である。ファイルシステム１８１には、ページ管理プログラム１９１が含まれている。
【００９０】
ページ管理プログラム１９１は、さらに、ページリスト生成更新部２０１、FAT読み出し部２０２、記録容量算出部２０３、判定部２０４、記録制御部２０５、およびページリスト２１１を含む。ページリスト２１１には、空いている領域の先頭に配置されているクラスタのアドレスと、このアドレスに対応する、図１１を参照して後述するエントリ３２１が格納されているセクタのアドレスとが対応して格納されている。なお、ページリスト２１１の詳細は、図１４を参照して後述する。
【００９１】
ページリスト生成更新部２０１は、ページリスト２１１に格納されているFATの空き領域情報および記録制御部２０５より供給された格納状況の情報を基に、ページリストを生成するか、または更新する。ページリスト生成更新部２０１は、生成または更新したページリスト２１１を出力（格納）する。
【００９２】
FAT読み出し部２０２は、記録容量算出部２０３より供給された記録容量およびページリスト２１１の空き領域情報を基に、空き領域を有するFATをページ単位で読み出す。FAT読み出し部２０２は、ページの空き領域を示す情報を記録容量算出部２０３に出力する。
【００９３】
記録容量算出部２０３は、FAT読み出し部２０２より供給された空き領域を示す情報を基に、空き領域の記録容量を算出する処理を実行し、算出した記録容量を判定部２０４に出力する。
【００９４】
判定部２０４は、記録容量算出部２０３より供給された記録容量が、記録されるファイルのデータ量より大きいか否かを判定する処理を実行し、判定結果をFAT読み出し部２０２および記録制御部２０５に出力する。
【００９５】
記録制御部２０５は、判定部２０４より供給された判定結果を基に、ファイルの記録を制御する。記録制御部２０５は、FATにおけるクラスタ番号の格納状況をページリスト生成更新部２０１に出力する。
【００９６】
次に、図７乃至図１２を参照して、FAT方式によりフォーマットされているハードディスク１７３について説明する。
【００９７】
図７は、MBR(Master Boot Record)およびパーティションを説明する図である。ハードディスク１７３の先頭のセクタ２２１(LBA(Logical Block Addressing)＝0のセクタ)は、デジタルビデオカメラ１００を起動させる場合、ハードディスク１７３に記録されているオペレーティングシステム１７２を実行させるためのMBR２３１とされる。
【００９８】
MBR２３１には、いわゆる、アクティブであるパーティションを示すコードなどを含む起動コード領域２５１、並びに各パーティションの先頭のLBA（図中の矢印で示す位置）および各パーティションのサイズなどを示すパーティションテーブル２５２が配置される。
【００９９】
先頭セクタ２２１に続いて、所定の数のセクタからなる空き領域２２２が配置される。
【０１００】
さらに、空き領域２２２に続いて、ファイルなどが記録されるデータ領域２２３が配置される。データ領域２２３は、最大で４個のパーティション（パーティション２４１乃至パーティション２４４）に区分可能とされている。
【０１０１】
なお、以下、パーティションテーブル２５２に、１つのパーティション（パーティション２４１のみ）が登録されたハードディスク１７３、すなわち、データ領域２２３が、１つのパーティション（パーティション２４１）のみから構成されるハードディスク１７３を例に説明する。
【０１０２】
図８に示されるように、MBR２３１である５１２バイトからなる先頭クラスタには、４４６バイトの起動コード領域２５１、６４バイトのパーティションテーブル２５２、および２バイトの情報２６１が配置される。起動コード領域２５１は、クラスタの先頭の０バイト目から始まる４４５バイト目までの領域であり、アクティブなパーティションから起動用のプログラムを読み込むためのマスタブートコード（Master Boot Code(Initial Program Loaderとも呼ばれる)）が記録されている。４４６バイト目から始まる６４バイト分の領域からなるパーティションテーブル２５２、および最後の２バイトの情報２６１から構成されている。
【０１０３】
パーティションテーブル２５２は、クラスタの先頭から４４６バイト目から始まり、個々のパーティションに対応するパーティション情報（パーティションの開始アドレスとサイズ）を記録する。すなわち、例えば、１個のパーティションが登録されている場合、図９に示されるように、１６バイトのパーティション情報（パーティションテーブル２５２のエントリ）２７１が、パーティションテーブル２５２に保存される。具体的には、パーティション情報２７１には、先頭から順に、１バイトのフラグ２８１，３バイトの開始セクタ（CHS（Cylinder/Head/Sector））２８２，１バイトのタイプ２８３，３バイトの終了セクタ（CHS）２８４，４バイトの開始セクタ（LBA）２８５、および４バイトのパーティションサイズ２８６が格納されている。
【０１０４】
フラグ２８１は、パーティションがアクティブであるか否かを示す、いわゆる起動フラグである。例えば、“00h”であるフラグ２８１は、そのパーティションがノンアクティブである（いわゆる起動パーティションでない）ことを示し、“80h”であるフラグ２８１は、そのパーティションがアクティブである（いわゆる起動パーティションである）ことを示す。なお、“00h”や“80h”の「h（hexadecimal number）」は、“00”や“80”が１６進数で表現されていることを示している。以下、同様に、「h」が付加されている値は、１６進数で表現されていることを示す。
【０１０５】
開始セクタ２８２は、シリンダ／ヘッド／セクタという３つのパラメータで、パーティションの先頭のセクタのアドレスを示す。タイプ２８３は、そのパーティションがフォーマットされているファイルシステムの方式を示す。例えば、“80h”であるタイプ２８３は、FAT32であることを示す。
【０１０６】
終了セクタ２８４は、シリンダ／ヘッド／セクタという３つのパラメータで、パーティションの最後のセクタのアドレスを示す。開始セクタ２８５は、LBAによる、パーティションの先頭のセクタのアドレスを示す。パーティションサイズ２８６は、パーティションに含まれるセクタの総数を示す。
【０１０７】
MBR２３１の最後の２バイトの情報２６１、すなわち「55h」、および「AAh」は、パーティションテーブル２５２の終端を示す情報である。
【０１０８】
次に、図１０を参照して、データ領域２２３のパーティション２４１の詳細な構成例について説明する。図１０に示されるように、パーティション２４１は、BPB（BIOS（Basic Input Output System） Parameter Block）３０１，FAT領域３０２，FAT領域３０３、およびデータ領域３０４から構成されている。
【０１０９】
BPB３０１には、パーティション２４１における１クラスタあたりのセクタ数など、パーティション２４１の論理的な属性が記録されている。
【０１１０】
FAT領域３０２は、ハードディスク１７３に記録される実データのクラスタの配列が記録される領域であり、FAT領域３０３は、FAT領域３０２のバックアップなどのために利用されるFAT領域３０２の予備の領域である。
【０１１１】
データ領域３０４は、各ファイルのそれぞれのデータ（ディレクトリエントリや実データ）が実際に記録される領域である。
【０１１２】
図１１は、FAT領域３０２に格納されている、FAT32であるFATの例を示す図である。なお、FAT32の詳細は、「Microsoft Extensible Firmware Initiative FAT32 File System Specification」に開示されている。図１１において、上から２行目乃至５行目における、左から２列目乃至１７列目の個々の四角は、１つのエントリ３２１を示す。FAT32のエントリ３２１の中の数字は、次のFATエントリの番号を表している。なお、図１１において、「00000000h」または「00000001h」のアドレスのエントリ３２１に格納されている「RSV」は、「00000000h」または「00000001h」のクラスタ番号のクラスタがWindows（登録商標）において使用される領域であることを示す。EOF(End Of File)は、ファイルの終点を表し、「−」は、「00000000h」を意味し、「未使用」を表している。
【０１１３】
図１１で示されるFATの例において、４つのファイルが格納される実データが記録されているクラスタのアドレスが示されている。詳細は後述するが、ディレクトリエントリにおいて、先頭クラスタ番号として、「00000007h」が示されている場合、「00000007h」のアドレスのエントリ３２１には「00000008h」が格納され、「00000008h」のアドレスのエントリ３２１には「00000009h」が格納され、「00000009h」のアドレスのエントリ３２１には「EOF」が格納されているので、「00000007h」のクラスタ番号のクラスタ、「00000008h」のクラスタ番号のクラスタ、および「00000009h」のクラスタ番号のクラスタに、先頭クラスタ番号として、「00000007h」が示されているディレクトリエントリに関係するファイルの実データが順に記録されている。
【０１１４】
ディレクトリエントリにおいて、先頭クラスタ番号として、「0000000Ah」が示されている場合、「0000000Ah」のアドレスのエントリ３２１には「0000001Fh」が格納され、「0000001Fh」のアドレスのエントリ３２１には「00000025h」が格納され、「00000025h」のアドレスのエントリ３２１には「00000031h」が格納され、「00000031h」のアドレスのエントリ３２１には「00000030h」が格納され、「00000030h」のアドレスのエントリ３２１には「EOF」が格納されているので、「0000000Ah」のクラスタ番号のクラスタ、「0000001Fh」のクラスタ番号のクラスタ、「00000025h」のクラスタ番号のクラスタ、「00000031h」のクラスタ番号のクラスタ、および「00000030h」のクラスタ番号のクラスタに、先頭クラスタ番号として、「0000000Ah」が示されているディレクトリエントリに関係するファイルの実データが順に記録されている。
【０１１５】
ディレクトリエントリにおいて、先頭クラスタ番号として、「0000001Bh」が示されている場合、「0000001Bh」のアドレスのエントリ３２１には「00000011h」が格納され、「00000011h」のアドレスのエントリ３２１には「00000012h」が格納され、「00000012h」のアドレスのエントリ３２１には「00000013h」が格納され、「00000013h」のアドレスのエントリ３２１には「00000014h」が格納され、「00000014h」のアドレスのエントリ３２１には「00000003h」が格納され、「00000003h」のアドレスのエントリ３２１には、「EOF」が格納されているので、「0000001Bh」のクラスタ番号のクラスタ、「00000011h」のクラスタ番号のクラスタ、「00000012h」のクラスタ番号のクラスタ、「00000013h」のクラスタ番号のクラスタ、「00000014h」のクラスタ番号のクラスタ、および「00000003h」のクラスタ番号のクラスタに、先頭クラスタ番号として、「0000001Bh」が示されているディレクトリエントリに関係するファイルの実データが順に記録されている。
【０１１６】
さらに、また、ディレクトリエントリにおいて、先頭クラスタ番号として、「0000002Ch」が示されている場合、「0000002Ch」のアドレスのエントリ３２１には「0000002Dh」が格納され、「0000002Dh」のアドレスのエントリ３２１には「0000002Eh」が格納され、「0000002Eh」のアドレスのエントリ３２１には「0000002Fh」が格納され、「0000002Fh」のアドレスのエントリ３２１には「00000038h」が格納され、「00000038h」のアドレスのエントリ３２１には「00000039h」が格納され、「00000039h」のアドレスのエントリ３２１には、「0000003Ah」が格納され、「0000003Ah」のアドレスのエントリ３２１には「0000003Bh」が格納され、「0000003Bh」のアドレスのエントリ３２１には「EOF」が格納されているので、「0000002Ch」のクラスタ番号のクラスタ、「0000002Dh」のクラスタ番号のクラスタ、「0000002Eh」のクラスタ番号のクラスタ、「0000002Fh」のクラスタ番号のクラスタ、「00000038h」のクラスタ番号のクラスタ、「00000039h」のクラスタ番号のクラスタ、「0000003Ah」のクラスタ番号のクラスタ、および「0000003Bh」のクラスタ番号のクラスタに、先頭クラスタ番号として、「0000002Ch」が示されているディレクトリエントリに関係するファイルの実データが順に記録されている。
【０１１７】
図１２は、FAT32におけるファイルに関係するディレクトリエントリの構造の例を示す図である。なお、図中の０乃至１Ｆは、０を始点としてディレクトリエントリにおけるバイト数を表わす１６進数である。なお、ディレクトリエントリにおけるバイト数を、１を始点とする１０進数で表わした場合、０乃至１Ｆは、それぞれ、１乃至３２で表わされる。
【０１１８】
ディレクトリエントリの先頭に配置される、７バイトの名前３３１は、ファイル名を示す。名前３３１に続く、３バイトの拡張名３３２は、いわゆる、ファイルの拡張子（例えば、MPEG2（Moving Picture Experts Group phase 2）フォーマットの場合は「mpg」、MP3（MPEG Audio Layer-3）フォーマットの場合は「mp3」)を示す。また、拡張名３３２に続く、１バイトの属性３３３は、ファイルの属性を示す。ファイルの属性は、例えば、読み取り専用ファイルまたは隠しファイルなどを示す。属性３３３に続く、１バイトの予約領域３３４は、未使用の領域である。
【０１１９】
予約領域３３４に続く、３バイトの作成時刻３３５は、ファイルが作成された時刻を示す。作成時刻３３５に続く、２バイトの作成日付３３６は、ファイルが作成された日付を示す。作成日付３３６に続く、２バイトの最終アクセス日付３３７は、ファイルにアクセスされた最終の日付を示す。
【０１２０】
先頭クラスタの番号(位置)は、先頭クラスタの番号の上位を示す２バイトの先頭クラスタ番号(High)３３８と、先頭クラスタの番号の下位を示す２バイトの先頭クラスタ番号（Low）３４１とに、分けて配置される。すなわち、先頭クラスタの番号（位置）は、３２ビットで示される。そのファイルのサイズは、４バイトのファイルサイズ３４２に記憶される。
【０１２１】
２バイトの記録時刻３３９は、ファイルが記録された時刻、すなわち、ファイルが最後に更新された時刻（最後に書き込まれた時刻）を示す。２バイトの記録日付３４０は、ファイルが記録された日付、すなわち、ファイルが最後に更新された日付（最後に書き込まれた日付）を示す。
【０１２２】
ディレクトリエントリにおいて、最終アクセス日付３３７に続いて、先頭クラスタ番号（High）３３８、記録時刻３３９、記録日付３４０、先頭クラスタ番号（Low）３４１、およびファイルサイズ３４２が順に配置される。
【０１２３】
次に、図１３のフローチャートを参照して、オペレーティングシステム１７２を実行するデジタルビデオカメラ１００による、ページリスト２１１の作成の処理を説明する。なお、このページリスト２１１の作成の処理は、デジタルビデオカメラ１００が初めて起動される場合、またはハードディスク１７３のフォーマットがユーザによって指示された場合に開始される。
【０１２４】
ステップＳ３１において、OS１７２は、デジタルビデオカメラ１００のデータ記録方式を基に、ハードディスク１７３に対してフォーマットを実行する。
【０１２５】
ステップＳ３２において、ページリスト生成更新部２０１は、最終クラスタのクラスタ番号（以下、最終クラスタ番号とも称する）を読み出す。すなわち、BPB３０１内の「FSInfo」が格納されているセクタから、データ領域３０４における最終クラスタ番号が読み出される。なお、最終クラスタとは、ファイルに対応する実データが記録されたデータ領域３０４におけるクラスタの中で、最後に実データが記録されたクラスタをいう。なお、この場合、ハードディスク１７３にはファイル（実データ）がまだ記録されていないので、読み出される最終クラスタのクラスタ番号は、データ領域３０４の先頭のクラスタの１つ前のクラスタの番号である。
【０１２６】
さらに、ページリスト生成更新部２０１は、読み出した最終クラスタ番号に１を加算して、データ領域３０４の先頭のクラスタを示す先頭クラスタ番号を算出する。
【０１２７】
ステップＳ３３において、ページリスト生成更新部２０１は、最終クラスタ番号に１を足したクラスタ番号（最終クラスタ番号＋１）、すなわち先頭クラスタ番号のクラスタについてのエントリ３２１が記録されている、FAT領域３０２におけるセクタのアドレスを検出する。例えば、先頭クラスタ番号で示されるクラスタについてのエントリ３２１が記録されているセクタのアドレスは、LBAを基に検出される。
【０１２８】
ステップＳ３４において、ページリスト生成更新部２０１は、種別に「３」を設定する。詳細は後述するが、種別は、空き領域の記録容量の大きさを示す情報である。なお、ステップＳ３４において、デフォルト値としての「３」が種別に設定される。
【０１２９】
ステップＳ３５において、ページリスト生成更新部２０１は、ステップＳ３２の処理で読み出した最終クラスタ番号に１を加算して求めた空き領域の先頭クラスタ番号、ステップＳ３３の処理で検出したセクタのアドレス、およびステップＳ３４の処理で設定した種別を基に、ページリスト２１１を作成し、処理は終了する。作成されたページリスト２１１は、RAM１１３に保持される。
【０１３０】
ステップＳ３５の処理により、データ領域３０４の先頭のクラスタを示す先頭クラスタ番号、先頭クラスタ番号で示されるクラスタについてのエントリ３２１が格納されているセクタのアドレス、および先頭クラスタ番号で示されるクラスタを先頭クラスタとする空き領域（データ領域３０４）の記録容量の大きさを示す種別を１組として含むページリスト２１１が作成される。
【０１３１】
後述するページリスト２１１の更新の処理によって、ページリスト２１１が更新される。
【０１３２】
図１４は、図１３のフローチャートで示される処理によって作成され、さらに更新されたページリスト２１１の例を示す図である。図１４で示されるページリスト２１１の例において、１つの空き領域に対して、先頭クラスタ番号とセクタのアドレスと種別とが１行に（図中の横方向に）、先頭クラスタ番号順に配置されている。以下、１つの空き領域に対する、先頭クラスタ番号とセクタのアドレスと種別とからなる情報の組を空き領域情報とも称する。
【０１３３】
図１４のページリスト２１１の例において、左側の列には、空き領域の先頭のクラスタ（のアドレス）を示す先頭クラスタ番号が配置され、左から２番目の列には、セクタのアドレス（LBA）が配置され、左から３番目の列には、種別が配置されている。
【０１３４】
例えば、種別には、０乃至３のうちのいずれか１つの値が設定される。より大きい種別の値は、空き領域の記録容量がより大きいことを示す。すなわち、“０”である種別で示される空き領域の記録容量は、“１”である種別で示される空き領域の記録容量より小さく、“１”である種別で示される空き領域の記録容量は、“２”である種別で示される空き領域の記録容量より小さく、“２”である種別で示される空き領域の記録容量は、“３”である種別で示される空き領域の記録容量より小さい。
【０１３５】
図１４で示されるページリスト２１１における、先頭クラスタ番号は、空き領域の先頭のクラスタの位置を示す。図１４で示されるページリスト２１１における、セクタのアドレスは、先頭クラスタ番号で示されるクラスタについてのエントリ３２１が格納されているセクタのアドレスを示す。また、図１４で示されるページリスト２１１における、種別は、先頭クラスタ番号で示されるクラスタを先頭クラスタとする空き領域の記録容量の大きさを示す。
【０１３６】
図１４のページリスト２１１の最も下の行には、データ領域３０４の後側に配置されている、まだファイルの記録に利用されていない空き領域についての、先頭クラスタ番号とセクタのアドレスと種別とが１行に（図中の横方向に）、先頭クラスタ番号順に配置されている。すなわち、図１４のページリスト２１１の最も下の行には、「使用済みクラスタ番号＋１」である先頭クラスタ番号、「使用済みクラスタ番号＋１」である先頭クラスタ番号で示されるクラスタについてのエントリ３２１が格納されているセクタのアドレス、および「使用済みクラスタ番号＋１」以降のクラスタ番号のクラスタの空き領域の記録容量の大きさを示す「３」である種別が配置される。使用済みクラスタ番号は、データ領域３０４において、ファイルの実データが格納されたクラスタのアドレスのうち、最大のアドレスを示す。
【０１３７】
図１４のページリスト２１１の上から１行目乃至上からｎ行目には、先頭クラスタ番号順に、１つの空き領域毎に、その空き領域についての、先頭クラスタ番号とセクタのアドレスと種別とが１行に配置されている。例えば、図１４のページリスト２１１の上から１行目には、先頭クラスタ番号Ａ1乃至Ａnの中で最も小さい値である先頭クラスタ番号Ａ1、先頭クラスタ番号Ａ1で示されるクラスタについてのエントリ３２１が格納されているセクタのアドレス、および先頭クラスタ番号Ａ1以降のクラスタの空き領域の記録容量の大きさを示す「２」である種別が配置される。図１４のページリスト２１１の上から２行目には、先頭クラスタ番号Ａ1の次に大きい値である先頭クラスタ番号Ａ2、先頭クラスタ番号Ａ2で示されるクラスタについてのエントリ３２１が格納されているセクタのアドレス、および先頭クラスタ番号Ａ2以降のクラスタの空き領域の記録容量の大きさを示す「１」である種別が配置される。
【０１３８】
同様に、空き領域の先頭のクラスタのアドレスが先頭クラスタ番号Ａ3乃至Ａ(n-1)である空き領域について、１つの空き領域毎に、その空き領域についての、先頭クラスタ番号とセクタのアドレスと種別とが１行に配置される。
【０１３９】
そして、図１４のページリスト２１１の下から２行目には、先頭クラスタ番号Ａ1乃至Ａnの中で最も大きい値である先頭クラスタ番号Ａn、先頭クラスタ番号Ａnで示されるクラスタについてのエントリ３２１が格納されているセクタのアドレス、および先頭クラスタ番号Ａn以降のクラスタの空き領域の記録容量の大きさを示す「１」である種別が配置される。
【０１４０】
次に、図１５のフローチャートを参照してページリスト２１１の記録の処理を説明する。
【０１４１】
ステップＳ５１において、OS１７２は、操作入力部１２３からのユーザの操作に対応した信号を基に、デジタルビデオカメラ１００の停止（電源のオフ）が指示されたか否かを判定する。ステップＳ５１において、デジタルビデオカメラ１００の停止が指示されていないと判定された場合、ステップＳ５１に戻り、停止が指示されるまで判定の処理が繰り返される。
【０１４２】
ステップＳ５１において、デジタルビデオカメラ１００の停止が指示されたと判定された場合（電源がオフにされた場合）、ステップＳ５２に進み、記録制御部２０５は、図１３のステップＳ３５の処理により作成され、RAM１１３に保持されているページリスト２１１をハードディスク１７３に記録し、ページリスト２１１の記録の処理は終了する。
【０１４３】
なお、ハードディスク１７３における、ページリスト２１１の記録場所としては、例えば、図１０で示されるBPB３０１とFAT領域３０２との間に、数セクタまたは数十セクタの領域を設けることが可能であるため、その領域（BPB３０１が記録されているセクタの次のセクタ以降のセクタ）にページリスト２１１が記録される。
【０１４４】
図１６のフローチャートを参照して、ハードディスク１７３に記録されているページリスト２１１の読み出しの処理を説明する。このページリスト２１１の読み出しの処理は、デジタルビデオカメラ１００が起動された場合、実行される。
【０１４５】
FAT読み出し部２０２は、ステップＳ６１において、ハードディスク１７３に記録されているページリスト２１１を読み出して、メモリであるRAM１１３に記憶させる。例えば、FAT読み出し部２０２は、ページリスト２１１が記録されている、予め決められている記録先のセクタにおける先頭のセクタへアクセスし、記録されているページリスト２１１を読み出す。
【０１４６】
すなわち、例えば、図１０で示されるハードディスク１７３のパーティション２４１において、上述したように、BPB３０１とFAT領域３０２との間にページリスト２１１が記録されている場合、ステップＳ６１において、BPB３０１が記録されているセクタの次のセクタにアクセスされ、ページリスト２１１が読み出され、読み出されたページリスト２１１がRAM１１３に供給される。
【０１４７】
ステップＳ６３において、FAT読み出し部２０２は、ページリスト２１１に格納されている空き領域情報の数を求めて、処理は終了する。
【０１４８】
ここで、図１７のフローチャートを参照して、ページリスト２１１の更新の処理を説明する。この処理は、ユーザによって、ファイルの削除または記録が指示された場合に開始される。
【０１４９】
ステップＳ８１において、OS１７２は、ユーザの操作に対応した操作入力部１２３からの信号を基に、ファイルの削除が指示されたか否かを判定する。ステップＳ８１において、ファイルの削除が指示されたと判定された場合、ステップＳ８２に進み、ページリスト生成更新部２０１は、削除されるファイルのディレクトリエントリから先頭のクラスタの番号を読み出す。すなわち、図１２で示されるディレクトリエントリの先頭クラスタ番号（High）３３８および先頭クラスタ番号（Low）３４１が読み出される。
【０１５０】
ステップＳ８３において、ページリスト生成更新部２０１は、FAT領域３０２において、ステップＳ８２の処理により読み出されたファイルの先頭のクラスタの番号で示されるクラスタについてのエントリ３２１が記録されている、セクタのアドレス（例えば、LBAに基づく、セクタのアドレス（番号））を検出する。
【０１５１】
ステップＳ８４において、ページリスト生成更新部２０１は、データ領域３０４において、ファイルを削除することによりできる（空く）、空き領域のクラスタの数を算出する。図１０で示されるデータ領域３０４において、削除の対象とされているファイルの実データが記録されているクラスタの数が算出される。
【０１５２】
ステップＳ８５において、空き領域の記録容量に対する、種別の設定の処理が実行される。この種別の設定の処理は、図１８のフローチャートを参照して後述するが、この処理により、種別が設定される。例えば、削除されるファイルの実データが記録されているクラスタの数を基に、そのクラスタの数の大きさ、すなわち、ファイルを削除することによって生じる空き領域の記録容量の大きさを識別するための種別（を示す符号）が設定される。
【０１５３】
ステップＳ８６において、ページリスト生成更新部２０１は、ページリスト２１１に、ステップＳ８２の処理により読み出された先頭クラスタ番号、ステップＳ８３の処理により検出されたセクタのアドレス（番号）、およびステップＳ８５の処理により設定された種別（空き領域情報）を記録する。
【０１５４】
なお、種別は、削除されたファイル（データ）の種類に応じて、例えば、動画像ファイル、静止画像ファイル、および音声ファイルなどのファイルの種類に応じて設定されるようにしてもよい。
【０１５５】
ステップＳ８７において、記録制御部２０５は、ファイルを削除し、ページリスト２１１の更新の処理は終了する。すなわち、削除が指示されたファイルのディレクトリエントリが削除され、処理は終了する。
【０１５６】
一方、ステップＳ８１において、ファイルの削除が指示されていないと判定された場合、すなわち、ファイルの記録が指示された場合、手続きは、ステップＳ８８に進み、ファイルのデータ量に対する閾値の設定の処理が実行される。その詳細は、図１９のフローチャートを参照して後述するが、この処理により、記録されるファイルのデータ量に応じた閾値が設定される。
【０１５７】
ステップＳ８８の処理の後、手続きは、ステップＳ８９に進み、ステップＳ８８の処理で設定された閾値を使用した、ファイルの記録の処理が実行され、処理は終了する。このファイルの記録の処理は、図２０および図２１のフローチャートを参照して後述するが、この処理により、ファイルがハードディスク１７３に記録される。
【０１５８】
なお、ファイルの移動は、移動されるファイルのコピーであるファイルが記録されてから、元のファイルが削除されるので、ファイルを移動した場合、ステップＳ８２乃至ステップＳ８６の処理が実行され、移動されるファイルに対応した空き領域情報がページリスト２１１に格納される。
【０１５９】
図１８のフローチャートを参照して、図１７のステップＳ８５に対応する、空き領域の記録容量に対する種別の設定の処理を説明する。なお、ステップＳ１０１、ステップＳ１０３、およびステップＳ１０５のそれぞれの処理で使用される閾値ＴＨａ、閾値ＴＨｂ、および閾値ＴＨｃは、閾値ＴＨａ＞閾値ＴＨｂ＞閾値ＴＨｃの関係を満たす。
【０１６０】
ステップＳ１０１において、ページリスト生成更新部２０１は、図１７のステップＳ８４の処理で算出したクラスタの数が、予め定められた閾値ＴＨａ以上であるか否かを判定する。ステップＳ１０１において、クラスタの数が、閾値ＴＨａ以上であると判定された場合、ステップＳ１０２に進み、ページリスト生成更新部２０１は、種別に「３」を設定し、処理は終了する。
【０１６１】
ステップＳ１０１において、クラスタの数が、閾値ＴＨａ以上ではない（閾値ＴＨａ未満である）と判定された場合、ステップＳ１０３に進み、ページリスト生成更新部２０１は、クラスタの数が、予め定められた閾値ＴＨｂ以上であるか否かを判定する。ステップＳ１０３において、クラスタの数が、閾値ＴＨｂ以上であると判定された場合、ステップＳ１０４に進み、ページリスト生成更新部２０１は、種別に「２」を設定し、処理は終了する。
【０１６２】
ステップＳ１０３において、クラスタの数が、閾値ＴＨｂ以上ではない（閾値ＴＨｂ未満である）と判定された場合、ステップＳ１０５に進み、ページリスト生成更新部２０１は、クラスタの数が、予め定められた閾値ＴＨｃ以上であるか否かを判定する。ステップＳ１０５において、クラスタの数が、閾値ＴＨｃ以上であると判定された場合、ステップＳ１０６に進み、ページリスト生成更新部２０１は、種別に「１」を設定し、処理は終了する。
【０１６３】
ステップＳ１０５において、クラスタの数が、予め定められた閾値ＴＨｃ以上ではない（閾値ＴＨｃ未満である）と判定された場合、ステップＳ１０７に進み、ページリスト生成更新部２０１は、種別に「０」を設定し、処理は終了する。
【０１６４】
以上の処理により、削除されるファイルに対し、ファイルの実データが記録されているクラスタの数が大きい順（ファイルが削除されることによって生成される空き領域の記録容量が大きい順）に、種別に「３」，「２」，「１」、または「０」が設定される。
【０１６５】
次に、図１９のフローチャートを参照して、図１７のステップＳ８８に対応する、閾値の設定の処理を説明する。なお、ステップＳ１２１、ステップＳ１２３、およびステップＳ１２５のそれぞれの処理で使用される閾値ＴＨｄ、閾値ＴＨｅ、および閾値ＴＨｆは、閾値ＴＨｄ＞閾値ＴＨｅ＞閾値ＴＨｆの関係を満たす。また、閾値ＴＨｄ、閾値ＴＨｅ、および閾値ＴＨｆのそれぞれは、閾値ＴＨａ、閾値ＴＨｂ、および閾値ＴＨｃのそれぞれに対応する値である。例えば、閾値ＴＨｄは、閾値ＴＨａに、１つのクラスタの記録容量を掛け算した値とすることができる。同様に、閾値ＴＨｅは、閾値ＴＨｂに、１つのクラスタの記録容量を掛け算した値とすることができ、閾値ＴＨｆは、閾値ＴＨｃに、１つのクラスタの記録容量を掛け算した値とすることができる。
【０１６６】
ステップＳ１２１において、ページリスト生成更新部２０１は、記録されるファイルのデータ量が、予め定められた閾値ＴＨｄ以上であるか否かを判定する。ステップＳ１２１において、データ量が、閾値ＴＨｄ以上であると判定された場合、ステップＳ１２２に進み、ページリスト生成更新部２０１は、閾値に「３」を設定して、処理は終了する。
【０１６７】
ステップＳ１２１において、データ量が、予め定められた閾値ＴＨｄ以上ではない（閾値ＴＨｄ未満である）と判定された場合、ステップＳ１２３に進み、ページリスト生成更新部２０１は、データ量が、閾値ＴＨｅ以上であるか否かを判定する。ステップＳ１２３において、データ量が、閾値ＴＨｅ以上であると判定された場合、ステップＳ１２４に進み、ページリスト生成更新部２０１は、閾値に「２」を設定して、処理は終了する。
【０１６８】
ステップＳ１２３において、データ量が、閾値ＴＨｅ以上ではない（閾値ＴＨｅ未満である）と判定された場合、ステップＳ１２５に進み、ページリスト生成更新部２０１は、データ量が、予め定められた閾値ＴＨｆ以上であるか否かを判定する。ステップＳ１２５において、データ量が、閾値ＴＨｆ以上であると判定された場合、ステップＳ１２６に進み、ページリスト生成更新部２０１は、閾値に「１」を設定して、処理は終了する。
【０１６９】
ステップＳ１２５において、データ量が、予め定められた閾値ＴＨｆ以上ではない（閾値ＴＨｆ未満である）と判定された場合、ステップＳ１２７に進み、ページリスト生成更新部２０１は、閾値に「０」を設定して、処理は終了する。
【０１７０】
以上の処理により、記録しようとするファイルに対し、ファイルのデータ量が大きい順に、閾値に「３」，「２」，「１」、または「０」が設定される。
【０１７１】
次に、図２０および図２１のフローチャートを参照して、図１７のステップＳ８９に対応する、ファイルの記録の処理を説明する。ステップＳ１４１において、FAT読み出し部２０２は、ページリスト２１１から、最初の空き領域情報を読み出す。例えば、図１４で示される、先頭クラスタ番号Ａ1、先頭クラスタ番号Ａ1で示されるクラスタについてのエントリ３２１が格納されているセクタのアドレス、および先頭クラスタ番号Ａ1以降のクラスタの空き領域の記録容量の大きさ示す「２」である種別からなる空き領域情報が読み出される。
【０１７２】
ステップＳ１４２において、FAT読み出し部２０２は、ステップＳ１４１の処理において読み出された空き領域情報の種別が、図１７のステップＳ８８の処理において設定された閾値以上であるか否かが判定される。ステップＳ１４１の処理で読み出された“種別”が「２」である場合、ステップＳ８８の処理により設定された閾値が「２」以上であるか否かが判定される。
【０１７３】
ステップＳ１４２において、空き領域の種別は、設定された閾値以上であると判定された場合、空き領域情報で示される空き領域にファイルを記録できる可能性があるので、ステップＳ１４３に進み、FAT読み出し部２０２は、空き領域情報のセクタのアドレスを基に、読み出そうとするFATのページの先頭のセクタのアドレスを決定する。例えば、FAT読み出し部２０２は、読み出そうとするFATのページの先頭のセクタのアドレスを、先頭クラスタ番号Ａ1で示されるクラスタについてのエントリ３２１が格納されているセクタのアドレスに決定する。
【０１７４】
ステップＳ１４４において、FAT読み出し部２０２は、ステップＳ１４３の処理において決定したセクタのアドレスを基に、FAT領域３０２から１ページ分のFATを読み出して、メモリに記憶させる。例えば、図２２で示されるように、図１０のFAT領域３０２に配置される「FAT」３０２aのページＰ2-1がRAM１１３に読み出される。
【０１７５】
図２２は、「FAT」３０２ａにおける、ページングを説明する図である。図２２において、１つの四角は、１つのエントリ３２１を示す。図２２において、白い四角は、対応するクラスタが空きであることを示すエントリ３２１を表す。斜線が付されている四角は、対応するクラスタにファイルが記録されていることを示すエントリ３２１を表す。
【０１７６】
また、「FAT」３０２ａに対するページングにおいては、例えば、図１０で示される、ハードディスク１７３のパーティション２４１が１８．６ギガバイト（＝３９，０５３，９５２セクタ）であり、クラスタのサイズが３２キロバイト（＝６４セクタ）である場合、FAT領域３０２に配置される「FAT」３０２aのサイズは、約２．３メガバイト（＝４，７６７セクタ）とされる。なお、ここで１セクタは５１２バイトである。
【０１７７】
このとき、約２．３メガバイトの「FAT」３０２ａがページングされる場合、１つのページのサイズ（ページＰ2-1乃至Ｐ2-mのそれぞれのサイズ）が３２キロバイト（＝６４セクタ）とされる。ページＰ2-1乃至Ｐ2-mには、図１４に示される種別に対応した空き領域に対応するエントリ３２１が配置される。例えば、図１４の上から１行目の空き領域情報における、先頭クラスタ番号Ａ1で示されるクラスタについてのエントリ３２１が格納されているセクタのアドレスで示されるセクタには、図２２で示されるように、閾値ＴＨｂ以上の数の連続しているエントリ３２１であって、空きであることを示すエントリ３２１が配置される。
【０１７８】
例えば、ステップＳ１４４において、図２２で示されるように、閾値ＴＨｂ以上の数の連続している、空きを示すエントリ３２１を含むページＰ2-1がFAT領域３０２から１ページ分のFATが読み出される。
【０１７９】
同様に、図１４の上から２行目の空き領域情報における、先頭クラスタ番号Ａ2で示されるクラスタについてのエントリ３２１が格納されているセクタのアドレスで示されるセクタには、図２２で示されるように、閾値ＴＨｃ以上の数の連続しているエントリ３２１であって、空きであることを示すエントリ３２１が配置される。また、図１４の上からｍ行目の空き領域情報における、先頭クラスタ番号Ａmで示されるクラスタについてのエントリ３２１が格納されているセクタのアドレスで示されるセクタには、図２２で示されるように、閾値ＴＨａ以上の数の連続しているエントリ３２１であって、空きであることを示すエントリ３２１が配置される。
【０１８０】
ステップＳ１４５において、記録容量算出部２０３は、ステップＳ１４４の処理で読み出されたページを基に、データ領域３０４における空き領域の記録容量を求める。例えば、図２２で示されるページＰ2-1の連続している、空きを示すエントリ３２１の数に、クラスタあたりの記録容量を掛け算することにより、空き領域の記録容量が求められる（算出される）。
【０１８１】
ステップＳ１４６において、判定部２０４は、ステップＳ１４５の処理により求められた空き領域の記録容量が、記録しようとするファイルのデータ量以上であるか否かを判定する。例えば、判定部２０４は、バイト数で表される、記録しようとするファイルのデータ量と、バイト数で表される空き領域の記録容量を比較することにより、空き領域の記録容量が、記録しようとするファイルのデータ量以上であるか否かを判定する。なお、判定部２０４は、記録しようとするファイルのデータ量をクラスタの数に換算して、ファイルの記録に必要なクラスタの数と、空き領域のクラスタの数とを比較することにより、空き領域の記録容量が、記録しようとするファイルのデータ量以上であるか否かを判定するようにしてもよい。
【０１８２】
ステップＳ１４６において、空き領域の記録容量が、記録されるファイルのデータ量以上であると判定された場合、ステップＳ１４７に進み、記録制御部２０５は、空き領域情報に含まれる先頭クラスタ番号を基に、データ領域３０４における、ファイルの実データを記録するクラスタを決定する。例えば、図１４で示される先頭クラスタ番号Ａ1が先頭のクラスタとされ、これに続くクラスタが実データを記録するクラスタとされる。
【０１８３】
ステップＳ１４８において、記録制御部２０５は、ステップＳ１４７の処理で決定されたクラスタに、ファイルを記録する。ファイルが記録されると、FATが更新されるので、FAT読み出し部２０２は、更新されたFATから、ステップＳ１４４で読み出されたページと同じページを読み出す。
【０１８４】
ファイルを記録した後、ステップＳ１４９乃至ステップＳ１６０において、ファイルの記録に対応したページリスト２１１を更新する処理が実行される。
【０１８５】
すなわち、図２１のステップＳ１４９において、ページリスト生成更新部２０１は、ステップＳ１４８において、ファイルを記録する前の時点において、ファイルの実データが格納されたクラスタのアドレスのうち、最大のアドレスを示す使用済みクラスタ番号より、ファイルを記録した最終（最後）のクラスタである最終クラスタのクラスタ番号が大きいか否かを判定する。
【０１８６】
ステップＳ１４９において、使用済みクラスタ番号より、ファイルを記録した最終クラスタのクラスタ番号が大きくはないと判定された場合、ファイルが削除されることによって生じた空き領域にファイルが記録されたので、ステップＳ１５０に進み、ページリスト生成更新部２０１は、ファイルの記録に利用した、空き領域情報（ファイルが記録された空き領域に関係する空き領域情報）をページリスト２１１から削除する。例えば、図１４で示される、先頭クラスタ番号Ａ1、先頭クラスタ番号Ａ1で示されるクラスタについてのエントリ３２１が格納されているセクタのアドレス、および先頭クラスタ番号Ａ1以降のクラスタの空き領域の記録容量の大きさを示す「２」である種別からなる空き領域情報をページリスト２１１から削除する。
【０１８７】
ステップＳ１５１において、ページリスト生成更新部２０１は、ステップＳ１４８の処理において更新されたFATからFAT読み出し部２０２により読み出されたページを基に、ファイルを書き込んだ空き領域にまだ空き領域がある（空き領域が残っている）か否かを判定する。
【０１８８】
ステップＳ１５１において、まだ空き領域があると判定された場合、ステップＳ１５２に進み、ページリスト生成更新部２０１は、更新されたFATからFAT読み出し部２０２により読み出されたページから、ステップＳ１４５の処理で記録容量が求められた空き領域と重複する空き領域の先頭のクラスタのアドレスを示す先頭クラスタ番号を読み出す。
【０１８９】
ステップＳ１５３において、ページリスト生成更新部２０１は、FAT領域３０２において、ステップＳ１５２の処理により読み出された先頭クラスタ番号で示されるクラスタについてのエントリ３２１が記録されている、セクタのアドレス（LBAに基づいたセクタのアドレス（番号））を検出する。
【０１９０】
ステップＳ１５４において、空き領域の記録容量に対する、種別の設定の処理が実行される。ステップＳ１５４における、空き領域の記録容量に対する、種別の設定の処理は、図１８のフローチャートを参照して説明した処理と同様なので、その説明は省略する。
【０１９１】
ステップＳ１５５において、ページリスト生成更新部２０１は、ページリスト２１１に、ステップＳ１５２の処理により読み出された先頭クラスタ番号、ステップＳ１５３の処理により検出されたセクタのアドレス（番号）、およびステップＳ１５４の処理により設定された種別（空き領域情報）を記録して、処理は終了する。
【０１９２】
また、ステップＳ１４４の処理で読み出されたページの次のページに空き領域がある場合、ステップＳ１５５の処理の後、ページにまたがった空き領域を検出し、その空き領域を１つの空き領域としてページリスト２１１の空き領域情報を更新するようにしてもよい。
【０１９３】
ステップＳ１５１において、もう空き領域がないと判定された場合、空き領域情報をページリスト２１１に加える必要はないので、ステップＳ１５２乃至ステップＳ１５５の処理はスキップされ、処理は終了する。
【０１９４】
ステップＳ１４９において、使用済みクラスタ番号より、ファイルを記録した最終クラスタのクラスタ番号が大きいと判定された場合、ステップＳ１５６に進み、ページリスト生成更新部２０１は、最終クラスタのクラスタ番号である最終クラスタ番号を読み出す。例えば、ページリスト生成更新部２０１は、BPB３０１内の「FSInfo」が格納されているセクタから、データ領域３０４における最終クラスタ番号を読み出す。
【０１９５】
ステップＳ１５７において、ページリスト生成更新部２０１は、FAT領域３０２において、最終クラスタ番号で示されるクラスタの次のクラスタについてのエントリ３２１が記録されている、セクタのアドレス（LBAに基づいたセクタのアドレス（番号））を検出する。
【０１９６】
ステップＳ１５８において、ページリスト生成更新部２０１は、最終クラスタ番号で示されるクラスタの次のクラスタからの空き領域についての、ページリスト２１１に格納されている空き領域情報を更新して、処理は終了する。
【０１９７】
一方、図２０のステップＳ１４２において、空き領域情報の種別は、設定した閾値以上ではないと判定された場合、またはステップＳ１４６において、空き領域の記録容量は、ファイルのデータ量以上ではない（データ量未満である）と判定された場合、ステップＳ１５９に進み、FAT読み出し部２０２は、ページリスト２１１から読み出された空き領域情報が最後の空き領域情報であるか否かを判定する。すなわち、ページリスト２１１から読み出された空き領域情報が、「使用済みクラスタ番号＋１」である先頭クラスタ番号、「使用済みクラスタ番号＋１」である先頭クラスタ番号で示されるクラスタについてのエントリ３２１が格納されているセクタのアドレス、および種別を含む空き領域情報であるか否かが判定される。
【０１９８】
ステップＳ１５９において、最後の空き領域情報ではないと判定された場合、ステップＳ１６０に進み、FAT読み出し部２０２は、ページリスト２１１から次の空き領域情報を読み出して、ステップＳ１４２に戻り、上述した処理が繰り返される。
【０１９９】
ステップＳ１５９において、最後の空き領域情報であると判定された場合、ファイルを記録することができる空き領域がなかったので、ファイルを記録しないので、処理は終了する。
【０２００】
以上のように、FAT内の空き領域の情報をテーブル（ページリスト２１１）として、保持し、ページリスト内の情報を基に、FATのページングが行われるため、ページングの回数、すなわち、ハードディスクなどの記録媒体へのアクセスの回数を低減することができる。また、フラグメントを低減させることができる。さらに、ページリスト２１１は、FAT内の空き領域の情報を基に作成および更新されるため、空き領域が既に存在しないFATをページとして、メモリに読み出されることはない。これにより、ページングの回数が最小１回で済むことが可能となる。従って、ファイルシステムの処理までを含めた、データをハードディスクなどの記録媒体へ書き込む際の実質的な転送速度（またはアクセスタイム）を向上させることができる。
【０２０１】
さらに、記録媒体へのアクセスの回数を低減できることにより、消費電力を低く抑えることができる。
【０２０２】
なお、本発明によるファイルシステムは、従来のFAT32方式の規格に適合するものであり、従来のFAT32方式のファイルシステムとの、いわゆる互換性を有するものである。
【０２０３】
また、本発明は、FAT32のファイルシステムを用いたハードディスク１７３（またはHDD１１４のようなビルトインタイプの記録媒体に限らず、FAT32のファイルシステムを用いたリムーバブルタイプの記録媒体、例えば、磁気ディスク、光ディスク、光磁気ディスクなどにおいても適用することが可能である。
【０２０４】
以上のように、ファイルシステムとして、FAT32を用いて説明したが、本発明は、他のファイルシステムにおいても適用することができる。図２３は、例えば、UDF（Universal Disk Format）を利用する、ファイルシステム３６１の構成を説明するブロック図である。ファイルシステム３６１は、デジタルビデオカメラ１００のOS１７２に含まれる。
【０２０５】
ファイルシステム３６１には、ページ管理プログラム３６２が含まれている。なお、図６で示される、ページ管理プログラム１９１の場合と同様の部分には、同じ符号が付してあり、その説明は省略する。
【０２０６】
ページ管理プログラム３６２は、さらに、ページリスト生成更新部２０１、ファイル配置情報読み出し部３６３、記録容量算出部２０３、判定部２０４、記録制御部２０５、およびページリスト２１１を含む。ページリスト２１１には、図２４を参照して後述する光ディスク３７０の空いている領域の先頭に配置されているクラスタのアドレスと、このアドレスに対応する、セクタのアドレスとが対応して格納されている。
【０２０７】
ファイル配置情報読み出し部３６３は、記録容量算出部２０３より供給された記録容量およびページリスト２１１の空き領域情報を基に、空き領域を有し、図２４を参照して後述するSBD（Space Bitmap Descriptor）３９２をページ単位で読み出す。ファイル配置情報読み出し部３６３は、ページの空き領域を示す情報を記録容量算出部２０３に出力する。
【０２０８】
図２４を参照して、UDFを利用した、例えば、DVD-Rなどである光ディスク３７０に本発明を適用した場合について説明する。UDFの詳細は、例えば、「Universal Disk Format Specification（Revision2.01）」や「ECMA（European Computer Manufacturer Association）（Standard ECMA-167）」などに開示されている。
【０２０９】
なお、図中の０乃至Ｎは、０を始点とし、Ｎを最大のセクタ番号とした論理セクタ番号（LSN（Logic Sector Number））を表している。また、以下に記載するボリュームとは、光ディスク３６０などのリムーバブルタイプの記録媒体における物理単位である。
【０２１０】
論理セクタ番号１６乃至１８の領域には、ECMA167の第２部および第３部の記述に従って記録されるボリューム認識列（VRS（Volume Recognition Sequence））３７１が配置されている。また、ボリューム認識列３７１には、ISO（International Organization for Standardization）13346で規定されている、光ディスク３７０への書き込み方式のひとつであるNSR（Non-Sequential Recording）のディスクリプタ（descriptor）（記述子）が格納される。
【０２１１】
なお、ディスクリプタとは、プログラムなどにおける、内容、構造、または属性などが記述されたものである。
【０２１２】
論理セクタ番号３２乃至６３の領域には、主ボリューム記述列（Main VDS（Volume Descriptor Sequence））３７２が配置されている。主ボリューム記述列３７２には、ボリュームおよびそのボリュームの属性を識別する“Primary Volume Descriptor”、特定の論理ボリュームに属するボリューム集合中のボリュームの識別を支援する“Implementation Use Volume Descriptor”、パーティション３７５のサイズおよびその位置が明記される“Partition Descriptor”、ボリューム記述列の番号や論理ブロックのサイズ（バイト）などが記録される“Logical Volume Descriptor”、配分されていない大きさが明記される“Unallocated Space Descriptor”、および主ボリューム記述列３７２を終わらすために記録される“Terminating Descriptor”が格納され、それぞれのディスクリプタが５１２バイトで格納されている。
【０２１３】
論理セクタ番号６４乃至９５の領域には、論理ボリューム保全記述列（LVIS（Logical Volume Integrity Sequence））３７３が配置されている。論理ボリューム保全記述列３７３には、関連する論理ボリュームの内容が更新された場合に書き込まれ、その論理ボリュームの状態が明記される“Logical Volume Integrity Descriptor”、および論理ボリューム保全記述列３７３を終わらすために記録される“Terminating Descriptor”が格納され、それぞれのディスクリプタが５１２バイトで格納されている。
【０２１４】
論理セクタ番号９６乃至２８７の領域には、第１の開始点（First AP（Anchor Point））３７４が配置されている。第１の開始点３７４は、主ボリューム記述列３７２および予約ボリューム記述列３７７の大きさが明記される“Anchor Volume Descriptor Pointer”により構成される。
【０２１５】
論理セクタ番号２８８乃至Ｎ−２８８の領域には、パーティション（Partition）３７５が配置されている。
【０２１６】
論理セクタ番号Ｎ−２８７乃至Ｎ−２２４の領域には、第１の開始点３７４および第２の開始点３７８が読み込めなかった場合に、読み出される、予備の開始点AP（Anchor Point）としての、第３の開始点（Third AP）３７６が配置されている。
【０２１７】
論理セクタ番号Ｎ−２２３乃至Ｎ−１９２の領域には、主ボリューム記述列３７２が読み込めなかった場合の予備の領域である、予約ボリューム記述列（Reserve VDS）３７７が配置されている。
【０２１８】
論理セクタ番号Ｎ−１９１乃至Ｎの領域には、第１の開始点３７４が読み込めなかった場合に、読み出される第２の開始点（Second AP）３７８が配置されている。
【０２１９】
また、パーティション３７５には、ファイル集合記述子（FSD（File Set Descriptor））３９１が配置されている。ファイル集合記述子３９１は、ファイルおよびディレクトリの集合を識別する。
【０２２０】
空間ビットマップ記述子（SBD（Space Bitmap Descriptor））３９２は、パーティション３７５における、全ての論理ブロックに対するビットを識別する。空間ビットマップ記述子３９２においては、パーティション３７５の使用状況（論理ブロックに対するデータの記録状況）に応じて、データを割り当て済みの領域（論理ブロック）に対しては“０”が保持され、データが未割り当ての領域（論理ブロック）に対しては“１”が保持される。１ビットで管理される単位は、例えば、ｎセクタ（ｎ＝１，２…）とされる。
【０２２１】
これにより、データの未割り当ての領域（空き領域）に対して保持される“１”を基に、ページリスト２１１が作成および更新される。
【０２２２】
ルートICB（Root ICB（Information Control Block））３９３は、１個の直接エントリおよび１個の間接エントリを含む。
【０２２３】
ルートファイル識別記述子（Root FID（File Identifier Descriptor））３９４は、ファイル識別記述子（FID）３９５の親ディレクトリである。
【０２２４】
ファイル識別記述子（FID）３９５には、ファイルの特性やファイルの識別子の長さなどが格納されている。
【０２２５】
ファイルエントリ（File Entry）３９６は、ICBにおける、１個の直接エントリである。
【０２２６】
ファイル実体（File実体）３９７には、ファイルの実データが格納されている。
【０２２７】
光ディスク３７０においては、ページリスト２１１は、パーティション３７５の終端に記録される。
【０２２８】
図２５のフローチャートを参照して、光ディスク３７０に記録されているページリスト２１１の読み出しの処理を説明する。このページリスト２１１の読み出しの処理は、デジタルビデオカメラ１００の起動と共に開始される。
【０２２９】
ステップＳ２１１において、OS１７２は、光ディスク３７０が挿入されたか否かを判定する。ステップＳ２１１において、光ディスク３７０が挿入されていないと判定された場合、手続きは、ステップＳ２１１に戻り、光ディスクが挿入されるまで、判定の処理が繰り返される。
【０２３０】
ステップＳ２１１において、光ディスク３７０が挿入されたと判定された場合、ステップＳ２１２に進み、ファイル配置情報読み出し部３６３は、ページリスト２１１が記録されている、記録先のセクタにおける先頭のセクタへアクセスし、ステップＳ２１３おいて、光ディスク３７０に記録されているページリスト２１１を、メモリであるRAM１１３に読み出す。
【０２３１】
ステップＳ２１４において、ファイル配置情報読み出し部３６３は、ページリスト２１１に格納されている空き領域情報の数を求め、処理は終了する。
【０２３２】
次に、図２６のフローチャートを参照してページリスト２１１の記録の処理を説明する。この処理は、デジタルビデオカメラ１００の起動と共に開始される。
【０２３３】
ステップＳ２２１において、OS１７２は、操作入力部１２３からのユーザの操作に対応した信号を基に、光ディスク３７０の取り出しが指示されたか否かを判定する。ステップＳ２２１において、光ディスク３７０の取り出しが指示されていないと判定された場合、手続きは、ステップＳ２２１に戻り、光ディスク３７０の取り出しが指示されるまで判定の処理が繰り返される。
【０２３４】
ステップＳ２２１において、光ディスク３７０の取り出しが指示されたと判定された場合、ステップＳ２２２に進み、記録制御部２０５は、RAM１１３に保持されているページリスト２１１を光ディスク３７０に記録する。
【０２３５】
ステップＳ２２３において、OS１７２は、デジタルビデオカメラ１００より光ディスクを排出し、処理は終了する。
【０２３６】
図２７は、本発明を適用したパーソナルコンピュータ６０１の構成例を示すブロック図である。CPU６１１は、ROM６１２に記憶されているプログラム、またはHDD６１９からRAM６１３にロードされたプログラムに従って各種の処理を実行する。RAM６１３にはまた、CPU６１１が各種の処理を実行する上において必要なデータなども適宜記憶される。
【０２３７】
CPU６１１，ROM６１２、およびRAM６１３は、バス６１４を介して相互に接続されている。このバス６１４にはまた、入出力インタフェース６１５も接続されている。
【０２３８】
入出力インタフェース６１５には、ユーザが操作して、テキストを入力するキーボード６３１、ポインティングデバイスの一例であるマウス６３２、画像を入力するスキャナ６３３、音声を入力するマイクロフォン６３４等の入力デバイスで構成される入力部６１６、ディスプレイなどの表示部６４１、音声を出力するスピーカ６４２、紙に文字または画像を印刷して、いわゆるハードコピーを出力するプリンタ６４３、紙に文字または画像を描画するプロッタ６４４等の出力デバイスで構成される出力部６１７が接続されている。さらに、入出力インタフェース６１５には、プログラムや各種データを記録するHDD６１９、およびLAN（Local Area Network）またはインターネットを含むネットワークを介してデータを通信する、USB（Universal Serial Bus）インタフェース６５１,IEEE（Institute of Electrical and Electronic Engineers）1394インタフェース６５２、ブルートゥースインタフェース６５３,IEEE802.11インタフェース６５４などの通信部６１８が接続される。
【０２３９】
USBインタフェース６５１は、USBの規格に基づき、ケーブルを介して（有線通信で）、他の機器と通信する。IEEE1394インタフェース６５２は、IEEE1394の規格に基づき、ケーブルを介して、他の機器と通信する。同様に、ブルートゥースインタフェース６５３は、ブルートゥースの規格に基づき、他の機器と無線通信する。IEEE802.11インタフェース６５４は、IEEE802.11a，IEEE802.11b、またはIEEE802.11gなどの規格に基づき、他の機器と無線通信する。
【０２４０】
入出力インタフェース６１５にはまた、必要に応じてドライブ６２０が接続され、磁気ディスク６６１、光ディスク６６２、光磁気ディスク６６３、或いは半導体メモリ６６４などが適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じてHDD６１９にインストールされる。
【０２４１】
ドライブ６２０は、CPU６１１の制御に基づいて、装着されている磁気ディスク６６１、光ディスク６６２、光磁気ディスク６６３、或いは半導体メモリ６６４などの記録媒体に記録されているデータを読み出し、読み出したデータをCPU６１１に供給する。また、CPU６１１より供給されたデータを、ドライブ６２０に装着される磁気ディスク６６１、光ディスク６６２、光磁気ディスク６６３、或いは半導体メモリ６６４などに記憶させる。
【０２４２】
なお、本明細書ではハードディスクを例に挙げて説明したが、本発明はこれに限定されることなく、MO(Magneto Optical disk)、PD(Phase change rewritable Disk)，Zip，SuperDiskといったZCAV(Zone Constant Angular Velocity)方式を採用し、ランダムアクセス可能な他の記録媒体にも適用可能である。また、ファイルシステムに関しても、UDF（Universal Disk Format）などであってもよく、FAT32に限定されるものではない。
【０２４３】
また、本発明が適用される情報処理装置の実施の形態は、図４に示されるデジタルビデオカメラ１００および図２７に示されるパーソナルコンピュータ６０１に限定されず、所定のファイルシステムを利用して、記録媒体の記録および読み出しの制御が可能な情報処理装置であれば構わない。具体的には、例えば、PDA（Personal Digital Assistants）、携帯電話機、または、デジタル電化製品（例えば、テレビジョン受像機やハードディスク録画装置）等様々な実施の形態が可能である。
【０２４４】
このように、FAT32などのファイルシステムを用いて、ページングを行うようにした場合、FAT全体をメモリに保持することなく、FATにおける空き領域を検出することができる。記憶制御手段が、１つの空き領域をなす１または複数の第２の記録領域のうちの、先頭の第２の記録領域の位置を示す第１のアドレス情報と、第１のアドレス情報で位置が示される第２の記録領域についてのファイル配置情報を格納する第１の記録領域の位置を示す第２のアドレス情報との記憶を制御し、読み出し制御手段が、記憶されている第２のアドレス情報を基に、ファイル記録媒体からのファイル配置情報の読み出しを制御し、記録制御手段が、第１のアドレス情報および読み出されたファイル配置情報を基に、ファイル記録媒体へのファイルの記録を制御するようにした場合には、記録媒体とのアクセスタイムをより短縮することができる。
【０２４５】
この記録媒体は、図４または図２７に示すように、コンピュータとは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されている磁気ディスク１４１および６６１（フレキシブルディスクを含む）、光ディスク１４２および６６２（CD-ROM（Compact Disk Read-Only Memory），DVD（Digital Versatile Disc）を含む）、光磁気ディスク１４３および６６３（MD（Mini Disc）（商標）を含む）、若しくは半導体メモリ１４４および６６４などよりなるパッケージメディアにより構成されるだけでなく、コンピュータに予め組み込まれた状態でユーザに提供される、プログラムが記録されているROM１１２および６１２、もしくはハードディスク１７３およびHDD６１９などで構成される。
【０２４６】
なお、上述した一連の処理を実行させるプログラムは、必要に応じてルータ、モデムなどのインタフェースを介して、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の通信媒体を介してコンピュータにインストールされるようにしてもよい。
【０２４７】
また、本明細書において、記録媒体に格納されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくても、並列的あるいは個別に実行される処理を含むものである。
【図面の簡単な説明】
【０２４８】
【図１】FATファイルシステムを用いるハードディスクにおけるFATを説明する図である。
【図２】従来のファイルの記録の処理を説明するフローチャートである。
【図３】従来のハードディスクのFATにおける、ページングを説明する図である。
【図４】本発明を適用したデジタルビデオカメラの構成例を示すブロック図である。
【図５】アプリケーションプログラム、ファイルシステム、デバイスドライバ、およびハードディスクの関係を説明する図である。
【図６】デジタルビデオカメラのCPUが実行するページ管理プログラムの機能の構成の例を説明するブロック図である。
【図７】FATファイルシステムを用いるハードディスクの領域の配置を示す図である。
【図８】図７のMBRの詳細な構成例を示す図である。
【図９】図８のMBR内のパーティションテーブルに格納されるパーティション情報の詳細な構成例を示す図である。
【図１０】ハードディスクのパーティションの構成例を示す図である。
【図１１】FAT32であるFATの例を示す図である。
【図１２】ディレクトリエントリの構成例を示す図である。
【図１３】ページリストの作成の処理を説明するフローチャートである。
【図１４】ページリストの例を示す図である。
【図１５】ページリストの記録の処理を説明するフローチャートである。
【図１６】ページリストの読み出しの処理を説明するフローチャートである。
【図１７】ページリストの更新の処理を説明するフローチャートである。
【図１８】空き領域の記録容量に対する種別の設定の処理を説明するフローチャートである。
【図１９】ファイルのデータ量に対する閾値の設定の処理を説明するフローチャートである。
【図２０】ファイルの記録の処理を説明するフローチャートである。
【図２１】ファイルの記録の処理を説明するフローチャートである。
【図２２】FATにおける、ページングを説明する図である。
【図２３】デジタルビデオカメラのCPUが実行するページ管理プログラムの機能の構成の他の例を説明するブロック図である。
【図２４】UDFを説明する図である。
【図２５】光ディスクにおける、ページリストの読み出しの処理を説明するフローチャートである。
【図２６】光ディスクにおける、ページリストの記録の処理を説明するフローチャートである。
【図２７】本発明を適用したパーソナルコンピュータの構成例を示すブロック図である。
【符号の説明】
【０２４９】
１００  デジタルビデオカメラ，  １１１  CPU，  １１４  ハードディスクドライブ，  １４１  磁気ディスク，  １４２  光ディスク，  １４３  光磁気ディスク，  １４４  半導体メモリ，  １７３  ハードディスク，  １８１  ファイルシステム，  １８２  デバイスドライバ，  １９１  ページ管理プログラム，  ２０１  ページリスト生成更新部，  ２０２  FAT読み出し部，  ２０３  記録容量算出部，  ２０４  判定部，  ２０５  記録制御部，  ２１１  ページリスト，  ３０２  FAT領域，  ３０２ａ  FAT，  ３６１  ファイルシステム，  ３６２  ページ管理プログラム，  ３６３  ファイル配置情報読み出し部，  ６１１  CPU，  ６１９  ハードディスクドライブ，  ６６１  磁気ディスク，  ６６２  光ディスク，  ６６３  光磁気ディスク，  ６６４  半導体メモリ
【図１】
2005332481.tif 000003
【図２】
2005332481.tif 000004
【図３】
2005332481.tif 000005
【図４】
2005332481.tif 000006
【図５】
2005332481.tif 000007
【図６】
2005332481.tif 000008
【図７】
2005332481.tif 000009
【図８】
2005332481.tif 000010
【図９】
2005332481.tif 000011
【図１０】
2005332481.tif 000012
【図１１】
2005332481.tif 000013
【図１２】
2005332481.tif 000014
【図１３】
2005332481.tif 000015
【図１４】
2005332481.tif 000016
【図１５】
2005332481.tif 000017
【図１６】
2005332481.tif 000018
【図１７】
2005332481.tif 000019
【図１８】
2005332481.tif 000020
【図１９】
2005332481.tif 000021
【図２０】
2005332481.tif 000022
【図２１】
2005332481.tif 000023
【図２２】
2005332481.tif 000024
【図２３】
2005332481.tif 000025
【図２４】
2005332481.tif 000026
【図２５】
2005332481.tif 000027
【図２６】
2005332481.tif 000028
【図２７】
2005332481.tif 000029