(57)【要約】【課題】電子機器を用いてメディアにデータを書き込む際に、必要最小限の計算を行うだけでそのメディアの空き容量のチェックを行うことが可能なメディア管理装置を提供する。【解決手段】メディア管理装置１は、最長ファイル名で、最大ディレクトリ数に必要なパステーブルのセクタ数Ａと、最大ファイル数に必要なディレクトリレコードのセクタ数Ｂと、ルートディレクトリレコードに必要なセクタ数Ｃと、ボリュームに必要なセクタ数Ｄとを求める。そして、Ａ＋Ｂ＋Ｃ＋Ｄを演算してメディア９への書込みに必要な最大セクタ数を算出て保有する。次に、書込み判定部３は、書込み対象となるメディア９の論理フォーマットを特定し、管理領域サイズ記憶部５から対応したセクタ数を取得すると共にメディア９の残りのセクタ数を取得し、両者を減算してメディア９への書込み可能な容量を算出する。【選択図】図１
2008071399.tif 000002
【特許請求の範囲】
【請求項１】
メディアに書込可能な実体ファイルの容量を算出するメディア管理装置であって、
複数の論理フォーマットのそれぞれについて、管理情報のために使用する容量の最大値である管理領域サイズが予め算出されていて、当該予め算出されている複数の論理フォーマット別の前記管理領域サイズを記憶する手段と、
実体ファイルを書き込む対象である対象メディアの論理フォーマットを特定する手段と、
前記対象メディアの空き容量を特定する手段と、
前記特定された論理フォーマットに対応する管理領域サイズを取得し、前記特定された空き容量に基づいて、前記対象メディアに書込可能な実体ファイルの容量を算出する手段と、を備えるメディア管理装置。
【請求項２】
メディアに書込可能な実体ファイルの容量を算出するメディア管理装置であって、
複数の論理フォーマットのそれぞれの、管理情報のために使用する容量の最大値である管理領域サイズの中で最大の共通管理領域サイズを記憶する手段と、
実体ファイルを書き込む対象である対象メディアの空き容量を特定する手段と、
前記共通管理領域サイズ、及び前記特定された空き容量に基づいて、前記対象メディアに書込可能な実体ファイルの容量を算出する手段と、を備えるメディア管理装置。
【請求項３】
メディアに書込可能な実体ファイルの容量を算出する方法であって、
実体ファイルを書き込む対象である対象メディアの空き容量を特定するステップと、
複数の論理フォーマットのそれぞれの、管理情報のために使用する容量の最大値である管理領域サイズの中で最大の共通管理領域サイズ、及び前記特定された空き容量に基づいて、前記対象メディアに書込可能な実体ファイルの容量を算出するステップと、を有する方法。
【請求項４】
メディアに書込可能な実体ファイルの容量を算出するためのコンピュータプログラムであって、
実体ファイルを書き込む対象である対象メディアの空き容量を特定するステップと、
複数の論理フォーマットのそれぞれの、管理情報のために使用する容量の最大値である管理領域サイズの中で最大の共通管理領域サイズ、及び前記特定された空き容量に基づいて、前記対象メディアに書込可能な実体ファイルの容量を算出するステップと、をコンピュータに実行されるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＣＤあるいはＤＶＤなどのメディア（記録媒体）を駆動させるメディアドライブを内蔵または外部接続する電子機器に搭載されたメディア管理装置及びメディア管理方法に関し、特に、メディアにデータを追記するときにそのメディアの空き容量のチェック及び管理を行うメディア管理装置及びメディア管理方法に関する。
【背景技術】
【０００２】
電子機器、例えばプリンタ、複合機（ＭＦＰ：Multi Function Peripherals）またはデジタルスチルカメラが、内蔵または外部接続されているメディアドライブを駆動してＣＤあるいはＤＶＤなどのメディアに画像などのデータを書き込むときは、書き込み直前にそのメディアの空き容量のチェックが行われている。例えば、デジタルスチルカメラによって画像データファイルをメディアに記録する際、そのメディアへアクセスして、新たなデータの書き込み（追記）に使用できる空き容量の計算を行ってから必要なデータの書き込みを実行している（例えば、特許文献１参照）。
【特許文献１】特開２００５−８５０４２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、上記の特許文献１などの従来技術においては、メディアにデータを追記する際に、そのメディアの空き容量をチェックするために複雑な計算を行っている。つまり、メディアには、ファイルやディレクトリなどを管理するための管理情報を格納する管理領域が存在するため、メディアの空き容量と実際に追記できるファイルサイズは一致しない。そのため、追記可能なメディアの空き容量をチェックするためには、管理領域サイズを考慮した複雑な計算を行わなければならない。したがって、メディアに新たなデータを記録するためにはかなりの時間を要することになる。
【０００４】
そこで、本発明の目的は、メディアにデータを格納する際、その時点で格納可能なデータ量を迅速に求めることである。
【課題を解決するための手段】
【０００５】
本発明の一つの側面に従うメディア管理装置は、メディアに書込可能な実体ファイルの容量を算出するメディア管理装置であって、複数の論理フォーマットのそれぞれについて、管理情報のために使用する容量の最大値である管理領域サイズが予め算出されていて、当該予め算出されている複数の論理フォーマット別の前記管理領域サイズを記憶する手段と、実体ファイルを書き込む対象である対象メディアの論理フォーマットを特定する手段と、前記対象メディアの空き容量を特定する手段と、前記特定された論理フォーマットに対応する管理領域サイズを取得し、前記特定された空き容量に基づいて、前記対象メディアに書込可能な実体ファイルの容量を算出する手段と、を備える。
【０００６】
このような構成によれば、それぞれの論理フォーマットに対応するメディアごとに、メディアの空き容量から管理領域サイズを減算した値をそのメディアの追記可能な空き容量と判定することができる。これによって、メディアにアクセスして複雑な計算を行って空き容量を算出することなく、即座に実質的な空き容量を判定することが可能となる。
【０００７】
本発明の別の側面に従うメディア管理装置は、ディアに書込可能な実体ファイルの容量を算出するメディア管理装置であって、複数の論理フォーマットのそれぞれの、管理情報のために使用する容量の最大値である管理領域サイズの中で最大の共通管理領域サイズを記憶する手段と、実体ファイルを書き込む対象である対象メディアの空き容量を特定する手段と、前記共通管理領域サイズ、及び前記特定された空き容量に基づいて、前記対象メディアに書込可能な実体ファイルの容量を算出する手段と、を備える。
【０００８】
このような構成によれば、複数の論理フォーマットのそれぞれに対応する管理領域のうち、最大の管理領域を管理領域サイズとして保有し、この最大管理領域サイズをメディアの空き容量から減算した値をそのメディアの追記可能な空き容量としている。これによって、空き容量の計算を全く行うことなく即座に実質的な空き容量を判定することが可能となる。
【発明を実施するための最良の形態】
【０００９】
以下、図面を参照しながら本発明の一実施形態に係るメディア管理装置の好適な実施形態について説明する。
【００１０】
図１は、本実施形態に係るメディア管理装置とその周辺要素の構成を示すブロック図である。同図に示すように、メディア管理装置１は、書込み判定部３と管理領域サイズ記憶部５を備え、周辺要素としてＣＤあるいはＤＶＤなどのメディア９に対してデータの読み書きを行うリーダ／ライタ７が接続されている。
【００１１】
書込み判定部３は、リーダ／ライタ７に装着されたメディア９に対して、書き込み可能なデータ量を算出する機能を有している。また、管理領域サイズ記憶部５は、複数の論理フォーマットについて、各論理フォーマットで管理領域として使用するデータ量の最大値（最大サイズ）をセクタ数で保持している。
【００１２】
ここで、論理フォーマットとは、メディアにデータを読み書きするための規格であり、例えば、ＩＳＯ９６６０、Ｊｏｌｉｅｔ，    等がある。
【００１３】
ここでは、論理フォーマットの一例として、ＩＳＯ９６６０を用いて説明する。ＩＳＯ９６６０は、ファイルシステム、ボリューム、パステーブル、ディレクトリレコード、及び実体ファイルによって構成されている。
【００１４】
ここで、ファイルシステム、ボリューム、パステーブル、及びディレクトリレコードの４項目が、メディアに格納される実体ファイルを管理するための管理情報の格納領域である。さらに、ファイルシステムは、実体ファイルのデータ量に関わりなく、メディアの１〜１５セクタを利用する。ボリューム、パステーブル、及びディレクトリレコードの３項目は、メディアに格納される実体ファイルに応じて、使用するセクタ数が変動するようになっている。
【００１５】
そこで、本実施形態では、メディア９に書き込み可能なデータ量を算出するときは、管理領域として必要な容量として、ボリューム、パステーブル、及びディレクトリレコードで使用する容量が最も大きくなる場合（以下、ワーストケースという）のセクタ数を利用する。この、ワーストケースのときの管理領域に必要なセクタ数が、管理領域サイズ記憶部５に格納されている。
【００１６】
ワーストケースでは、以下のようになる。例えば、ファイル名またはディレクトリ名で管理領域サイズが変化する場合は、論理フォーマットの規格上または実装システム上で許される最長のファイル名またはディレクトリ名を使用する。また、ファイル数またはディレクトリ数は、論理フォーマットの規格上または実装システム上で許される最大数のファイルまたはディレクトリを使用する。このとき、各管理情報の具体的なサイズは、それぞれの論理フォーマットで定められている。
【００１７】
その他、ファイルまたはディレクトリによってサイズが変動しない管理情報（例えば、ＩＳＯ９６６０／Ｊｏｌｉｅｔの場合、基本ボリューム記述子及び終端記述子が相当する）については、常に管理で使用する領域が最大であると想定する。但し、必須でない管理情報（例えば、ＩＳＯ９６６０／Ｊｏｌｉｅｔの場合、起動レコード記述子が相当する）を含めるか否かは、実装システムに依存するようにしてもよい。
【００１８】
そこで、図２は、ＩＳＯ９６６０のメディアにデータを追記するときの、ワーストケースの管理領域の容量を算出する手順を示すフローチャートである。
【００１９】
まず、メディア管理装置１は、ディレクトリ名長が最長で、かつ、ディレクトリ数も最大であるときに必要なパステーブルのセクタ数Ａを求める（ステップＳ１）。すなわち、パステーブル本体の長さと、最長ディレクトリ名長×最大ディレクトリ数（９９９）との和を求める。
【００２０】
次に、メディア管理装置１は、ファイル／ディレクトリ名長が最長で、かつ、ファイル数も最大であるときに必要なディレクトリレコードのセクタ数Ｂを求める（ステップＳ２）。すなわち、ディレクトリレコード本体の長さと、最長ファイル／ディレクトリ名長×最大ファイル／ディレクトリ数（９９９）との和を求める。
【００２１】
さらに、メディア管理装置１は、ルートディレクトリレコードに必要なセクタ数Ｃを求める（ステップＳ３）。
【００２２】
さらに、メディア管理装置１は、ＰＶＤ（プライマリ・ボリューム・ディスクリプタ）、ＳＶＤ（サプリメンタリ・ボリューム・ディスクリプタ）及びブートレコードに必要なセクタ数を求め、ボリュームに必要なセクタ数Ｄを求める（ステップＳ４）。
【００２３】
最後に、ステップＳ１で求めたパステーブルのセクタ数Ａ、ステップＳ２で求めたディレクトリレコードのセクタ数Ｂ、ステップＳ３で求めたルートディレクトリレコードのセクタ数Ｃ、及びステップＳ４で求めたボリュームのセクタ数Ｄを加算して（つまり、Ａ＋Ｂ＋Ｃ＋Ｄを求めて）、ワーストケースで必要な管理領域のセクタ数を算出する（ステップＳ５）。
【００２４】
他の種類の論理フォーマットについても同様に、論理フォーマットごとにワーストケースの場合に必要な管理領域のセクタ数を算出し、管理領域サイズ記憶部５に登録しておく。
【００２５】
次に、図３に示すフローチャートを用いて、書込み判定部３が行うメディア９への書込み可能なデータ量の算出について説明する。
【００２６】
まず、メディア管理装置１は、書込み対象となるメディア９の論理フォーマットを特定する（ステップＳ１１）。次に、メディア管理装置１は、ステップＳ１１で特定した論理フォーマットに対応した管理領域サイズ（セクタ数）Ｅを、管理領域サイズ記憶部５から取得する（ステップＳ１２）。そして、メディア管理装置１は、リーダ／ライタ７を介してメディア９の空きセクタ数（つまり、未使用のセクタ数）Ｆを取得する（ステップＳ１３）。
【００２７】
そして、ステップＳ１３で取得したメディア９の空きセクタ数ＦからステップＳ１２で取得した管理領域サイズ（セクタ数）Ｅを引き算して（つまり、Ｆ−Ｅを算出して）、メディア９へ、実体ファイルとして書込み可能な容量を算出する（ステップＳ１４）。
【００２８】
例えば、ステップＳ１３で取得したメディア９の残りのセクタ数Ｆが３００セクタであって、ステップＳ１２で取得した管理領域サイズのセクタ数Ｅが５０セクタであれば、ステップＳ１４で算出されるメディア９への書込み可能な容量は、３００−５０＝２５０セクタである。すなわち、２５０セクタ分の実体ファイルを書込可能である。
【００２９】
以上説明したように、ファイル及びディレクトリの管理領域で必要となる領域サイズは、格納する実体ファイルに依存して変動するが、本実施形態に係るメディア管理装置１によれば、管理領域として必要な容量の最大値を予め確保した後、実体ファイルの格納可能容量を算出するので、迅速に求めることができる。これにより、必要最小限の計算を行うだけでメディアに追記可能なデータ量を判断することができる。
【００３０】
上記の実施形態では、複数の論理フォーマットが存在する場合、それぞれの論理フォーマットに応じた領域サイズの最大値を管理領域サイズ記憶部５に保持し、メディアごとに特定された論理フォーマットに対応して最大セクタ数をテーブルから取得してメディアの空き容量の判定を行っている。
【００３１】
これに対して、別の実施形態として、すべての論理フォーマットのワーストケースでの管理領域サイズの中で、最大のものを一つ選択し、これをすべての論理フォーマットに対して、管理領域サイズとして使用する。つまり、複数の論理フォーマットが存在する場合でも、管理領域サイズは一つで、すべての論理フォーマットに共通に利用するようにしてもよい。
【００３２】
以上、本発明の実施形態の幾つかを説明したが、これらの実施形態は本発明の説明のための例示にすぎず、本発明の適用範囲をこれらの実施形態にのみ限定する趣旨ではない。本発明は、その要旨を逸脱することなく、その他の様々な態様でも実施することができる。例えば、上記の各実施形態はプリンタに適用されるメディア管理装置について述べたが、これに限らず、本発明のメディア管理装置はメディアドライブを内蔵または外部接続可能なあらゆる電子機器に利用することができる。
【図面の簡単な説明】
【００３３】
【図１】本発明の一実施形態に係るメディア管理装置とその周辺要素の構成図。
【図２】ワーストケースの管理領域サイズの算出手順を示すフローチャート。
【図３】書込み判定部３が行うメディア９への書込み可能なデータ量の算出手順を示すフローチャート。
【符号の説明】
【００３４】
１…メディア管理装置、３…書込み判定部、５…管理領域サイズ記憶部、７…リーダ／ライタ、９…メディア。
【図１】
2008071399.tif 000003
【図２】
2008071399.tif 000004
【図３】
2008071399.tif 000005