(57)【要約】【課題】記憶装置に対する記録要求と、その記憶装置の仕様との兼ね合いを考慮して効率よく記録処理を行う技術を提供する。【解決手段】記録装置（10）は、記憶装置（80）に対する複数のアクセスパターンについて複数の単位データ量の記録速度を測定し該測定の結果を示すパフォーマンス情報（40A）を生成するパフォーマンス判定部（40）と、記憶装置に記録すべきデータおよびそのデータ量の情報を含む記録要求を受信する要求受信部（20）と、記録要求のデータ量に対応し且つより速い記録速度のアクセスパターンを前記パフォーマンス情報から選択し当該アクセスパターンによる記録処理を記憶装置へ指示する記録制御部（30）とを備える。【選択図】図１
2008210423.tif 000002
【特許請求の範囲】
【請求項１】
記憶装置に対する複数のアクセスパターンについて複数の単位データ量の記録速度を測定し該測定の結果を示すパフォーマンス情報を生成するパフォーマンス判定部と、
前記記憶装置に記録すべきデータおよびそのデータ量の情報を含む記録要求を受信する要求受信部と、
前記記録要求のデータ量に対応し且つより速い記録速度のアクセスパターンを前記パフォーマンス情報から選択し当該アクセスパターンによる記録処理を前記記憶装置へ指示する記録制御部とを備えることを特徴とする記録装置。
【請求項２】
さらに、前記記録要求に含まれる記録速度の情報に対応するアクセスパターンを前記パフォーマンス情報により判別する要求パターン判別部を備え、
前記記録制御部は、前記記録要求の記録速度に対応するアクセスパターンが前記パフォーマンス情報から選択したアクセスパターンと異なる場合、記録速度を変更する旨を前記記録要求の発信元へ通知することを特徴とする請求項１記載の記録装置。
【請求項３】
前記アクセスパターンの種別が前記記憶装置における記憶領域の分割数に関連付けられていることを特徴とする請求項１又は２記載の記録装置。
【請求項４】
前記記録制御部は、前記パフォーマンス情報から選択したアクセスパターンによる記録処理を前記記憶装置へ指示するとき、分割された各記憶領域に対し予め設定された順序にてアクセスすることを指示することを特徴とする請求項３記載の記録装置。
【請求項５】
コンピュータを請求項１乃至４に記載の記録装置として機能させることを特徴とするプログラム。
【請求項６】
記憶装置に対する複数のアクセスパターンについて複数の単位データ量の記録速度を測定し該測定の結果を示すパフォーマンス情報を生成し、
前記記憶装置に記録すべきデータおよびそのデータ量の情報を含む記録要求を受信し、
前記記録要求のデータ量に対応し且つより速い記録速度のアクセスパターンを前記パフォーマンス情報から選択し当該アクセスパターンによる記録処理を前記記憶装置へ指示することを特徴とする記録方法。
【請求項７】
さらに、前記記録要求に含まれる記録速度の情報に対応するアクセスパターンを前記パフォーマンス情報により判別し、
前記記録要求の記録速度に対応するアクセスパターンが前記パフォーマンス情報から選択したアクセスパターンと異なる場合、記録速度を変更する旨を前記記録要求の発信元へ通知することを特徴とする請求項６記載の記録方法。
【請求項８】
前記アクセスパターンの種別が前記記憶装置における記憶領域の分割数に関連付けられていることを特徴とする請求項６又は７記載の記録方法。
【請求項９】
前記パフォーマンス情報から選択したアクセスパターンによる記録処理を前記記憶装置へ指示するとき、分割された各記憶領域に対し予め設定された順序にてアクセスすることを指示することを特徴とする請求項８記載の記録方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ディジタルバーサタイルディスク（DVD）及びハードディスクドライブ（HDD）等の記憶媒体へのファイルの入出力を制御する記録装置に関する。
【背景技術】
【０００２】
DVD及びHDDのような記憶装置に対するデータの記録制御に関する技術として、例えば、後述の特許文献１に記載のものがある。特許文献１に記載の方法は、ディスクを複数の領域に分割して、各領域に異なる記録速度を関連付けておき、データを記録するとき、要求された記録速度に対応する領域にそのデータを記録するというものである。
【特許文献１】特開平１０−１２４９９４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ところで、記憶装置は、アクセスする領域の数が増大するほど、キャッシュメモリが機能し難くなる。また、一般に、記録要求一つあたりのデータ量が大きくなるほど、記憶装置のパフォーマンスが高くなり、記憶媒体上にてアクセスする領域がドライブヘッドのデフォルト位置から離れるほど、領域のシーク時間が増大する。
【０００４】
しかしながら、上記特許文献１に記載の方法のように、要求された記録速度に対応するメモリ領域にデータを記録するよう制御しても、キャッシュメモリ容量、シーク時間、記録データ量といった複合的な要素によっては、かえってパフォーマンスが低下する場合がある。記憶装置におけるパフォーマンスの低下は、バッファのオーバーフローを招き易く、その結果、データの消失が発生するおそれがある。
【０００５】
本発明は、上記課題に鑑みてなされたものであり、記憶装置に対する記録要求と、その記憶装置の仕様との兼ね合いを考慮して効率よく記録処理を行う技術を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明に係る記録装置は、記憶装置に対する複数のアクセスパターンについて複数の単位データ量の記録速度を測定し該測定の結果を示すパフォーマンス情報を生成するパフォーマンス判定部と、前記記憶装置に記録すべきデータおよびそのデータ量の情報を含む記録要求を受信する要求受信部と、前記記録要求のデータ量に対応し且つより速い記録速度のアクセスパターンを前記パフォーマンス情報から選択し当該アクセスパターンによる記録処理を前記記憶装置へ指示する記録制御部とを備える。
【発明の効果】
【０００７】
本発明によれば、記憶装置の仕様に関するパフォーマンス情報を用い、記録要求のデータ量に応じてより速い記録速度のアクセスパターンを選択することから、記憶装置の仕様と記録要求の内容との兼ね合いを考慮しつつ、効率よく記録処理を行うことができる。これにより、バッファのオーバーフロー及びデータの消失等を防ぐことができる。
【発明を実施するための最良の形態】
【０００８】
図１に、本発明の実施形態の構成を示す。記録装置10は、外部記録装置70から入力されるデータの記録要求に応じて、そのデータをDVD及びHDDのような記憶装置80へ記録する装置である。記録装置10は、その機能構成として、記録要求受信部20、記録制御部30、パフォーマンス判定部40、要求パターン判別部50、及び、インタフェース部60を備える。
【０００９】
記録要求受信部20は、外部記録装置70から記録要求および記録データを受信し、それらを記録制御部30へ渡す機能を果たす。外部記録装置70から送信される記録要求には、記録すべきデータの量や記録速度に関する情報が含まれる。また、記録要求受信部20は、記録要求に対する外部記録装置70への応答として、実行した記録処理に関する情報を送信する。この情報は、例えば、記録処理が外部記録装置70からの要求どおりに行われたか否かを示す情報である。
【００１０】
記録制御部30は、FAT（ファイル・アロケーション・テーブル）処理部31を備え、外部記録装置70からの記録要求に応じて記憶装置80に対するアクセスのパターンを決定する。記録制御部30は、要求パターン判別部50及びパフォーマンス判定部40と連携し、記憶装置80のエリアに関し予め用意されている複数のアクセスパターンから、記録要求に最適なアクセスパターンを判断する。アクセスパターンの種別については、後に説明する。また、記録制御部30は、データを記録すべき記憶装置80のクラスタエリアを決定し、そのエリアへの記録を指示するためのコマンドを記憶装置80に発行する。
【００１１】
パフォーマンス判定部40は、記録コマンド送信部41、記録コマンド処理時間検出部42、及び、エリア複合速度記録部43で構成される。記録コマンド送信部41は、アクセスパターンの種別ごとに、ダミーのデータ及び記録コマンドを発行する。記録コマンド処理時間検出部42及びエリア複合速度記録部43は、ダミーのデータ及び記録コマンドを用いて、アクセスパターンごとに記録レートを測定し、測定の結果をパフォーマンス情報40Aとして保存する。
【００１２】
要求パターン判別部50は、外部記録装置70から要求された記録レートに対応するアクセスパターンをパフォーマンス情報40Aに基づき判別し、それを記録制御部30に通知する。
【００１３】
インタフェース部60は、記録制御部30からの指示に従い、記憶装置80に対し記録コマンド及び記録データを送信する。
【００１４】
図２に、記憶装置80に関するFAT処理部31の管理形態を模式的に示す。記憶装置80において、１つのクラスタには８つのセクタが割り当てられている。また、クラスタ及びセクタには、それぞれを識別するための番号が昇順に与えられている。すなわち、図２に示すように、「セクタ0」から昇順に「セクタ7」までの８つのセクタが「クラスタ0」に対応し、これに続く「セクタ8」〜「セクタ15」が、次の「クラスタ1」に対応する。
【００１５】
図３に、FAT処理部31が管理するクラスタチェインの例を示す。クラスタチェインとは、記憶装置80におけるクラスタ間のリンク関係を表すものであり、一連のクラスタチェインが１つのデータファイルに対応する。図示の最終クラスタの「000」は、そのクラスタが未使用であることを示す値である。また、「-1」の「クラスタ3」は、クラスタチェインの終端、すなわちファイルの終端に相当するクラスタである。図３は、「クラスタ0」が「クラスタ1」にリンクし、その「クラスタ1」が終端の「クラスタ3」にリンクするというクラスタチェインを示したものである。
【００１６】
本実施形態は、記憶装置80へのアクセスパターンとして、記憶装置80の全体を２つのエリアに分割してアクセスする２エリアパターン、及び、記憶装置80の全体を４つのエリアに分割してアクセスする４エリアパターンの２種類を用いる。図４に、２エリアパターンの概念を模式的に示し、また、図５に４エリアパターンのものを示す。
【００１７】
図４より、２エリアパターンの場合、記憶装置80は、先頭のクラスタ番号から昇順に数えて総クラスタ数の２分の１未満に相当するクラスタまでから成るクラスタ群と、残りの後半の番号のクラスタから成るクラスタ群とに区分けされる。図示の例では、前半のクラスタ群が「エリア101」であり、後半が「エリア123」である。これら２つのエリアは交互にアクセスされる。
【００１８】
図５より、４エリアパターンの場合、記憶装置80は、先頭のクラスタ番号から昇順に数えて総クラスタ数の４分の１ごとに区分けされた４つのエリアが設けられる。図示の例では、先頭から順に、「エリア0」、「エリア1」、「エリア2」、及び、「エリア3」が設定されている。これら４つのエリアは、予め設定された順序でアクセスされる。図示の例では、両方向のアクセス、すなわち、「エリア0」から「エリア3」に向けてアクセスされた後、その逆方向の「エリア3」から「エリア0」に向けてアクセスされるという順序が設定されている。
【００１９】
パフォーマンス判定部40は、上記の各アクセスパターンについて、単位データ量ごとの記憶装置80の記録レートをダミーのデータを用いて測定する。例えば、２エリアパターンの測定の場合、記録コマンド送信部41が、「エリア101」及び「エリア123」（図４）に対し、１メガバイトから８メガバイトまでのダミーの記録データおよび記録コマンドを順次発行する。具体的には、「エリア101」及び「エリア123」のそれぞれに１メガバイトのデータを記録するよう要求するコマンドを発行した後、次に、それぞれのエリアに２メガバイトのデータの記録を要求するコマンドを発行する。
【００２０】
記録コマンド処理時間検出部42は、記録コマンド送信部41からの要求に従い、各パターンについて、１メガバイトのような単位データ量ごとに、ダミーデータの記録に要した時間を測定する。例えば、単位データ量の１メガバイトについて測定する場合、２エリアパターンの「エリア101」及び「エリア123」（図４）のそれぞれに対する１メガバイトの記録時間を測定し、また、４エリアパターンの「エリア0」から「エリア3」（図５）のそれぞれに対する１メガバイトの記録時間を測定する。
【００２１】
エリア複合速度記録部43は、記録コマンド処理時間検出部42による測定結果を用いて、各パターンに関する単位データ量ごとの記録レートを求め、それらを用いてパフォーマンス情報40Aを生成する。パフォーマンス情報40Aの記録レートは、１メガバイトのような単位データ量ごとに、記録した総データ量を、記録に要した総時間で除算することにより得られる。例えば、１メガバイトを２エリアパターンにより記録するというケースの記録レートは、「エリア101」及び「エリア123」に記録したデータ量の合計値（２メガバイト）を、これら２つのエリアに対する処理時間の合計値により除算することで求めることができる。
【００２２】
図６に、パフォーマンス情報40Aの一例を示す。パフォーマンス情報40Aには、４エリアパターン及び２エリアパターンについて上記の要領にて求めた記録レートがテーブル形式にて記述される。図６に示すように、２エリアパターンの場合、記録要求に対するパフォーマンスは、記録データ量によらず「330Mbps」で一定である。一方、４エリアパターンの場合は、記録データ量が増加するに従い記録レートが高くなる。両パターンを対比させると、記録データ量が２メガバイト以下の場合は、４エリアパターンより２エリアパターンのほうがパフォーマンスが高い。一方、４メガバイト以上の場合は、逆に、２エリアパターンより４エリアパターンのほうがパフォーマンスが高い。従って、図示のパフォーマンス情報40Aからは、記録データ量が「2Mbyte」及び「4Mbyte」間にパフォーマンス分岐点が存在すると言える。
【００２３】
図７に示すフローチャートを参照して、記録装置10の動作について説明する。パフォーマンス判定部40は、予め上記の要領にてパフォーマンス情報40Aを生成し、それを保存しておく（ステップS101）。ここでは、パフォーマンス情報40Aとして、図６に示すものが最新のものとして保存されたとする。なお、パフォーマンス情報40Aの生成は、例えば、記録装置10に新たな記憶装置（80）が接続されたことを検知したときを契機として、実行すればよい。
【００２４】
記録要求受信部20は、外部記録装置70からデータの記録要求を受信したとき（ステップS102）、要求されたデータ量及び記録レートを認識して記録制御部30へ通知する。
【００２５】
記録制御部30は、記憶装置80において前回アクセスしたエリア番号に関し、「aArea=-1」の設定を行うことで初期化する（ステップS103）。また、要求パターン判別部50に対しアクセスパターンの判別を指示する。
【００２６】
要求パターン判別部50は、パフォーマンス情報40Aを参照し、要求された記録レートに対応するアクセスパターンを判別する（ステップS104）。例えば、要求された記録レートが「400Mbps」の場合、図６より、それに対応するアクセスパターンは４エリアパターンであると判定する。また、要求された記録レートが「330Mbps」の場合は、２エリアパターンであると判定する。要求パターン判別部50は、判定の結果を記録制御部30へ通知する。
【００２７】
記録制御部30は、要求された記録処理のデータ量が、パフォーマンス情報40Aのパフォーマンス分岐点以下か否かを判定する（ステップS105）。ここで、図６より、記録データ量が、例えば「2MByte」のように分岐点以下である場合、アクセスパターンとしては、４エリアパターンより２エリアパターンのほうが高いパフォーマンスを実現できる。また、記録データ量が、例えば「8MByte」のように分岐点以上である場合は、２エリアパターンより４エリアパターンのほうが高いパフォーマンスを実現できる。
【００２８】
記録制御部30は、要求された記録処理のデータ量がパフォーマンス分岐点以下であると判定した場合（ステップS105：Yes）、アクセスパターンとしては２エリアパターンを適用すべきであると認識する。また、記録制御部30は、要求された記録レートについて要求パターン判別部50により判定されたアクセスパターン（ステップS104）が、２エリアパターンか否かを判定する（ステップS106）。その結果、要求された記録レートが２エリアパターンに対応する場合（ステップS106：Yes）、記録制御部30は、２エリアパターンの場合の未使用のクラスタを記憶装置80から検出する（ステップS108）。
【００２９】
記録制御部30は、検出したクラスタが属するエリア番号を前回のアクセスエリア番号（aArea）として認識する（ステップS112）。そして、２エリアパターンによりデータを記録するためのコマンドをインタフェース部60により記憶装置80へ送信し（ステップS113）、この記録要求に関する処理を終了させる。このとき、必要に応じて、要求どおりに記録処理が行われたことを外部記録装置70へ通知する。
【００３０】
一方、要求された記録レートが２エリアパターンではなく、４エリアパターンに対応する場合は（ステップS106：No）、要求された記録レートに対応するアクセスパターンと、パフォーマンスの向上を考慮したアクセスパターンとが異なる。この場合、記録制御部30は、パフォーマンスの向上を優先するために、要求された記録レートを変更する旨、すなわち記録レートが高くなる旨を外部記録装置70へ通知するよう記録要求受信部20に指示する（ステップS107）。以降の処理は、２エリアパターンへの記録処理に関する前述の手順（ステップS108,S112,113）と同様であり、説明を省略する。
【００３１】
パフォーマンスを考慮したアクセスパターンが要求のものと異なるケースとは、例えば、記録データ量が「1MByte」であり、且つ、要求された記録レートが４エリアパターンに対応する「200Mbps」であるというケースである。図６より、記録データ量が「1MByte」の場合、要求された「200Mbps」に対応する４エリアパターンよりも、２エリアパターンの「330Mbps」ほうがパフォーマンスが高い。よって、この場合、２エリアパターンを適用すると共に、要求よりも高いビットレートで記録処理を行う旨を外部記録装置70へ通知することになる。
【００３２】
また、要求された記録処理のデータ量がパフォーマンス分岐点以上であると判定した場合（ステップS105：Yes）、記録制御部30は、アクセスパターンとしては４エリアパターンを適用すべきであると認識する。そして、前述した２エリアパターンを適用する場合の手順に準じた手順により、４エリアパターンにより記憶装置80へデータを記録する（ステップS109,S110,S111,S112,S113）。
【００３３】
本実施形態によれば、記憶装置80の仕様に関するパフォーマンス情報40Aを用い、記録要求のデータ量に応じてより速い記録速度のアクセスパターンを選択することから、記憶装置80の仕様と記録要求の内容との兼ね合いを考慮しつつ、効率よく記録処理を行うことができる。これにより、バッファのオーバーフロー及びデータの消失等を防ぐことができる。また、記憶装置80全体を平均的にアクセスするよう制御することから、局部的な破損セクタの発生を防止することが出来る。
【００３４】
上記実施形態では、実際に適用する記録レートが記録要求と異なる場合に、記録レートを変更する旨を外部記録装置70へ通知したが（ステップS107、S110）は、この処理は省略することができる。
【００３５】
本発明を実施するにあたっては、実際に適用する記録レートが記録要求に沿ったものか否かを判断することなくアクセスパターンを決定してもよい。すなわち、記録装置10が、パフォーマンス情報40Aに基づく独自の判断でアクセスパターンを決定してもよい。この場合、記録装置10の構成（図１）から要求パターン判別部50を省略することができる。かかる実施形態について、図８に示すフローチャートを参照して説明する。
【００３６】
図８のフローチャートにおいて、パフォーマンス情報40Aを生成後に、記録要求の受信及びアクセスエリア番号の初期化を行うこと（ステップS201,S202,S203）については、前述の実施形態の手順（図７：S101,S102,S103）と同様である。
【００３７】
記録制御部30は、パフォーマンス情報40Aを参照し、要求された記録データ量がパフォーマンス情報40Aの分岐点以下か否かを判定する（ステップS204）。判定の結果、要求された記録データ量が分岐点以下の場合、記録制御部30は、２エリアパターンを適用すべきと判断し、記憶装置80から２エリアパターンの場合の未使用クラスタを検出する（ステップS205）。また、要求の記録データ量が分岐点以上である場合は、４エリアパターンを適用すべきと判断し、記憶装置80から４エリアパターンの場合の未使用クラスタを検出する（ステップS206）。
【００３８】
そして、検出したクラスタのエリア番号を前回のアクセスエリア番号として認識し（ステップS207）、該当のアクセスパターンに対応する記録コマンドを記憶装置80へ送信する（ステップS208）。
【００３９】
このように、図８のフローチャートによる実施形態によっても、記憶装置80の仕様および記録要求の内容を考慮した効率的な記録処理を実現することができる。
【００４０】
上記各実施形態では、アクセスパターンの種別が２エリアパターン及び４エリアパターンの２種類であったが、本発明を実施するにあたり、アクセスパターンの種別及びその数は、上記実施形態のものに限定されない。
【図面の簡単な説明】
【００４１】
【図１】本発明の実施形態の記録装置の構成を示すブロック図である。
【図２】実施形態の記憶媒体におけるクラスタ構造に関する説明図である。
【図３】実施形態におけるクラスタチェインに関する説明図である。
【図４】実施形態における２エリアパターンに関する説明図である。
【図５】実施形態における４エリアパターンに関する説明図である。
【図６】実施形態におけるパフォーマンス情報に関する説明図である。
【図７】実施形態の動作を説明するためのフローチャートである。
【図８】本発明の他の実施形態の動作を説明するためのフローチャートである。
【符号の説明】
【００４２】
10  記録装置
20  記録要求受信部
30  記録制御部
31  FAT処理部
40  パフォーマンス判定部
40A  パフォーマンス情報
41  記録コマンド送信部
42  記録コマンド処理時間検出部
43  エリア複合速度記録部
50  エリアアクセスパターン判定部
60  インタフェース部
70  外部記録装置
80  記憶媒体
【図１】
2008210423.tif 000003
【図２】
2008210423.tif 000004
【図３】
2008210423.tif 000005
【図４】
2008210423.tif 000006
【図５】
2008210423.tif 000007
【図６】
2008210423.tif 000008
【図７】
2008210423.tif 000009
【図８】
2008210423.tif 000010