(57)【要約】      （修正有）【課題】記録媒体に記録されたファイルにアクセスするのに要するシーク時間をより短縮することができる情報処理装置、情報処理方法及びそのプログラムを提供する。【解決手段】データ処理装置１は、記録媒体２００における各連続領域の先頭の位置情報と各連続領域の連続量を関連付ける連続領域管理情報を格納する。データ処理装置１は、情報データにおける特定箇所からのデータ読み出し要求に応じて、連続領域管理情報を参照して、特定箇所に応じたデータ読み出し位置の位置情報を特定し、特定した位置情報に応じた記録媒体２００上の読み出し位置から情報データの一部または全部を読み出す。【選択図】図１５
2010238251.tif 000002
【特許請求の範囲】
【請求項１】
複数のクラスタから構成される記録媒体上の複数の連続領域に分割して記録されたファイルをアクセス要求に応じて再生する情報処理装置であって、
前記アクセス要求されたファイルが動画ファイルまたは音声ファイルであった場合に、前記記録媒体において前記動画ファイルまたは音声ファイルが記録された各連続領域の先頭位置と各連続領域のサイズとを示す管理情報を生成する生成手段と、
前記アクセス要求されたファイルが動画ファイルまたは音声ファイルであった場合には、前記管理情報を用いて前記動画ファイルまたは音声ファイルにおける要求された位置に対応した前記記録媒体における記録位置を特定し、前記アクセス要求されたファイルが動画ファイルまたは音声ファイル以外の他のファイルであった場合には、前記他のファイルが記録された複数のクラスタについてそれぞれ次のデータが記録されたクラスタの番号を示すファイルシステムの情報を用いて前記他のファイルにおける要求された位置に対応した前記記録媒体における記録位置を特定する特定手段と、
前記記録媒体における前記特定手段が特定した記録位置から前記ファイルの読み出しを開始する再生手段と、を備えることを特徴とする情報処理装置。
【請求項２】
複数のクラスタから構成される記録媒体に対してファイルを記録する記録手段と、
前記記録手段が前記記録媒体上の複数の連続領域に動画ファイルまたは音声ファイルを分割して記録する場合に、前記動画ファイルまたは音声ファイルが記録された複数の連続領域の先頭位置と各連続領域のサイズとを示す管理情報を生成する生成手段と、
アクセス要求に応じて前記記録媒体に記録されたファイルを読み出す再生手段と、
前記アクセス要求されたファイルが前記記録手段により記録された動画ファイルまたは音声ファイルであった場合には、前記管理情報を用いて前記動画ファイルまたは音声ファイルにおける要求された位置に対応した前記記録媒体における記録位置を特定し、前記アクセス要求されたファイルが動画ファイルまたは音声ファイル以外の他のファイルであった場合には、前記他のファイルが記録された複数のクラスタについてそれぞれ次のデータが記録されたクラスタの番号を示すファイルシステムの情報を用いて前記他のファイルにおける要求された位置に対応した前記記録媒体における記録位置を特定する特定手段と、を備え、
前記再生手段は前記記録媒体における前記特定手段が特定した記録位置から前記ファイルの読み出しを開始することを特徴とする情報処理装置。
【請求項３】
前記記録媒体は複数のクラスタから構成され、前記管理情報は前記各連続領域の先頭のクラスタ番号と前記各連続領域の先頭クラスタから連続するクラスタ数とを示すことを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記管理情報を前記動画ファイルまたは音声ファイルとは異なるファイルとして前記記録媒体に記録する記録手段を備えたことを特徴とする請求項２に記載の情報処理装置。
【請求項５】
複数のクラスタから構成される記録媒体上の複数の連続領域に分割して記録されたファイルをアクセス要求に応じて再生する情報処理装置であって、
前記アクセス要求されたファイルが動画ファイルまたは音声ファイルであった場合に、前記動画ファイルまたは音声ファイルにおいて所定のサイズ毎に設定した複数のシーク開始位置と各シーク開始位置に対応した前記記録媒体における記録位置とを示す管理情報を生成する生成手段と、
前記アクセス要求されたファイルが動画ファイルまたは音声ファイルであった場合には、前記管理情報を用いて前記動画ファイルまたは音声ファイルにおける要求された位置に対応した前記記録媒体における記録位置を特定し、前記アクセス要求されたファイルが動画ファイルまたは音声ファイル以外の他のファイルであった場合には、前記他のファイルが記録された複数のクラスタについてそれぞれ次のデータが記録されたクラスタの番号を示すファイルシステムの情報を用いて前記他のファイルにおける要求された位置に対応した前記記録媒体における記録位置を特定する特定手段と、
前記記録媒体における前記特定手段が特定した記録位置から前記ファイルの読み出しを開始する再生手段と、を備えることを特徴とする情報処理装置。
【請求項６】
前記記録媒体は複数のクラスタから構成され、前記管理情報は前記複数のシーク開始位置に対応したクラスタ番号を示すことを特徴とする請求項５に記載の情報処理装置。
【請求項７】
複数のクラスタから構成される記録媒体上の複数の連続領域に分割して記録されたファイルをアクセス要求に応じて再生する情報処理方法であって、
生成手段が、前記アクセス要求されたファイルが動画ファイルまたは音声ファイルであった場合に、前記記録媒体において前記動画ファイルまたは音声ファイルが記録された各連続領域の先頭位置と各連続領域のサイズとを示す管理情報を生成する生成工程と、
特定手段が、前記アクセス要求されたファイルが動画ファイルまたは音声ファイルであった場合には、前記管理情報を用いて前記動画ファイルまたは音声ファイルにおける要求された位置に対応した前記記録媒体における記録位置を特定し、前記アクセス要求されたファイルが動画ファイルまたは音声ファイル以外の他のファイルであった場合には、前記他のファイルが記録された複数のクラスタについてそれぞれ次のデータが記録されたクラスタの番号を示すファイルシステムの情報を用いて前記他のファイルにおける要求された位置に対応した前記記録媒体における記録位置を特定する特定工程と、
再生手段が、前記記録媒体における前記特定工程で特定された記録位置から前記ファイルの読み出しを開始する再生工程と、
を備えることを特徴とする情報処理方法。
【請求項８】
記録手段が、複数のクラスタから構成される記録媒体に対してファイルを記録する記録工程と、
生成手段が、前記記録工程で前記記録媒体上の複数の連続領域に動画ファイルまたは音声ファイルを分割して記録する場合に、前記動画ファイルまたは音声ファイルが記録された複数の連続領域の先頭位置と各連続領域のサイズとを示す管理情報を生成する生成工程と、
再生手段が、アクセス要求に応じて前記記録媒体に記録されたファイルを読み出す再生工程と、
特定手段が、前記アクセス要求されたファイルが前記記録工程で記録された動画ファイルまたは音声ファイルであった場合には、前記管理情報を用いて前記動画ファイルまたは音声ファイルにおける要求された位置に対応した前記記録媒体における記録位置を特定し、前記アクセス要求されたファイルが動画ファイルまたは音声ファイル以外の他のファイルであった場合には、前記他のファイルが記録された複数のクラスタについてそれぞれ次のデータが記録されたクラスタの番号を示すファイルシステムの情報を用いて前記他のファイルにおける要求された位置に対応した前記記録媒体における記録位置を特定する特定工程と、を備え、
前記再生工程は前記記録媒体における前記特定工程で特定された記録位置から前記ファイルの読み出しを開始することを特徴とする情報処理方法。
【請求項９】
複数のクラスタから構成される記録媒体上の複数の連続領域に分割して記録されたファイルをアクセス要求に応じて再生する情報処理方法であって、
生成手段が、前記アクセス要求されたファイルが動画ファイルまたは音声ファイルであった場合に、前記動画ファイルまたは音声ファイルにおいて所定のサイズ毎に設定した複数のシーク開始位置と各シーク開始位置に対応した前記記録媒体における記録位置とを示す管理情報を生成する生成工程と、
特定手段が、前記アクセス要求されたファイルが動画ファイルまたは音声ファイルであった場合には、前記管理情報を用いて前記動画ファイルまたは音声ファイルにおける要求された位置に対応した前記記録媒体における記録位置を特定し、前記アクセス要求されたファイルが動画ファイルまたは音声ファイル以外の他のファイルであった場合には、前記他のファイルが記録された複数のクラスタについてそれぞれ次のデータが記録されたクラスタの番号を示すファイルシステムの情報を用いて前記他のファイルにおける要求された位置に対応した前記記録媒体における記録位置を特定する特定工程と、
再生手段が、前記記録媒体における前記特定工程で特定された記録位置から前記ファイルの読み出しを開始する再生工程と、
を備えることを特徴とする情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記録媒体からファイルを再生する情報処理装置及び情報処理方法に関するものである。
【背景技術】
【０００２】
従来、固体メモリ素子を有するメモリカードを記録媒体として、記録媒体に記録された静止画や動画像、音声を再生する際に、静止画等の内容の把握を容易にし、静止画等のファイルを管理し易くすることができるデータ処理装置が知られている（特許文献１を参照。）。また電子カメラ等では、利用可能な記録媒体に記録されたデータであれば、自身で撮影・録音したデータの再生だけではなく、他のデータ処理装置によって記録されたデータも再生可能である。
【０００３】
これらデータ処理装置では、着脱可能な不揮発性メモリからデータを読み込んで再生することができる。また、不揮発性メモリが内蔵のために着脱不可能であっても、別のデータ処理装置に接続してそこにデータを記録保存し、保存したデータを読み込んで再生することができる。
【０００４】
電子カメラ等の場合は、他のデータ処理装置によって記録されたデータだけでなく、撮影レンズにより撮影された光学像を光電変換素子により光電変換してなる画像データと、マイクにより録音された音声信号をＡ／Ｄ変換により変換してなる音声データとを揮発性メモリに一次保存し、更にその画像・音声データを記録媒体に転送して保存する。また、再生時には、記録媒体からその画像・音声データを揮発性メモリに転送して再生を行う。
【０００５】
この種の装置では、一般に、メモリの記憶領域をクラスタと呼ばれる論理的な領域に分割し、このクラスタを単位としてデータの書き込み、読み出しを管理している。この様なデータの記憶管理方式はファイルシステムと呼ばれ、ＦＡＴ（Ｆｉｌｅ  Ａｌｌｏｃａｔｉｏｎ  Ｔａｂｌｅ）ファイルシステムなどが知られている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００３−２２４３４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、ＦＡＴファイルシステムのように、使用クラスタ情報を順方向のみで検索する検索手段によって目的のファイルを探索し再生するファイルシステムを有するデータ処理装置では、早送りや逆戻しにより順不同にデータにアクセスして再生処理を行う場合、ファイルサイズが大きくなればなるほど目的のデータ位置にアクセスするのに要するシーク時間が無視できなくなり、ユーザにストレスがかかるという問題がある。
【０００８】
そこで、本発明は、記録媒体に記録されたファイルにアクセスするのに要するシーク時間をより短縮することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の一側面に対応する情報処理装置においては、複数のクラスタから構成される記録媒体上の複数の連続領域に分割して記録されたファイルをアクセス要求に応じて再生する情報処理装置であって、
前記アクセス要求されたファイルが動画ファイルまたは音声ファイルであった場合に、前記記録媒体において前記動画ファイルまたは音声ファイルが記録された各連続領域の先頭位置と各連続領域のサイズとを示す管理情報を生成する生成手段と、
前記アクセス要求されたファイルが動画ファイルまたは音声ファイルであった場合には、前記管理情報を用いて前記動画ファイルまたは音声ファイルにおける要求された位置に対応した前記記録媒体における記録位置を特定し、前記アクセス要求されたファイルが動画ファイルまたは音声ファイル以外の他のファイルであった場合には、前記他のファイルが記録された複数のクラスタについてそれぞれ次のデータが記録されたクラスタの番号を示すファイルシステムの情報を用いて前記他のファイルにおける要求された位置に対応した前記記録媒体における記録位置を特定する特定手段と、
前記記録媒体における前記特定手段が特定した記録位置から前記ファイルの読み出しを開始する再生手段と、を備えることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、記録媒体に記録されたファイルにアクセスするのに要するシーク時間をより短縮することができる。
【図面の簡単な説明】
【００１１】
【図１】記憶媒体に格納されたファイルのクラスタの使用状況例を示す図である。
【図２】図１に示すクラスタ使用状況のファイルシステムにおける管理例を示す図である。
【図３】図２に示すクラスタ管理例において、シーク位置が現在の位置に対して順方向/逆方向に位置する場合のシーク方法を示す図である。
【図４ａ】本発明の第1の実施形態に対応する細分化ブロック情報の構成例を示す図である。
【図４ｂ】本発明の第1の実施形態に対応するシーク処理を行うプログラムの一例を示す図である。
【図４ｃ】本発明の第1の実施形態に対応するシーク処理のフローチャートである。
【図５ａ】本発明の第２の実施形態に対応する細分化ブロック情報の構成例を示す図である。
【図５ｂ】本発明の第２の実施形態に対応するシーク処理を行うプログラムの一例を示す図である。
【図５ｃ】本発明の第２の実施形態に対応する細分化ブロック情報の再構築処理のフローチャートである。
【図６ａ】本発明の第３の実施形態に対応するシーク方法の一例と、シーク開始位置情報の一例とを示す図である。
【図６ｂ】本発明の第３の実施形態に対応するシーク開始位置を特定する処理のプログラムの一例を示す図である。
【図６ｃ】本発明の第３の実施形態に対応するシーク処理のフローチャートである。
【図７】本発明の第４の実施形態に対応する、第１乃至第３の実施形態におけるシーク方法より、いずれか最適な方法を選択してシーク処理を行う場合のシーク方法の一例を示すフローチャートである。
【図８】本発明の第５の実施形態に対応する処理のフローチャートである。
【図９】本発明の第６の実施形態に対応する処理のフローチャートである。
【図１０】本発明の第７の実施形態に対応する処理のフローチャートである。
【図１１】本発明の第８の実施形態に対応する記録媒体２００への書込処理のフローチャートである。
【図１２】本発明の第８の実施形態に対応する処理のフローチャートである。
【図１３】本発明の第９の実施形態に対応する処理のフローチャートである。
【図１４】本発明の第１０の実施形態に対応する処理のフローチャートである。
【図１５】本発明の実施形態に対応するデータ処理装置の概略構成を示す図である。
【発明を実施するための形態】
【００１２】
以下、添付する図面を参照して本発明の好適な実施形態を説明する。
【００１３】
［第１の実施形態］
まず、本発明の第１の実施形態におけるデータ処理装置（情報処理装置）の概略構成について説明する。図１５は、本発明の第１の実施形態におけるデータ処理装置の概略構成を示す図である。尚、本実施形態のデータ処理装置は、例えば着脱可能な小型ハードディスクを記録媒体とするビデオカメラである。
【００１４】
図１５において、１は、データ処理装置（ビデオカメラ）であり、撮像した映像データを後述する記録媒体２００に記録する機能や、記録媒体２００に記録されている映像データを再生する機能を有する。１００は、着脱可能な電源（バッテリー）であり、データ処理装置１の電源となる。２００は、着脱可能な記録媒体（＝不揮発性メモリ）であり、データ処理装置１は、アドレスを設定することで目的のクラスタ（トラック）へアクセスする構造の記録媒体であり、本実施形態においては小型ハードディスクである。
【００１５】
２は、システム制御部であり、データ処理装置１内の各処理部やデータの流れなどを制御する。３は、撮像装置であり、被写体像を光電変換して得た撮像信号をＡ／Ｄ（アナログ／ディジタル）変換して画像データを出力する。４は、マイクであり、音を電気信号に変換して得た音信号をＡ／Ｄ変換して音声データを出力する。５は、メモリであり、取得した画像データ、音声データ、細分化ブロック情報及びシーク開始位置情報、更にはシーク処理を実行するためのプログラムなどを格納するためのワークエリアを備え、例えばＲＡＭなどの揮発性メモリで構成される。６は、表示部であり、再生映像や撮像装置３で撮像中の映像を表示する。７は、スピーカであり、音声データを再生する。
【００１６】
８は、操作部であり、ユーザがデータ処理装置１に指示を与えるための操作ボタンなどを備える。９は、不揮発性メモリであり、電源供給が途絶えてもデータを保持し続けることができる。１０は、電源制御部であり、コネクタ１１を介して接続される電源１００の制御を行う。１１は、電源コネクタであり、着脱可能な電源１０１のコネクタ１０１と接続可能な構成である。
【００１７】
１２は、検知部であり、着脱可能な記録媒体２００の着脱を検知する。１３は、インタフェース部であり、記録媒体２００とデータのやりとりを行う。１４は、コネクタであり、着脱可能な記録媒体２００と接続可能な構造である。
【００１８】
１０１は、着脱可能な電源１００が備えるコネクタであり、データ処理装置１に接続するためのものである。１０２は、電源１００が備える電源部であり、コネクタ１０１を介してデータ処理装置１に電源供給する。２０１は、着脱可能な記録媒体２００が備えるコネクタであり、データ処理装置１に接続するためのものである。２０２は、記録媒体２００が備えるインタフェース部であり、データ処理装置１とデータのやりとりを行う。２０３は、記録媒体２００が備える記録部であり、データを記録する。尚、本実施形態における記録媒体２００が備える記録部２０３は、電源供給が途絶えてもデータを保持し続ける不揮発性メモリである。
【００１９】
図１は、ある一ファイルのクラスタの使用状況例を示す図である。図１に示すように、一つのファイルであっても、クラスタは連続して使用されるとは限らず非連続（断続的に）に使用される。図１では、左上端のクラスタの番号は＃１２８であり、その右隣のクラスタが＃１２９、その右隣が＃１３０…、と番号順に並んでいる。また、一番右端のクラスタの次は、一段下の左端のクラスタの番号が続く。図１において、矢印「→」または「ｊｕｍｐ」、「ｅｎｄ」の文字が付与されているクラスタが使用クラスタであり、クラスタ＃１３０〜＃１３８、＃１４６〜＃１６１、＃１７６〜＃１８８が使用されている。
【００２０】
図２は、図１に示すようなクラスタ使用状況をファイルシステムによりどのように管理しているかの例を示す図である。ここで図２に示す管理例は、ファイルシステムとしてＦＡＴファイルシステムを利用した場合の管理例である。各々のクラスタは、ファイルのデータが次に格納されるクラスタの番号を情報として持っている。例えば、図２の場合、クラスタ＃１３０は、その次にファイルのデータを格納しているクラスタの番号である＃１３１を保持している。このように、各使用クラスタは次の使用クラスタの番号情報は有しているが、先行する使用クラスタの番号情報は有していない。従って、ファイルの特定箇所にアクセスするために使用クラスタをたどってファイルを探索する場合、順方向に探索していくことはできるが、逆方向には探索することができない。尚、図２において、ＮＣとは「Ｎｏｔ  Ｃａｒｅ」の略であり、上記ファイルと関係のないクラスタを示している。
【００２１】
図３は、図２に示すようなＦＡＴファイルシステムを採用した場合の従来のシーク方法を示す図である。図３(a)に示すように、シーク位置が現在の位置より後ろ（順方向）の場合は現在の位置からシークを開始できる。しかしシーク位置が現在の位置より前（逆方向）の場合は、図３(b)に示すように、先頭から検索を開始する必要がある。これは、逆戻りするための情報が用意されていないためであり、シーク時間が長引く原因となっている。
【００２２】
次に、本実施形態のデータ処理装置１における細分化ブロック情報の生成方法及び利用方法について説明する。ここで、細分化ブロック情報とは、連続する使用クラスタを単位に細分化ブロックとしてブロック化した場合の、各細分化ブロックの先頭クラスタ番号とそのブロックに含まれる使用クラスタ数とに関する情報である。言い換えれば、細分化ブロック情報とは、記録媒体上の複数の連続領域に分割して記録された一連の情報データにつき、各連続領域の先頭の位置情報と各連続領域におけるサイズとを関連付けて連続領域管理情報として管理するものである。
【００２３】
図４aは、使用クラスタに応じた細分化ブロック情報の一例を示す図である。図４aの使用クラスタ状況４０に示すように、クラスタ＃１３０〜＃１３８、＃１４６〜＃１６１、＃１７６〜＃１８８が使用されている場合に、細分化ブロック情報４１が構築される。細分化ブロック情報４１は、各細分化ブロックを識別する識別番号「ｉｎｄｅｘ」に関連付けて、細分化ブロックの位置を特定する位置情報「Ｐｏｓｉｔｉｏｎ」としてブロックの先頭の使用クラスタの番号を格納し、細分化ブロックのサイズ情報「Ｓｉｚｅ」として連続する使用クラスタ数を格納する。尚、本実施形態における各クラスタのデータサイズはＡ（ｂｙｔｅｓ）とする。
【００２４】
次に、図４aに示す細分化ブロック情報を利用してシーク時間の短縮を図る本実施形態の特徴となる処理方法（第１の処理方法）について説明する。
【００２５】
図４bは、図４aに示す細分化ブロック情報を利用してシーク処理を行うプログラムを説明するための図である。図４bに示すように、データ処理装置１は、図４aに示した位置情報「Ｐｏｓｉｔｉｏｎ」及びサイズ情報「Ｓｉｚｅ」を変数として以下に示す、ファイル内の要求された位置（ＦｉｌｅＯｆｆｓｅｔ：ファイルの先頭から当該位置までのデータサイズを表す。）にシークする処理を行う。尚、図４bにおいて、変数ｉは、図４aに示す細分化ブロック情報の識別番号「ｉｎｄｅｘ」の値を示す変数であり、変数Ａは、各クラスタのデータサイズである。図４cは、図４bに示すプログラムを実行した場合の処理のフローチャートである。
【００２６】
具体的には、まず、ファイルオフセット（ＦＯ）をユーザから受け付ける（Ｓ４０１）。次に、図４aに示す細分化ブロック情報４１をメモリ５のワークエリアに読み込む（Ｓ４０２）。
【００２７】
さらに、ファイルオフセットをリメインオフセット（ＲＯ）の値に設定し、細分化ブロック情報４１におけるインデックスの番号を示すパラメータ:iを０（ゼロ）に初期化する（Ｓ４０３）。ここでＲＯとは、ファイルオフセットから比較済みの細分化ブロックのデータサイズを減じた値を示す。従って、Ｓ４０３においてはまだ細分化ブロックのデータサイズとの比較を行っていないので、ファイルオフセットのサイズそのものに設定される。
【００２８】
次に、ＲＯとi番目の細分化ブロックのデータサイズとを比較する（Ｓ４０４）。I番目の細分化ブロックのデータサイズは、１クラスタ分のデータサイズをＡ、i番目の細分化ブロックに含まれる使用クラスタ数をＣｓ(i)として、Ａ＊Ｃｓ(i)で表すことができる。使用クラスタ数は、図４aの細分化ブロック情報４１によれば、i＝０の場合にＣｓ(i)＝９となる。
【００２９】
Ｓ４０４における比較の結果、ＲＯがＡ＊Ｃｓ(i)以上の場合には（Ｓ４０４で「ＮＯ」）Ｓ４０５へ移行し、ＲＯの方が小さい場合には（Ｓ４０４で「ＹＥＳ」）Ｓ４０７へ移行する。ここで、ＲＯがＡ＊Ｃｓ(i)以上の場合とは、比較対象となった細分化ブロック内にアクセスしようとするデータを含むクラスタが存在しないことを意味する。一方、ＲＯが小さい場合とは、比較対象となった細分化ブロック内にアクセスしようとするデータを含むクラスタが存在することを意味する。
【００３０】
ＲＯがＡ＊Ｃｓ(i)以上と判定された場合、ＲＯからi番目の細分化ブロックのデータサイズ分を減算してＲＯを更新し（Ｓ４０５）、細分化ブロックの番号iを１つ更新する（Ｓ４０６）。
【００３１】
一方、ＲＯが小さいと判定された場合、当該細分化ブロック内のアクセスしようとするデータを含むクラスタ（開始クラスタ）の番号：ＳＣを、i番目細分化ブロックの先頭の使用クラスタの位置情報（Ｃｐ（i））と、ＲＯを１クラスタ分のデータサイズで除した商（ＲＯ／Ａ：整数値）とを足した値（ＳＣ＝Ｃｐ（i）+ＲＯ／Ａ）として求める（Ｓ４０７）。
【００３２】
次に、当該アクセスしようとするデータの開始クラスタ内におけるオフセット（ＳＯ）をＲＯをＡで割った余り（ＳＯ＝ＲＯ mod  Ａ）として求める（Ｓ４０８）。
【００３３】
以上の処理により、データ処理装置１は、使用クラスタ情報を順に検索する事なくファイル内の要求された位置にシークする事が出来る。これにより、シーク位置がどこであっても使用クラスタ情報を順に検索する必要が無くなり、シーク時間の短縮を図ることができる。
【００３４】
［第２の実施形態］
次に、第２の実施形態として、細分化ブロック情報が、細分化ブロック情報を格納する領域の容量を超えた場合（全細分化ブロック情報が格納出来なかった場合）の処理方法（第２の処理方法）について説明する。尚、第２の実施形態におけるデータ処理装置１の構成やクラスタの構成などは、第１の実施形態において図１５及び図１、２に示したデータ処理装置１の構成やクラスタの構成と同様であり、説明を省略する。
【００３５】
図５aは、使用クラスタに応じた細分化ブロック情報例を示す図である。図５aの使用クラスタ状況５０に示すように、…、クラスタ＃１３０〜＃１３８、＃１４６〜＃１６１、＃１７６〜＃１８８、…が使用されている場合に、細分化ブロック情報５１が構築される。尚、細分化ブロック情報５１の情報構成は、図４aに示した細分化ブロック情報４１と同様である。図５aの使用クラスタ状況５０に示すように、図４aに示した使用クラスタ状況４０に比べて使用クラスタの数が多い。このため、細分化ブロック情報５１に示す格納領域に細分化ブロック情報を格納しきれない状態であるとする。但し、この細分化ブロック情報５１に格納されている細分化ブロックよりも前に位置する細分化ブロック（現細分化ブロック情報５１のクラスタ番号よりも若い番号のクラスタによって構成されている細分化ブロック）の全てに含まれる使用クラスタ数は別途メモリ５に記憶されている。
【００３６】
図５bは、図５aに示す細分化ブロック情報を利用してシーク処理を行うプログラムを説明するための図である。データ処理装置１は、図５aに示した位置情報「Ｐｏｓｉｔｉｏｎ」及びサイズ情報「Ｓｉｚｅ」を変数として以下に示す、特定ファイル内の要求された位置（ＦｉｌｅＯｆｆｓｅｔ：ファイルの先頭から当該位置までのデータサイズを表す。）にシークする処理を行う。尚、図５bにおいて、変数ｉは、図５aに示す細分化ブロック情報の識別番号「ｉｎｄｅｘ」の値を示す変数であり、変数Ａは、各クラスタのデータサイズである。
【００３７】
まず、データ処理装置１は、ファイル内の要求された位置（ＦｉｌｅＯｆｆｓｅｔ）が、現在確保している細分化ブロック情報５１内に有ればそのままその情報を用い、細分化ブロック情報５１内に無ければそのＦｉｌｅＯｆｆｓｅｔが含まれるように細分化ブロック情報５１を構築し直す処理を行う（図５bのＩｎｆｏの更新処理）。
【００３８】
より具体的には、図５cに示すようなフローチャートに従って、細分化ブロック情報５１の再構築処理を行う。
【００３９】
まず、ファイルオフセット（ＦＯ）を受け付ける（Ｓ５０１）。次に、細分化ブロック情報５１、細分化ブロック情報５１に含まれるよりも以前の細分化ブロックのトータルクラスタ数（前トータルクラスタ数：ＴＣＢ）、細分化ブロック情報５１に含まれるトータルクラスタ数（現トータルクラスタ数：ＴＣＩ）をメモリ５のワークエリアに読み込む（Ｓ５０２）。次に、ファイルオフセットを１クラスタ分のデータサイズ：Ａで除した商（整数値）をクラスタオフセット（ＣＯ）の値に設定する（Ｓ５０３）。即ち、クラスタオフセット（ＣＯ）は、シークしようとする特定ファイル内の要求された位置が、先頭から何番目のクラスタに含まれるかを示す。
【００４０】
次に、クラスタオフセット（ＣＯ）と前トータルクラスタ数（ＴＣＢ）とを比較する（Ｓ５０４）。ここで、ＣＯがＴＣＢより小さければ（Ｓ５０４で「ＹＥＳ」）Ｓ５０６へ移行し、現在の細分化ブロック情報５１に含まれている細分化ブロックよりも１つ以前の細分化ブロックを含むように細分化ブロック情報５１を再構成する。さらに、ＴＣＩをＳ５０６で再構成された細分化ブロック情報５１のトータルクラスタ数に設定する（Ｓ５０７）。また、ＴＣＢの内容をＴＣＢ−ＴＣＩにより更新する（Ｓ５０８）。その後、Ｓ５０４に戻って処理を継続する。
【００４１】
一方、ＣＯがＴＣＢ以上であった場合には（Ｓ５０４において「ＮＯ」）、ＣＯがＴＣＢとＴＣＩを足し合わせたサイズ以上であるか否かを判定する（Ｓ５０５）。ここで、ＴＣＢ＋ＴＣＩ≦ＣＯであった場合には（Ｓ５０５で「ＹＥＳ」）、Ｓ５０９へ移行して、現在の細分化ブロック情報５１に含まれている細分化ブロックよりも１つ後ろの細分化ブロックを含むように細分化ブロック情報５１を再構成する。また、ＴＣＢの内容をＴＣＢ＋ＴＣＩにより更新する（Ｓ５１０）。さらに、ＴＣＩをＳ５０９で再構成された細分化ブロック情報５１のトータルクラスタ数に設定する（Ｓ５１１）。その後、Ｓ５０４に戻って処理を継続する。
【００４２】
Ｓ５０５においてＣＯがＴＣＢ＋ＴＣＩ未満であった場合には、Ｓ５０４の判定結果と合わせると、ＴＣＢ≦ＣＯ＜ＴＣＢ＋ＴＣＩとなり、図５aに示す細分化ブロック情報５１には、必ずファイル内の要求された位置（ＦｉｌｅＯｆｆｓｅｔ）が、現在確保している細分化ブロック情報５１内に存在する状態となる。
【００４３】
そして、特定された細分化ブロック内でのＦｉｌｅＯｆｆｓｅｔに該当するクラスタ番号（変数ＳｔａｒｔＣｕｓｔｅｒ）とクラスタ内のオフセット位置（変数ＳｔａｒｔＯｆｆｓｅｔ）は、図４cに示したフローチャートと同様の処理により求めることができる。但し、本実施形態の場合、細分化ブロック情報５１にはファイルを構成する全ての使用クラスタが含まれてはいないので、Ｓ４０３においてファイルオフセットの値をＲｅｍａｉｎＯｆｆｓｅｔの値に設定する場合に、ファイルオフセット（ＦＯ）から、前トータルクラスタ数（ＴＣＢ）と１クラスタ分のデータサイズ（Ａ）との積を減じておく必要がある。
【００４４】
以上の処理により、データ処理装置１は、使用クラスタ情報を順に検索する事なくファイル内の要求された位置にシークする事が出来る。これにより、シーク位置がどこであっても使用クラスタ情報を最初から順に検索する必要が無くなり、シーク時間の短縮を図ることができる。すなわち、細分化ブロック情報５１の格納領域がファイルの細分化ブロックの数をまかなえるほど確保出来なかった場合でも、細分化ブロック情報５１を再構築する手段を備えることにより、使用クラスタ情報を順に検索する動作を最小に抑えつつ、ファイル内の要求された位置にシークする事が出来る。
【００４５】
［第３の実施形態］ 
次に、第３の実施形態として、適当な間隔でシーク開始位置（または、アクセス開始位置）を設定しておく事で、シーク位置が現在のヘッドの位置よりも前（逆方向）の場合でも、先頭から検索開始する必要をなくす事ができるシーク方法（第３の処理方法）について説明する。尚、第３の実施形態におけるデータ処理装置１の構成やクラスタの構成などは、第１の実施形態において図１５及び図１、２に示したデータ処理装置１の構成やクラスタの構成と同様であるので、説明を省略する。
【００４６】
図６ａは、本実施形態におけるシーク方法を説明する図であって、適当な間隔でシーク開始位置を予め設定しておくことで、シーク位置が現在のヘッドの位置よりも前（逆方向）の場合でも、先頭から改めて検索を行う必要をなくすことができる。図６ａの（ａ）において、クラスタ列６０は、記録部２０３上のクラスタの並びを概念的に示すものである。ここに示すように、データ処理装置１は、クラスタ列６０に対して、適当な間隔で５個のシーク開始位置６２（０〜４のｉｎｄｅｘ番号が付いている）を設定する。
【００４７】
具体的には、図６ａの（ｂ）の使用クラスタ状況６５に示すように、クラスタ＃１３０〜＃１３８、＃１４６〜＃１６１、＃１７６〜＃１８８が使用されている場合に、シーク開始位置情報（または、アクセス開始位置情報）６６が構築される。シーク開始位置情報６６は、シーク開始位置をそれぞれ識別する識別番号「ｉｎｄｅｘ」（図６ａの（ａ）の（０）〜（４））に関連付けて、シーク開始位置をそれぞれ特定する位置情報「ＳｅｅｋＰｏｉｎｔ」として各シーク開始位置に対応するデータサイズ（ファイルの先頭から当該シーク開始位置までのデータサイズに相当）と、各シーク開始位置に対応するクラスタ番号を「Ｐｏｓｉｔｉｏｎ」として格納する。尚、本実施形態では、各クラスタのデータサイズ（ＣｌｕｓｔｅｒＳｉｚｅ）を３２７６８（ｂｙｔｅｓ）とし、設定するシーク開始位置の数：Ｎ＝５としている。
【００４８】
また、図６ａの（ｂ）のシーク開始位置情報６６に示すように、シーク開始位置６２の間隔は、２５６Ｋ（ｂｙｔｅｓ）である。すなわち、ファイルの先頭を最初（ｉｎｄｅｘ＝０）のシーク開始位置６２（０）、即ちＳｅｅｋＰｏｉｎｔ＝０とすると、次（ｉｎｄｅｘ＝１）のシーク開始位置６２（１）は、ＳｅｅｋＰｏｉｎｔ＝２５６Ｋとなり、順に、ｉｎｄｅｘ＝２のシーク開始位置６２（２）は、ＳｅｅｋＰｏｉｎｔ＝５１２Ｋ、ｉｎｄｅｘ＝３のシーク開始位置６２（３）はＳｅｅｋＰｏｉｎｔ＝７６８Ｋ、…となる。ここで、２５６Ｋ（ｂｙｔｅｓ）＝３２７６８（ｂｙｔｅｓ）×８と表せるように、本実施形態においては各シーク開始位置６２の間には、８個のクラスタを含むこととしている。よって、シーク開始位置情報６６におけるＰｏｓｉｔｉｏｎも、１３０、１３８、１５３、…となる。
【００４９】
尚、本実施形態において、適当な間隔で設定される各シーク開始位置を"しおり"と呼ぶことにする。各しおりの位置は、例えば以下の（式１）により求めることができる。
【００５０】
各しおりの間隔（ｃｌｕｓｔｅｒｓ）＝（総クラスタ数＋Ｎ−１）／Ｎ  …  （式１） 
ここで、Ｎは、上述したように設定するしおり（シーク開始位置）の数を表す。
【００５１】
以上に示した（式１）により各しおりの間に含まれるクラスタ数を求める（端数切捨て）ことができる。本実施形態では、図６ａの（ｂ）に示すように、総クラスタ数（使用クラスタの総数）が３８、Ｎ＝５なので、上記（式１）に当てはめると、各しおりの間には、（３８＋４）／５＝８（ｃｌｕｓｔｅｒｓ）が含まれることとなる。
【００５２】
図６ｂは、図６ａの（ｂ）に示す細分化ブロック情報６６を利用してシーク処理を行うプログラムを説明するための図である。データ処理装置１は、図６ａの（ｂ）に示したシーク開始位置「ＳｅｅｋＰｏｉｎｔ」及びその位置に対応するクラスタ番号「Ｐｏｓｉｔｉｏｎ」を変数として以下に説明するような、特定ファイル内の要求された位置（ＦｉｌｅＯｆｆｓｅｔ：ファイルの先頭から当該位置までのデータサイズを表す。）にシークする処理を行う。尚、図６ｂにおいて、変数ｉｎｄｅｘは、図６ａの（ｂ）に示すシーク開始位置の識別番号である「ｉｎｄｅｘ」の値を示す変数である。
【００５３】
より具体的には、図６ｃに示すようなフローチャートに従って、シーク処理を行う。
【００５４】
まず、ファイルオフセット（ＦＯ）を受け付ける（Ｓ６０１）。次に、シーク開始位置情報６６をメモリ５のワークエリアに読み込む（Ｓ６０２）。更に、変数ｉｎｄｅｘをＮ−1（上記の場合、５−１＝４）に初期化する（Ｓ６０３）。更に、設定された変数ｉｎｄｅｘに対応するＳｅｅｋＰｏｉｎｔの値（ＳＰ（i））とＳ６０１で受け付けたファイルオフセット（ＦＯ）とを比較する（Ｓ６０４）。
【００５５】
ここで、ＳＰ（i）の値の方が大きい場合（Ｓ６０４で「ＮＯ」）には、要求されたシーク位置は対応する「しおり」よりも前に位置することになるので、変数ｉｎｄｅｘを「-1」更新して（Ｓ６０５）、一つ前の「しおり」に対応するＳＰ（i）の値とＦＯとを再度比較する（Ｓ６０４）。このようにして、順に前方に位置する「しおり」を選択し、当該選択された「しおり」までのデータサイズ（ＳＰ(i)）とファイルオフセット（ＦＯ）の値とを比較していくと、いずれ大小関係が逆転することとなる（Ｓ６０４で「ＹＥＳ」）。このときに、ファイル内の要求された位置（特定箇所）よりも前方に位置し、かつ、当該位置に最も近い「しおり」が決定される。この時の、変数ｉｎｄｅｘに対応するシーク開始位置情報６６におけるＰｏｓｉｔｉｏｎ（ＣＰ（i））が、当該「しおり」に対応するクラスタ番号（ＣＣ）である（Ｓ６０６）。例えば、図６ａにおいて変数ｉｎｄｅｘが「１」ならばＣＰ（i）は「１３８」であるから、ＣＣ＝１３８になる。
【００５６】
ここで、ファイル内の要求された位置は、当該クラスタの開始位置よりも後ろに位置することは明らかであるから、当該要求された位置を以下のように決定できる。まず、要求された位置に対応するファイルオフセットの値（ＦＯ）から、当該クラスタ番号（ＣＣ）に対応するＳｅｅｋＰｏｉｎｔのデータサイズ（ＳＰ(i)）を減ずる（ＦＯ→ＦＯ−ＳＰ（i）、Ｓ６０７）。次に、ＣＣ＋（ＦＯ／Ａ−１）より要求された位置が属する開始クラスタの番号（ＳＣ）を決定し（Ｓ６０８）、当該開始クラスタ内でのオフセット（ＳＯ）を（ＦＯmod Ａ）として求める（Ｓ６０９）。以上により、ファイル内の要求された位置を特定することができる。
【００５７】
以上の処理により、データ処理装置１は、使用クラスタ情報を順に検索する事なくファイル内の要求された位置（ＦｉｌｅＯｆｆｓｅｔ）に一番近いシーク開始位置からシークを開始することができる。これにより、ＦｉｌｅＯｆｆｓｅｔにより求められるシーク位置がどこであっても使用クラスタ情報をファイルの先頭から順に検索する必要が無くなり、シーク時間を短縮することができる。すなわち、シーク位置がファイル内のどこであっても先頭からではなく途中から検索を開始できるため、一定の処理時間内でシーク処理を完了できることが保証される。
【００５８】
［第４の実施形態］ 
次に、第４の実施形態として、ファイルの細分化状況に応じて上記図４〜６を参照して説明した第１〜第３の処理方法（シーク方法）の中から、いずれか最適な処理方法を選択してシーク処理を行う方法について説明する。尚、第４の実施形態におけるデータ処理装置１の構成やクラスタの構成などは、第１の実施形態において図１５及び図１、２に示したデータ処理装置１の構成やクラスタの構成と同様であるので説明を省略する。図７は、ファイル内の細分化ブロック数に応じて上記図４〜６にて説明した第１〜第３の処理方法（シーク方法）のいずれかを実行するための前処理の一例に対応するフローチャートである。
【００５９】
ここで、図４〜６を参照して説明した第１〜第３の処理方法の長所及び短所について説明する。図４で説明した第１の処理方法は、使用クラスタを順に検索する必要がなくなるためアクセスの高速化が期待できるが、細分化ブロック情報４１を覚える領域をどれ位確保する必要があるかどうかはファイルの細分化状態（細分化ブロックの数）に左右されるため予測し難いという欠点がある。
【００６０】
また、図５で説明した第２の処理方法は、細分化ブロック情報５１を記憶する上限を定められるため図４で示した第１の処理方法より使い易いが、確保した領域に格納しきれなかった細分化ブロックについては、細分化ブロック情報を再構成しなければならないのでシーク処理が遅くなるという欠点がある。
【００６１】
また、図６で説明した第３の処理方法は、特定のクラスタ数を単位としてシーク開始位置を設定し、シーク開始位置情報を確保する領域を予め定められるため第１の処理方法より使い易いが、シークする際に毎回特定したシーク開始位置から使用クラスタ情報６５を順に検索する必要があり、第１の処理方法よりシーク時間を要する場合がある。
【００６２】
そこで、本実施形態では最初に記録部２０３におけるファイルの分割状況、即ちファイルの細分化状況を調べ、各方法の長所を生かして最適なシーク方法を図７に示す処理フローにより実現する。クラスタ情報（細分化ブロック情報）を構築する際、データ処理装置１は、まず、ファイルの細分化状況を調べる（ステップＳ７０１）。次に、細分化ブロック数の合計が予め定めたある数Ｍ（１以上の自然数）以下だった場合（ステップＳ７０２のブロック数＜＝Ｍ）には、データ処理装置１は、細分化ブロック単位での細分化ブロック情報（第１、第２の処理方法に対応）を構築する（ステップＳ７０３）。また、細分化ブロック数がＭより大きかった場合（ステップＳ７０２のブロック数＞Ｍ）には、データ処理装置１は、適当な間隔でのシーク開始位置（第３の処理方法に対応）を設定する（ステップＳ７０４）。
【００６３】
以上に示したように、ファイルの細分化状況に応じて上述した第１〜第３の処理方法の中より最適な処理方法を選択することで、本実施形態におけるデータ処理装置１は、細分化が激しくない場合には第１、第２の処理方法を用いて高速なシーク処理を実現し、ファイルの細分化が激しい場合は第３の処理方法を適用することで細分化ブロック情報の確保領域の大きさが予め定められていても、第１、第２の処理方法よりは高速ではないが、従来より高速なシーク処理を実現する事ができる。
【００６４】
［第５の実施形態］ 
次に、第５の実施形態として、特定種類のファイルについては、本発明に対応する特別な処理によりシークをおこなうシーク方法を説明する。尚、第５の実施形態におけるデータ処理装置１の構成やクラスタの構成などは、第１の実施形態において図１５及び図１、２に示したデータ処理装置１の構成やクラスタの構成と同様であり、説明を省略する。図８は、本実施形態に対応するシーク方法を示すフロー図である。ここで特定種類のファイルには、例えば動画・音声ファイルのようなサイズが巨大なファイルが該当する。
【００６５】
ファイルへのシーク＆アクセス要求が生じた場合に、データ処理装置１は、そのファイルが特定ファイル（ここでは動画ｏｒ音声ファイル）であるかどうか調べる（ステップＳ８０１）。ここで、特定ファイルでない場合（ステップＳ８０１で「ＮＯ」）は、データ処理装置１は、例えば図３に示したような通常のシーク処理を行い（ステップＳ８０２）、ステップＳ８０６に進む。
【００６６】
また、特定のファイルへのシーク＆アクセスだった場合（ステップＳ８０１のＹＥＳ）には、データ処理装置１は、ファイル情報（＝細分化ブロック情報又はシーク開始位置情報）が構築済みかどうか調べる（ステップＳ８０３）。ここで、まだファイル情報を構築してない、または、ファイル情報を構築中であると判断した場合（ステップＳ８０３の「ＮＯ」）には、データ処理装置１は、ファイル情報を構築し（ステップＳ８０４）、ステップＳ８０５に進む。また、既にファイル情報を構築済みと判断した場合（ステップＳ８０３の「ＹＥＳ」）には、データ処理装置１は、構築済みのファイル情報を利用して上述した第１〜第３の処理方法を実行し（ステップＳ８０５）、ステップＳ８０６に進む。次に、ステップＳ８０６において、データ処理装置１は、シーク後にファイルにアクセスする。
【００６７】
なお、ステップＳ８０３においてファイル情報が構築済みで無かった場合には、図７に示すような細分化ブロック数に応じて構築するファイル情報の選択を行い、選択されたファイル情報についてＳ８０４で構築を行うようにしても良い。
【００６８】
以上により、動画・音声ファイルのような巨大なファイルに、順不同のアクセスが発生する場合であってもシーク時間を短縮することができる。尚、上述した実施形態において、細分化ブロック情報の構築自体が重い処理となる場合は、ステップＳ８０４にてファイルの全ての細分化ブロックについて細分化ブロック情報を構築する必要は無く、要求されたシークを行うために経由する細分化ブロック情報のみの構築で留めておいても構わない。この場合、構築された細分化ブロック情報に含まれるクラスタ数に基づいて細分化ブロック情報中に含まれるクラスタの合計データサイズを算出し、合計データサイズがファイルの先頭から要求された位置までのデータサイズよりも大きくなった場合に、細分化ブロック情報の構築を終了すればよい。
【００６９】
このようにすれば、ファイルの各位置へのシークを行う事で少しずつ細分化ブロック情報が完成に近づく動作になる。
【００７０】
［第６の実施形態］ 
次に、第６の実施形態として、特定動作の場合に本発明に対応する特別なシーク処理を行うシーク方法について説明する。尚、第６の実施形態におけるデータ処理装置１の構成やクラスタの構成などは、第１の実施形態において図１５及び図１、２に示したデータ処理装置１の構成やクラスタの構成と同様であり、説明を省略する。図９は、本実施形態に対応する処理のフローチャートである。ここで特定動作とは、巨大なファイルに対して順不同のアクセスが発生する動作であり、例えば動画・音声ファイルのコマ送り・早送り・逆戻し再生を例として説明する。
【００７１】
ファイルへのシーク＆アクセス要求が生じた場合に、データ処理装置１は、そのファイルが特定ファイル（ここでは動画ｏｒ音声ファイル）であるかどうか調べる（ステップＳ９０１）。ここで、特定ファイルでない場合（ステップＳ９０１の「ＮＯ」）は、データ処理装置１は、例えば図３に示したような通常のシーク処理を行い（ステップＳ９０３）、ステップＳ９０７に進む。
【００７２】
また、特定のファイルへのシーク＆アクセスだった場合（ステップＳ９０１の「ＹＥＳ」）には、データ処理装置１は、ステップＳ９０２に進み、特定動作（ここではコマ送り・送り・逆戻し）であるか否かどうか調べる。ここで、特定動作でないと判断した場合（ステップＳ９０２の「ＮＯ」）には、データ処理装置１は、ステップＳ９０３に進み、例えば図３に示したような通常のシーク処理を行う。また、特定動作であると判断した場合（ステップＳ９０２の「ＹＥＳ」）には、データ処理装置１は、ファイル情報（＝細分化ブロック情報又はシーク開始位置情報）が構築済みかどうか調べる（ステップＳ９０４）。
【００７３】
ここで、まだファイル情報を構築してない、または、ファイル情報を構築中であると判断した場合（ステップＳ９０４のＮＯ）には、データ処理装置１は、ファイル情報を構築し（ステップＳ９０５）、ステップＳ９０６に進む。また、既にファイル情報が構築済みと判断した場合（ステップＳ９０４のＹＥＳ）には、データ処理装置１は、構築されたファイル情報の種類に応じて上述した第１〜第３の処理方法の何れかに対応する本発明のシーク処理を実行し（ステップＳ９０６）、ステップＳ９０７に進む。次に、ステップＳ９０７において、データ処理装置１は、シーク後にファイルにアクセスする。
【００７４】
なお、ステップＳ９０４においてファイル情報が構築済みで無かった場合には、図７に示すような細分化ブロック数に応じて構築するファイル情報の選択を行い、選択されたファイル情報についてＳ９０５で構築を行うようにしても良い。
【００７５】
以上により、巨大なファイルに対する順不同のアクセスが発生する動画・音声ファイルのコマ送り・早送り・逆戻し再生におけるシーク時間を短縮することができる。尚、上述した実施形態において、細分化ブロック情報の構築自体が重い処理となる場合は、ステップＳ９０５にてファイルの全細分化ブロック情報を構築する必要は無く、要求されたシークを行うために経由する細分化ブロック情報のみの構築で留めておいても構わない。そのための具体的手法は、第５の実施形態において記載した通りである。その場合、ファイルの各位置へのシークを行う事で少しずつ細分化ブロック情報が完成に近づく動作になる。
【００７６】
［第７の実施形態］ 
次に、第７の実施形態として、ユーザが選択したファイルの細分化ブロック情報を構築する方法について説明する。尚、第７の実施形態におけるデータ処理装置１の構成やクラスタの構成などは、第１の実施形態において図１５及び図１、２に示したデータ処理装置１の構成やクラスタの構成と同様であり、説明を省略する。図１０は、ユーザが選択したファイルの細分化ブロック情報を構築する方法を示すフロー図である。
【００７７】
尚、ファイルが巨大なために細分化ブロック情報の構築処理が重くなる場合、記憶部２０３に格納されている全てのファイルについて順に細分化ブロック情報を構築するよりも、ユーザがファイルを選択した時点で細分化ブロック情報を構築する方がユーザのストレスを軽減できる。ここでは、ユーザが選択したファイルが、データ容量が巨大でありかつ順不同のアクセスが発生するファイル、例えば動画・音声ファイルであった場合に細分化ブロック情報を構築する場合例として説明するが、ユーザが選択したファイルが特定のファイルであるか否かにかかわらず、ユーザが選択したファイルについて細分化ブロック情報を構築してもよい。
【００７８】
図１０に示すように、まず、データ処理装置１は、記憶部２０３に格納されているファイルのうち、ユーザが選択したファイルの種類を調べる（ステップＳ１００１）。ここで、ファイルの種類が動画ｏｒ音声ファイルである場合（ステップＳ１００１のＹＥＳ）には、データ処理装置１は、細分化ブロック情報を構築する（ステップＳ１００２）。また、ファイルの種類が動画ｏｒ音声ファイルでない場合（ステップＳ１００１のＮＯ）には、データ処理装置１は、処理を終了する。
【００７９】
［第８の実施形態］
次に、第８の実施形態として、動画記録が可能なデータ処理装置１において、動画記録中に細分化ブロック情報を構築する方法について説明する。尚、第８の実施形態におけるデータ処理装置１の構成やクラスタの構成などは、第１の実施形態において図１５及び図１、２に示したデータ処理装置１の構成やクラスタの構成と同様であり、説明を省略する。図１２は、動画記録が可能なデータ処理装置１において、動画記録中に細分化ブロック情報を構築する方法を示すフロー図である。
【００８０】
図１２に示すように、動画記録が指示された場合には、データ処理装置１は、まず動画記録の継続が指示されているか否かを調べる（ステップＳ１２０１）。ここで、動画記録の指示はデータ処理装置１の本体に設けられた録画ボタンの操作に基づくものであり、動画記録の継続が指示されているか否かは、当該録画ボタンの操作が停止ボタンなどによりキャンセルされたか否かにより行うことができる。もし、動画記録の継続が指示されていた場合（ステップＳ１２０１の「ＹＥＳ」）には、データ処理装置１は、動画データを揮発性メモリ（メモリ５）に取得する（ステップＳ１２０２）。次に、データ処理装置１は、メモリ５に取得した動画データを不揮発性メモリ（記録媒体２００）上のファイルに書き込む（ステップＳ１２０３）。
【００８１】
ここで、上述したステップＳ１２０３における記録媒体２００への書き込み動作の詳細について説明する。図１１は、図１２に示したステップＳ１２０３における記録媒体２００への書き込み動作の詳細を示す図である。図１１に示すように、データ処理装置１は、まず、書き込み対象のデータを記録媒体２００上のファイルに書き込む（ステップＳ１１０１）。次に、データ処理装置１は、記録媒体２００上に書き込み処理したファイルが動画ｏｒ音声ファイルであるか否かを調べる（ステップＳ１１０２）。ここで、動画ｏｒ音声ファイルであると判断した場合（ステップＳ１１０２のＹＥＳ）には、データ処理装置１は、細分化ブロック情報をメモリ５上に構築する（ステップＳ１１０３）。
【００８２】
ここで図１２に戻って、動画記録の継続が指示されていない場合（ステップＳ１２０１のＮＯ）には、データ処理装置１は、撮影時刻の記録など動画ファイルの後処理を行う（ステップＳ１２０４）。次に、データ処理装置１は、メモリ５上の細分化ブロック情報を記録媒体２００に動画ファイルとは別ファイルとして記録する（ステップＳ１２０５）。以上により、データ処理装置１は、動画記録処理を終了する。
【００８３】
上述した実施形態においては、細分化ブロック情報を記録媒体２００に動画ファイルとは別ファイルとして記録したが、記録方法はこれに限定されるものではなく、動画ファイル中に添付保存したり、内蔵の不揮発性メモリ９に記録したり、メモリ５上にそのまま置いておく（＝電源ＯＦＦで消える）ようにしても構わない。
【００８４】
また、上述した処理により記録した動画ファイルを再生する場合、図８や図９に示したシーク方法でシークする対象となるメディア（記録媒体２００）が交換されていない場合は、ステップＳ８０３（図８）やステップＳ９０４（図９）においてファイル情報構築済みと判断して、記録媒体２００に記録した細分化ブロック情報を用いることができる。ここで、記録媒体２００が交換されたか否かは、検知部１２を利用して、例えば、動画ファイルを記録媒体２００に記録してからその動画ファイルの再生を行うまでの間に記録媒体２００が着脱されたか否かにより判断することができる。
【００８５】
［第９の実施形態］
次に、第９の実施形態として、音声記録が可能なデータ処理装置１において、音声データの記録中に細分化ブロック情報を構築する方法について説明する。尚、第９の実施形態におけるデータ処理装置１の構成やクラスタの構成などは、第１の実施形態において図１５及び図１、２に示したデータ処理装置１の構成やクラスタの構成と同様であり、説明を省略する。図１３は、音声記録が可能なデータ処理装置１において、音声データの記録中に細分化ブロック情報を構築する方法を示すフロー図である。
【００８６】
図１３に示すように、音声記録が指示された場合には、データ処理装置１は、まず音声記録の継続が指示されているか否かを調べる（ステップＳ１３０１）。ここで、音声記録の指示はデータ処理装置１の本体に設けられた録音ボタンの操作に基づくものであり、音声記録の継続が指示されているか否かは、当該録音ボタンの操作が停止ボタンなどによりキャンセルされたか否かにより行うことができる。もし、音声記録の継続が指示されている場合（ステップＳ１３０１のＹＥＳ）には、データ処理装置１は、音声データを揮発性メモリ（メモリ５）に取得する（ステップＳ１３０２）。次に、データ処理装置１は、メモリ５に取得した音声データを不揮発性メモリ（記録媒体２００）上のファイルに書き込む（ステップＳ１３０３）。
【００８７】
ここで、上述したステップＳ１３０３における記録媒体２００への書き込み動作の詳細について説明する。図１３に示したステップＳ１３０３における記録媒体２００への書き込み動作の詳細も、動画の場合と同様に図１１に示す流れで行われる図１１に示すように、データ処理装置１は、まず、書き込み対象の音声データを記録媒体２００上のファイルに書き込む（ステップＳ１１０１）。次に、データ処理装置１は、記録媒体２００上に書き込み処理したファイルが動画ｏｒ音声ファイルであるか否かを調べる（ステップＳ１１０２）。ここで、音声ファイルであると判断した場合（ステップＳ１１０２のＹＥＳ）には、データ処理装置１は、細分化ブロック情報をメモリ５上に構築する（ステップＳ１１０３）。
【００８８】
また、音声記録の継続が指示されていない場合（ステップＳ１３０１のＮＯ）には、データ処理装置１は、撮影時刻の記録など音声ファイルの後処理を行う（ステップＳ１３０４）。次に、データ処理装置１は、メモリ５上の細分化ブロック情報を記録媒体２００に音声ファイルとは別ファイルとして記録する（ステップＳ１３０５）。以上により、データ処理装置１は、音声記録処理を終了する。
【００８９】
上述した実施形態においては、細分化ブロック情報を記録媒体２００に音声ファイルとは別ファイルとして記録したが、記録方法はこれに限定されるものではなく、音声ファイル中に添付保存したり、内蔵の不揮発性メモリ９に記録したり、メモリ５上にそのまま置いておく（＝電源ＯＦＦで消える）ようにしても構わない。
【００９０】
また、上述した処理により記録した音声ファイルを再生する際に、図８や図９に示したシーク方法でシークする対象となるメディア（記録媒体２００）が交換されていない場合は、ステップＳ８０３（図８）やステップＳ９０４（図９）においてファイル情報構築済みと判断して、記録媒体２００に記録した細分化ブロック情報を用いる。
【００９１】
［第１０の実施形態］ 
次に、第１０の実施形態におけるデータ処理装置１として、上述した各実施形態を動作モード等に応じて使い分ける方法について説明する。尚、第１０の実施形態におけるデータ処理装置１の構成やクラスタの構成などは、第１の実施形態において図１５及び図１、２に示したデータ処理装置１の構成やクラスタの構成と同様であり、説明を省略する。図１４は、第１０の実施形態におけるデータ処理装置１の動作を示すフロー図である。
【００９２】
図１４に示すように、データ処理装置１は、電源が投入されたら、まず動作モードを調べる（ステップＳ１４０１）。ここで、動作モードが記録モードであると判断した場合（ステップＳ１４０１の「ＲＥＣ」）には、データ処理装置１は、記録媒体２００に記録するデータの種類（記録対象）を調べる（ステップＳ１４０２）。ここで、記録対象が動画ファイルの場合（ステップＳ１４０２の「ＭＯＶＩＥ」）には、データ処理装置１は、例えば図１２に示した動画記録処理により動画撮影を行う（ステップＳ１４０３）。
【００９３】
また、記録対象が音声ファイルの場合（ステップＳ１４０２のＳＯＵＮＤ）には、データ処理装置１は、例えば図１３に示した音声記録処理により音声録音を行う（ステップＳ１４０４）。また、記録対象がその他のファイルの場合（ステップＳ１４０２の「ＥＴＣ」）には、データ処理装置１は、その他のファイルに対する処理を行う（ステップＳ１４０５）。
【００９４】
また、ステップＳ１４０１において、動作モードが再生モードであると判断した場合（ステップＳ１４０１の「ＰＬＡＹ」）には、データ処理装置１は、ユーザの操作に応じて再生対象となるファイル（動画ファイルや音声ファイルなど）の選択処理を行う（ステップＳ１４０６）。次に、データ処理装置１は、選択したファイルの再生処理を行う（ステップＳ１４０７）。尚、このステップＳ１４０７における再生処理は、上述した図４〜１０にて示した再生処理のいずれかを用いることが好ましい。
【００９５】
尚、図１５に示した記録媒体２００は、ＰＣＭＣＩＡカード等のメモリカード、ハードディスク等だけでなく、マイクロＤＡＴ、光磁気ディスク、ＣＤ−ＲやＣＤ−ＷＲなどの光ディスク、ＤＶＤなどの相変化型光ディスク等で構成されていてもよい。更に、記録媒体２００は、メモリカードとハードディスク等が一体となった複合媒体であってもよく、その複合媒体から一部が着脱可能な構成であってもよい。
【００９６】
また、図４〜７のいずれかに示される方法だけを特別なシーク方法として用いてもよい。更に、図８で示される特定ファイルの場合に特別なシーク方法を用いてもよく、図９で示される特定動作の場合に特別なシーク方法を用いてもよい。図１２、１３で示されるファイル作成時に記録した細分化ブロック情報を用いて特別なシーク方法を用いてもよい。
【００９７】
また、図１４で示した第１０の実施形態においては、動画撮影、音声録音が出来るデータ処理装置１を例にして説明したが、この限りではなく、再生専用のデータ処理装置１でもよく、この場合には記録モードが無い処理となる。
【００９８】
以上のように、本発明の情報処理装置、情報処理方法及びそのプログラムによれば、記録媒体に記録された情報データ（ファイル）からデータを読み出す（アクセスする）ために要するシーク時間をより短縮することができる。
【００９９】
尚、上述した実施形態では、データ処理装置１の機能を実現する為のプログラムをメモリに読み込んでＣＰＵが実行することによりその機能を実現させるものであったが、この限りではなく、各処理の全部または一部の機能を専用のハードウェアにより実現してもよい。また、上述したメモリは、光磁気ディスク装置、フラッシュメモリ等の不揮発性のメモリや、ＣＤ−ＲＯＭ等の読み出しのみが可能な記録媒体、ＲＡＭ以外の揮発性のメモリ、あるいはこれらの組み合わせによるコンピュータ読み取り、書き込み可能な記録媒体より構成されてもよい。
【０１００】
また、データ処理装置１において各種処理を行う機能を実現する為のプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより各処理を行っても良い。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。
【０１０１】
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発メモリ（ＲＡＭ）のように、一定時間プログラムを保持しているものも含むものとする。
【０１０２】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。
【０１０３】
また、上記プログラムは、前述した機能の一部を実現する為のものであっても良い。さらに、前述した機能をコンピュータシステムに既に記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【０１０４】
また、上記のプログラムを記録したコンピュータ読み取り可能な記録媒体等のプログラムプロダクトも本発明の実施形態として適用することができる。上記のプログラム、記録媒体、伝送媒体およびプログラムプロダクトは、本発明の範疇に含まれる。
【０１０５】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【図１】
2010238251.tif 000003
【図２】
2010238251.tif 000004
【図３】
2010238251.tif 000005
【図４ａ】
2010238251.tif 000006
【図４ｂ】
2010238251.tif 000007
【図４ｃ】
2010238251.tif 000008
【図５ａ】
2010238251.tif 000009
【図５ｂ】
2010238251.tif 000010
【図５ｃ】
2010238251.tif 000011
【図６ａ】
2010238251.tif 000012
【図６ｂ】
2010238251.tif 000013
【図６ｃ】
2010238251.tif 000014
【図７】
2010238251.tif 000015
【図８】
2010238251.tif 000016
【図９】
2010238251.tif 000017
【図１０】
2010238251.tif 000018
【図１１】
2010238251.tif 000019
【図１２】
2010238251.tif 000020
【図１３】
2010238251.tif 000021
【図１４】
2010238251.tif 000022
【図１５】
2010238251.tif 000023