(57)【特許請求の範囲】
【請求項１】
記録媒体にデータを記録する情報処理装置であって：
前記記録媒体に対してデータを記録する記録部と；
すべて空き領域である消去ブロック、および部分的に書き込みが行われた消去ブロック内の空き領域を検出する検出部と；
前記検出部で検出した前記すべて空き領域である消去ブロックに逐次記録を行い、記録が完了した時点で、記録したデータの末尾部分を前記検出部で検出した前記部分的に書き込みが行われた消去ブロック内の空き領域に収まるように前記空き領域に移動して記録するように前記記録部を制御する記録制御部と；
を含むことを特徴とする、情報処理装置。
【請求項２】
前記記録媒体に記録するデータは、映像及び音声のデータであり、
前記記録部は、前記映像及び音声のデータをクリップ単位で前記記録媒体に割付けて記録することを特徴とする、請求項１に記載の情報処理装置。
【請求項３】
前記記録部は、記録開始時に確定するデータは前記映像及び音声のデータの直前に割付けて記録し、記録終了時に確定するデータは前記映像及び音声のデータの直後に割付けて記録することを特徴とする、請求項２に記載の情報処理装置。
【請求項４】
記録媒体にデータを記録する情報処理装置であって：
前記記録媒体に対してデータを記録する記録部と；
前記記録部で前記記録媒体にデータを記録する前に、前記記録媒体に記録するデータを一時的に格納するデータ格納部と；
すべて空き領域である消去ブロック、および部分的に書き込みが行われた消去ブロック内の空き領域を検出する検出部と；
通常記録中は、前記データ格納部に格納したデータを前記検出部で検出した前記すべて空き領域である消去ブロックに逐次移動して記録し、記録末尾部分のみ、前記データ格納部に格納したデータを前記検出部で検出した前記部分的に書き込みが行われた消去ブロック内の空き領域に移動して記録するように前記記録部を制御する記録制御部と；
を含むことを特徴とする、情報処理装置。
【請求項５】
前記記録媒体に記録するデータは、映像及び音声のデータであり、
前記記録制御部は、前記映像及び音声のデータをクリップ単位で前記記録媒体に割付けて記録するように前記記録部を制御することを特徴とする、請求項４に記載の情報処理装置。
【請求項６】
前記記録部は、記録開始時に確定するデータは前記映像及び音声のデータの直前に割付けて記録し、記録終了時に確定するデータは前記映像及び音声のデータの直後に割付けて記録することを特徴とする、請求項５に記載の情報処理装置。
【請求項７】
前記データ格納部は、前記記録媒体の効率的な書き換え単位と同一の容量を有する少なくとも１つのデータ格納ブロックを含むことを特徴とする、請求項４に記載の情報処理装置。
【請求項８】
前記データ格納部は、前記記録媒体の最小読み書き単位であるページ単位でデータを格納することを特徴とする、請求項４に記載の情報処理装置。
【請求項９】
前記データ格納部は、前記記録媒体に含まれていることを特徴とする、請求項４に記載の情報処理装置。
【請求項１０】
記録媒体にデータを記録する記録方法であって：
すべて空き領域である消去ブロック、および部分的に書き込みが行われた消去ブロック内の空き領域を検出する検出ステップと；
前記検出ステップで検出した前記すべて空き領域である消去ブロックに逐次記録を行い、記録が完了した時点で、記録したデータの末尾部分を前記検出ステップで検出した前記部分的に書き込みが行われた消去ブロック内の空き領域に移動して記録するように制御する記録制御ステップと；
前記記録制御ステップの制御に従って前記記録媒体に対してデータを記録する記録ステップと；
を含むことを特徴とする、記録方法。
【請求項１１】
記録媒体にデータを記録する記録方法であって：
前記記録媒体にデータを記録する前に、前記記録媒体に記録するデータを一時的に格納するデータ格納ステップと；
すべて空き領域である消去ブロック、および部分的に書き込みが行われた消去ブロック内の空き領域を検出する検出ステップと；
通常記録中は、前記データ格納ステップに格納したデータを前記検出ステップで検出した前記すべて空き領域である消去ブロックに逐次移動して記録し、記録末尾部分のみ、前記データ格納ステップで格納したデータを前記検出ステップで検出した前記部分的に書き込みが行われた消去ブロック内の空き領域に収まるように前記空き領域に移動して記録するように制御する記録制御ステップと；
前記記録制御ステップの制御に従って前記記録媒体に対してデータを記録する記録ステップと；
を含むことを特徴とする、記録方法。
【請求項１２】
記録媒体へデータを記録する処理をコンピュータに実行させるコンピュータプログラムであって：
すべて空き領域である消去ブロック、および部分的に書き込みが行われた消去ブロック内の空き領域を検出する検出ステップと；
前記検出ステップで検出した前記すべて空き領域である消去ブロックに逐次記録を行い、記録が完了した時点で、記録したデータの末尾部分を前記検出ステップで検出した前記部分的に書き込みが行われた消去ブロック内の空き領域に移動して記録するように制御する記録制御ステップと；
前記記録制御ステップの制御に従って前記記録媒体に対してデータを記録する記録ステップと；
を含むことを特徴とする、コンピュータプログラム。
【請求項１３】
記録媒体へデータを記録する処理をコンピュータに実行させるコンピュータプログラムであって：
前記記録媒体にデータを記録する前に、前記記録媒体に記録するデータを一時的に格納するデータ格納ステップと；
すべて空き領域である消去ブロック、および部分的に書き込みが行われた消去ブロック内の空き領域を検出する検出ステップと；
通常記録中は、前記データ格納ステップに格納したデータを前記検出ステップで検出した前記すべて空き領域である消去ブロックに逐次移動して記録し、記録末尾部分のみ、前記データ格納ステップで格納したデータを前記検出ステップで検出した前記部分的に書き込みが行われた消去ブロック内の空き領域に移動して記録するように制御する記録制御ステップと；
前記記録制御ステップの制御に従って前記記録媒体に対してデータを記録する記録ステップと；
を含むことを特徴とする、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、記録方法およびコンピュータプログラムに関し、より詳細には、ファイル等の単位でデータを記録媒体に記録する情報処理装置、記録方法およびコンピュータプログラムに関する。
【背景技術】
【０００２】
フラッシュメモリに代表される不揮発性の半導体メモリは、小型化や大容量化が進み、映像データや音声データのような大容量のデータの記録に用いられることが多くなっている。
【０００３】
一般的に、フラッシュメモリは、ページと呼ばれる読み書き単位と、消去ブロックと呼ばれるデータ消去単位とを有する。消去ブロックのサイズはページのサイズの整数倍となっている。例えば、ページのサイズを２キロバイト、消去ブロックのサイズをページのサイズの１６倍に相当する３２キロバイトとすることができる。図６は、フラッシュメモリにおける消去ブロックとページとの関係を示す説明図である。
【０００４】
またフラッシュメモリは、データの書き込みに先立ってデータの消去を行うことが必要である。従って、フラッシュメモリに対してデータの書き換えを行う際は、消去ブロック単位でのデータの消去を行った後に、ページ単位でのデータの書き込みを行う必要がある。すなわち、フラッシュメモリの本質的な書き換え単位は消去ブロックである。リムーバブルデバイスとして用いられるフラッシュメモリの多くは、擬似的にページ単位での書き換えが可能であるが、これらのデバイスでは内部的にデータの退避・復元などを行うことでページ単位での書き換えを実現している。一般にページ単位の書き換えは、これらの退避・復元などの内部処理を行うため、記録速度の低下を招く。
【０００５】
フラッシュメモリは、大容量化が進むに従ってデータアクセスの速度の高速化が求められる。デバイスの内部で複数のフラッシュメモリを並列に使用することでデータアクセスの高速化を実現することができる。例えば、１つのフラッシュメモリを８つ並べて８並列にした場合、単純計算で８倍のアクセス速度を得ることができる。
【０００６】
一方、フラッシュメモリを並列に使用すると、見かけ上のページのサイズおよび消去ブロックのサイズも増大する。図７は、フラッシュメモリを並列に使用した場合について説明する説明図である。例えば、ページのサイズを２キロバイト、消去ブロックのサイズを３２キロバイトであるフラッシュメモリを８つ並べて８並列にした場合、見かけ上のページのサイズおよび消去ブロックのサイズは、それぞれ８倍の１６キロバイト、２５６キロバイトとなる。今後高速化が進むと、高速化に伴って消去ブロックのサイズも増大する方向になる。
【０００７】
ＦＡＴ（Ｆｉｌｅ  Ａｌｌｏｃａｔｉｏｎ  Ｔａｂｌｅ）等のファイルシステムでは、複数のセクタを一つにまとめたクラスタと呼ばれる割付け単位で、記録媒体にデータを割付ける。この場合、前述したようなフラッシュメモリの特性から、クラスタのサイズは消去ブロックの整数倍のサイズがクラスタのサイズ（最低でも同サイズ）となるように設定することが望ましい。クラスタのサイズが消去ブロックの整数倍とならない場合は、隣接するクラスタ間で消去ブロックを共有することになるが、この場合、あるクラスタを再利用するときに（消去ブロック単位ではなく）ページ単位の書き換えが発生し、処理速度が低下してしまうからである。
【０００８】
従って、高速化に伴って消去ブロックのサイズが増大する場合、クラスタのサイズも増大させることが望ましい。また、並列化の効果を得るには、見かけ上のページ単位でデータのアクセスを行う必要があり、見かけ上のページ単位より小さな単位でアクセスすると、並列化の効果は現れない。
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかし、クラスタのサイズを消去ブロックの整数倍のサイズとした場合には、データが記録されない無駄な領域が増える問題がある。図８は、クラスタのサイズを消去ブロックのサイズと同じサイズにした場合の、従来のフラッシュメモリへのデータの記録について説明する説明図である。図８の（ａ）はフラッシュメモリの構造を示したものであり、ここではページ８つ分を消去ブロックとしている。そして、図８の（ｂ）はクラスタのサイズを消去ブロックのサイズと同じサイズにした場合にフラッシュメモリへのデータ（ファイル）の記録を示したものである。
【００１０】
クラスタ単位で割付けを行うファイルシステムにおいては、このように、１ファイル当たり最大１クラスタ未満、平均１／２クラスタの無駄領域が発生する。従って、クラスタのサイズを消去ブロックのサイズと同じサイズにした場合は、１ファイル当たり平均１／２消去ブロックの無駄領域が発生する。
【００１１】
一方、クラスタのサイズをページのサイズと同じサイズにした場合は、１ファイル当たり平均１／２ページの無駄領域となり、クラスタのサイズを消去ブロックのサイズと同じサイズにした場合に比べて小さな値となる。しかし、ファイルの生成、削除を繰り返すうちに記録領域がページ単位で断片化するため、レートが低下する可能性がある。図９は、クラスタのサイズをページのサイズと同じサイズにした場合の、従来のフラッシュメモリへのデータの記録について説明する説明図である。
【００１２】
図９の（ａ）に示したように、フラッシュメモリのクラスタのサイズをページのサイズと同じにした場合には、クラスタのサイズを消去ブロックのサイズと同じサイズにした場合と比べて無駄領域は減少する。しかし、図９の（ｂ）に示したように、ファイルの生成や削除を繰り返すとフラッシュメモリの内部でページ単位の断片化が生じ、データの記録や再生時のレートが低下する問題が生じてしまう問題がある。前述のようにフラッシュメモリにおけるページ単位の書き換えは、記録速度の低下を招く。
【００１３】
そこで、本発明は、上記問題に鑑みてなされたものであり、本発明の目的とするところは、記録媒体に記録する際に、空き領域の断片化を抑制するようにデータを配置して記録することで、断片化を抑えながら無駄な領域を減らすことが可能な、新規かつ改良された情報処理装置、記録方法およびコンピュータプログラムを提供することにある。
【課題を解決するための手段】
【００１４】
上記課題を解決するために、本発明のある観点によれば、記録媒体に対してデータを記録する記録部と、記録媒体の最小割付け単位の連続または断片化した空き領域を検出する検出部と、検出部で検出した記録媒体の連続した空き領域に逐次記録を行い、記録が完了した時点で記録したデータの末尾部分を検出部で検出した記録媒体の断片化した空き領域に移動して記録するように記録部を制御する記録制御部と、を含むことを特徴とする、情報処理装置が提供される。
【００１５】
かかる構成によれば、記録部は記録媒体に対してデータを記録し、検出部は記録媒体の最小割付け単位の連続または断片化した空き領域を検出する。そして記録制御部は、検出部で検出した記録媒体の連続した空き領域に逐次記録を行い、記録が完了した時点で記録したデータの末尾部分を検出部で検出した記録媒体の断片化した空き領域に移動して記録するように記録部を制御する。その結果、断片化した空き領域が埋められることで、記録媒体の断片化を抑えながら無駄な領域を減らすことができる。末尾部分のデータの移動により全体的な速度は低下するが、移動するのは末尾部分であり、しかも記録完了後に移動を行っているため、速度低下による記録の破綻は起こらない。
【００１６】
記録媒体に記録するデータは、映像及び音声のデータであり、記録部は、映像及び音声のデータをクリップ単位で記録媒体に割付けて記録してもよい。かかる構成によれば、記録媒体には映像及び音声のデータが記録され、記録部は当該映像及び音声データをクリップ単位で記録媒体に割付けて記録する。さらに記録完了後に、割付けた領域の末尾部分に記録されたデータを、断片化した記録媒体に移動して記録することで、無駄領域の発生を抑制し、部分的に空いている消去ブロックを無くし、完全に空いている消去ブロックの数を増やすことができる。
【００１７】
記録部は、記録開始時に確定するデータは映像及び音声のデータの直前に割付けて記録し、記録終了時に確定するデータは映像及び音声のデータの直後に割付けて記録してもよい。その結果、記録開始時に確定するデータおよび記録終了時に確定するデータを、映像及び音声のデータと連続して割付けて記録することで、部分空きブロックの発生を抑制すると共に、映像及び音声のデータを削除する際にはこれらのデータも同時に削除されるので、フラグメントの発生も抑制することができる。
【００１８】
また、上記課題を解決するために、本発明の別の観点によれば、記録媒体に対してデータを記録する記録部と、記録部で記録媒体にデータを記録する前に、記録媒体に記録するデータを一時的に格納するデータ格納部と、記録媒体の最小割付け単位の連続または断片化した空き領域を検出する検出部と、通常記録中は、データ格納部に格納したデータを検出部で検出した記録媒体の連続した空き領域に逐次移動して記録し、記録末尾部分のみ、データ格納部に格納したデータを検出部で検出した記録媒体の断片化した空き領域に収まるように空き領域に移動して記録するように記録部を制御する記録制御部と、を含むことを特徴とする、情報処理装置が提供される。
【００１９】
かかる構成によれば、記録部は記録媒体に対してデータを記録し、データ格納部は記録部で記録媒体にデータを記録する前に、記録媒体に記録するデータを一時的に格納し、検出部は記録媒体の最小割付け単位の連続または断片化した空き領域を検出する。そして記録制御部は、通常記録中はデータ格納部に格納したデータを記録媒体の連続した空き領域に逐次移動して記録し、記録末尾部分ではデータ格納部に格納したデータを記録媒体の断片化した空き領域に移動して記録するように記録部を制御する。その結果、記録媒体に記録する際に、データ格納部に一時的に格納したデータを断片化した空き領域に移動して記録することで、記録媒体の断片化を抑えながら無駄な領域を減らすことができる。
【００２０】
記録媒体に記録するデータは、映像及び音声のデータであり、記録制御部は、映像及び音声のデータをクリップ単位で記録媒体に割付けて記録するように記録部を制御してもよい。かかる構成によれば、記録媒体には映像及び音声のデータが記録され、記録部は当該映像及び音声データをクリップ単位で記録媒体に割付けて記録する。通常記録中はデータ格納部に格納した映像および音声データを、記録媒体の連続した空き領域に逐次クリップ単位で割付けて移動して記録し、記録末尾部分ではデータ格納部に格納したデータを、記録媒体の断片化した空き領域にクリップ単位で割付けて移動して記録する。その結果、映像及び音声データをクリップ単位で断片化した空き領域を埋めるように記録媒体に記録することで、無駄領域の発生を抑制し、部分的に空いている消去ブロックを無くし、完全に空いている消去ブロックの数を増やすことができる。
【００２１】
記録部は、記録開始時に確定するデータは映像及び音声のデータの直前に割付けて記録し、記録終了時に確定するデータは映像及び音声のデータの直後に割付けて記録してもよい。その結果、記録開始時に確定するデータおよび記録終了時に確定するデータを、映像及び音声のデータと連続して割付けて記録することで、部分空きブロックの発生を抑制すると共に、映像及び音声のデータを削除する際にはこれらのデータも同時に削除されるので、フラグメントの発生も抑制することができる。
【００２２】
データ格納部は、記録媒体の本質的な書き換え単位である消去ブロックと同一の容量を有する少なくとも１つのデータ格納ブロックを含んでいてもよい。また、データ格納部は、記録媒体の最小読み書き単位であるページ単位でデータを格納してもよい。
【００２３】
データ格納部は、記録媒体に含まれていてもよい。その結果、情報処理装置の実装が容易となる。
【００２４】
また、上記課題を解決するために、本発明の別の観点によれば、記録媒体にデータを記録する記録方法であって、記録媒体の最小割付け単位の連続または断片化した空き領域を検出する検出ステップと、検出ステップで検出した記録媒体の連続した空き領域に逐次記録を行い、記録が完了した時点で記録したデータの末尾部分を検出ステップで検出した記録媒体の断片化した空き領域に移動して記録するように制御する記録制御ステップと、記録制御ステップの制御に従って記録媒体に対してデータを記録する記録ステップと、を含むことを特徴とする、記録方法が提供される。
【００２５】
かかる構成によれば、検出ステップは記録媒体の最小割付け単位の連続または断片化した空き領域を検出し、記録制御ステップは検出ステップで検出した記録媒体の連続した空き領域に逐次記録を行い、記録が完了した時点で記録したデータの末尾部分を検出ステップで検出した記録媒体の断片化した空き領域に移動して記録するように制御し、記録ステップは記録制御ステップの制御に従って記録媒体に対してデータを記録する。その結果、断片化した空き領域が埋められることで、記録媒体の断片化を抑えながら無駄な領域を減らすことができる。末尾部分のデータの移動により全体的な速度は低下するが、移動するのは末尾部分であり、しかも記録完了後に移動を行っているため、速度低下による記録の破綻は起こらない。
【００２６】
また、上記課題を解決するために、本発明の別の観点によれば、記録媒体にデータを記録する記録方法であって、記録媒体にデータを記録する前に、記録媒体に記録するデータを一時的に格納するデータ格納ステップと、記録媒体の最小割付け単位の連続または断片化した空き領域を検出する検出ステップと、通常記録中は、データ格納ステップで格納したデータを記録媒体の連続した空き領域に逐次移動して記録し、記録末尾部分のみ、データ格納ステップで格納したデータを検出ステップで検出した記録媒体の断片化した空き領域に収まるように空き領域に移動して記録するように制御する記録制御ステップと、記録制御ステップの制御に従って記録媒体に対してデータを記録する記録ステップと、を含むことを特徴とする、記録方法が提供される。
【００２７】
かかる構成によれば、データ格納ステップは記録媒体にデータを記録する前に、記録媒体に記録するデータを一時的に格納し、検出ステップは記録媒体の最小割付け単位の連続または断片化した空き領域を検出する。そして記録制御ステップは、通常記録中は、データ格納ステップで格納したデータを記録媒体の連続した空き領域に逐次移動して記録し、記録末尾部分のみ、データ格納ステップで格納したデータを検出ステップで検出した記録媒体の断片化した空き領域に収まるように空き領域に移動して記録するように制御し、記録ステップは記録制御ステップの制御に従って記録媒体に対してデータを記録する。その結果、その結果、記録媒体に記録する際に、一時的に格納したデータを断片化した空き領域に移動して記録することで、記録媒体の断片化を抑えながら無駄な領域を減らすことができる。
【００２８】
また、上記課題を解決するために、本発明の別の観点によれば、コンピュータに、記録媒体へデータを記録する処理を実行させるコンピュータプログラムであって、記録媒体の最小割付け単位の連続または断片化した空き領域を検出する検出ステップと、検出ステップで検出した記録媒体の連続した空き領域に逐次記録を行い、記録が完了した時点で記録したデータの末尾部分を検出ステップで検出した記録媒体の断片化した空き領域に移動して記録するように制御する記録制御ステップと、記録制御ステップの制御に従って記録媒体に対してデータを記録する記録ステップと、を含むことを特徴とする、コンピュータプログラムが提供される。
【００２９】
かかる構成によれば、検出ステップは記録媒体の最小割付け単位の連続または断片化した空き領域を検出し、記録制御ステップは検出ステップで検出した記録媒体の連続した空き領域に逐次記録を行い、記録が完了した時点で記録したデータの末尾部分を検出ステップで検出した記録媒体の断片化した空き領域に移動して記録するように制御し、記録ステップは記録制御ステップの制御に従って記録媒体に対してデータを記録する。その結果、断片化した空き領域が埋められることで、記録媒体の断片化を抑えながら無駄な領域を減らすことができる。末尾部分のデータの移動により全体的な速度は低下するが、移動するのは末尾部分であり、しかも記録完了後に移動を行っているため、速度低下による記録の破綻は起こらない。
【００３０】
また、上記課題を解決するために、本発明の別の観点によれば、コンピュータに、記録媒体へデータを記録する処理を実行させるコンピュータプログラムであって、記録媒体にデータを記録する前に、記録媒体に記録するデータを一時的に格納するデータ格納ステップと、記録媒体の最小割付け単位の連続または断片化した空き領域を検出する検出ステップと、通常記録中は、データ格納ステップで格納したデータを記録媒体の連続した空き領域に逐次移動して記録し、記録末尾部分のみ、データ格納ステップで格納したデータを検出ステップで検出した記録媒体の断片化した空き領域に移動して記録するように制御する記録制御ステップと、記録制御ステップの制御に従って記録媒体に対してデータを記録する記録ステップと、を含むことを特徴とする、コンピュータプログラムが提供される。
【００３１】
かかる構成によれば、データ格納ステップは記録媒体にデータを記録する前に、記録媒体に記録するデータを一時的に格納し、検出ステップは記録媒体の最小割付け単位の連続または断片化した空き領域を検出する。そして記録制御ステップは、通常記録中は、データ格納ステップで格納したデータを記録媒体の連続した空き領域に逐次移動して記録し、記録末尾部分のみ、データ格納ステップで格納したデータを検出ステップで検出した記録媒体の断片化した空き領域に移動して記録するように制御し、記録ステップは記録制御ステップの制御に従って記録媒体に対してデータを記録する。その結果、記録媒体に記録する際に、一時的に格納したデータを断片化した空き領域に移動して記録することで、記録媒体の断片化を抑えながら無駄な領域を減らすことができる。
【発明の効果】
【００３２】
以上説明したように本発明によれば、記録媒体に記録する際に、空き領域の断片化を抑制するようにデータを配置して記録することで、断片化を抑えながら無駄な領域を減らすことが可能となる。そして、記録媒体の記録容量および記録レートの低下を軽減することができる。
【発明を実施するための最良の形態】
【００３３】
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【００３４】
まず、本発明の一実施形態にかかる情報処理装置１００について説明する。図１は、本発明の一実施形態にかかる情報処理装置１００について説明する説明図である。以下、図１を用いて本発明の一実施形態にかかる情報処理装置１００について説明する。
【００３５】
図１に示したように、本発明の一実施形態にかかる情報処理装置１００は、入出力部１０２と、カメラブロック１１２と、スイッチ部１１４、１１８、１２２と、エンコーダ／デコーダ１１６と、バッファ１２０と、メディアコントローラ１２４と、半導体メモリ１２６と、ハードディスク１２８と、ホストＣＰＵ１３０と、キー操作部１３２と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１３４と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１３６と、不揮発性メモリ１３８と、を含んで構成される。
【００３６】
入出力部１０２は、情報処理装置１００の外部との間で信号の授受を行うものである。入出力部１０２は、入出力端子１０４と、出力端子１０６と、入力端子１０８と、を備える。
【００３７】
入出力端子１０４は、情報処理装置１００と、パーソナルコンピュータ等の外部の他の装置との間で信号の入出力を行うものである。外部の他の装置との間で入出力を行うものとしては、例えばテキストデータや図形データ等のデータがある。出力端子１０６は、情報処理装置１００から外部の他の装置に対して信号を出力するものである。入力端子１０８は、パーソナルコンピュータ等の外部の他の装置から信号の入力を受け付けるためのものである。外部の他の装置から入力されるものとしては、例えば動画情報、静止画情報、音声情報等がある。
【００３８】
カメラブロック１１２は、被写体を撮影して得られる動画情報や静止画情報、または音声情報をデジタルデータに変換するものである。カメラブロック１１２には、図示しないが、レンズ、ＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅ）やＣＭＯＳ（Ｃｏｍｐｌｅｍｅｎｔａｒｙ  Ｍｅｔａｌ  Ｏｘｉｄｅ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ）等の撮像素子、マイク、Ａ／Ｄ変換器等が含まれる。
【００３９】
スイッチ部１１４は、入力端子１０８からの入力と、カメラブロック１１２からの入力とを切り替えるものである。スイッチ部１１４は、ユーザからのキー操作部１３２の操作によって、ホストＣＰＵ１３０を介して端子ａと端子ｂとのどちらか一方に切り替わる。スイッチ部１１４が端子ａに接続されると、入力端子１０８からの入力がエンコーダ／デコーダ１１６に入力され、端子ｂに接続されると、カメラブロック１１２からの入力がエンコーダ／デコーダ１１６に入力される。
【００４０】
エンコーダ／デコーダ１１６は、入力端子１０８またはカメラブロック１１２からの入力を、ＭＰＥＧ（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｍｏｔｉｏｎ  Ｇｒｏｕｐ）方式等の予め決められた符号化方式で符号化し、符号化したデータを出力する。また、バッファ１２０に蓄えられた符号化データを予め決められた方式で復号化して出力端子１０６に供給する。
【００４１】
スイッチ部１１８は、入出力端子１０４との間の入出力と、エンコーダ／デコーダ１１６との間の入出力とを切り替えるものである。スイッチ部１１８は、スイッチ部１１４と同様に、ユーザからのキー操作部１３２の操作によって、ホストＣＰＵ１３０を介して端子ａと端子ｂとのどちらか一方に切り替わる。スイッチ部１１８が端子ａに接続されると、入出力端子１０４との間でデータの入出力が行われ、端子ｂに接続されると、エンコーダ／デコーダ１１６との間でデータの入出力が行われる。
【００４２】
バッファ１２０は、データが一時的に格納されるものであり、バッファ１２０へのデータの書き込み、またバッファ１２０からのデータの読み出しは、ホストＣＰＵ１３０によって制御される。データを情報処理装置１００に記録する場合には、入出力端子１０４またはエンコーダ／デコーダ１１６からのデータがバッファ１２０に一時的に格納された後にスイッチ部１２２に送られる。また、情報処理装置１００に記録されているデータを読み出して再生する場合には、メディアコントローラ１２４からのデータがスイッチ部１２２を経由してバッファ１２０に一時的に格納された後にスイッチ部１１８に送られる。
【００４３】
スイッチ部１２２は、ホストＣＰＵ１３０によって端子ａと端子ｂとのどちらか一方に切り替わる。データを半導体メモリ１２６またはハードディスク１２８に記録したり、半導体メモリ１２６またはハードディスク１２８からデータを読みだしたりする場合には、スイッチ部１２２は端子ａに接続される。また、データを半導体メモリ１２６またはハードディスク１２８に記録する場合には、定期的に端子ｂに切り替わり、ホストＣＰＵ１３０によって、半導体メモリ１２６またはハードディスク１２８に設けられる情報領域に記録する情報を更新する。
【００４４】
メディアコントローラ１２４は、データを半導体メモリ１２６またはハードディスク１２８に記録する場合の記録処理を行ったり、半導体メモリ１２６またはハードディスク１２８から読み出す場合の読み出し処理を行ったりするものである。メディアコントローラ１２４で記録処理を行う際には、半導体メモリ１２６またはハードディスク１２８の空き領域を検出し、検出した空き領域に対してデータの記録を行う。
【００４５】
半導体メモリ１２６やハードディスク１２８は、各種データが記録されるものである。半導体メモリ１２６やハードディスク１２８に記録されるデータとしては、例えばテキストデータ、図形データ、動画情報、静止画情報、音声情報等がある。半導体メモリ１２６やハードディスク１２８に対するデータの記録はメディアコントローラ１２４が制御する。
【００４６】
本実施形態においては、半導体メモリ１２６やハードディスク１２８はＦＡＴ（Ｆｉｌｅ  Ａｌｌｏｃａｔｉｏｎ  Ｔａｂｌｅ）ファイルシステムに従ってデータが記録される。また、本実施形態においては、半導体メモリ１２６は着脱が可能となっており、ハードディスク１２８は情報処理装置１００の内部に格納されているものである。
【００４７】
ホストＣＰＵ１３０は、情報処理装置１００の各部の制御を行うものである。ホストＣＰＵ１３０からの各種命令により情報処理装置１００の各部の動作が行われる。例えば、ホストＣＰＵ１３０は、キー操作部１３２を通じて情報処理装置１００を使用するユーザから入力端部の選択入力を受け付けると、入力に応じてスイッチ部１１４、１１８を切り替えるための制御信号をスイッチ部１１４、１１８に対して供給する。また例えば、ホストＣＰＵ１３０は、キー操作部１３２を通じて情報処理装置１００を使用するユーザから記録媒体の選択入力を受け付けると、入力に応じてユーザが選択した記録媒体にデータを記録するための制御信号をメディアコントローラ１２４に対して送出する。
【００４８】
また、本実施形態においては、すべて空き領域である消去ブロック（すなわち連続した空き領域）、および部分的に書き込みが行われた消去ブロック内の空き領域（すなわち断片化した空き領域）をホストＣＰＵ１３０で検出し、ホストＣＰＵ１３０からメディアコントローラ１２４に対して、検出した空き領域を埋めるようにデータを記録するよう指示する。
【００４９】
キー操作部１３２は、情報処理装置１００を使用するユーザが情報処理装置１００を操作するための入力指示を受け付けるものである。ＲＯＭ１３４は、情報処理装置１００を動作させるために必要となるプログラムや各種データ等が記録されているものである。ＲＡＭ１３６は、情報処理装置１００に電源が投入されて動作している間の作業領域として用いられるものである。不揮発性メモリ１３８は、情報処理装置１００の電源が落とされた場合であってもデータを保持できる書き換え可能なメモリである。不揮発性メモリ１３８には、情報処理装置１００に電源が投入されていない場合であっても保持しておく必要がある設定情報やパラメータ等を記憶保持しておくためのものである。
【００５０】
以上、図１を用いて本発明の一実施形態にかかる情報処理装置１００について説明した。次に、本発明の一実施形態にかかる情報処理装置１００を用いたデータの記録方法について説明する。
【００５１】
ユーザからのキー操作部１３２を通じた指示により、また入出力部１０２の接続状況により、入出力端子１０４、入力端子１０８およびカメラブロック１１２のどの入力端部からデータが入力されるかが選択される。ユーザからのキー操作部１３２を通じた指示により、入力されたデータを半導体メモリ１２６とハードディスク１２８とのどちらに記録するかが選択される。
【００５２】
例えば、ユーザからのキー操作部１３２を通じた指示により、カメラブロック１１２からデータが入力されるように選択された場合には、ホストＣＰＵ１３０からの制御信号により、スイッチ部１１４は端子ｂ側に切り替えられ、カメラブロック１１２で取得したデータがエンコーダ／デコーダ１１６に入力される。
【００５３】
そして、ユーザからのキー操作部１３２を通じた指示により、データを半導体メモリ１２６に記録するように選択された場合には、メディアコントローラ１２４を通じて、半導体メモリ１２６上のＦＡＴ情報や空き情報を取得する。そして、メディアコントローラ１２４は取得したＦＡＴ情報や空き情報に基づいて、データを半導体メモリ１２６上のどの位置に記録すべきかを把握する。
【００５４】
カメラブロック１１２から出力されたデータは、スイッチ部１１４を通じてエンコーダ／デコーダ１１６に入力される。エンコーダ／デコーダ１１６は、入力されたデータを、例えばＭＰＥＧ等の予め定められた符号化方式で符号化することで圧縮する。符号化によって圧縮されたデータは、エンコーダ／デコーダ１１６からスイッチ部１１８を経由して、ホストＣＰＵ１３０の書き込み制御によりバッファ１２０に格納される。
【００５５】
バッファ１２０に格納されたデータは、ホストＣＰＵ１３０の読み出し制御により読み出される。バッファ１２０に格納されたデータは、例えばＦＩＦＯ（Ｆｉｒｓｔ  Ｉｎ  Ｆｉｒｓｔ  Ｏｕｔ）方式で読み出される。
【００５６】
ホストＣＰＵ１３０の読み出し制御によりバッファ１２０から読み出されたデータは、スイッチ部１２２およびメディアコントローラ１２４を経由して、半導体メモリ１２６やハードディスク１２８に記録される。そして、データを記録する際には、予め把握した記録位置に記録するようにメディアコントローラ１２４を制御する。
【００５７】
なお、データを半導体メモリ１２６やハードディスク１２８に記録する際には、スイッチ部１２２は端子ａに接続されている。そして、スイッチ部１２２は定期的に端子ｂに接続され、ホストＣＰＵ１３０によってＦＡＴ情報が更新される。またデータの記録が完了した段階においても、スイッチ部１２２は定期的に端子ｂに接続され、ホストＣＰＵ１３０によってＦＡＴ情報およびディレクトリエントリ情報が更新される。
【００５８】
以上のように、情報処理装置１００は入力されたデータを半導体メモリ１２６やハードディスク１２８に記録する。本実施形態では、メディアコントローラ１２４から半導体メモリ１２６にデータを記録する際に、半導体メモリ１２６に存在する空き領域を検出し、その検出した空き領域の断片化を抑制するようにデータを配置して記録することで、断片化を抑えながら無駄な領域を減らすことを特徴とする。以下、本実施形態にかかる情報処理装置１００を用いたデータ記録方式について説明する。なお、以下の各実施例においては、メディアコントローラ１２４から半導体メモリ１２６にデータを記録する場合のデータ記録方式について説明する。
【００５９】
（第１の実施例）
図２は、本実施形態にかかる情報処理装置１００を用いたデータ記録方式の第１の実施例について説明する説明図である。図２の各図に付している数字は消去ブロックの番号を表すものである。
【００６０】
図２の（ａ）は、半導体メモリ１２６の１番目と２番目の消去ブロックにファイル１が記録されている場合に、メディアコントローラ１２４からファイル２を記録しようとする場合について説明する説明図である。ファイル１は、１番目の消去ブロックの全領域と、２番目の消去ブロックの一部の領域に渡って記録されている。従って、ファイル２は３番目の消去ブロックから記録され、２番目の消去ブロックの末尾部分にはデータが記録されない無駄領域が発生する。
【００６１】
そこで、メディアコントローラ１２４からファイル２を記録する際には、半導体メモリ１２６の３番目の消去ブロックの先頭からデータを記録し、データの記録が完了すると、２番目の消去ブロックのデータが記録されていない末尾部分を埋めるように記録されたデータの一部を移動する。本実施形態においては、データが記録されている消去ブロックにおける空き領域をホストＣＰＵ１３０で検出し、ホストＣＰＵ１３０からメディアコントローラ１２４に対して、検出した消去ブロックの空き領域を埋めるようにデータを記録するよう指示する。
【００６２】
図２の（ｂ）は、ファイル２のデータの一部を２番目の消去ブロックの末尾部分に移動することで２番目の消去ブロックの無駄領域を無くす場合について説明する説明図である。図２の（ｂ）に示した場合においては、ファイル２は当初、半導体メモリ１２６の３番目および４番目の消去ブロックの全領域と、５番目の消去ブロックの一部の領域に渡って記録されている。
【００６３】
ここで、半導体メモリ１２６の５番目の消去ブロックに記録されたデータの一部を、データが記録されていない２番目の消去ブロックの末尾部分に移動する。データを移動すると、スイッチ部１２２を端子ｂに接続し、ホストＣＰＵ１３０によってＦＡＴ情報が更新される。このようにファイル２のデータを移動することで、消去ブロックの無駄領域の発生を抑制することができる。
【００６４】
図２の（ｃ）は、半導体メモリ１２６にファイル３を新たに記録しようとする場合について説明する説明図である。図２の（ｃ）に示したように、ファイル２が半導体メモリ１２６の５番目の消去ブロックの一部の領域に記録されているので、高速に記録を行うために、ファイル３は完全に空いている６番目の消去ブロックの先頭からデータを記録する。そして、ファイル２と同様に、データの記録が完了すると、データが記録されていない５番目の消去ブロックの末尾部分を埋めるように記録されたデータの一部を移動する。
【００６５】
図２の（ｄ）は、半導体メモリ１２６に記録されるファイル３のデータの一部を５番目のクラスタの末尾部分に移動することで５番目の消去ブロックの無駄領域を無くす場合について説明する説明図である。図２の（ｄ）に示した場合においては、ファイル３は当初、半導体メモリ１２６の６番目および７番目の消去ブロックの全領域と、５番目の消去ブロックの一部の領域に渡って記録されている。
【００６６】
ここで、半導体メモリ１２６の８番目の消去ブロックに記録されたデータの末尾部分を、データが記録されていない５番目の消去ブロックの末尾部分に移動する。データを移動すると、スイッチ部１２２を端子ｂに接続し、ホストＣＰＵ１３０によってＦＡＴ情報が更新される。このようにファイル３のデータを移動することで、半導体メモリ１２６の消去ブロックの無駄領域の発生を抑制することができる。なお、データを移動することでデータが分断されるが、分断される部分は最大でも消去ブロックのサイズを超えることは無く、ＦＡＴ情報の更新によりファイルがどの位置に存在しているかを正確に把握することが可能となる。また移動処理は記録完了後に行うため、この処理により記録媒体への記録が間に合わなくなることはない。またデータを読み出す際には断片化したデータを読み出すことになるが、一般にフラッシュメモリにおいて、読み出しにおける断片化は、書き込み時のそれにくらべて軽微であり、影響は少ない。
【００６７】
以上説明したように、第１の実施例によれば、データの末尾部分を部分的に書き込みの行われた消去ブロック内の空き領域に移動することで、無駄領域の発生を抑制し、部分的に空いている消去ブロックを無くし、完全に空いている消去ブロックの数を増やすことができる。
【００６８】
（第２の実施例）
図３は、本発明の一実施形態にかかる情報処理装置１００を用いたデータ記録方式の第２の実施例について説明する説明図である。図３においても、図２と同様に、図３の各図に付している数字は消去ブロックの番号を表すものである。
【００６９】
第２の実施例では、メディアコントローラ１２４から半導体メモリ１２６にデータをファイルとして記録する前に、一旦データをバッファリングし、部分的に空き領域が存在する消去ブロックに対して、空き領域を埋めるようにバッファリングしたデータを半導体メモリ１２６に記録するデータ記録方式について説明する。
【００７０】
図３の（ａ）は、半導体メモリ１２６の１番目と２番目の消去ブロックにファイル１が記録されている場合に、ファイル２を記録しようとする場合について説明する説明図である。ファイル１は、１番目の消去ブロックの全領域と、２番目の消去ブロックの一部の領域に渡って記録されている。従って、そのままファイル２を半導体メモリ１２６に記録しようとすると、ファイル２は完全に空いている３番目の消去ブロックから記録され、２番目の消去ブロックの末尾部分にはデータが記録されない無駄領域が発生する。
【００７１】
そこで、図３の（ａ）に示したように、半導体メモリ１２６にデータを記録する前に、本発明のデータ格納部の一例であるＲＡＭ１３６に、半導体メモリ１２６に記録するファイル２のデータを一時的にバッファリングする。データをバッファリングするバッファ領域は、半導体メモリ１２６の消去ブロックのサイズと同じサイズを有していることが望ましい。また、バッファ領域は図３に示したように２つ設けてもよい。
【００７２】
そして、図３の（ｂ）に示したように、ＲＡＭ１３６の１番目のバッファ領域がデータで一杯になると、図３の（ｃ）に示したように、一杯になったデータを半導体メモリ１２６の３番目の消去ブロックに移動し、ＲＡＭ１３６の２番目のバッファ領域にファイル２のデータをバッファリングする。
【００７３】
その後、図３の（ｄ）に示したようにファイル２のデータのＲＡＭ１３６への入力が完了すると、部分的に空き領域が存在する半導体メモリ１２６の２番目の消去ブロックに対してＲＡＭ１３６の２番目のバッファ領域の先頭からデータを移動し、残りのデータを半導体メモリ１２６の３番目の消去ブロックに移動する。
【００７４】
図３の（ｅ）に示したように、ＲＡＭ１３６の２番目のバッファ領域にバッファリングされていたデータを、消去ブロックの空き領域を埋めるように移動することで、消去ブロックの無駄領域の発生を抑制し、部分的に空いている消去ブロックを無くし、完全に空いている消去ブロックの数を増やすことができる。
【００７５】
なお、図３ではバッファ領域を２つ設けた場合を例に挙げて説明したが、本発明はこれに限られず、バッファ領域からデータをごく短時間でコピーできれば、バッファ領域は１つであってもよい。またバッファ領域は３つ以上設けてもよいし、ＦＩＦＯ（Ｆｉｒｓｔ  Ｉｎ  Ｆｉｒｓｔ  Ｏｕｔ）構造であってもよい。データをバッファリングするバッファ領域はＲＡＭ１３６では無く、バッファ１２０に設けてもよい。また、バッファ領域は半導体メモリ１２６の内部に設けてもよい。半導体メモリ１２６の内部にバッファ領域を設けることで情報処理装置１００本体の実装が容易となる。
【００７６】
以上説明したように、第２の実施例によれば、データを記録する前にバッファ領域にデータをバッファリングし、バッファリングしたデータの末尾部分を部分的に書き込みが行われた消去ブロックの空き領域に移動することで、無駄領域の発生を抑制し、部分的に空いている消去ブロックを無くし、完全に空いている消去ブロックの数を増やすことができる。
【００７７】
なお、この第２の実施例では、図３の（ｄ）に示したように、部分的に空き領域が存在する消去ブロックに対してＲＡＭ１３６のバッファ領域の先頭からデータを移動し、残りのデータをデータが記録されていない消去ブロックに移動したが、データを移動する対象の領域については逆であっても構わない。
【００７８】
（第３の実施例）
第３の実施例では、映像や音声のクリップを構成する複数ファイルの記録時におけるデータ記録方式について説明する。
【００７９】
図４は、本発明の一実施形態にかかる情報処理装置１００を用いたデータ記録方式の第３の実施例について説明する説明図である。図４においても、図２および図３と同様に、図４の各図に付している数字は消去ブロックの番号を表すものである。
【００８０】
図４の（ａ）は、従来の記録方式について説明する説明図であり、映像（図４の（ａ）では“Ｖｉｄｅｏ”で示す）と音声（図４の（ａ）では“Ａｕｄｉｏ”で示す）のそれぞれのデータを、複数のクリップがまとめられたファイル単位で半導体メモリ１２６に記録する場合について説明するものである。この様にファイルを分割して記録するデータには、例えばローレゾデータやリアルタイムメタデータ等がある。図４の（ａ）に示したように、ファイル単位でデータを半導体メモリ１２６に記録する場合では、映像データに対応するファイルと、音声データに対応するファイルとのそれぞれで消去ブロックに空き領域が生じることがある。
【００８１】
従って、本実施形態の第３の実施例においては、ファイル単位ではなくクリップ単位で半導体メモリ１２６にデータを割付けて記録することで、空き領域の発生を抑制することを特徴とする。本実施形態の第３の実施例では、映像（Ｖｉｄｅｏ）データと音声（Ａｕｄｉｏ）データとがそれぞれ別ファイルで作成される場合に、ファイル単位ではなくクリップ単位で半導体メモリ１２６にデータを割付けて記録する場合について説明する。
【００８２】
図４の（ｂ）は、本実施形態の第３の実施例にかかる、クリップ単位で半導体メモリ１２６にデータを記録する場合について説明する説明図である。図４の（ｂ）では、映像データ（“Ｖｉｄｅｏ”または“Ｖ”で示す）および音声データ（“Ａ”で示す）を半導体メモリに順次記録する場合について説明している。
【００８３】
例えば、エンコーダ／デコーダ１１６においてＭＰＥＧ方式でデータをエンコードする場合には、データは例えば０．５秒単位に映像データが発生するので、これをクラスタ単位にアラインする。また、音声データもクラスタの整数倍の単位で区切る。映像データ、音声データともに、クラスタ単位のデータが発生するごとに半導体メモリ１２６にデータを記録する。そして、データを記録する際には上述の第１の実施例または第２の実施例のように、記録完了時に末尾部分を部分的に書き込みの行われた消去ブロック内の空き領域に移動して記録する。
【００８４】
以上説明したように、第３の実施例によれば、ローレゾデータやリアルタイムメタデータ等を記録する際に、ファイル単位ではなくクリップ単位で半導体メモリ１２６にデータを割付けて記録する。記録する際には部分的に書き込みの行われた空き領域が存在する消去ブロックの空き領域を埋めるように記録することで、消去ブロックの無駄領域の発生を抑制し、部分的に空いている消去ブロックを無くし、完全に空いている消去ブロックの数を増やすことができる。
【００８５】
なお、映像データや音声データのインターリーブを、見かけのページサイズでアラインしておくことで、すなわちクラスタサイズを見かけのページサイズとすることで、映像データを構成するファイルのみ、また音声データを構成するファイルのみの読み出しも高速に行うことができる。
【００８６】
（第４の実施例）
第４の実施例では、映像や音声のクリップを構成する複数ファイルと、当該クリップに付随するデータ（例えばノンリアルタイムデータ）との記録時におけるデータ記録方式について説明する。
【００８７】
図５は、本発明の一実施形態にかかる情報処理装置１００を用いたデータ記録方式の第４の実施例について説明する説明図である。図５では、映像データ（“Ｖｉｄｅｏ”または“Ｖ”で示す）および音声データ（“Ａ”で示す）を半導体メモリ１２６に順次記録する場合について説明している。そして、図５においても、図２〜図４と同様に、図５の各図に付している数字は消去ブロックの番号を表すものである。
【００８８】
第４の実施例では、第３の実施例と同様に、ファイル単位ではなくクリップ単位で半導体メモリ１２６にデータを割付けて記録することで、空き領域の発生を抑制することを特徴とする。そして、本実施形態の第４の実施例では、映像（Ｖｉｄｅｏ）データと音声（Ａｕｄｉｏ）データ、そしてクリップに付随して生成されるデータとがそれぞれ別ファイルで作成される場合に、半導体メモリ１２６にデータを記録する場合について説明する。本実施例では、クリップに付随して生成されるデータの例としてノンリアルタイムデータ（Ｎｏｎ  Ｒｅａｌ  Ｔｉｍｅ  Ｄａｔａ。図５では“ＮＲＴ”とする）を挙げて説明する。
【００８９】
図５に示したように、記録開始時に確定するノンリアルタイムデータは、リアルタイムで生成されるデータの前に割付けて記録する。ノンリアルタイムデータが半導体メモリ１２６に記録されると、続けて映像や音声のデータ（リアルタイムデータ）を順次記録する。
【００９０】
そして、リアルタイムデータの記録終了時に確定するノンリアルタイムデータは、リアルタイムデータの末尾に続けて記録する。リアルタイムデータ、ノンリアルタイムデータともに、データを半導体メモリ１２６に記録する際には、第１の実施例または第２の実施例のように、末尾部分を部分的に書き込みの行われた消去ブロック内の空き領域に移動して記録する。
【００９１】
以上説明したように、第４の実施例によれば、ローレゾデータやリアルタイムメタデータ等のように、映像や音声のクリップを構成する複数ファイルと、当該クリップに付随するデータとを記録する場合に、ファイル単位ではなくクリップ単位で半導体メモリ１２６にデータを記録する。そして、データの記録の際には、クリップに付随するデータをクリップと連続して割付けて記録する。このように記録することで、無駄領域の発生を抑制し、部分的に空いている消去ブロックを無くし、完全に空いている消去ブロックの数を増やすことができる。また、記録したデータを削除する場合には、映像や音声のクリップを構成する複数ファイルと、当該クリップに付随するデータとが同時に削除されるので、フラグメントの発生を防ぐことができる。
【００９２】
以上、半導体メモリ１２６にデータを記録する場合のデータ記録方式について４つの実施例を挙げて説明した。以上説明したように本実施形態によれば、半導体メモリ１２６にデータを記録する際に、空き領域の断片化を抑制するようにデータを配置して記録することで、半導体メモリ１２６の断片化を抑えながら無駄な領域を減らすことが可能となる。そして、半導体メモリ１２６の記録容量および記録レートの低下を軽減することができる。
【００９３】
以上、添付図面を参照しながら本発明の好適な実施形態について説明したが、本発明は係る例に限定されないことは言うまでもない。当業者であれば、特許請求の範囲に記載された範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
【産業上の利用可能性】
【００９５】
本発明は、情報処理装置、記録方法およびコンピュータプログラムに適用可能であり、特にファイル等の単位でデータを記録媒体に記録する情報処理装置、記録方法およびコンピュータプログラムに適用可能である。
【図面の簡単な説明】
【００９６】
【図１】本発明の一実施形態にかかる情報処理装置１００について説明する説明図である。
【図２】本発明の一実施形態にかかる情報処理装置１００を用いたデータ記録方式の第１の実施例について説明する説明図である。
【図３】本発明の一実施形態にかかる情報処理装置１００を用いたデータ記録方式の第２の実施例について説明する説明図である。
【図４】本発明の一実施形態にかかる情報処理装置１００を用いたデータ記録方式の第３の実施例について説明する説明図である。
【図５】本発明の一実施形態にかかる情報処理装置１００を用いたデータ記録方式の第４の実施例について説明する説明図である。
【図６】フラッシュメモリにおける消去ブロックとページとの関係を示す説明図である。
【図７】フラッシュメモリを並列に使用した場合について説明する説明図である。
【図８】従来のフラッシュメモリへのデータの記録について説明する説明図である。
【図９】従来のフラッシュメモリへのデータの記録について説明する説明図である。
【符号の説明】
【００９７】
１００    情報処理装置
１０２    入出力部
１０４    入出力端子
１０６    出力端子
１０８    入力端子
１１２    カメラブロック
１１４、１１８、１２２    スイッチ部
１１６    エンコーダ／デコーダ
１２０    バッファ
１２４    メディアコントローラ
１２６    半導体メモリ
１２８    ハードディスク
１３０    ホストＣＰＵ
１３２    キー操作部
１３４    ＲＯＭ
１３６    ＲＡＭ
１３８    不揮発性メモリ
【図１】
0004949176.tif 000002
【図２】
0004949176.tif 000003
【図３】
0004949176.tif 000004
【図４】
0004949176.tif 000005
【図５】
0004949176.tif 000006
【図６】
0004949176.tif 000007
【図７】
0004949176.tif 000008
【図８】
0004949176.tif 000009
【図９】
0004949176.tif 000010