(57)【要約】【課題】少ないキャッシュバッファ容量の環境下においても、データの先読みを好適に行うことができるようにする。【解決手段】操作を受信する受信手段と、第１の記憶媒体から前記第１の記憶媒体とは異なる第２の記憶媒体にデータを転送する転送手段と、前記操作に基づき、前記転送手段で転送するデータを決定する決定手段と、前記決定手段で決定されたデータに基づき、前記第１の記憶媒体に記憶されたデータの蓄積情報を取得する取得手段と、前記蓄積情報に基づいて前記第２の記憶媒体の容量を変更する変更手段とを具備している。【選択図】図２
2010257301.tif 000002
【特許請求の範囲】
【請求項１】
操作を受信する受信手段と、
第１の記憶媒体から前記第１の記憶媒体とは異なる第２の記憶媒体にデータを転送する転送手段と、
前記操作に基づき、前記転送手段で転送するデータを決定する決定手段と、
前記決定手段で決定されたデータに基づき、前記第１の記憶媒体に記憶されたデータの蓄積情報を取得する取得手段と、
前記蓄積情報に基づいて前記第２の記憶媒体の容量を変更する変更手段とを具備したことを特徴とするデータ転送装置。
【請求項２】
前記取得手段は、前記第１の記憶媒体における前記データのクラスタ情報を取得することを特徴とする請求項１記載のデータ転送装置。
【請求項３】
前記第１の記憶媒体は、ディスク状の記憶媒体であることを特徴とする請求項２記載のデータ転送装置。
【請求項４】
前記操作に基づいて前記第２の記憶媒体に記憶されたデータを出力する出力手段をさらに具備することを特徴とする請求項１記載のデータ転送装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はデータ転送装置に関し、特に、データの先読みを行う際に用いて好適な技術に関する。
【背景技術】
【０００２】
大容量記憶装置として用いられるハードディスクドライブをはじめとしたディスク記憶装置は、ディスクからデータを読み出す際に、データが書き込まれた位置に読み出し用のヘッドを移動させて、ディスクの回転に合わせてデータの読み出しを行う。このため、ディスク記憶装置からデータ読み出す際に掛かる所要時間は、シーク時間と言われる半径方向へのヘッドの移動時間、データ読出し位置まで回転するのを待つ回転待ち時間、データアクセス時間、及び転送時間からなる。このうち、データを読み出す準備期間にあたる平均シーク時間と平均回転待ち時間との合計は数ミリ秒から十数ミリ秒を要し、高速なデータ読み出しの弊害となっている。
【０００３】
このため、データの読み出しの高速化を図るために、様々な技術が存在する。例えば、特許文献１では、ディスク記憶装置内に備えたキャッシュバッファを用いている。このキャッシュバッファにキャッシュするデータを統計的に管理することで、キャッシュ内のデータのヒット率を高め、高速化を実現している。また、特許文献２では、ディスク記憶装置にデータを書き出す際に、書き出すデータの木構造を解析して、データ読み出しの際のシーク時間を短くする提案がなされている。さらに、一般的なコンピュータ機器に搭載された高級なオペレーティングシステムでは、潤沢なメモリ容量を背景に一度読み出されたデータを指定したキャッシュバッファ容量の範囲内で保持し、同一データの読み出しの高速化を図っている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平８−２７２６８９号公報
【特許文献２】特開２００３−２８１８１６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、特許文献１では、アプリケーションレベルで指定された条件に合致したデータを読み出すには、読み出すデータの予測が必要であり、単純な統計的処理ではキャッシュのヒット率の向上は限定されてしまう。また、特許文献２では、木構造に関係なく、全てのデータを更新日時順に並べて表示するなどの、アプリケーションレベルで指定された条件に合致したデータを読み出すには、読み出し用ヘッドのシークが発生してしまうため、高速化可能な適用範囲が狭い。さらに、大容量のメモリの確保が困難な組み込み機器では、一般的なコンピュータ機器の高級オペレーティングシステムのようなキャッシュバッファを用意し、高速化を図ることは困難である。
【０００６】
本発明は前述の問題点に鑑み、少ないキャッシュバッファ容量の環境下においても、データの先読みを好適に行うことができるようにすることを目的としている。
【課題を解決するための手段】
【０００７】
本発明のデータ転送装置は、操作を受信する受信手段と、第１の記憶媒体から前記第１の記憶媒体とは異なる第２の記憶媒体にデータを転送する転送手段と、前記操作に基づき、前記転送手段で転送するデータを決定する決定手段と、前記決定手段で決定されたデータに基づき、前記第１の記憶媒体に記憶されたデータの蓄積情報を取得する取得手段と、前記蓄積情報に基づいて前記第２の記憶媒体の容量を変更する変更手段とを具備したことを特徴とする。
【発明の効果】
【０００８】
本発明によれば、少ないキャッシュバッファ容量の環境下においても、ユーザ操作に対して、如何にキャッシュバッファの効率的に制御してデータの先読みを行うことが可能になり、ユーザにインタラクティブ性の高いＵＩを提供することができる。
【図面の簡単な説明】
【０００９】
【図１】本発明の第１の実施形態のデータ表示システムの構成例を示す図である。
【図２】データ表示装置の構成例を示すブロック図である。
【図３】リモートコントローラの構造の一例を示す図である。
【図４】ディスプレイに表示される表示画面の一例を示す図である。
【図５】キャッシュバッファの配分方法を概念的に示す図である。
【図６】起動から終了までの処理手順の一例を示すフローチャートである。
【図７】先読み制御の処理手順の一例を示すフローチャートである。
【図８】データのディレクトリ構造の一例を示す図である。
【図９】ディレクトリ構造におけるＦＡＴファイルシステムの概念を示す図である。
【図１０】本発明の第２の実施形態のデータ表示システムの構成例を示す図である。
【図１１】データ表示装置の構成例を示すブロック図である。
【図１２】キャッシュバッファの配分方法を概念的に示す図である。
【図１３】先読み制御の処理手順の一例を示すフローチャートである。
【発明を実施するための形態】
【００１０】
（第１の実施形態）
以下、本発明における第１の実施形態を図面に基づいて説明する。
図１は、本実施形態に係るデータ表示システムの構成例を示す図である。
図１において、１０１は、データ表示装置である。１０２は、ユーザが操作を行う操作入力装置であり、データ表示装置１０１の内蔵された入力ボタンでも、リモートコントローラに代表される操作入力装置でもよい。１０３は、ディスプレイやテレビジョン放送受像表示機に代表される表示装置であり、操作入力装置１０２同様、データ表示装置と別体であってもよい。１０４は、データ表示を行うためコンテンツデータを記憶した記憶媒体であり、データ表示装置が解読可能なファイルシステムでデータを記憶しており、表示装置１０３と同様、データ表示装置１０１と別体であってもよい。
【００１１】
データ表示装置１０１は記憶装置１０４からデータを読み出し、表示装置１０３に読み出したデータの表示を行う。ユーザは表示装置１０３に映し出された表示内容を見て、操作入力装置１０２で操作を行う。
【００１２】
図２は、本実施形態のデータ表示装置１０１の構成例を示すブロック図である。
図２において、２００は、図１に示したデータ表示装置１０１の本体である。リモートコントローラ２２０は、図１に示した操作入力装置１０２であり、ディスプレイ２３０は、図１に示した表示装置１０３である。また、ハードディスクドライブ２４０は、図１に示した第１の記憶媒体としての記憶装置１０４であり、ＦＡＴファイルシステムによってデータを記録する。
【００１３】
２０１は、リモートコントローラ２２０から受信した操作入力を検出する操作入力検出部である。２０２は、操作入力検出部２０１で検出された操作に基づいて、ハードディスクドライブ２４０から読み出すデータを決定し、データを一時的に記憶する第２の記憶媒体であるキャッシュバッファ２０３に読み出したデータを記録する先読み制御部である。
【００１４】
２０３は、転送手段として先読み制御部２０２で読み出されたデータを一時的に記憶する一時記憶領域であって、高速データアクセスが可能なランダムアクセスメモリ（ＲＡＭ）上に存在するキャッシュバッファである。２０５は、操作入力検出部２０１で検出した操作に基づいて、キャッシュバッファ２０３からデータを読み出して、ディスプレイ２３０で表示する表示画像を生成してディスプレイ２３０に表示出力する表示制御部である。２０４は、先読み制御部２０２から得たデータの蓄積情報に基づいて、キャッシュバッファ２０３の容量および配分を決定するキャッシュバッファ配分部である。各々の処理の詳細な説明は図６及び図７の説明で後述する。また、ハードディスクドライブ２４０はディスク状の記憶媒体にデータを記憶させるものである。
【００１５】
図３は、図２におけるリモートコントローラ２２０の構造の一例を示す図である。
図３において、３００は図２に示したリモートコントローラ２２０の本体である。電源ボタン３０１は、データ表示装置２００の起動および終了を指示する入力ボタンである。また、条件１左ボタン３１１、条件１右ボタン３１２、条件２左ボタン３２１，条件２右ボタン３２２は、ディスプレイ２３０に表示するデータを切替えるボタンである。
【００１６】
図４は、図２におけるディスプレイ２３０に表示される表示画面の一例を示す図である。
図４において、４００は表示画面全体である。４０１、４０２は、表示するデータの順序条件を示す情報であり、条件１をデータの日時順、条件２をデータの場所順としている。ここで、上述のデータおよびデータの順序を決定する情報に関して具体的に説明する。
【００１７】
例えば、データはデジタルスチルカメラ（ＤＳＣ）等で撮影された静止画像や動画像の映像データである。この場合、日付や場所は、Ｅｘｉｆ（Exchangeable Image File Format）情報に記載された撮影日時情報、及びＧＰＳ（Global Positioning System）情報を用いることが可能である。順序を決定する方法はこれに限らず、Ｅｘｉｆ情報に記載された他の情報や、画像を解析した結果得られる情報、ユーザが付けた点数などでもよい。また、データについても、映像データに限らず、テキスト等、その種類は問わない。
【００１８】
４１１〜４１３、４２１〜４２３は、操作入力に応じて順序条件ごとに表示されたコンテンツである。また、４０３〜４０６は、図３に示したデータを切替えるボタンに対応したユーザ操作を補助するための操作ガイド情報である。図３で示した条件１左ボタン３１１を押下するとコンテンツ４１１からコンテンツ４１３が右にスクロールして、条件１の順序条件に従ったコンテンツがコンテンツ４１１の左からスクロール表示される。同様に他のデータを切替えるボタンを押下すると条件に合致したコンテンツ列がスクロールして表示するコンテンツの切替え表示を行う。
【００１９】
図５は、条件１と条件２とに関するキャッシュバッファの配分方法を概念的に示す図である。
図５において、５０１はデータ表示装置１０１のＲＡＭ上に確保されたキャッシュバッファであり、それぞれの四角は一つのデータが一時記憶される領域を示している。キャッシュバッファ５０１は、条件１用キャッシュバッファ５０２及び条件２用キャッシュバッファ５０３に配分されている。５０４は、後述する方法で決定された配分に従い、使用せずに領域を開放するキャッシュバッファ領域である。５０５は、同様に決定された配分に従い、開放されたキャッシュバッファ領域５０４を新たに取得したキャッシュバッファ領域である。
【００２０】
５１１は、図２に示したハードディスクドライブ２４０であり、５１２はハードディスクドライブ２４０内のデータ領域を概念的に示したクラスタ構造である。５１３は条件１の順序条件と条件１用キャッシュバッファ５０２に一時記憶されたデータとから決定された、今後先読みを行う複数のデータの候補である。５１４は、同様に条件２の先読みを行うデータの候補である。
【００２１】
図５に示したように、条件１の複数のデータは連続したクラスタに蓄積され、条件２の複数のデータは蓄積されているクラスタが分散している。このため、条件２のデータ読出しは条件１のデータ読み出しより、シーク時間および回転待ち時間が多いことが予測されるため、キャッシュバッファの配分を多くすることで、高速はデータ切替え表示が可能になる。読み出すデータの蓄積情報を読み出す方法は図８及び図９を用いて後述する。
【００２２】
図６は、本実施形態のデータ表示装置１０１の起動から終了までの処理手順の一例を示すフローチャートである。
電源ボタン３０１が押下されると、データ表示装置１０１の処理が開始される。まず、ステップＳ６０１において、後述する先読み制御処理スレッドを開始する。次に、ステップＳ６０２において、操作入力検出部２０１がデータの切替え操作入力を検出したか否かを判断する。この判断の結果、データの切替え操作入力を検出した場合は、ステップＳ６１１に進み、表示制御部２０５はキャッシュバッファ２０３からデータを読み出し、ステップＳ６１２において、表示画面を生成してディスプレイ２３０に出力する。
【００２３】
一方、ステップＳ６０２の判断の結果、データの切替え操作入力を検出していない場合は、ステップＳ６０３に進み、再度、電源ボタン３０１が押下されたか否かを判断する。この判断の結果、電源ボタン３０１が押下されていない場合はステップＳ６０２に戻り、電源ボタン３０１が押下された場合は、ステップＳ６９９において、処理を終了する（Ｓ６９９）。
【００２４】
図７は、先読み制御の処理手順の一例を示すフローチャートである。
先読み制御処理スレッドが開始されると処理を開始する。そして、ステップＳ７０１において、操作入力検出部２０１がデータの切替え操作入力を検出したか否かを判断する。この判断の結果、検出した場合は、ステップＳ７１１において、後述する方法で、第一の順序条件に関する先読みするデータの記憶媒体上の物理的な分散情報を取得する。
【００２５】
そして、ステップＳ７１２において、同様に第二の順序条件に関する先読みするデータの記憶媒体上の物理的な分散情報を取得し、ステップＳ７１３において、取得した第一および第二の順序条件に関する先読みするデータの分散情報を比較する。次に、ステップＳ７１４において、上述したキャッシュバッファの配分方針に従い、定量的にキャッシュバッファの配分を決定する。
【００２６】
次に、ステップＳ７１５において、キャッシュバッファの配分が変更されたか否かを判断する。この判断の結果、変更された場合は、ステップＳ７２１において、キャッシュバッファを減量される順序条件のキャッシュバッファのうち、ヒット率が低いデータを一時記憶したキャッシュバッファを開放する。ここで、ヒット率とは、一時記憶されたデータが実際に表示等に使用させる確率を示すもので、例えば、ある順序条件に従った先読みの場合、現在表示しているデータから先読みしているデータを表示するまでの操作回数で判断することが可能である。次に、ステップＳ７２２において、開放されたキャッシュバッファを増量される順序条件に割り当て、最後尾に加える。そして、ステップＳ７１６に進む。
【００２７】
一方、ステップＳ７１５の判断の結果、変更されなかった場合は、ステップＳ７１６において、第一および第二の順序条件に従い、割り当てられたキャッシュバッファ分のデータを読み出してキャッシュバッファに詰める。そして、ステップＳ７０２に進む。一方、ステップＳ７０１の判断の結果、データの切替え操作入力を検出しなかった場合は、ステップＳ７０２において、電源ボタン３０１が押下されたか否かを判断する。この判断の結果、電源ボタン３０１が押下されなかった場合は、ステップＳ７０１に戻り、押下された場合は、ステップＳ７９９において、処理を終了する。
【００２８】
図８は、ハードディスクドライブ２４０に記録されたデータのディレクトリ構造の一例を示す図である。また、図９は、図８に示したディレクトリ構造におけるＦＡＴファイルシステムの概念を説明する図である。この図８及び図９を基に、一般的なＦＡＴファイルシステムについて説明し、上述したデータの蓄積状態および物理的な分散情報を取得する一例を説明する。
【００２９】
図８において、Ｄ０からＤ１２はディレクトリを示し、Ｆ３からＦ１２１は映像データ等のデータファイルを示している。また、図９において、９０１はハードディスクドライブ２４０におけるＦＡＴファイルシステムのデータ構造である。９０２は、ＦＡＴシステムの中のルートディレクトリエントリのデータ構造であり、９０３は、ファイルアロケーションテーブル（ＦＡＴ）のデータ構造である。また、９０４は、データ領域の構造である。
【００３０】
例えば、図８に示すデータファイルＦ１３を読み出す場合、ルートディレクトリエントリに記載されたディレクトリＤ１のエントリ情報を読み出す。そして、エントリ情報に記載されたクラスタの始点情報から、ＦＡＴを参照して読み出すクラスタの順序と終点とを読み出す。ファイルシステムはＦＡＴから得たクラスタ情報を基にハードディスクドライブ２４０のクラスタを読み出す。読み出したディレクトリＤ１の情報には、ディレクトリＤ１１、ディレクトリＤ１２及びデータファイルＦ１３のエントリ情報が記載されている。データファイルＦ１３のエントリ情報を基にＦＡＴを参照して、読み出すクラスタの順序と終点を読出し、ファイルシステムはこの順序に従ってクラスタにアクセスし、データファイルＦ１３のデータを読み出す。このようにＦＡＴを参照することで、読み出すデータファイルに関するアクセスするクラスタの始点、順序、終点が得られる。
【００３１】
本実施形態のデータ表示装置１０１は、例えば、ＦＡＴファイルシステムの場合、データ本体を読み出す前に、上記の方法でハードディスクドライブ内の物理的な蓄積状態を取得し、複数のデータに関する蓄積状態から分散情報を生成することが可能である。
【００３２】
以上のようにこれまで異なる二つの順序条件に関して、ハードディスク内のデータの分散情報に応じて、先読みしたデータを一時記憶するキャッシュバッファの配分を決定する具体的な方法を説明してきた。しかしながら、この手法は二つの順序条件の場合に限られたものではなく、３つ以上の順序条件について先読み制御およびキャッシュバッファの配分を行う場合に適応可能であることは言うまでもない。また、先読み制御を行う順序条件が一つの場合でも、データの分散情報に応じてキャッシュバッファの容量を決定し、使用しないキャッシュバッファを解放し、データ表示装置で動作するアプリケーションプログラムやオペレーションシステムに利用可能である。
【００３３】
さらには、本実施形態では、複数のデータファイルに関する分散情報によりキャッシュバッファの配分を行う例を示したが、データファイル間の分散情報に限るものではない。すなわち、ＦＡＴファイルシステムの説明から明らかなように単一のデータファイルが複数のクラスタに記憶され、そのクラスタが物理的に分散している場合も存在する。このような場合にも、読み出すデータに関するクラスタ情報から分散情報を生成して、キャッシュバッファの配分を変更することが可能である。
【００３４】
（第２の実施形態）
以下、本発明における第２の実施形態を図面に基づいて説明する。なお、上記の第１の実施形態と同様の個所については、説明を割愛する。
図１０は、本実施形態に係るデータ表示システムの構成例を示す図である。
図１０において、第１の実施形態で用いた図１と異なる点は、第１の記憶装置１００４と第２の記憶装置１００５と複数存在する点である。
【００３５】
図１１は、図１０におけるデータ表示装置１００１の構成例を示すブロック図である。
図１１において、１１００は、図１０に示したデータ表示装置１００１の本体である。また、１１０１〜１１０５は、図２の２０１〜２０５と同様であり、１１２０、１１３０はそれぞれ、図１の２２０、２３０と同様である。図２と異なる点は、第１のハードディスクドライブ１１４０と第２のハードディスクドライブ１１４１と複数存在する点である。
【００３６】
図１２は、本実施形態に係るデータ表示装置１００１における条件１と条件２に関するキャッシュバッファの配分方法を概念的に示す図である。
図１２において、１２０１〜１２０５は、図１の５０１〜５０５と同様である。図５と異なる点は、第１のハードディスクドライブ１２１１及び第２のハードディスクドライブ１２２１に先読みするデータが存在する点である。第１の実施形態では、単一のハードディスクドライブ内でのデータの分散情報に基づいて、各条件で用いるキャッシュバッファの配分を決定した。本実施形態では、複数のハードディスクドライブ環境下でのデータファイルの分散情報により、キャッシュバッファの配分を決定する。
【００３７】
図１２において、１２１３は、第１のハードディスクドライブ１２１１に蓄積された順序条件１に係る先読みすべきデータ群のクラスタアドレスを示している。同様に、１２１４は第１のハードディスクドライブ１２１１に蓄積された順序条件２に係る先読みすべきデータ群のクラスタアドレスを示している。また、１２２４は第２のハードディスクドライブ１２２１に蓄積された順序条件２に係る先読みすべきデータ群のクラスタアドレスを示している。また、１２１２、１２２２は各ハードディスクドライブ内のデータ領域を概念的に示したクラスタ構造である。
【００３８】
順序条件２に係る先読みすべきデータ群は、同順序条件１に係る先読みすべきデータ群に対して、複数のハードディスクドライブに対して物理的に分散していることが分かる。この場合、キャッシュバッファの配分を上記の分散情報に基づいて決定し、条件１用キャッシュバッファの容量を減量し、条件２用キャッシュバッファに先ほど減量したキャッシュバッファを付加する。
【００３９】
図１３は、本実施形態における先読み制御の処理手順の一例を示すフローチャートである。
先読み制御処理スレッドが開始されると処理を開始する。そして、ステップＳ１３０１において、操作入力検出部１１０１がデータの切替え操作入力を検出したか否かを判断する。この判断の結果、検出した場合は、ステップＳ１３１１において、第一の順序条件に関する先読みするデータの記憶媒体間の物理的な分散情報を取得する。そして、ステップＳ１３１２において、同様に第二の順序条件に関する先読みするデータの記憶媒体間の物理的な分散情報を取得する。
【００４０】
次に、ステップＳ１３１３において、取得した第一および第二の順序条件に関する先読みするデータの分散情報を比較し、ステップＳ１３１４において、上述したキャッシュバッファの配分方針に従い、定量的にキャッシュバッファの配分を決定する。次に、ステップＳ１３１５において、キャッシュバッファの配分が変更されたか否かを判断する。この判断の結果、変更された場合は、ステップＳ１３２１において、キャッシュバッファを減量される順序条件のキャッシュバッファのうち、ヒット率が低いデータを一時記憶したキャッシュバッファを開放する。そして、ステップＳ１３２２において、開放されたキャッシュバッファを増量される順序条件に割り当て、最後尾に加える。そして、ステップＳ１３１６に進む。
【００４１】
一方、ステップＳ１３１５の判断の結果、変更されていない場合は、ステップＳ１３１６において、第一および第二の順序条件に従い、割り当てられたキャッシュバッファ分のデータを読み出してキャッシュバッファに詰める。そして、ステップＳ１３０２に進む。
【００４２】
一方、ステップＳ１３０１の判断の結果、検出しなかった場合は、ステップＳ１３０２において、電源ボタン３０１が押下されたか否かを判断する。この判断の結果、押下されていない場合は、ステップＳ１３０１に戻り、押下された場合は、ステップＳ１３９９に進み、処理を終了する。
【００４３】
以上のようにこれまで示した第１の実施形態及び第１の実施形態は相反する方法ではない。したがって、双方を組み合せることで、より効率的なキャッシュバッファ制御が可能となる。
【００４４】
（本発明に係る他の実施形態）
前述した本発明の実施形態におけるデータ転送装置を構成する各手段、並びにデータ転送方法の各工程は、コンピュータのＲＡＭやＲＯＭなどに記憶されたプログラムが動作することによって実現できる。このプログラム及び前記プログラムを記録（記憶）したコンピュータ読み取り可能な記録媒体（記憶媒体）は本発明に含まれる。
【００４５】
また、本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体（記憶媒体）等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。
【００４６】
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム（実施形態では図６、図７、図１３に示すフローチャートに対応したプログラム）を、システムまたは装置に直接、または遠隔から供給する場合も含む。そして、そのシステムまたは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
【００４７】
したがって、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【００４８】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であってもよい。
【００４９】
プログラムを供給するための記録媒体（記憶媒体）としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスクなどがある。さらに、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ、ＤＶＤ−Ｒ）などもある。
【００５０】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する方法がある。そして、前記ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体（記憶媒体）にダウンロードすることによっても供給できる。
【００５１】
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【００５２】
また、その他の方法として、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記録媒体（記憶媒体）に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【００５３】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。さらに、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【００５４】
さらに、その他の方法として、まず記録媒体（記憶媒体）から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。そして、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現される。
【符号の説明】
【００５５】
２０１  操作入力検出部、２０２  先読み制御部、２０３  キャッシュバッファ、キャッシュバッファ配分部、２４０  ハードディスクドライブ
【図１】
2010257301.tif 000003
【図２】
2010257301.tif 000004
【図３】
2010257301.tif 000005
【図４】
2010257301.tif 000006
【図５】
2010257301.tif 000007
【図６】
2010257301.tif 000008
【図７】
2010257301.tif 000009
【図８】
2010257301.tif 000010
【図９】
2010257301.tif 000011
【図１０】
2010257301.tif 000012
【図１１】
2010257301.tif 000013
【図１２】
2010257301.tif 000014
【図１３】
2010257301.tif 000015