(57)【要約】【課題】データ再生の高速化を図る。【解決手段】一のファイルに含まれる複数のデータが記録されたセクタを、データの連続性に従った順序で関連付けてリンク情報を作成するリンク情報作成部２２と、磁気ディスク１１上の所定領域に記録されているデータの再生要求を外部から受領した際に、リンク情報に基づいて、所定領域に関連付けられている領域に記録されているデータを先読みする先読み処理部２３と、を備えるので、データの記録時に作成しておいたリンク情報に基づいて、次に再生要求が出されると予想されるデータを先読みしておくことで、データ再生の高速化を図ることができる。【選択図】図４
2010186524.tif 000002
【特許請求の範囲】
【請求項１】
一のファイルに含まれる複数のデータを複数の領域に分けて記録する記録媒体と、
前記一のファイルに含まれる複数のデータが記録された領域を、前記データの連続性に従った順序で関連付けてリンク情報を作成するリンク情報作成部と、
前記記録媒体上の所定領域に記録されているデータの再生要求を外部から受領した際に、前記リンク情報に基づいて、前記所定領域に関連付けられている領域に記録されているデータを先読みする先読み処理部と、を備える情報記憶装置。
【請求項２】
前記複数の領域は、前記記録媒体上においてランダムに配置されていることを特徴とする請求項１に記載の情報記憶装置。
【請求項３】
前記リンク情報作成部は、一のファイルの開始データ及び終了データのうちの少なくとも開始データを検出したときから、前記一のファイルのリンク情報の作成を開始することを特徴とする請求項１又は２に記載の情報記憶装置。
【請求項４】
前記開始データはヘッダを含み、前記終了データはフッタを含むことを特徴とする請求項３に記載の情報記憶装置。
【請求項５】
一のファイルに含まれる複数のデータが複数の領域に分けて記録される記録工程と、
前記複数のデータの連続性に従った順序で、前記複数の領域を関連付けてリンク情報を作成するリンク情報作成工程と、
前記記録媒体上の所定領域に記録されているデータの再生要求を外部から受領した際に、前記リンク情報に基づいて、前記所定領域に関連付けられている領域に記録されているデータをバッファメモリに読み出す先読み処理工程と、
前記バッファメモリ内に読み出されているデータの再生要求があった場合に、当該データを前記バッファメモリから出力するデータ出力工程と、を含むデータの記録再生方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報記憶装置及びデータの記録再生方法に係り、更に詳しくは、ハードディスクドライブ（Hard Disk Drive：ＨＤＤ）などの情報記憶装置、及び当該情報記憶装置に用いて好適なデータの記録再生方法に関する。
【背景技術】
【０００２】
近年の情報化社会の発展により、ＨＤＤなどの情報記憶装置が記録・再生するデータ量は膨大なものとなっており、これに伴って、データ再生にはより一層の高速化が求められている。データ再生の高速化に関しては、いわゆる情報記憶装置側におけるキャッシュメモリ技術が知られている。また、キャッシュメモリを用いる技術として、一連のデータをハードディスクなどの記録媒体上の連続するセクタ（領域）に書き込むとともに、当該一連のデータに共通する識別情報を各セクタに書き込んでおく技術も提案されている（例えば、特許文献１参照）。この技術では、再生要求されたデータの識別情報と同一の識別情報を持つ一連のデータをバッファ（キャッシュ）に先読みすることが可能である。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平６−２８９９９９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来のキャッシュメモリ技術は、データが物理的に隣接するセクタに書き込まれることを前提としているか、あるいはそれを期待するものである場合が多い。
【０００５】
一方、上記特許文献１の技術を用いれば、一連のデータが磁気ディスク上の複数位置にランダムに記録されている場合にも対応可能であるが、識別情報が各データとともに記録されるため、１セクタに格納可能なデータ量が識別情報の分だけ減少する。この場合に、データ量の減少分を無くそうとすると、識別情報のデータ量分だけ上乗せした特殊なセクタ長を採用するなどする必要があるため、装置の汎用性に欠けるおそれがある。
【０００６】
本発明は、かかる事情の下になされたものであり、データアクセス方式を問わず、又は汎用性を失うことなくデータ再生を高速化することが可能な情報記憶装置及びデータの記録再生方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本明細書記載の情報記憶装置は、一のファイルに含まれる複数のデータを複数の領域に分けて記録する記録媒体と、前記一のファイルに含まれる複数のデータが記録された領域を、前記データの連続性に従った順序で関連付けてリンク情報を作成するリンク情報作成部と、前記記録媒体上の所定領域に記録されているデータの再生要求を外部から受領した際に、前記リンク情報に基づいて、前記所定領域に関連付けられている領域に記録されているデータを先読みする、先読み処理部と、を備える情報記憶装置である。
【０００８】
これによれば、一のファイルに含まれる複数のデータを記録媒体の複数の領域に分けて記録する際に、一のファイルのデータの連続性に従った順序で複数の領域を関連付けることでリンク情報を作成しておき、データの再生要求を外部から受領した際には、リンク情報に基づいて、当該データに関連するデータを先読みするので、次にホストから再生要求が出されると予想されるデータを先読みしておくことができ、これにより、データ再生を高速に行うことができる。この場合、記録媒体にデータを記録する際に作成したリンク情報に基づいて先読みを実行するので、データアクセス方式を問わず、又は汎用性を失うことなくデータ再生の高速化を実現することが可能となる。
【０００９】
本明細書記載のデータの記録再生方法は、一のファイルに含まれる複数のデータが複数の領域に分けて記録される記録工程と、前記複数のデータの連続性に従った順序で、前記複数の領域を関連付けてリンク情報を作成するリンク情報作成工程と、前記記録媒体上の所定領域に記録されているデータの再生要求を外部から受領した際に、前記リンク情報に基づいて、前記所定領域に関連付けられている領域に記録されているデータをバッファメモリに読み出す先読み処理工程と、前記バッファメモリ内に読み出されているデータの再生要求があった場合に、当該データを前記バッファメモリから出力するデータ出力工程と、を含むデータの記録再生方法である。
【００１０】
これによれば、一のファイルに含まれる複数のデータを記録媒体の複数の領域に分けて記録する際に、一のファイルのデータの連続性に従った順序で複数の領域を関連付けることでリンク情報を作成しておき、データの再生要求を外部から受領した際には、リンク情報に基づいて、当該データに関連するデータを先読みするので、次にホストから再生要求が出されると予想されるデータを先読みしておくことができ、これにより、データ再生を高速に行うことができる。この場合、記録媒体にデータを記録する際に作成したリンク情報に基づいて先読みを実行するので、データアクセス方式を問わず、又は汎用性を失うことなくデータ再生の高速化を実現することが可能となる。
【発明の効果】
【００１１】
本明細書記載の記録再生装置及びデータの記録再生方法は、データアクセス方式を問わず、又は汎用性を失わずにデータ再生を高速化できるという効果を奏する。
【図面の簡単な説明】
【００１２】
【図１】一実施形態に係るＨＤＤの概略構成を示すブロック図である。
【図２】リンク情報テーブルのデータ構造を示す図である。
【図３】ファイル情報テーブルのデータ構造を示す図である。
【図４】コントローラの内部構成を示すブロック図である。
【図５】ファイルの一連のデータを示す図である。
【図６】リンク情報作成に関するフローチャートである。
【図７】図７（ａ）は、読み出し処理を示すフローチャートであり、図７（ｂ）は、先読み処理を示すフローチャートである。
【図８】バッファメモリに格納される先読みデータのインデックス情報に係るデータ構造を示す。
【発明を実施するための形態】
【００１３】
以下、本発明に係る情報記憶装置及びデータの記録再生方法の一実施形態について、図１〜図８に基づいて説明する。
【００１４】
図１は、本実施形態に係る情報記憶装置としてのハードディスクドライブ（ＨＤＤ）１００の概略構成を示す図である。このＨＤＤ１００は、パーソナルコンピュータ（ＰＣ）などによって構成されるホスト９００に内蔵される筐体内蔵型の情報記憶装置、あるいはホスト９００とコネクタ等で接続された外部接続型の情報記憶装置である。ＨＤＤ１００は、ホスト９００から受領したコマンド（Ｗｒｉｔｅコマンド又はＲｅａｄコマンド）に応じて、データの記録再生を実行する。
【００１５】
ＨＤＤ１００は、図１に示すように、記録媒体としての磁気ディスク１１と、磁気ディスク１１や当該磁気ディスク１１に対する情報の記録再生を実行する記録再生ヘッド等の動作を制御する制御装置２００と、を備える。なお、ＨＤＤ１００では、いわゆるランダムアクセス方式での記録再生が行われる。
【００１６】
制御装置２００は、ＣＰＵなどによって構成されるコントローラ２０と、コントローラ２０が制御に用いる情報を格納する制御用メモリ３０と、磁気ディスク１１に対するデータの書き込み（記録）及び読み出し（再生）の際にデータを一時格納するバッファメモリ４０と、を有する。
【００１７】
制御用メモリ３０には、データの記録や再生の際にコントローラ２０により用いられる、リンク情報テーブル（Ｌｔｂｌ）（図２参照）やファイル情報テーブル（Ｆｔｂｌ）（図３参照）などが格納されている。
【００１８】
リンク情報テーブルＬｔｂｌには、図２に示すように、複数（図２では通し番号１〜ｎが割り当てられたｎ個）のリンク情報（Ｌｉ）が含まれている。このリンク情報（Ｌｉ）は、ファイルの開始データ（例えば、図５に示すＦｄ１）が記録されているセクタのアドレス（先頭アドレス）、ファイルのデータ形式（バイナリデータ／テキストデータ等）、ファイルを構成するファイルデータの記録セクタを連続的に示すリンクアドレス、を含んでいる。例えば、図２の２番目のリンク情報であれば、ファイルを構成する複数のファイルデータ（例えば、図５のＦｄ１〜Ｆｄ４）が、磁気ディスク１１上のアドレス「ｈｈｈｈ」，「ｉｉｉｉ」，「ｊｊｊｊ」，「ｋｋｋｋ」に順に記録されていることを意味している。このリンク情報テーブルＬｔｂｌには、ＨＤＤ１００にファイル（ファイルデータ）が記録される度に、新たなリンク情報（Ｌｉ）が追加される。
【００１９】
ファイル情報テーブルＦｔｂｌには、図３に示すように、複数のファイル情報（Ｆｉ）が含まれている。これら複数のファイル情報（Ｆｉ）は、種々のアプリケーションで作成されたファイル形式毎に作成されている。ファイル情報Ｆｉは、図３に示すように、例えば、ファイル形式を示すＩＤ、ファイルの開始データを示すヘッダのｂｙｔｅパターン（ヘッダのファイル開始位置からの位置と、ｂｙｔｅ数を含む）、ファイルの終了データを示すフッタのＢｙｔｅパターン（フッタのファイル終了位置からの位置及びｂｙｔｅ数）とを含んでいる。このファイル情報テーブルＦｔｂｌは、ＨＤＤ１００の出荷前に作成され、制御用メモリ３０に格納される。ただし、これに限らず、ファイル情報テーブルＦｔｂｌは、ＨＤＤ１００の出荷後も、管理ツールなどを用いて内容の更新ができるように構成しても良い。
【００２０】
なお、本実施形態の制御用メモリ３０としては、磁気ディスク１１と比較して高速にデータの記録再生が可能な揮発性メモリが採用されている。このため、本実施形態では、ＨＤＤ１００の電源をオフする前に、制御用メモリ３０に格納されたデータ（リンク情報テーブルＬｔｂｌ及びファイル情報テーブルＦｔｂｌ）を、磁気ディスク１１上の所定の記録領域に一時保存しておく必要がある。一方、ＨＤＤ１００の電源をオンした時（起動時）には、磁気ディスク１１の記録領域に一時保存されていたリンク情報テーブルＬｔｂｌ及びファイル情報テーブルＦｔｂｌなどのデータが制御用メモリ３０に転送される。
【００２１】
図４には、コントローラ２０の機能ブロック図が示されている。この図４に示すように、コントローラ２０は、磁気ディスク１１とホスト９００との間でデータの受け渡しを行う入出力部２１と、リンク情報テーブルＬｔｂｌを作成（更新）するリンク情報作成部２２と、リンク情報テーブルＬｔｂｌのリンク情報Ｌｉに基づいて磁気ディスク１１からデータを読み出す先読み処理部２３と、を有する。
【００２２】
入出力部２１は、ホスト９００からＷｒｉｔｅコマンドを受領した場合には、当該Ｗｒｉｔｅコマンドとともにホスト９００から送信されてきたデータをバッファメモリ４０を介して磁気ディスク１１に記録する（書き込み処理）。また、入出力部２１は、ホスト９００からＲｅａｄコマンドを受領した場合に、当該Ｒｅａｄコマンドにおいて指定されたセクタに記録されているデータを、ホスト９００に転送する（読み出し処理）。なお、これら書き込み処理、読み出し処理及びこれら処理に付随する処理の詳細については後述する。
【００２３】
リンク情報作成部２２は、図４に示すように、ファイル開始・終了検出部２２１と、リンク情報登録部２２２と、を有する。ファイル開始・終了検出部２２１は、記録対象のファイルのヘッダやフッタ等を検出することにより、ファイルの先頭データやファイルの終了データを特定するものである。リンク情報登録部２２２は、ファイル開始・終了検出部２２１の検出結果（特定結果）を利用して、リンク情報テーブルＬｔｂｌにリンク情報Ｌｉを登録するものである。
【００２４】
先読み処理部２３は、リンク情報テーブルＬｔｂｌのリンク情報に基づいて、ホスト９００から出力されると予想されるＲｅａｄコマンド（再生データ）を特定し、当該再生データを先読みしてバッファメモリ４０に格納するものである。
【００２５】
ここで、ＨＤＤ１００に記録されるファイルデータについて、図５に基づいて簡単に説明する。本実施形態のＨＤＤ１００では、データがセクタ単位で扱われる。このため、１つのファイルは、図５に示すように、ホスト９００においてセクタ長ＳＬごとに、複数の一連のファイルデータに分割され、ＷｒｉｔｅコマンドとともにＨＤＤ１００に転送される。すなわち、１つのファイルをＨＤＤ１００に記録する際には、ホスト９００は、図５に示すファイルの開始データであるファイルデータＦｄ１から順に、ファイルデータＦｄ２、ファイルデータＦｄ３、及びファイルの終了データであるファイルデータＦｄ４を、それぞれパケットとしてＨＤＤ１００に転送する。なお、ここでは、便宜上、１セクタがデータ転送の単位（１パケット）を構成するものとして説明しているが、これに限らず、複数セクタを、ホスト９００とＨＤＤ１００との間のデータ転送の単位（パケット）としても良い。
【００２６】
次に、上述したＨＤＤ１００を用いた、ファイル（ファイルデータ）の書き込み処理、読み出し処理及びこれら処理に付随する処理について説明する。
【００２７】
まず、ファイル（ファイルデータ）の書き込み処理、及び当該書き込み時に実行されるリンク情報作成処理について、図６のフローチャートに沿って説明する。この図６の処理は、コントローラ２０によって実行される。
【００２８】
まず、入出力部２１が、ホスト９００からＷｒｉｔｅコマンドを受領すると、図６のステップＳ１０の判断が肯定されて、ステップＳ１１に移行する。次いで、ステップＳ１１では、入出力部２１が、Ｗｒｉｔｅコマンドで指定されたファイルデータをバッファメモリ４０に書き込む。次いで、ステップＳ１２では、リンク情報作成部２２のファイル開始・終了検出部２２１が、Ｗｒｉｔｅコマンドで指定されたファイルデータにおけるヘッダの検出を実行する。このヘッダの検出は、バッファメモリ４０に書き込まれたファイルデータと、図３のファイル情報テーブルＦｔｂｌのヘッダパターンとを照合することにより実行する。次のステップＳ１３では、ファイル開始・終了検出部２２１が、ステップＳ１２においてヘッダパターンが検出された否かを判断する。ここでの判断が肯定された場合には、ステップＳ１４に移行するが、否定された場合には、ステップＳ１１に戻り、Ｗｒｉｔｅコマンドの待ち受け状態に移行する。
【００２９】
ステップＳ１４では、リンク情報登録部２２２が、Ｗｒｉｔｅコマンドに係るファイルデータ（ヘッダが存在していたファイルデータ）を開始データとするリンク情報（Ｌｉ）を、リンク情報テーブルＬｔｂｌに新規登録する。具体的には、開始データが記録される磁気ディスク１１上のアドレス（先頭アドレス）と、ファイルデータのデータ形式とを、図２に示すリンク情報テーブルＬｔｂｌに登録する。このとき、当該リンク情報Ｌｉのリンクアドレスは未だ空の状態（未設定の状態）であるものとする。なお、開始データと同一のデータを開始データとするリンク情報Ｌｉがリンク情報テーブルＬｔｂｌに既に登録されている場合には、そのリンク情報Ｌｉが更新されることになる。
【００３０】
次いで、ステップＳ１５では、入出力部２１が、次のＷｒｉｔｅコマンドを受領するまで待機する。そして、入出力部２１がＷｒｉｔｅコマンドを受領すると、ステップＳ１６に移行し、ファイル開始・終了検出部２２１が、ヘッダ、フッタの有無、及びデータ形式変更の有無についてチェックする。なお、フッタの有無の検出は、前述したヘッダの有無の検出と同様、ファイル情報テーブルＦｔｂｌに基づいて行う。また、データ形式の変更の有無は、ファイルデータのｂｙｔｅパターンからデータ形式を識別し、このデータ形式と、ステップＳ１４で登録されたリンク情報Ｌｉのデータ形式とを比較して判断する。データ形式が一致する場合にはデータ形式の変更が無く、ファイルデータが連続していることを意味し、データ形式が相違する場合にはデータ形式の変更が有り、ファイルデータに連続性が無いことを意味する。
【００３１】
次のステップＳ１７では、ファイル開始・終了検出部２２１が、ステップＳ１６のチェックにおいてフッタを検出したか否かを判断する。ここでの判断が肯定された場合には、ステップＳ１８において、リンク情報登録部２２２が、フッタを含むファイルデータ（終了データ）が記録されるセクタのアドレスを、作成中のリンク情報Ｌｉのリンクアドレスに登録する。そして、リンク情報登録部２２２は、作成中のリンク情報の登録終了処理を実行する。この登録終了処理は、リンクアドレスの末尾に終端コード［ｅｎｄ］を付加する処理である。このステップＳ１８が終了すると、ステップＳ１１に戻り、Ｗｒｉｔｅコマンドの待ち受け状態に移行する。
【００３２】
一方、ステップＳ１７の判断が否定された場合には、ステップＳ１９に移行する。このステップＳ１９では、ファイル開始・終了検出部２２１が、ステップＳ１６のチェックにおいてヘッダを検出したか否かを判断する。ここでの判断が肯定された場合には、ステップＳ２０において、リンク情報登録部２２２が、現在作成中だったリンク情報Ｌｉの作成を終了する処理を実行し（終端コード［ｅｎｄ］を付加し）、ステップＳ１４に戻る。そして、次のステップＳ１４では、ステップＳ１５で受領していたＷｒｉｔｅコマンドに基づいて、新たなリンク情報Ｌｉを新規登録し、当該新たなリンク情報Ｌｉの作成を開始する。これに対し、ステップＳ１９の判断が否定された場合には、ステップＳ２１に移行する。
【００３３】
ステップＳ２１では、ファイル開始・終了検出部２２１が、ステップＳ１６のチェックにおいてデータ形式の変更があったか否かを判断する。ここでの判断が肯定された場合には、ステップＳ１９の判断が肯定された場合と同様、ステップＳ２０において、リンク情報登録部２２２が、作成中だったリンク情報Ｌｉの作成を終了する処理を実行し（終端コード［ｅｎｄ］を付加し）、ステップＳ１４に戻る。そして、次のステップＳ１４では、ステップＳ１５において受領していたＷｒｉｔｅコマンドに基づいて、新たなリンク情報Ｌｉを新規登録し、当該新たなリンク情報Ｌｉの作成を開始する。一方、ステップＳ２１の判断が否定された場合には、ステップＳ２２に移行する。
【００３４】
ステップＳ２２では、リンク情報登録部２２２が、作成中のリンク情報Ｌｉにおいて、ステップＳ１５で受領したＷｒｉｔｅコマンドについてのリンクアドレスの登録を行う。そして、登録完了後は、ステップＳ１５に移行する。その後は、ステップＳ１５以降の処理を、上記と同様の処理を実行し、リンク情報テーブルへのリンク情報Ｌｉの登録を継続して実行する。
【００３５】
次に、上述のようにして作成されたリンク情報テーブルを用いた、ファイル（ファイルデータ）の再生方法について、図７のフローチャートに沿って説明する。図７（ａ）は、図４の入出力部２１が実行する読み出し処理であり、図７（ｂ）は、図４の先読み処理部２３が実行する先読み処理である。これら図７（ａ）、図７（ｂ）の処理は並行処理される。
【００３６】
まず、入出力部２１が、ホスト９００からＲｅａｄコマンドを受領すると、図７（ａ）のステップＳ３１における判断が肯定されて、ステップＳ３２に移行する。次のステップＳ３２では、当該Ｒｅａｄコマンドにおいて取得したアドレス情報を先読み処理部２３に渡す。次いで、ステップＳ３３では、入出力部２１が、Ｒｅａｄコマンドで指定されたセクタのアドレスに記録されているファイルデータが、バッファメモリ４０内に先読みされているか否かを判断する。ここで、バッファメモリ４０に格納される先読みデータのインデックス情報は、図８に示すようなデータ構造を有している。この図８から分かるように、先読みデータのインデックス情報は、セクタのアドレスと、当該セクタに記録されているファイルデータが格納されたバッファメモリ４０内における開始アドレス及び終了アドレスと、を含んでいる。したがって、ステップＳ３３の判断は、Ｒｅａｄコマンドで指定されたアドレスと一致するアドレスがセクタアドレスの欄に存在するか否かに基づいて行われる。
【００３７】
このステップＳ３３における判断が肯定された場合には、入出力部２１は、ステップＳ３４において、バッファメモリ４０からホスト９００にデータを転送する。一方、ステップＳ３３における判断が否定された場合には、入出力部２１は、ステップＳ３５において、磁気ディスク１１からホスト９００にデータを転送する。その後は、ステップＳ３１に戻り、入出力部２１は、Ｒｅａｄコマンドを受領する毎に、ステップＳ３２、Ｓ３３、Ｓ３４（又はＳ３５）の処理判断を繰り返す。
【００３８】
一方、先読み処理部２３では、図７（ｂ）のステップＳ４１において、アドレス情報を入出力部２１から受領するまで待機する。そして、前述した図７（ａ）のステップＳ３２における入出力部２１による処理が行われ、入出力部２１からのアドレス情報を受領した段階で、ステップＳ４２に移行する。
【００３９】
次いで、ステップＳ４２では、先読み処理部２３が、リンク情報テーブルＬｔｂｌを参照し、ステップＳ４１にて受領したアドレス情報がリンク情報テーブルＬｔｂｌに含まれているか否かを判断する。ここでの判断が否定された場合には、先読み処理部２３が先読みすべきデータが存在しないので、ステップＳ４１に戻り、アドレス情報の待機状態に移行する。一方、ここでの判断が肯定された場合には、ステップＳ４３に移行する。この場合、先読み処理部２３が先読みする必要のあるデータが存在していたことから、ステップＳ４３において、先読み処理部２３が、リンク情報テーブルＬｔｂｌのリンク情報（リンクアドレス）に基づいて、磁気ディスク１１にアクセスしてデータを先読みし、バッファメモリ４０に格納する。
【００４０】
次いで、ステップＳ４４では、先読み処理部２３が、リンク情報テーブルＬｔｂｌに基づいて、先読みしたデータのアドレスが最後のアドレスか否かを判断する。ここでは、先読み処理部２３が、リンク情報テーブルＬｔｂｌのリンクアドレスの欄を参照し、先読みしたデータのアドレスに終端コード［ｅｎｄ］が付加されているか否かにより、最後のアドレスか否かを判断する。ここでの判断が否定された場合には、先読みするデータが未だ存在しているので、ステップＳ４３に戻り、次のデータの先読みを実行する。そして、ステップＳ４４の判断が肯定された段階で、ステップＳ４１に戻り、新たなアドレス情報の待機状態に移行する。
【００４１】
本実施形態では、以上の処理の繰り返しにより、先頭アドレスのファイルデータに関するＲｅａｄコマンドを受けた段階で、先読み処理部２３が、先頭アドレスにリンクしているアドレスのデータを先読みして、バッファメモリ４０に予め格納する動作が実行され、また、次のＲｅａｄコマンドをコントローラ２０が受けた際には、バッファメモリ４０からホスト９００に対して先読みしておいたファイルデータを直接転送する動作が実行されるようになっている。
【００４２】
以上詳細に説明したように、本実施形態によると、一のファイルに含まれる複数のデータを磁気ディスク１１の複数のセクタに分けて記録する際に、リンク情報作成部２２が、一のファイルのデータ（ファイルデータ）の連続性に従った順序で複数のセクタを関連付けておき（リンク情報を作成しておき）、データの再生要求（Ｒｅａｄコマンド）を受領した際には、先読み処理部２３が、当該リンク情報に基づいてデータを先読みするので、次にホストから再生要求（Ｒｅａｄコマンド）が出されると予想されるデータを予め先読みし、バッファメモリ４０に格納しておくことができる。ここで、バッファメモリ４０とホスト９００との間のデータ転送に要する時間は、磁気ディスク１１から直接データを読み出してホスト９００に転送する時間よりも格段に早い。したがって、Ｒｅａｄコマンドを待つ間にデータの先読み処理をしておき、Ｒｅａｄコマンドを受領した段階でデータをバッファメモリ４０からホスト９００に転送することにより、ＨＤＤ１００のデータ再生に要する時間を大幅に短縮することができる。この場合、磁気ディスク１１にデータを記録する際に作成したリンク情報に基づいて先読みを実行するので、データアクセス方式を問わず、また磁気ディスク１１の汎用性を失うことなくデータ再生の高速化を実現することができる。
【００４３】
また、本実施形態の先読み処理は、リンク情報の作成をデータ記録時に行い、当該リンク情報に基づいて先読み処理を実行するので、連続データが磁気ディスク１１上の複数のセクタにランダムに記録される記録方式、いわゆるランダムアクセス方式を採用する情報記憶装置にも好適に適用することができる。ここで、従来においては、Ｒｅａｄコマンドで指定されたセクタに物理的に隣接する範囲のセクタのデータを予めバッファに読み出しておくキャッシュメモリ技術が知られており、当該技術をランダムアクセス方式に採用することも可能とも考えられる。しかしながら、当該キャッシュメモリ技術をランダムアクセス方式に採用すると、連続するデータが存在すると予想される非常に広い範囲のデータを先読みしておかなければならないため、キャッシュメモリの記憶容量の増大化や、キャッシュメモリからのデータ再生時間の長時間化を引き起こすおそれがある。この点、本実施形態の先読み処理を採用することとすれば、連続データをピンポイントで先読みすることができるので、キャッシュメモリに必要な記憶容量の削減、及びキャッシュメモリからのデータ再生時間の短縮化を実現することが可能である。
【００４４】
また、従来のキャッシュメモリ技術では、例えば、キャッシュメモリのデータを破棄した直後にそのデータの読み出しが必要となった場合に、再度の先読みを実行する必要があるなど非効率であったが、本実施形態の方法では、必要なデータを予測してそのデータのみを先読みしておくので、再度の先読みの可能性を低減することができる。
【００４５】
なお、上記実施形態では、リンク情報テーブルＬｔｂｌに登録されているファイルについて先読み処理を実行し、登録されていないファイルについては先読み処理を実行しない場合について説明したが、これに限られるものではない。例えば、リンク情報テーブルＬｔｂｌに登録されているファイルについては先読み処理を実行し、登録されていないデータに関するＲｅａｄコマンドを受領した場合には、上述したキャッシュメモリ技術を適用することとしても良い。
【００４６】
なお、上記実施形態では、磁気ディスク１１上の所定の記録領域を、ＨＤＤ１００の電源オフ時に制御用メモリ３０に格納されたデータを一時保存するための記録領域として用いる場合について説明したが、これに限らず、ＨＤＤ１００内にフラッシュメモリなどの不揮発性のメモリを設けておき、当該不揮発性のメモリを、データの一時保存に用いることとしても良い。また、バッファメモリ４０として、不揮発性のメモリを採用することとしても良い。
【００４７】
なお、上記実施形態において示したリンク情報Ｌｉ（図２）やファイル情報Ｆｉ（図３）のデータ構造は一例である。したがって、用途に応じて種々変更が可能である。例えば、上記実施形態では、ファイルの開始位置及び終了位置をファイル情報テーブルＦｔｂｌのヘッダ情報及びフッタ情報、及びリンク情報テーブルＬｔｂｌのデータ形式の情報に基づいて検出していたが、ファイルの開始・終了は、ヘッダ情報、フッタ情報、及びデータ形式の情報の少なくとも１つから検出可能である。したがって、制御用メモリ３０には、これらの情報の少なくとも１つがテーブル化されて格納されていれば良い。また、ヘッダ情報、フッタ情報、及びデータ形式以外の指標をテーブル化することとしても良い。
【００４８】
なお、上記実施形態では、情報記憶装置として、磁気ディスクを用いるＨＤＤを採用した場合について説明したが、これに限られるものではない。情報記憶装置としては、例えば、ＣＤ（Compact Disc）やＤＶＤ（Digital Versatile Disk）などの光ディスク装置、及びその他の情報記憶装置を採用することも可能である。
【００４９】
また、上記実施形態では、ホスト９００がパーソナルコンピュータである場合について説明したが、これに限られるものではない。例えば、ホストとして、ｗｅｂサーバー、メールサーバーなどのワークステーションなどを採用することも可能である。
【００５０】
上述した実施形態は本発明の好適な実施の例である。但し、これに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変形実施可能である。
【符号の説明】
【００５１】
１１  磁気ディスク（記憶媒体）
２２  リンク情報作成部
２３  先読み処理部
４０  バッファメモリ
１００  ＨＤＤ（情報記憶装置）
Ｆｉ  ファイル情報
Ｆｔｂｌ  ファイル情報テーブル
Ｌｉ  リンク情報
Ｌｔｂｌ  リンク情報テーブル
【図１】
2010186524.tif 000003
【図２】
2010186524.tif 000004
【図３】
2010186524.tif 000005
【図４】
2010186524.tif 000006
【図５】
2010186524.tif 000007
【図６】
2010186524.tif 000008
【図７】
2010186524.tif 000009
【図８】
2010186524.tif 000010