(57)【要約】  大容量のデータを高速に扱うことが可能な情報処理装置を実現する。キャッシュメモリを内蔵するデータキャッシュ装置と、前記キャッシュメモリより容量の大きい大容量メモリを内蔵する管理装置とを備え、前記データキャッシュ装置は、情報処理装置の外部から読出し要求または書込み要求を受信したとき、前記キャッシュメモリに格納されている所定の条件のデータを、前記大容量メモリに配置するよう制御するデータキャッシュ制御手段を備え、前記データキャッシュ制御手段は、受信した要求が書込み要求であるとき、前記書込み要求に従って、書込み対象となるデータを前記キャッシュメモリに書込み、前記要求が読出し要求であるとき、前記読出し要求に従って読み出されたデータを前記キャッシュメモリに書込む、ことを特徴とする情報処理装置。
2015064048.tif 000002
【特許請求の範囲】
【請求項１】
キャッシュメモリを内蔵するデータキャッシュ装置と、前記キャッシュメモリより容量の大きい大容量メモリを内蔵する管理装置とを備え、
前記データキャッシュ装置は、情報処理装置の外部から読出し要求または書込み要求を受信したとき、前記キャッシュメモリに格納されている所定の条件のデータを、前記大容量メモリに配置するよう制御するデータキャッシュ制御手段を備え、
前記データキャッシュ制御手段は、受信した要求が書込み要求であるとき、前記書込み要求に従って、書込み対象となるデータを前記キャッシュメモリに書込み、前記要求が読出し要求であるとき、前記読出し要求に従って読み出されたデータを前記キャッシュメモリに書込む、ことを特徴とする情報処理装置。
【請求項２】
前記データキャッシュ制御手段は、
前記キャッシュメモリに、前記受信した要求に対応するデータが存在するか否かを確認し、
前記キャッシュメモリに、前記要求に対応するデータが存在する場合、前記要求に従って、前記キャッシュメモリに対し、データの読出しまたはデータの書込みを行い、
前記キャッシュメモリに、前記要求に対応するデータが存在しない場合、前記所定の条件のデータを前記大容量メモリに配置するよう制御し、前記書込み対象となるデータまたは前記読出し要求に従って読み出されたデータを前記キャッシュメモリに書込む、ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記データキャッシュ制御手段は、
前記キャッシュメモリに前記要求に対応するデータが存在しない場合、前記キャッシュメモリに、前記書込み対象となるデータまたは前記読出し要求において読み出し対象となるデータのデータ長以上の大きさの空き領域があるか否かを更に確認し、
前記キャッシュメモリに前記データ長以上の大きさの空き領域があるとき、前記書込み対象となるデータまたは前記読出し要求に従って、前記大容量メモリから読み出されたデータを、前記キャッシュメモリの当該空き領域に書込み、
前記キャッシュメモリに前記データ長以上の大きさの空き領域がないとき、前記所定の条件のデータを前記大容量メモリに配置するよう制御し、更に、前記書込み対象となるデータまたは前記読出し要求に従って読み出されたデータを前記キャッシュメモリに書込む、ことを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記データキャッシュ制御手段は、
前記キャッシュメモリに格納されているデータに対する情報を管理するための管理テーブルを制御する管理テーブル制御手段を備え、
前記管理テーブルには、前記データに対する情報として、データを示す識別子と、当該データのデータ長と、当該データの前記キャッシュメモリにおける先頭アドレスとが含まれており、
前記管理テーブル制御手段は、前記管理テーブルを参照することにより、前記キャッシュメモリに前記受信した要求に対応するデータが存在するか否かを確認する、ことを特徴とする請求項２または３に記載の情報処理装置。
【請求項５】
前記管理テーブル制御手段は、前記データの状態を示す状態情報を、当該データに対する情報に対応付けて管理する、ことを特徴とする請求項４に記載の情報処理装置。
【請求項６】
前記管理テーブル制御手段は、前記データキャッシュ制御手段が、前記所定の条件のデータを前記大容量メモリに配置するよう制御し、前記書込み対象となるデータまたは前記読出し要求に従って読み出されたデータを前記キャッシュメモリに書込んだとき、前記状態情報を更新する、ことを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記所定の条件のデータとは、前記状態情報が、当該データが無効状態であることを示す情報であるデータである、ことを特徴とする請求項５または６に記載の情報処理装置。
【請求項８】
前記所定の条件のデータとは、参照度合いがより低いデータである、ことを特徴とする請求項１から７の何れか１項に記載の情報処理装置。
【請求項９】
前記参照度合いがより低いデータとは、最後に参照された日時が最も古いデータである、ことを特徴とする請求項８に記載の情報処理装置。
【請求項１０】
前記キャッシュメモリは、前記データキャッシュ制御手段に内蔵されており、
前記キャッシュメモリには、前記管理テーブルが格納されており、
前記管理テーブルには、前記データに対する情報として、当該データのデータ本体が含まれる、ことを特徴とする請求項４から７の何れか１項に記載の情報処理装置。
【請求項１１】
前記データキャッシュ装置は、前記情報処理装置の外部から読出し要求または書込み要求を受信したとき、受信した要求に対応するデータが前記管理装置に格納されているか否かを判定するデータ存在判定手段と、
前記データが前記管理装置に格納されていないとき、他の装置に応答を送信する送信手段と、を備え、
前記送信手段は、前記要求に対する前記データキャッシュ装置における処理を停止させる、ことを特徴とする請求項１から１０の何れか１項に記載の情報処理装置。
【請求項１２】
前記送信手段は、前記要求の送信先に、前記要求に対応するデータが、前記管理装置に格納されていないことを示す応答を送信する、ことを特徴とする請求項１１に記載の情報処理装置。
【請求項１３】
前記データキャッシュ装置は、当該データキャッシュ装置に接続された前記管理装置、および、当該データキャッシュ装置にネットワークを介して接続された１または複数の他の情報処理装置の夫々に含まれる他の管理装置に格納されているデータを示す情報を管理する管理手段を更に備え、
前記要求に対応するデータが、前記他の管理装置に格納されているとき、前記送信手段は、前記他の管理装置を含む前記他の情報処理装置に、前記受信した要求を送信する、ことを特徴とする請求項１１に記載の情報処理装置。
【請求項１４】
前記データキャッシュ装置は、
前記情報処理装置の外部から読出し要求または書込み要求を受信し、当該受信した読出し要求または書込み要求が、当該データキャッシュ装置で処理する要求か否かを判定する判定手段と、
前記読出し要求または前記書込み要求を前記管理装置に送信し、前記読出し要求または前記書込み要求にそれぞれ対応する読出し応答または書込み応答を受信するリフィル制御手段と、を更に備え、
前記判定手段は、前記受信した読出し要求または書込み要求が前記データキャッシュ装置で処理する要求ではないと判定したとき、前記読出し要求または書込み要求を前記リフィル制御手段に供給し、前記受信した読出し要求または書込み要求が前記データキャッシュ装置で処理する要求であると判定したとき、前記読出し要求または書込み要求を前記データキャッシュ制御手段に供給する、ことを特徴とする請求項１から１３の何れか１項に記載の情報処理装置。
【請求項１５】
キャッシュメモリを内蔵し、前記キャッシュメモリより容量の大きい大容量メモリを内蔵する管理装置と接続されたデータキャッシュ装置であって、
前記データキャッシュ装置および前記管理装置の外部から読出し要求または書込み要求を受信したとき、前記キャッシュメモリに格納されている所定の条件のデータを、前記大容量メモリに配置するよう制御するデータキャッシュ制御手段を備え、
前記データキャッシュ制御手段は、受信した要求が書込み要求であるとき、前記書込み要求に従って、書込み対象となるデータを前記キャッシュメモリに書込み、前記要求が読出し要求であるとき、前記読出し要求に従って読み出されたデータを前記キャッシュメモリに書込む、ことを特徴とするデータキャッシュ装置。
【請求項１６】
キャッシュメモリを内蔵するデータキャッシュ装置と、前記キャッシュメモリより容量の大きい大容量メモリを内蔵する管理装置とを備える情報処理装置の情報処理方法であって、
前記情報処理装置の外部から読出し要求または書込み要求を受信し、
前記受信した要求が書込み要求であるとき、前記キャッシュメモリに格納されている所定の条件のデータを前記大容量メモリに配置するよう制御し、更に、前記書込み要求に従って、書込み対象となるデータを前記キャッシュメモリに書込み、
前記受信した要求が読出し要求であるとき、前記所定の条件のデータを前記大容量メモリに配置するよう制御し、更に、前記読出し要求に従って読み出されたデータを前記キャッシュメモリに書込む、ことを特徴とする情報処理方法。
【請求項１７】
キャッシュメモリを内蔵し、前記キャッシュメモリより容量の大きい大容量メモリを内蔵する管理装置と接続されたデータキャッシュ装置のデータキャッシュ方法であって、
前記データキャッシュ装置および前記管理装置の外部から読出し要求または書込み要求を受信し、
前記受信した要求が書込み要求であるとき、前記キャッシュメモリに格納されている所定の条件のデータを前記大容量メモリに配置するよう制御し、更に、前記書込み要求に従って、書込み対象となるデータを前記キャッシュメモリに書込み、
前記受信した要求が読出し要求であるとき、前記所定の条件のデータを前記大容量メモリに配置するよう制御し、更に、前記読出し要求に従って読み出されたデータを前記キャッシュメモリに書込む、ことを特徴とするデータキャッシュ方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、データキャッシュ装置、情報処理方法およびデータキャッシュ方法に関する。
【背景技術】
【０００２】
近年、大量のデータに対応し、高速にデータを処理する情報処理装置の需要が高まっている。しかし、データをハードディスクなどの外部記憶装置上に蓄えたデータベース製品は、ディスクアクセスが低速である。したがって、近年では、データをハードディスクではなく、メインメモリのようなメモリ上に蓄えることで高速にデータ処理を行う情報処理装置（ｍｅｍｃａｃｈｅｄ等のインメモリデータベースシステム）が活用されている。【０００３】
例えば、特許文献１には、負荷分散システムにおいて、エンドユーザのコンテント要求をコンテンツプロバイダの何れのミラーサイトが受信すべきかを、決定する方法が記載されている。【０００４】
また、特許文献２には、キャッシュサーバをネットワーク全体に設置して、ドキュメント要求がルーチンググラフに沿って中間ノードで実行できる場合、中間ノードがクライアントにキャッシュドキュメントを返送する方法が記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第４６９０６２８号公報
【特許文献２】特表２００１−５２６８１４号公報
【非特許文献】
【０００６】
【非特許文献１】Michaela Blott, Kimon Karras, Ling Liu, Kees Vissers, Jeremia Baer, Zsolt Istvan, "Achieving 10Gbps Line-rate Key-value Stores with FPGAs", HotCloud'13, San Jose, CA, June 2013
【非特許文献２】John L. Hennessy, David A. Patterson, "Computer Architecture, Fifth Edition: A Quantitative Approach (The Morgan Kaufmann Series in Computer Architecture and Design)", Morgan Kaufmann Publishers, 2011年9月
【発明の概要】
【発明が解決しようとする課題】
【０００７】
メモリ上でデータを扱うインメモリ型情報処理装置は、ネットワークから入力される読出し／書込み要求に対して、大容量メモリを利用してデータを処理する、例えば、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）に実装されたデータ処理部を備えている。また、上記インメモリ型情報処理装置より高速化された情報処理装置は、上記データ処理部を、通常のサーバとは異なり、ＣＰＵとは異なるデバイス上に実装する。このＣＰＵとは異なるデバイスとは、ＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）やメニーコアプロセッサ等である。これにより、この情報処理装置は、ＣＰＵよりも高速に、ネットワークから入力される読出し／書込み要求を処理する（例えば、非特許文献１）。【０００８】
しかしながら、上記構成では、通常のサーバとは異なり、特殊なデバイスを搭載したボード上での実装となる。そのため、該ボードの制限等により、扱うことのできるデータ量が小容量に限られる。よって、大量のデータをインメモリ上で扱うことができない。【０００９】
また、特許文献１および２の方法では、データの書込みには対応していない。さらに、上記方法では、データをキャッシュする際に使用されるアクセスプロトコル（ＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）等）が、大容量メモリとは異なる。また、同様のデータ配置の仕組みとして、マイクロプロセッサのキャッシュ（例えば、非特許文献２）も知られているが、マイクロプロセッサのキャッシュメモリと大容量メモリとで、アクセスプロトコルが異なる。【００１０】
したがって、インメモリ型情報処理装置に関して、高速に、大容量のデータを扱うことが難しいという問題があった。【００１１】
本発明は、上記課題に鑑みてなされたものであり、その目的は、大容量のデータを高速に扱うことが可能な情報処理装置を実現することにある。
【課題を解決するための手段】
【００１２】
本発明の一態様に係る情報処理装置は、キャッシュメモリを内蔵するデータキャッシュ装置と、前記キャッシュメモリより容量の大きい大容量メモリを内蔵する管理装置とを備え、前記データキャッシュ装置は、情報処理装置の外部から読出し要求または書込み要求を受信したとき、前記キャッシュメモリに格納されている所定の条件のデータを、前記大容量メモリに配置するよう制御するデータキャッシュ制御手段を備え、前記データキャッシュ制御手段は、受信した要求が書込み要求であるとき、前記書込み要求に従って、書込み対象となるデータを前記キャッシュメモリに書込み、前記要求が読出し要求であるとき、前記読出し要求に従って読み出されたデータを前記キャッシュメモリに書込む。【００１３】
本発明の一態様に係るデータキャッシュ装置は、キャッシュメモリを内蔵し、前記キャッシュメモリより容量の大きい大容量メモリを内蔵する管理装置と接続されたデータキャッシュ装置であって、前記データキャッシュ装置および前記管理装置の外部から読出し要求または書込み要求を受信したとき、前記キャッシュメモリに格納されている所定の条件のデータを、前記大容量メモリに配置するよう制御するデータキャッシュ制御手段を備え、前記データキャッシュ制御手段は、受信した要求が書込み要求であるとき、前記書込み要求に従って、書込み対象となるデータを前記キャッシュメモリに書込み、前記要求が読出し要求であるとき、前記読出し要求に従って読み出されたデータを前記キャッシュメモリに書込む。【００１４】
本発明の一態様に係る情報処理方法は、キャッシュメモリを内蔵するデータキャッシュ装置と、前記キャッシュメモリより容量の大きい大容量メモリを内蔵する管理装置とを備える情報処理装置の情報処理方法であって、前記情報処理装置の外部から読出し要求または書込み要求を受信し、前記受信した要求が書込み要求であるとき、前記キャッシュメモリに格納されている所定の条件のデータを前記大容量メモリに配置するよう制御し、更に、前記書込み要求に従って、書込み対象となるデータを前記キャッシュメモリに書込み、前記受信した要求が読出し要求であるとき、前記所定の条件のデータを前記大容量メモリに配置するよう制御し、更に、前記読出し要求に従って読み出されたデータを前記キャッシュメモリに書込む。【００１５】
本発明の一態様に係るデータキャッシュ方法は、キャッシュメモリを内蔵し、前記キャッシュメモリより容量の大きい大容量メモリを内蔵する管理装置と接続されたデータキャッシュ装置のデータキャッシュ方法であって、前記データキャッシュ装置および前記管理装置の外部から読出し要求または書込み要求を受信し、前記受信した要求が書込み要求であるとき、所定の条件のデータを前記大容量メモリに配置するよう制御し、更に、前記書込み要求に従って、書込み対象となるデータを前記キャッシュメモリに書込み、前記受信した要求が読出し要求であるとき、所定の条件のデータを前記大容量メモリに配置するよう制御し、更に、前記読出し要求に従って読み出されたデータを前記キャッシュメモリに書込む。
【発明の効果】
【００１６】
本発明によれば、大容量のデータをより高速に扱うことが可能となる。
【図面の簡単な説明】
【００１７】
【図１】本発明の第１の実施の形態に係る情報処理装置のハードウェア構成の一例を示すブロック図である。
【図２】読出し／書込み要求および読出し／書込み応答のデータ構造の一例について説明するための図である。
【図３】本発明の第１の実施の形態に係るデータキャッシュ装置のアクセラレータの機能構成の一例を示す機能ブロック図である。
【図４】本発明の第１の実施の形態に係るデータキャッシュ制御部の機能構成の一例を示す機能ブロック図である。
【図５】本発明の第１の実施の形態に係るテーブル記憶部に記憶された管理テーブルの一例を示す図である。
【図６】本発明の第１の実施の形態に係るデータキャッシュ装置の処理の流れの一例を示すフローチャートである。
【図７】書込み要求または読出し要求がデータキャッシュ装置で扱う要求ではない場合におけるデータキャッシュ装置の処理の流れの一例を示すフローチャートである。
【図８】読出し要求がデータキャッシュ装置で扱う要求であり、かつ、読出し要求に対応するデータが小容量メモリに存在する場合におけるデータキャッシュ装置の処理の流れの一例を示すフローチャートである。
【図９】読出し要求がデータキャッシュ装置で扱う要求であり、且つ、読出し要求に対応するデータが小容量メモリに存在しない場合におけるデータキャッシュ装置の処理の流れの一例を示すフローチャートである。
【図１０】図９の場合において、小容量メモリの空き領域の大きさが上記読出し要求によって読み出されたデータのデータ長より小さい場合におけるデータキャッシュ装置の処理の流れの一例を示すフローチャートである。
【図１１】書込み要求がデータキャッシュ装置で扱う要求であり、かつ、書込み要求に対応するデータが小容量メモリに存在する場合におけるデータキャッシュ装置の処理の流れの一例を示すフローチャートである。
【図１２】書込み要求がデータキャッシュ装置で扱う要求であり、書込み要求に対応するデータが小容量メモリに存在しない場合におけるデータキャッシュ装置の処理の流れの一例を示すフローチャートである。
【図１３】書込み要求がデータキャッシュ装置で扱う要求であり、書込み要求に対応するデータが小容量メモリに存在しない場合におけるデータキャッシュ装置の処理の流れの他の一例を示すフローチャートである。
【図１４】本発明の第２の実施の形態に係る情報処理装置のハードウェア構成の一例を示すブロック図である。
【図１５】本発明の第２の実施の形態に係るデータキャッシュ装置のアクセラレータの機能構成の一例を示す機能ブロック図である。
【図１６】本発明の第２の実施の形態に係るデータキャッシュ制御部の機能構成の一例を示す機能ブロック図である。
【図１７】本発明の第２の実施の形態に係る管理テーブルの一例を示す図である。
【図１８】本発明の第３の実施の形態に係る情報処理装置の構成の一例を示すブロック図である。
【図１９】本発明の第４の実施の形態に係る情報処理装置のハードウェア構成の一例を示すブロック図である。
【図２０】本発明の第４の実施の形態に係るデータキャッシュ装置の第２のアクセラレータの機能構成の一例を示す機能ブロック図である。
【図２１】本発明の第４の実施の形態に係るデータキャッシュ装置の第２のアクセラレータの処理の流れの一例を示す図である。
【発明を実施するための形態】
【００１８】
＜第１の実施の形態＞
以下に、本発明の第１の実施の形態について、図面を参照して詳細に説明する。
【００１９】
（情報処理装置１００）
図１は、本発明の第１の実施の形態に係る情報処理装置１００のハードウェア構成の一例を示すブロック図である。図１に示すように、情報処理装置１００は、データキャッシュ装置１０１、インメモリ型情報処理装置１０２および通信Ｉ／Ｆ（インタフェース）１０３を備えている。データキャッシュ装置１０１は、アクセラレータ１と、小容量メモリ２とを備えている。インメモリ型情報処理装置１０２は、一般的なサーバに備えられるＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）４と、上記小容量メモリ２より容量が大きい大容量メモリ５と、を備えている。本実施の形態におけるインメモリ型情報処理装置１０２は、大容量メモリ５を内蔵するデータベース管理サーバ装置として機能する。
【００２０】
通信Ｉ／Ｆ１０３は、ネットワークからの読出し／書込み要求を受信し、アクセラレータ１に供給する。また、アクセラレータ１から供給された上記読出し／書込み要求に対する読出し／書込み応答をネットワークに返す。
【００２１】
アクセラレータ１は、小容量メモリ２に接続しており、ＣＰＵ４とデータ、読出し／書込み要求などの送受信を行う。アクセラレータ１は、ＦＰＧＡ、メニーコアプロセッサ等で実現される。アクセラレータ１は、通信Ｉ／Ｆ１０３が受信した読出し／書込み要求を受信する。また、アクセラレータ１は、読出し／書込み応答を通信Ｉ／Ｆ１０３に返す。アクセラレータ１の機能構成については、図面を変えて説明する。
【００２２】
ＣＰＵ４は、大容量メモリ５を活用した、いわゆるインメモリ型のデータベース管理システムに相当するデータ管理部を備えている。ＣＰＵ４のデータ管理部は、アクセラレータ１から読出し／書込み要求を受理し、対応する処理を行う。そして、ＣＰＵ４は、読出し／書込み応答をアクセラレータ１に返す。本実施の形態に係るＣＰＵ４は、一般的なＣＰＵであるため、詳細な説明を省略する。
【００２３】
ここで、読出し／書込み要求および読出し／書込み応答のデータ構造について説明する。図２は、読出し／書込み要求および読出し／書込み応答のデータ構造の一例について説明するための図である。図２に示す通り、書込み要求＃１０は、要求種別である「ＳＥＴ」と、属性名と、固有データと、保持期間と、データ長と、データとから構成される。属性名は、データを参照するためのものであり、小容量メモリ２または大容量メモリ５にデータを格納する際、該データを特定するための一意的な情報である。属性名は、例えば、ＩＤ（ｉｄｅｎｔｉｆｉｅｒ）などの識別子によって表される。
【００２４】
固有データは、要求の一意性を保証するものである。保持期間は、格納したデータを保持する期間を示すものである。データ長は、書込み対象のデータの長さを示す。以降、書込み対象のデータを「書込みデータ」と呼ぶ。
【００２５】
書込み要求＃１０に対する応答である書込み応答＃１５は、応答情報を含んでいる。応答情報とは、上記書込み要求＃１０による書込みが正常に終了したか否かを示す情報である。
【００２６】
読出し要求＃２０は、要求種別である「ＧＥＴ」と、属性名とから構成される。読出し要求＃２０に対する読出し応答＃２５は、応答種別である「ＶＡＬＵＥ」と、前記読出し要求＃２０に対応する属性名と、固有データと、データ長と、データと、を含む。固有データは、前記読出し要求＃２０に対応する属性名を含んだ書込み要求＃１０に含まれる固有データに相当する。
【００２７】
なお、書込み要求＃１０、読出し要求＃２０の属性名は１つしか含んでいないが、複数に拡張することが可能である。その場合、読出し応答＃２５は、属性名毎に複数の応答を含む。
【００２８】
なお、図２に示した書込み要求＃１０、書込み応答＃１５、読出し要求＃２０および読出し応答＃２５のデータ構造は一例であり、これに限定されるものではない。
【００２９】
（アクセラレータ１）
次に、図３を参照して、データキャッシュ装置１０１のアクセラレータ１について説明する。図３は、データキャッシュ装置１０１のアクセラレータ１の機能構成の一例を示す機能ブロック図である。
【００３０】
アクセラレータ１は、高速にネットワークからの要求を処理するデータキャッシュ部１０を備えている。データキャッシュ部１０は、図３に示すように、コマンド解釈部１１、データキャッシュ制御部１２、データ読出し部１３、データ書込み部１４、リフィル制御部１５およびコマンド応答部１６を備えている。
【００３１】
コマンド解釈部１１は、読出し／書込み要求を通信Ｉ／Ｆ１０３から受信し、受信した要求を解釈することにより、該要求がデータキャッシュ装置１０１で処理する要求であるか否かを判定する判定手段である。データキャッシュ装置１０１で処理する要求であるか否かの判定は、例えば、読出し要求＃２０および書込み要求＃１０に含まれる属性名に含まれる文字列、書込み要求＃１０に含まれるデータ長などに基づいて行う。なお、判定の基準となるものはこれに限定されるものではない。コマンド解釈部１１は、受信した要求がデータキャッシュ装置１０１で処理する要求であると判定した場合、該要求をデータキャッシュ制御部１２に供給する。一方、コマンド解釈部１１は、受信した要求がデータキャッシュ装置１０１で処理する要求ではないと判定した場合、該要求をリフィル制御部１５へ供給する。
【００３２】
これにより、データキャッシュ装置１０１は、受信した要求を適した装置で処理するよう制御することができる。したがって、データキャッシュ装置１０１で処理すべきデータをインメモリ型情報処理装置１０２に供給することなく、データキャッシュ装置１０１で処理することができるため、より好適にデータ処理の高速化を実現することができる。
【００３３】
データキャッシュ制御部１２は、コマンド解釈部１１がデータキャッシュ装置１０１で処理する要求であると判定した要求を、コマンド解釈部１１から受け取る。データキャッシュ制御部１２は、受け取った書込み要求＃１０に含まれる書込み対象となるデータ、または、受け取った読出し要求＃２０によって読出し対象となるデータが、小容量メモリ２に存在するか否かを確認する。
【００３４】
なお、以下では、「書込み要求＃１０に含まれる書込み対象となるデータ」、および、「読出し要求＃２０によって読出し対象となるデータ」をそれぞれ、「書込み要求＃１０に対応するデータ」および「読出し要求＃２０に対応するデータ」とも呼ぶ。また、読出し要求＃２０によって読み出されたデータを、「読出しデータ」とも呼ぶ。
【００３５】
データキャッシュ制御部１２は、各要求に対応するデータが小容量メモリ２に存在する場合、各要求に従って、データ読出し部１３またはデータ書込み部１４に対して読出し指示または書込み指示を行う。
【００３６】
また、データキャッシュ制御部１２は、書込み要求＃１０に対応する書込みデータが小容量メモリ２に存在しない場合、小容量メモリ２の空き領域を確認し、上記空き領域の大きさと、上記書込みデータのデータ長とを比較する。
【００３７】
そして、データキャッシュ制御部１２は、上記データ長が上記空き領域の大きさ以下の場合、書込み要求＃１０に従って、データ書込み部１４に対して書込み指示を行う。
【００３８】
また、データキャッシュ制御部１２は、読出し要求＃２０に対応するデータが小容量メモリ２に存在しない場合、該読出し要求＃２０をリフィル制御部１５に転送する。そして、データキャッシュ制御部１２は、リフィル制御部１５から上記読出し要求＃２０に対応する読出しデータを受信し、該読出しデータのデータ長と、小容量メモリ２の上記空き領域の大きさとを比較する。
【００３９】
そして、データキャッシュ制御部１２は、上記データ長が上記空き領域の大きさ以下の場合、上記読出し要求＃２０に従って読み出されたデータ（読出しデータ）を小容量メモリ２に書き込むよう、データ書込み部１４に対して書込み指示を行う。
【００４０】
また、データキャッシュ制御部１２は、以下の条件を満たす場合、小容量メモリ２に格納されたデータに対し、各データの最後に参照された日時を確認し、参照度合いがより低いデータを選択する。
条件：小容量メモリ２の空き領域の大きさが書込み要求＃１０に含まれるデータ長または読出し要求＃２０に対応する読出しデータのデータ長より小さい。
そして、選択したデータを大容量メモリ５に配置するよう、リフィル制御部１５に指示し、受信した要求に対応するデータを小容量メモリ２に配置するようデータ書込み部１４に指示する。
【００４１】
また、データキャッシュ制御部１２は、データ読出し部１３から読出し指示に対する応答（データ読出し部１３が読み出した読出しデータ）を受け取り、該応答をコマンド応答部１６に供給する。また、データキャッシュ制御部１２は、データ書込み部１４から書込み指示に対する応答を受け取り、該応答をコマンド応答部１６に供給する。
【００４２】
なお、データキャッシュ制御部１２の詳細な構成については、図面を変えて説明する。
【００４３】
データ読出し部１３は、データキャッシュ制御部１２からの指示に基づき、小容量メモリ２から、指定された長さのデータを読み出す。データ読出し部１３は、読み出したデータを読出し指示に対する応答として、データキャッシュ制御部１２に供給する。
【００４４】
データ書込み部１４は、データキャッシュ制御部１２からの指示に基づき、小容量メモリ２へ、指定された長さのデータを書き込む。データ書込み部１４は、データの書き込みが正常に終了したか否かを示す応答を、データキャッシュ制御部１２に供給する。
【００４５】
リフィル制御部１５は、コマンド解釈部１１またはデータキャッシュ制御部１２から供給された書込み要求＃１０または読出し要求＃２０を、インメモリ型情報処理装置１０２に送信する。
【００４６】
また、リフィル制御部１５は、書込み要求＃１０または読出し要求＃２０に対応する応答をインメモリ型情報処理装置１０２から受信する。リフィル制御部１５は、上記要求の要求元および受信した応答に対応する要求の要求種別（書込み要求＃１０か読出し要求＃２０か）に応じて、上記応答を、コマンド応答部１６および／またはデータキャッシュ制御部１２に供給する。
【００４７】
コマンド応答部１６は、リフィル制御部１５またはデータキャッシュ制御部１２から供給された応答に基づき、書込み応答＃１５または読出し応答＃２５を作成し、通信Ｉ／Ｆ１０３に送信する。
【００４８】
なお、本実施の形態においては、参照度合いがより低いデータを大容量メモリ５へ配置する方法を例に説明を行うが、本発明はこれに限定されるものではない。データキャッシュ制御部１２の指示により、小容量メモリ２へ配置するデータは、ＦＩＦＯ（Ｆｉｒｓｔ  Ｉｎ  Ｆｉｒｓｔ  Ｏｕｔ）オーダ、ランダムオーダなどの順で配置してもよい。
【００４９】
また、本実施の形態においては、データキャッシュ装置１０１が書込み要求＃１０を受信した際に、書込み要求＃１０に含まれる書込み対象となるデータが小容量メモリ２に存在しない場合には、小容量メモリ２に書き込む方法を例に説明を行うが、本発明はこれに限定されるものではない。上記場合には、データキャッシュ装置１０１は、インメモリ型情報処理装置１０２へと書込み要求＃１０を送信する構成であってもよい。本実施の形態では、データキャッシュ装置１０１のデータキャッシュ部１０として、マイクロプロセッサのキャッシュ構成における設計パラメータと同等のパラメータを採用することができる。
【００５０】
（データキャッシュ制御部１２の構成の詳細）
次に、図４を参照して、データキャッシュ制御部１２の構成の詳細について説明する。図４は、データキャッシュ制御部１２の詳細な機能構成を示す機能ブロック図である。図４に示す通り、データキャッシュ制御部１２は、管理テーブル制御部１２１、データ制御部１２２およびテーブル記憶部１２３を備えている。
【００５１】
テーブル記憶部１２３は、管理テーブル１２４を記憶する手段である。管理テーブル１２４は、小容量メモリ２に記憶されているデータに対する情報を管理するためのものである。ここで、図５を参照して、管理テーブル１２４について説明する。図５は、テーブル記憶部１２３に記憶された管理テーブル１２４の一例を示す図である。図５に示す通り、管理テーブル１２４には、データの状態と、属性名と、データの先頭アドレスと、データ長とがそれぞれ対応付けられて格納されている。管理テーブル１２４の各行は、エントリとも呼ぶ。このように、本実施の形態に係る管理テーブル１２４には、状態、属性名、データの先頭アドレスおよびデータ長を１エントリとする複数のエントリが含まれている。なお、管理テーブル１２４の各列は、これに限定されるものではなく、データキャッシュ装置１０１が扱うデータを示す情報であればよい。
【００５２】
属性名は、データを特定するためのものであり、書込み要求＃１０、読出し要求＃２０および読出し応答＃２５に含まれる属性名に相当するものである。
【００５３】
データの先頭アドレスは、小容量メモリ２に記録されたデータの、小容量メモリ２における先頭アドレスを示している。データ長は、該データの長さを示している。状態は、データの状態を示すものであり、例えば、マイクロプロセッサのキャッシュと同様に、「インバリッド」、「クリーン」、「ダーティ」および「リフィルクリーン」で表される。
【００５４】
以下、データの各状態について説明する。「インバリッド」は、該状態を有したエントリが無効であることを示している。
【００５５】
「クリーン」は、該状態を有したエントリが有効であり、データが小容量メモリ２に存在しており、且つ、該データはインメモリ型情報処理装置１０２の大容量メモリ５に格納されたデータと一致している状態である。ここで、小容量メモリ２に格納されたデータと、大容量メモリ５に格納されたデータとが一致している状態とは、大容量メモリ５に格納されたデータを小容量メモリ２にキャッシュしたあとに、インメモリ型情報処理装置１０２にデータを渡すことなくデータを書き込んだ（更新した）ことがないことを示している。
【００５６】
「ダーティ」は、該状態を有したエントリが有効であり、データが小容量メモリ２に存在しており、且つ、該データはインメモリ型情報処理装置１０２の大容量メモリ５に格納されたデータと一致していない状態である。ここで、小容量メモリ２に格納されたデータと、大容量メモリ５に格納されたデータとが一致していない状態とは、大容量メモリ５に格納されたデータを小容量メモリ２にキャッシュしたあとに、インメモリ型情報処理装置１０２にデータを渡すことなくデータを書き込んだ（更新した）ことがあることを示している。
【００５７】
「リフィルクリーン」は、該状態を有したエントリが有効であり、データが小容量メモリ２に存在しておらず、且つ、インメモリ型情報処理装置１０２へ該データの読出し要求をしている状態である。
【００５８】
なお、データの状態は、上記４つに限定されるものではない。例えば、キャッシュを構成しうる様々な状態（非特許文献２参照）であってもよい。
【００５９】
このように、本実施の形態に係るデータキャッシュ装置１０１のデータキャッシュ制御部１２は、マイクロプロセッサのキャッシュとは異なり、属性名、データの先頭アドレス、データ長等の情報を活用している。なお、本実施の形態では、キャッシュのウェイ数（データの格納候補場所）はフルアソシアティブ（任意の場所に格納可能）として説明するが、このウェイ数も、マイクロプロセッサのキャッシュのように、１から任意数まで可変にすることが可能である。
【００６０】
また、上記データの情報に対し、該データの状態を示す状態情報が対応付けられているため、データが有効か否か、小容量メモリ２に格納されたデータと、大容量メモリ５に格納されたデータとが一致しているか否かなどの情報を容易に確認することができる。
【００６１】
なお、図５の各エントリにおける各値は一例であり、これに限定されるものではない。
【００６２】
図４に戻り、データキャッシュ制御部１２の各機能について説明する。管理テーブル制御部１２１は、管理テーブル１２４を管理する手段である。管理テーブル制御部１２１は、管理テーブル１２４のエントリを更新、または、管理テーブル１２４にエントリを追加する。
【００６３】
また、管理テーブル制御部１２１は、コマンド解釈部１１から要求を受け取る。管理テーブル制御部１２１は、管理テーブル１２４を参照して、受け取った書込み要求＃１０に対応するデータ、または、受け取った読出し要求＃２０に対応するデータが、小容量メモリ２に存在するか否かを確認する。各要求に対応するデータが小容量メモリ２に存在するか否かの確認は、管理テーブル１２４に含まれるエントリのうち、状態が「クリーン」または「ダーティ」のエントリの属性名が、各要求に含まれる属性名と一致するか否かを確認することにより、行われる。このように、管理テーブル制御部１２１が管理テーブル１２４を参照することにより、読出し／書込み要求に対応するデータが小容量メモリ２に存在するか否かを、容易に確認することができる。
【００６４】
また、管理テーブル制御部１２１は、管理テーブル１２４を参照して、小容量メモリ２の空き領域を管理する。なお、本実施の形態において、管理テーブル制御部１２１は、管理テーブル１２４に含まれるエントリに含まれるデータの先頭アドレスおよび該データのデータ長に基づいて小容量メモリ２の空き領域の管理をすることを例に説明を行うが、本発明はこれに限定されるものではない。例えば、管理テーブル制御部１２１またはデータ制御部１２２が小容量メモリ２にアクセスし、空き領域を確認する構成であってもよい。
【００６５】
管理テーブル制御部１２１は、（１）要求種別（書込み要求＃１０か読出し要求＃２０か）、（２）要求に対応するデータが小容量メモリ２に存在するか否か、（３）各要求に対応するデータのデータ長以上の大きさの空き領域があるか否か、に応じて、データ制御部１２２またはリフィル制御部１５に指示を発行する。
【００６６】
また、管理テーブル制御部１２１は、小容量メモリ２に格納されたデータに対し、各データの最後に参照された日時を確認し、参照度合いが低いデータを選択する。参照度合いが低いデータのエントリとは、例えば、（ａ）状態がインバリッドのエントリ、（ｂ）最後に参照された日時が最も古いデータのエントリ、のうちの少なくとも何れかであるとするがこれに限定されるものではない。そして、管理テーブル制御部１２１は、選択したエントリのデータの先頭アドレスおよびデータ長をデータ制御部１２２に供給する。
【００６７】
なお、データキャッシュ制御部１２の管理テーブル制御部１２１が、参照度合いが低いと判定するエントリの順は、上記（ａ）、（ｂ）の順であるとするが、これに限定されるものではない。データキャッシュ制御部１２の管理テーブル制御部１２１は、選択したエントリの情報を保存する。以降、選択したエントリを「置換対象エントリ」と呼び、該エントリに対応するデータを「置換対象データ」と呼ぶ。
【００６８】
なお、置換対象データの特定のために、ＬＲＵ（Ｌｅａｓｔ  Ｒｅｃｅｎｔｌｙ  Ｕｓｅｄ）テーブル、ＦＩＦＯ順序テーブル等を設けて、各データに対する付加情報を管理してもよい。置換対象データの特定のために参照する、データの参照日時の情報は、一般的なキャッシュが有する情報であるため、説明を省略する。
【００６９】
データ制御部１２２は、管理テーブル制御部１２１からデータの先頭アドレスおよびデータ長を供給されると、該データの先頭アドレスから該データ長分のデータを読み出す読出し指示を作成する。データ制御部１２２は、作成した読出し指示をデータ読出し部１３に送信する。
【００７０】
また、データ制御部１２２は、管理テーブル制御部１２１からデータの先頭アドレス、データ長およびデータを供給されると、該データを、該データの先頭アドレスから該データ長分書き込む書込み指示を作成する。データ制御部１２２は、作成した書込み指示をデータ書込み部１４に送信する。
【００７１】
データ制御部１２２は、データ読出し部１３およびデータ書込み部１４からの応答を受信する。データ制御部１２２は、受信した応答を、コマンド応答部１６に供給する。
【００７２】
また、データ制御部１２２は、置換対象データの読出し要求＃２０に対する応答を受け取った場合、読み出したデータを大容量メモリ５に書き込むための書込み要求＃１０を作成する。データ制御部１２２は、作成した書込み要求＃１０をリフィル制御部１５に送信する。
【００７３】
（データキャッシュ装置１０１の処理の流れ）
次に、図６から図１３を参照して、本実施の形態に係る情報処理装置１００のデータキャッシュ装置１０１の処理の流れについて説明する。
【００７４】
図６は、本実施の形態に係るデータキャッシュ装置１０１の処理の流れの一例を示すフローチャートである。図６に示す通り、データキャッシュ装置１０１は、以下のステップＳ６１〜Ｓ６６の処理を行う。
【００７５】
ステップＳ６１：コマンド解釈部１１が、通信Ｉ／Ｆ１０３から書込み要求＃１０または読出し要求＃２０を受信する。
【００７６】
ステップＳ６２：コマンド解釈部１１は、ステップＳ６１で受信した書込み要求＃１０または読出し要求＃２０がデータキャッシュ装置１０１で扱う要求か否かを判定する。上記書込み要求＃１０または読出し要求＃２０がデータキャッシュ装置１０１で扱う要求の場合（ＹＥＳの場合）、ステップＳ６３に進む。書込み要求＃１０または読出し要求＃２０がデータキャッシュ装置１０１で扱う要求ではない場合（ＮＯの場合）、処理Ａ（図７参照）に進む。
【００７７】
ステップＳ６３：データキャッシュ制御部１２が、コマンド解釈部１１から供給された要求が書込み要求＃１０か読出し要求＃２０かを判定する。供給された要求が読出し要求＃２０の場合、ステップＳ６４に進む。コマンド解釈部１１から供給された要求が書込み要求＃１０の場合、ステップＳ６５に進む。
【００７８】
ステップＳ６４：データキャッシュ制御部１２が、コマンド解釈部１１から供給された読出し要求＃２０に対応するデータが小容量メモリ２に存在するか否かを確認する。具体的には、データキャッシュ制御部１２の管理テーブル制御部１２１は、上記読出し要求＃２０に含まれる属性名が、管理テーブル１２４に含まれるか否かを確認する。上記読出し要求＃２０に対応するデータが小容量メモリ２に存在する場合（ＹＥＳの場合）、処理Ｂ（図８参照）に進む。上記読出し要求＃２０に対応するデータが小容量メモリ２に存在しない場合（ＮＯの場合）、処理Ｃ（図９参照）に進む。
【００７９】
ステップＳ６５：データキャッシュ制御部１２が、コマンド解釈部１１から供給された書込み要求＃１０に対応するデータが小容量メモリ２に存在するか否かを確認する。具体的には、データキャッシュ制御部１２の管理テーブル制御部１２１は、上記書込み要求＃１０に含まれる属性名が、管理テーブル１２４に含まれるか否かを確認する。上記書込み要求＃１０に対応するデータが小容量メモリ２に存在する場合（ＹＥＳの場合）、処理Ｅ（図１１参照）に進む。上記書込み要求＃１０に対応するデータが小容量メモリ２に存在しない場合（ＮＯの場合）、ステップＳ６６に進む。
【００８０】
ステップＳ６６：データキャッシュ制御部１２は、小容量メモリ２の空き領域の大きさが上記書込み要求＃１０に含まれるデータ長以上か否かを判定する。上記空き領域の大きさが上記データ長以上の場合（ＹＥＳの場合）、処理Ｆ（図１２参照）に進む。上記空き領域の大きさが上記データ長より小さい場合（ＮＯの場合）、処理Ｇ（図１３参照）に進む。
【００８１】
（書込み要求＃１０または読出し要求＃２０がデータキャッシュ装置１０１で扱う要求ではない場合におけるデータキャッシュ装置１０１の処理の流れ）
図７を参照して、書込み要求＃１０または読出し要求＃２０がデータキャッシュ装置１０１で扱う要求ではない場合におけるデータキャッシュ装置１０１の処理の流れについて説明する。図７は、書込み要求＃１０または読出し要求＃２０がデータキャッシュ装置１０１で扱う要求ではない場合におけるデータキャッシュ装置１０１の処理の流れの一例を示すフローチャートである。図６のステップＳ６２にてＮＯの場合、コマンド解釈部１１が、リフィル制御部１５へ書込み要求＃１０または読出し要求＃２０を供給する。そして、図７に示す通り、データキャッシュ装置１０１は、以下のステップＳ７１〜Ｓ７４の処理を行う。
【００８２】
ステップＳ７１：リフィル制御部１５が、インメモリ型情報処理装置１０２へ、コマンド解釈部１１から供給された書込み要求＃１０または読出し要求＃２０を送信する。
【００８３】
ステップＳ７２：リフィル制御部１５が、要求元のネットワーク情報を保存する。なお、ステップＳ７２は、ステップＳ７１と同時に行ってもよいし、ステップＳ７１の前に行ってもよい。
【００８４】
ステップＳ７３：リフィル制御部１５が、インメモリ型情報処理装置１０２から、ステップＳ７１にて送信した要求に対する応答を受信する。
【００８５】
ステップＳ７４：該要求の要求元がネットワークに接続された他の装置であり、該要求がコマンド解釈部１１から供給されたものであるため、リフィル制御部１５は、ステップＳ７２で保存したネットワーク情報と、ステップＳ７３で受信した応答とを、コマンド応答部１６に供給する。コマンド応答部１６は、リフィル制御部１５から受信したネットワーク情報と応答とに基づき、上記ネットワーク情報を含んだ書込み応答＃１５または読出し応答＃２５を作成し、ネットワークへ送信する。
【００８６】
以上により、本実施の形態に係る情報処理装置１００は、データキャッシュ装置１０１で処理しない要求を、インメモリ型情報処理装置１０２で処理することができる。
【００８７】
（読出し要求＃２０がデータキャッシュ装置１０１で扱う要求であり、かつ、読出し要求＃２０に対応するデータが小容量メモリ２に存在する場合におけるデータキャッシュ装置１０１の処理の流れ）
図８を参照して、読出し要求＃２０がデータキャッシュ装置１０１で扱う要求であり、かつ、読出し要求＃２０に対応するデータが小容量メモリ２に存在する場合におけるデータキャッシュ装置１０１の処理の流れについて説明する。図８は、読出し要求＃２０がデータキャッシュ装置１０１で扱う要求であり、かつ、読出し要求＃２０に対応するデータが小容量メモリ２に存在する場合におけるデータキャッシュ装置１０１の処理の流れの一例を示すフローチャートである。図８に示す通り、データキャッシュ装置１０１は、以下のステップＳ８１〜Ｓ８３の処理を行う。
【００８８】
ステップＳ８１：データキャッシュ制御部１２は、読出し要求＃２０に従い、データ読出し部１３に対する読出し指示を作成する。具体的には、データキャッシュ制御部１２は、以下の（１）〜（３）の処理を行う。
（１）データキャッシュ制御部１２の管理テーブル制御部１２１が、ステップＳ６４において、読出し要求＃２０に含まれる属性名を有していると確認されたエントリにおける、データの先頭アドレスと該データのデータ長とを読み出す。
（２）データキャッシュ制御部１２の管理テーブル制御部１２１が、管理テーブル１２４から読み出した上記データの先頭アドレスおよび上記データ長をデータ制御部１２２へ供給する。
（３）データ制御部１２２が、上記先頭アドレスから上記データ長分のデータを、小容量メモリ２から読み出す読出し指示を作成し、データ読出し部１３へ送信する。
【００８９】
ステップＳ８２：データ読出し部１３が、ステップＳ８１で作成された読出し指示に従い、小容量メモリ２からデータを読み出す。
【００９０】
ステップＳ８３：コマンド応答部１６は、データ読出し部１３がステップＳ８２で読み出したデータを、読出し指示に対する応答として、データキャッシュ制御部１２のデータ制御部１２２から受け取る。そして、コマンド応答部１６は、受け取った上記応答に基づき、読出し要求＃２０に含まれる属性名を有した読出し応答＃２５を作成し、要求元のネットワーク情報とともにネットワークへ送信する。
【００９１】
以上により、情報処理装置１００は、データキャッシュ装置１０１で処理すると判定された読出し要求＃２０であり、該読出し要求＃２０に対応するデータが小容量メモリ２にある場合、該読出し要求＃２０を、該データキャッシュ装置１０１で処理する。
【００９２】
（読出し要求＃２０がデータキャッシュ装置１０１で扱う要求であり、且つ、読出し要求＃２０に対応するデータが小容量メモリ２に存在しない場合におけるデータキャッシュ装置１０１の処理の流れ）
図９を参照して、読出し要求＃２０がデータキャッシュ装置１０１で扱う要求であり、且つ、読出し要求＃２０に対応するデータが小容量メモリ２に存在しない場合におけるデータキャッシュ装置１０１の処理の流れについて説明する。図９は、読出し要求＃２０がデータキャッシュ装置１０１で扱う要求であり、且つ、読出し要求＃２０に対応するデータが小容量メモリ２に存在しない場合におけるデータキャッシュ装置１０１の処理の流れの一例を示すフローチャートである。図９に示す通り、データキャッシュ装置１０１は、以下のステップＳ９０〜Ｓ９９の処理を行う。
【００９３】
ステップＳ９０：データキャッシュ制御部１２の管理テーブル制御部１２１が、管理テーブル１２４に含まれるエントリのうち、参照度合いが低いデータのエントリを抽出する。なお、本例では、参照度合いが低いデータのエントリは、（ａ）状態が「インバリッド」のエントリ、（ｂ）最後に参照された日時が最も古いデータのエントリ、の順で抽出されることを例に説明を行う。また、（ｂ）の場合において、管理テーブル制御部１２１は、最後に参照された日時が最も古いデータのエントリが複数ある場合、該エントリに含まれるデータ長が最も大きいエントリを抽出してもよい。また、管理テーブル制御部１２１は、最後に参照された日時が所定の期間より前のデータのエントリのうち、データ長が最も大きいデータのエントリを抽出してもよい。データキャッシュ制御部１２の管理テーブル制御部１２１は、抽出したエントリの状態を「リフィルクリーン」に更新する。以降、抽出したエントリを「置換候補エントリ」と呼ぶ。管理テーブル制御部１２１は、置換候補エントリの情報（属性名、データの先頭アドレスおよびデータ長）と、「リフィルクリーン」へ状態を更新する前の状態と、を保存する。
【００９４】
ステップＳ９１：リフィル制御部１５が、インメモリ型情報処理装置１０２へ、データキャッシュ制御部１２から供給された読出し要求＃２０を送信する。
【００９５】
ステップＳ９２：リフィル制御部１５が、要求元のネットワーク情報を保存する。なお、ステップＳ９２は、ステップＳ９１と同時に行ってもよいし、ステップＳ９１の前に行ってもよい。
【００９６】
ステップＳ９３：リフィル制御部１５が、インメモリ型情報処理装置１０２から、ステップＳ９１にて送信した読出し要求＃２０に対する応答（インメモリ型情報処理装置１０２が読み出した読出しデータ）を受信する。そして、該要求の要求元がネットワークに接続された他の装置であり、該要求がデータキャッシュ制御部１２から供給されたものであるため、リフィル制御部１５は、ステップＳ９２で保存したネットワーク情報と、受信した応答とを、コマンド応答部１６およびデータキャッシュ制御部１２に供給する。
【００９７】
ステップＳ９４：データキャッシュ制御部１２の管理テーブル制御部１２１が、ステップＳ９３でリフィル制御部１５から供給された応答に基づき、インメモリ型情報処理装置１０２が読み出したデータ（読出し要求＃２０に対応する読出しデータ）のデータ長以上の大きさの空き領域が小容量メモリ２にあるか否かを確認する。読出し要求＃２０に対応するデータのデータ長以上の大きさの空き領域が小容量メモリ２にある場合（ＹＥＳの場合）、ステップＳ９６に進む。読出し要求＃２０に対応するデータのデータ長以上の大きさの空き領域が小容量メモリ２にない場合（ＮＯの場合）、ステップＳ９５に進む。
【００９８】
ステップＳ９５：データキャッシュ制御部１２は、読出しデータのデータ長以上の大きさの空き領域が小容量メモリ２にない場合の処理を行う。この処理は、図１０を用いて説明する。
【００９９】
ステップＳ９６：読出しデータのデータ長以上の大きさの空き領域が小容量メモリ２にある場合（ステップＳ９４にてＹＥＳの場合）、データキャッシュ制御部１２の管理テーブル制御部１２１が、管理テーブル１２４に、新たなエントリを追加する。管理テーブル制御部１２１は、追加したエントリの「状態」、「属性名」、「データの先頭アドレス」および「データ長」をそれぞれ、「クリーン」、読出し要求＃２０に含まれる属性名、空き領域のアドレス、および、上記読出しデータのデータ長、とする。また、ステップＳ９０で抽出した置換候補エントリの状態を、元の状態に更新する。
【０１００】
ステップＳ９７：データキャッシュ制御部１２は、読出しデータをデータ書込み部１４に書き込む書込み指示を作成する。具体的には、データキャッシュ制御部１２は、以下の（１）および（２）の処理を行う。
（１）データキャッシュ制御部１２の管理テーブル制御部１２１が、ステップＳ９６で追加したエントリに含まれるデータの先頭アドレス、データ長、並びに、読出しデータをデータ制御部１２２へ供給する。
（２）データ制御部１２２は、上記先頭アドレスから上記データ長分の上記データを、小容量メモリ２に書き込む書込み指示を作成し、データ書込み部１４へ送信する。
【０１０１】
ステップＳ９８：データ書込み部１４が、ステップＳ９７で作成された書込み指示に従い、小容量メモリ２にデータを書き込む。
【０１０２】
ステップＳ９９：コマンド応答部１６は、リフィル制御部１５から受信したネットワーク情報と応答とに基づき、上記ネットワーク情報を含んだ読出し応答＃２５を作成し、ネットワークへ送信する。
【０１０３】
以上により、本実施の形態に係る情報処理装置１００は、以下の（Ａ）〜（Ｃ）を満たす場合、読出し要求＃２０を、データキャッシュ装置１０１で処理し、更に、読み出したデータを小容量メモリ２に配置する。
（Ａ）データキャッシュ装置１０１で処理すると判定された読出し要求＃２０である、
（Ｂ）読出し要求＃２０に対応するデータが小容量メモリ２に存在しない、
（Ｃ）読出し要求＃２０に対応するデータのデータ長以上の大きさの空き領域が小容量メモリ２にある。
【０１０４】
（ステップＳ９５におけるデータキャッシュ装置１０１の処理の流れ）
図１０を参照して、上述したステップＳ９５の処理の流れについて説明する。具体的には、以下の（Ａ）〜（Ｃ）を満たす場合のデータキャッシュ装置１０１の処理の流れについて説明する。図１０は、以下の（Ａ）〜（Ｃ）を満たす場合におけるデータキャッシュ装置１０１の処理の流れの一例を示すフローチャートであり、図９のステップＳ９５の詳細な処理を示すものである。
（Ａ）読出し要求＃２０がデータキャッシュ装置１０１で扱う要求である、
（Ｂ）読出し要求＃２０に対応するデータが小容量メモリ２に存在しない、
（Ｃ）小容量メモリ２の空き領域の大きさが上記読出し要求＃２０によって読み出された読出しデータのデータ長より小さい。
図１０に示す通り、データキャッシュ装置１０１は、以下のステップＳ１００〜Ｓ１１０の処理を行う。
【０１０５】
ステップＳ１００：データキャッシュ制御部１２は、置換候補エントリのデータ長と小容量メモリ２の空き領域の大きさとの和が、読出し要求＃２０に対する応答（インメモリ型情報処理装置１０２が読み出した読出しデータ）のデータ長以上か否かを判定する。データ長以上の場合（ＹＥＳの場合）、ステップＳ１０２に進む。データ長より小さい場合（ＮＯの場合）、ステップＳ１０１に進む。
【０１０６】
ステップＳ１０１：データキャッシュ制御部１２の管理テーブル制御部１２１が、ステップＳ９０で抽出した置換候補エントリの状態を、「インバリッド」に更新し、処理を終了する。なお、管理テーブル制御部１２１は、上記置換候補エントリの状態を、元の状態に更新してもよい。
【０１０７】
ステップＳ１０２：データキャッシュ制御部１２の管理テーブル制御部１２１は、ステップＳ９０で保存した置換候補エントリの更新前の状態が「クリーン」か否かを確認する。更新前の状態が「クリーン」の場合（ＹＥＳの場合）、ステップＳ１０８に進む。更新前の状態が「クリーン」ではない場合（ＮＯの場合）、ステップＳ１０３に進む。
【０１０８】
ステップＳ１０３：データキャッシュ制御部１２は、上記置換候補エントリを置換対象エントリとし、データ読出し部１３に対する置換対象データの読出し指示を作成する。具体的には、データキャッシュ制御部１２は、以下の（１）および（２）の処理を行う。
（１）データキャッシュ制御部１２の管理テーブル制御部１２１が、ステップＳ９０で保存した、置換対象エントリ（置換候補エントリ）のデータの先頭アドレスと該データのデータ長とをデータ制御部１２２へ供給する。
（２）データ制御部１２２が、小容量メモリ２から、上記先頭アドレスから上記データ長分のデータを読み出す読出し指示を作成し、データ読出し部１３へ送信する。
【０１０９】
ステップＳ１０４：データ読出し部１３が、ステップＳ１０３で作成された読出し指示に従い、小容量メモリ２からデータ（置換対象データ）を読み出す。
【０１１０】
ステップＳ１０５：データキャッシュ制御部１２のデータ制御部１２２が、データ読出し部１３から、該データ読出し部１３がステップＳ１０４で読み出した置換対象データを受け取る。そして、データ制御部１２２は、該置換対象データの書込み要求＃１０を作成する。
【０１１１】
ステップＳ１０６：リフィル制御部１５が、インメモリ型情報処理装置１０２へ、ステップＳ１０５にてデータキャッシュ制御部１２のデータ制御部１２２が作成した置換対象データの書込み要求＃１０を送信する。
【０１１２】
ステップＳ１０７：リフィル制御部１５が、インメモリ型情報処理装置１０２から、ステップＳ１０６にて送信した書込み要求＃１０に対する応答を受信する。該要求の要求元がデータキャッシュ制御部１２であるため、リフィル制御部１５は、受信した応答を、データキャッシュ制御部１２に供給する。
【０１１３】
ステップＳ１０８：データキャッシュ制御部１２の管理テーブル制御部１２１は、置換対象エントリの「状態」および「データ長」をそれぞれ、「クリーン」および読出し要求＃２０に対応するデータのデータ長とする。なお、読出し要求＃２０に対応するデータを書き込む際に、小容量メモリ２の空き領域の位置および置換対象データの小容量メモリ２における配置位置によって、該データの先頭アドレスが変わる場合、管理テーブル制御部１２１は、上記置換対象エントリの「データの先頭アドレス」を更新する。
【０１１４】
ステップＳ１０９：データキャッシュ制御部１２は、読出し要求＃２０に対応する読出しデータの、データ書込み部１４に対する書込み指示を作成する。具体的には、データキャッシュ制御部１２は、以下の（１）および（２）の処理を行う。
（１）データキャッシュ制御部１２の管理テーブル制御部１２１が、ステップＳ１０８で更新したエントリに含まれるデータの先頭アドレス、並びに、読み出した読出しデータおよび該データのデータ長をデータ制御部１２２へ供給する。
（２）データ制御部１２２が、小容量メモリ２に、上記先頭アドレスから上記データ長分の上記データを書き込む書込み指示を作成し、データ書込み部１４へ送信する。
【０１１５】
ステップＳ１１０：データ書込み部１４が、ステップＳ１０９で作成された書込み指示に従い、小容量メモリ２にデータを書き込む。そして、図９のステップＳ９９に進む。
【０１１６】
なお、Ｓ１０７にて受信した、置換対象データの書込み要求＃１０に対する応答が、該書込みが正常に終了していない旨の応答である場合、データキャッシュ制御部１２は、上記ステップＳ１０８〜Ｓ１１０をスキップする。さらに、データキャッシュ制御部１２の管理テーブル制御部１２１は、置換対象エントリの状態を「インバリッド」にする、または、元の状態に戻す。
【０１１７】
ステップＳ１１０の後、図９のステップＳ９９では、上述したとおり、コマンド応答部１６が、リフィル制御部１５から受信したネットワーク情報と応答とに基づき、上記ネットワーク情報を含んだ読出し応答＃２５を作成し、ネットワークへ送信する。
【０１１８】
以上により、本実施の形態に係る情報処理装置１００は、以下の（Ａ）〜（Ｃ）を満たす場合、読出し要求＃２０に対応するデータをインメモリ型情報処理装置１０２から読出し、読み出した読出しデータを小容量メモリ２に配置するよう、置換対象データを選択する。
（Ａ）データキャッシュ装置１０１で処理すると判定された読出し要求＃２０である、
（Ｂ）読出し要求＃２０に対応するデータが小容量メモリ２に存在しない、
（Ｃ）読出し要求＃２０に対応するデータのデータ長以上の大きさの空き領域が小容量メモリ２にない。
そして、置換対象データのデータ長と小容量メモリ２の空き領域の大きさとの和が、読出しデータのデータ長以上の場合、データキャッシュ制御部１２は、読出しデータを小容量メモリ２に配置し、置換対象データを大容量メモリ５に配置する。
【０１１９】
これにより、情報処理装置１００は、参照度合いが高いデータ（例えば、読出しデータ）を、高速な小容量メモリ２に配置し、参照度合いが低いデータを大容量メモリ５に配置することができるため、より高速にデータ処理を行うことができる。
【０１２０】
（書込み要求＃１０がデータキャッシュ装置１０１で扱う要求であり、かつ、書込み要求＃１０に対応するデータが小容量メモリ２に存在する場合におけるデータキャッシュ装置１０１の処理の流れ）
図１１を参照して、書込み要求＃１０がデータキャッシュ装置１０１で扱う要求であり、かつ、書込み要求＃１０に対応するデータが小容量メモリ２に存在する場合におけるデータキャッシュ装置１０１の処理の流れについて説明する。図１１は、書込み要求＃１０がデータキャッシュ装置１０１で扱う要求であり、かつ、書込み要求＃１０に対応するデータが小容量メモリ２に存在する場合におけるデータキャッシュ装置１０１の処理の流れの一例を示すフローチャートである。図１１に示す通り、データキャッシュ装置１０１は、以下のステップＳ１１１〜Ｓ１１３の処理を行う。
【０１２１】
ステップＳ１１１：データキャッシュ制御部１２は、書込み要求＃１０に従い、データ書込み部１４に対する書込み指示を作成する。具体的には、データキャッシュ制御部１２は、以下の（１）〜（３）の処理を行う。
（１）データキャッシュ制御部１２の管理テーブル制御部１２１が、ステップＳ６５において、書込み要求＃１０に含まれる属性名を有していると確認されたエントリにおける、データの先頭アドレスを読み出す。
（２）データキャッシュ制御部１２の管理テーブル制御部１２１が、管理テーブル１２４から読み出した上記読出しデータの先頭アドレス、並びに、書込み要求＃１０に含まれるデータ長およびデータをデータ制御部１２２へ供給する。
（３）データ制御部１２２は、上記先頭アドレスから上記データ長分の上記データを、小容量メモリ２に書き込む書込み指示を作成し、データ書込み部１４へ送信する。
【０１２２】
ステップＳ１１２：データ書込み部１４が、ステップＳ１１１で作成された書込み指示に従い、小容量メモリ２にデータを書き込む。
【０１２３】
ステップＳ１１３：コマンド応答部１６は、データ書込み部１４がステップＳ１１２でデータの書込みに対する応答として、上記書込み要求＃１０に基づく書込みが正常に終了したか否かを示す応答情報を、データキャッシュ制御部１２のデータ制御部１２２から受け取る。そして、コマンド応答部１６は、受け取った上記応答に基づき、上記応答情報を含む書込み応答＃１５を作成し、要求元のネットワーク情報とともにネットワークへ送信する。
【０１２４】
以上により、情報処理装置１００は、データキャッシュ装置１０１で処理すると判定された書込み要求＃１０であり、該書込み要求＃１０に対応する書込みデータが小容量メモリ２に存在する場合、該書込み要求＃１０を該データキャッシュ装置１０１で処理する。
【０１２５】
（書込み要求＃１０がデータキャッシュ装置１０１で扱う要求であり、書込み要求＃１０に対応するデータが小容量メモリ２に存在しない場合におけるデータキャッシュ装置１０１の処理の流れ（１））
図１２を参照して、以下の（Ａ）〜（Ｃ）を満たす場合のデータキャッシュ装置１０１の処理の流れについて説明する。図１２は、以下の（Ａ）〜（Ｃ）を満たす場合におけるデータキャッシュ装置１０１の処理の流れの一例を示すフローチャートである。
（Ａ）書込み要求＃１０がデータキャッシュ装置１０１で扱う要求である、
（Ｂ）書込み要求＃１０に対応するデータが小容量メモリ２に存在しない、
（Ｃ）小容量メモリ２の空き領域の大きさが上記書込み要求＃１０に含まれるデータ長以上である。
図１２に示す通り、データキャッシュ装置１０１は、以下のステップＳ１２１〜Ｓ１２４の処理を行う。
【０１２６】
ステップＳ１２１：データキャッシュ制御部１２の管理テーブル制御部１２１が、管理テーブル１２４に、新たなエントリを追加する。管理テーブル制御部１２１は、追加したエントリの「状態」、「属性名」、「データの先頭アドレス」および「データ長」をそれぞれ、「ダーティ」、書込み要求＃１０に含まれる属性名、空き領域のアドレス、および、書込み要求＃１０に含まれるデータ長、とする。
【０１２７】
ステップＳ１２２：データキャッシュ制御部１２は、書込み要求＃１０に従い、データ書込み部１４に対する書込み指示を作成する。具体的には、データキャッシュ制御部１２は、以下の（１）および（２）の処理を行う。
（１）データキャッシュ制御部１２の管理テーブル制御部１２１が、ステップＳ１２１で追加したエントリに含まれるデータの先頭アドレス、並びに、書込み要求＃１０に含まれるデータ長およびデータをデータ制御部１２２へ供給する。
（２）データ制御部１２２は、上記先頭アドレスから上記データ長分の上記データを、小容量メモリ２に書き込む書込み指示を作成し、データ書込み部１４へ送信する。
【０１２８】
ステップＳ１２３：データ書込み部１４が、ステップＳ１２２で作成された書込み指示に従い、小容量メモリ２にデータを書き込む。
【０１２９】
ステップＳ１２４：コマンド応答部１６は、データ書込み部１４によるデータの書込み（ステップＳ１２３）に対する応答として、上記書込み要求＃１０に対するデータの書込みが正常に終了したか否かを示す応答情報を、データキャッシュ制御部１２のデータ制御部１２２から受け取る。そして、コマンド応答部１６は、受け取った上記応答に基づき、上記応答情報を含む書込み応答＃１５を作成し、要求元のネットワーク情報とともにネットワークへ送信する。
【０１３０】
なお、ステップＳ１２４において、書込み要求＃１０が正常に終了していない旨の応答情報である場合、データキャッシュ制御部１２の管理テーブル制御部１２１は、ステップＳ１２１で追加したエントリを削除する。
【０１３１】
以上により、本実施の形態に係る情報処理装置１００は、以下の（Ａ）〜（Ｃ）を満たす場合、書込み要求＃１０をデータキャッシュ装置１０１で処理する。
（Ａ）データキャッシュ装置１０１で処理すると判定された書込み要求＃１０である、
（Ｂ）書込み要求＃１０に対応するデータが小容量メモリ２に存在しない、
（Ｃ）書込み要求＃１０に対応するデータのデータ長以上の大きさの空き領域が小容量メモリ２にある。
【０１３２】
（書込み要求＃１０がデータキャッシュ装置１０１で扱う要求であり、書込み要求＃１０に対応するデータが小容量メモリ２に存在しない場合におけるデータキャッシュ装置１０１の処理の流れ（２））
図１３を参照して、以下の（Ａ）〜（Ｃ）を満たす場合のデータキャッシュ装置１０１の処理の流れについて説明する。図１３は、以下の（Ａ）〜（Ｃ）を満たす場合におけるデータキャッシュ装置１０１の処理の流れの一例を示すフローチャートである。
（Ａ）書込み要求＃１０がデータキャッシュ装置１０１で扱う要求である、
（Ｂ）書込み要求＃１０に対応するデータが小容量メモリ２に存在しない、
（Ｃ）小容量メモリ２の空き領域の大きさが上記書込み要求＃１０に含まれるデータ長より小さい。
図１３に示す通り、データキャッシュ装置１０１は、以下のステップＳ１３１〜Ｓ１４０の処理を行う。
【０１３３】
ステップＳ１３１：データキャッシュ制御部１２は、管理テーブル１２４に含まれるエントリのデータ長と小容量メモリ２の空き領域の大きさとの和が書込み要求＃１０に含まれるデータ長以上となるデータのうち、参照度合いが低いデータのエントリを置換対象エントリとして選択する。なお、本例では、参照度合いが低いデータのエントリは、（ａ）状態が「インバリッド」のエントリ、（ｂ）最後に参照された日時が最も古いデータのエントリ、の順で抽出されることを例に説明を行う。データキャッシュ制御部１２の管理テーブル制御部１２１は、選択した置換対象エントリの情報を保存する。
【０１３４】
ステップＳ１３２：データキャッシュ制御部１２の管理テーブル制御部１２１は、ステップＳ１３１で選択した置換対象エントリの「状態」および「データ長」をそれぞれ、「ダーティ」および書込み要求＃１０に含まれるデータ長とする。なお、書込み要求＃１０に含まれるデータを書き込む際に、小容量メモリ２の空き領域の位置および置換対象データの小容量メモリ２における配置位置によって、該データの先頭アドレスが変わる場合について説明する。この場合、管理テーブル制御部１２１は、上記選択したエントリの「データの先頭アドレス」を更新する。
【０１３５】
ステップＳ１３３：データキャッシュ制御部１２は、データ読出し部１３に対する置換対象データの読出し指示を作成する。具体的には、データキャッシュ制御部１２は、以下の（１）および（２）の処理を行う。
（１）データキャッシュ制御部１２の管理テーブル制御部１２１が、ステップＳ１３１で保存した置換対象エントリのデータの先頭アドレスと該データのデータ長をデータ制御部１２２へ供給する。
（２）データ制御部１２２が、小容量メモリ２から、上記先頭アドレスから上記データ長分のデータを読み出す読出し指示を作成し、データ読出し部１３へ送信する。
【０１３６】
ステップＳ１３４：データ読出し部１３が、ステップＳ１３３で作成された読出し指示に従い、小容量メモリ２からデータ（置換対象データ）を読み出す。
【０１３７】
ステップＳ１３５：データキャッシュ制御部１２は、書込み要求＃１０に従い、データ書込み部１４に対する書込み指示を作成する。具体的には、データキャッシュ制御部１２は、以下の（１）および（２）の処理を行う。
（１）データキャッシュ制御部１２の管理テーブル制御部１２１が、ステップＳ１３２で更新したエントリに含まれるデータの先頭アドレス、並びに、書込み要求＃１０に含まれるデータ長およびデータをデータ制御部１２２へ供給する。
（２）データ制御部１２２が、小容量メモリ２に、上記先頭アドレスから上記データ長分の上記データを書き込む書込み指示を作成し、データ書込み部１４へ送信する。
【０１３８】
ステップＳ１３６：データ書込み部１４が、ステップＳ１３５で作成された書込み指示に従い、小容量メモリ２にデータを書き込む。
【０１３９】
ステップＳ１３７：データキャッシュ制御部１２のデータ制御部１２２が、データ読出し部１３から、該データ読出し部１３がステップＳ１３４で読み出した置換対象データを受け取る。そして、データ制御部１２２は、該置換対象データの書込み要求＃１０を作成する。
【０１４０】
ステップＳ１３８：リフィル制御部１５が、インメモリ型情報処理装置１０２へ、ステップＳ１３７にてデータキャッシュ制御部１２のデータ制御部１２２が作成した、置換対象データの書込み要求＃１０を送信する。
【０１４１】
ステップＳ１３９：リフィル制御部１５が、インメモリ型情報処理装置１０２から、ステップＳ１３８にて送信した書込み要求＃１０に対する応答を受信する。該要求の要求元がデータキャッシュ制御部１２であるため、リフィル制御部１５は、受信した応答を、データキャッシュ制御部１２に供給する。
【０１４２】
なお、ネットワークから受信した書込み要求＃１０に対する処理（ステップＳ１３５〜ステップＳ１３６）と、データキャッシュ制御部１２が作成した置換対象データの書込み要求＃１０に対する処理（ステップＳ１３７〜ステップＳ１３９）とは、同時に行われてもよいし、どちらが先に行われてもよい。
【０１４３】
ステップＳ１４０：コマンド応答部１６が、データ書込み部１４によるデータの書込み（ステップＳ１３６）に対する応答として、上記書込み要求＃１０に対するデータの書込みが正常に終了したか否かを示す応答情報を、データキャッシュ制御部１２のデータ制御部１２２から受け取る。そして、コマンド応答部１６は、受け取った上記応答に基づき、上記応答情報を含む書込み応答＃１５を作成し、要求元のネットワーク情報とともにネットワークへ送信する。
【０１４４】
なお、置換対象データの書込み要求＃１０による書込みが正常に終了しなかった場合、ステップＳ１４０において、データキャッシュ制御部１２は、コマンド応答部１６に対して、置換対象データの書込み要求＃１０の異常終了を通知する。コマンド応答部１６は、上記異常終了の通知を受け取ると、ネットワークから送信された書込み要求＃１０に対する応答として、データの書込みが正常に終了しなかった旨の応答情報を含む書込み応答＃１５を送信する。そして、データキャッシュ制御部１２は、置換対象データおよび該置換対象データに対するエントリを、ステップＳ１３１を行う前の状態に戻す。
【０１４５】
なお、ステップＳ１３１において、データキャッシュ制御部１２の管理テーブル制御部１２１が、小容量メモリ２の空き領域の大きさと該データのデータ長との和が書込み要求＃１０に含まれるデータ長以上となるデータがないと判定した場合について説明する。この場合、データキャッシュ制御部１２は、リフィル制御部１５に書込み指示を転送し、データキャッシュ装置１０１は、ステップＳ７１〜Ｓ７４の処理を行う。なお、この場合、該要求の供給元はデータキャッシュ制御部１２であるが、ステップＳ７４と同様に、該要求に対する応答は、コマンド応答部１６に供給される。
【０１４６】
以上により、本実施の形態に係る情報処理装置１００は、以下の（Ａ）〜（Ｃ）を満たす場合、置換対象データを大容量メモリ５に配置し、書込み要求＃１０をデータキャッシュ装置１０１で処理する。これにより、情報処理装置１００は、該書込み要求＃１０に対応するデータを小容量メモリ２に配置する。
（Ａ）データキャッシュ装置１０１で処理すると判定された書込み要求＃１０である、
（Ｂ）書込み要求＃１０に対応するデータが小容量メモリ２に存在しない、
（Ｃ）書込み要求＃１０に対応するデータのデータ長以上の大きさの空き領域が小容量メモリ２にない。
【０１４７】
（効果）
本実施の形態に係る情報処理装置１００によれば、大容量のデータをより高速に扱うことが可能となる。
【０１４８】
データキャッシュ装置１０１におけるデータキャッシュ制御部１２が、外部から読出し要求または書込み要求を受信したとき、小容量メモリ２に格納されている参照度合いがより低いデータを、インメモリ型情報処理装置１０２の大容量メモリ５に配置する。そして、データキャッシュ制御部１２が、書込み対象となるデータまたは読出し要求に従って読み出されたデータを小容量メモリ２に書込むからである。
【０１４９】
これにより、情報処理装置１００は、例えば、読出しデータ、書込みデータなどの参照度合いがより高いデータを、高速に処理することができる小容量メモリ２に配置することができる。したがって、大容量のデータであっても、より高速にデータを扱うことが可能となる。
【０１５０】
＜第２の実施の形態＞
本発明の第２の実施の形態について、図１４から図１７を参照して説明を行う。第１の実施の形態では、小容量メモリ２がアクセラレータ１とは別個の構成であることを例に説明を行った。本実施の形態では、小容量メモリ２に相当するキャッシュメモリが、アクセラレータ内に内蔵される例について説明する。なお、説明の便宜上、前述した第１の実施の形態で説明した図面に含まれる部材と同じ機能を有する部材については、同じ符号を付し、その説明を省略する。
【０１５１】
（情報処理装置２００）
図１４は、本発明の第２の実施の形態に係る情報処理装置２００のハードウェア構成を示すブロック図である。図１４に示すように、情報処理装置２００は、データキャッシュ装置２０１、インメモリ型情報処理装置１０２および通信Ｉ／Ｆ１０３を備えている。データキャッシュ装置２０１は、アクセラレータ３を備えている。
【０１５２】
（アクセラレータ３）
次に、図１５を参照して、データキャッシュ装置２０１のアクセラレータ３について説明する。図１５は、データキャッシュ装置２０１のアクセラレータ３の機能構成を示す機能ブロック図である。
【０１５３】
アクセラレータ３は、高速にネットワークからの要求を処理するデータキャッシュ部３０を備えている。データキャッシュ部３０は、図１５に示すように、コマンド解釈部１１、データキャッシュ制御部３２、リフィル制御部１５およびコマンド応答部１６を備えている。
【０１５４】
データキャッシュ制御部３２は、第１の実施の形態のデータキャッシュ制御部１２と同様の機能を有している。データキャッシュ制御部３２の詳細な構成は、図１６を参照して説明する。
【０１５５】
（データキャッシュ制御部３２の構成の詳細）
次に、図１６を参照して、データキャッシュ制御部３２の構成の詳細について説明する。図１６は、データキャッシュ制御部３２の詳細な機能構成を示す機能ブロック図である。図１６に示す通り、データキャッシュ制御部３２は、管理テーブル制御部３２１および小容量メモリ３２３を備えている。
【０１５６】
小容量メモリ３２３は、第１の実施の形態に係るテーブル記憶部１２３および小容量メモリ２に相当する。小容量メモリ３２３には、管理テーブル３２４が格納されている。ここで、図１７を参照して、管理テーブル３２４について説明する。図１７は、小容量メモリ３２３に記憶された管理テーブル３２４の一例を示す図である。管理テーブル３２４が、第１の実施の形態における管理テーブル１２４と異なる点は、各エントリに対応するデータが格納されている点である。図１７に示す通り、管理テーブル３２４には、データの状態と、属性名と、データの先頭アドレスと、データ長と、データとが対応付けられて格納されている。
【０１５７】
図１６に戻り、データキャッシュ制御部３２の各機能について説明する。管理テーブル制御部３２１は、管理テーブル３２４を管理する手段である。管理テーブル制御部３２１は、管理テーブル３２４のエントリを更新、または、管理テーブル３２４にエントリを追加する。
【０１５８】
また、管理テーブル制御部３２１は、第１の実施の形態の管理テーブル制御部１２１と同様に、コマンド解釈部１１から受け取った要求に対応するデータが、小容量メモリ３２３に存在するか否かを確認する。
【０１５９】
また、管理テーブル制御部３２１は、管理テーブル３２４を参照して、小容量メモリ３２３の空き領域を管理する。また、管理テーブル制御部３２１は、（１）要求種別（書込み要求＃１０か読出し要求＃２０か）、（２）要求に対応するデータが小容量メモリ３２３に存在するか否か、（３）各要求に対応するデータのデータ長以上の大きさの空き領域があるか否か、に応じて、リフィル制御部１５に指示を発行する。
【０１６０】
また、管理テーブル制御部３２１は、小容量メモリ３２３の管理テーブル３２４に格納されたデータに対し、各データの最後に参照された日時を確認し、参照度合いが低いデータを選択する。参照度合いが低いデータのエントリとは、例えば、（ａ）状態がインバリッドのエントリ、（ｂ）最後に参照された日時が最も古いデータのエントリ、のうちの少なくとも何れかであるとするがこれに限定されるものではない。
【０１６１】
なお、データキャッシュ制御部３２の管理テーブル制御部３２１が、参照度合いが低いと判定するエントリの順は、上記（ａ）、（ｂ）の順であるとするが、これに限定されるものではない。データキャッシュ制御部３２の管理テーブル制御部３２１は、選択したエントリの情報を保存する。
【０１６２】
また、管理テーブル制御部３２１は、要求に従って、管理テーブル３２４からデータの読出し／書込みを行う。そして、これらの応答を、コマンド応答部１６に供給する。
【０１６３】
また、管理テーブル制御部３２１は置換対象エントリを選択した場合、置換対象エントリに含まれるデータ（置換対象データ）を読み出す。そして、読み出した置換対象データを大容量メモリ５に書き込むための書込み要求＃１０を作成する。管理テーブル制御部３２１は、作成した書込み要求＃１０をリフィル制御部１５に送信する。
【０１６４】
（効果）
以上のように、本実施の形態に係るデータキャッシュ装置２０１は、小容量メモリ３２３を内蔵したアクセラレータ３を備えている。
【０１６５】
これにより、第１の実施の形態のように、データ制御部１２２、データ読出し部１３およびデータ書込み部１４を備える必要がない。したがって、本実施の形態のデータキャッシュ装置２０１によれば、複数の手段を介することなく、データの読出し／書込みができるため、データアクセスをより高速化することができる。
【０１６６】
＜第３の実施の形態＞
次に、第３の実施の形態について、図１８を参照して説明する。なお、説明の便宜上、前述した第１の実施の形態で説明した図面に含まれる部材と同じ機能を有する部材については、同じ符号を付し、その説明を省略する。
【０１６７】
図１８は、本実施の形態に係る情報処理装置３００の構成の一例を示すブロック図である。図１８に示す通り、情報処理装置３００は、データキャッシュ装置３０１と、データベース管理装置１０２とを備えている。
【０１６８】
データベース管理装置（単に管理装置とも呼ぶ）１０２は、キャッシュメモリ３０３よりも容量の大きい大容量メモリ５を内蔵している。データベース管理装置１０２の構成は、第１および第２の実施の形態に係るインメモリ型情報処理装置１０２と同様であるため、説明を省略する。
【０１６９】
データキャッシュ装置３０１は、データキャッシュ制御部３０２と、キャッシュメモリ３０３とを備えている。データキャッシュ制御部３０２は、例えば、アクセラレータで実現される。また、キャッシュメモリ３０３は、上記アクセラレータ内に設けられる構成であってもよいし、上記アクセラレータとは別個の構成であってもよい。
【０１７０】
データキャッシュ制御部３０２は、データキャッシュ装置３０１が、情報処理装置３００の外部から読出し要求または書込み要求を受信すると、キャッシュメモリ３０３に格納されている所定の条件のデータを、大容量メモリ５に配置するよう制御する。所定の条件のデータとは、例えば、参照度合いがより低いデータ、特定の種別のデータであるとするが、本実施の形態はこれに限定されるものではない。上記特定の種別のデータの一例としては、例えば、第１の実施の形態において説明した、エントリにおける状態が「インバリッド」のデータなどが挙げられる。
【０１７１】
また、データキャッシュ制御部３０２は、受信した要求が書込み要求であるとき、前記書込み要求に従って、書込み対象となるデータをキャッシュメモリ３０３に書込む。また、データキャッシュ制御部３０２は、受信した要求が読出し要求であるとき、前記読出し要求に従って読み出したデータをキャッシュメモリ３０３に書込む。
【０１７２】
このように、情報処理装置３００は、所定の条件のデータをデータベース管理装置１０２の大容量メモリ５に配置し、読出し対象のデータまたは書込み対象のデータをキャッシュメモリ３０３に配置する。
【０１７３】
これにより、書込み要求に対応するデータまたは読出し要求に対応するデータが、高速に処理することができるキャッシュメモリ３０３に格納され、所定の条件のデータが大容量メモリ５に配置される。したがって、大容量のデータであっても、より高速にデータを扱うことが可能となる。
【０１７４】
＜第４の実施の形態＞
次に、本発明の第４の実施の形態について、図１９〜図２１を参照して説明する。なお、説明の便宜上、前述した第１から第３の実施の形態で説明した図面に含まれる部材と同じ機能を有する部材については、同じ符号を付し、その説明を省略する。
【０１７５】
本実施の形態に係る情報処理装置４００は、第１の実施の形態に係る情報処理装置１００のデータキャッシュ装置１０１に、第２のアクセラレータ９を備える構成である。なお、本実施の形態に係る情報処理装置４００はこれに限定されるものではない。情報処理装置４００は、第２の実施の形態に係る情報処理装置２００のデータキャッシュ装置２０１に、第２のアクセラレータ９を備える構成であってもよいし、第３の実施の形態に係る情報処理装置３００のデータキャッシュ装置３０１に、第２のアクセラレータ９を備える構成であってもよい。
【０１７６】
（情報処理装置４００）
図１９は、本発明の第４の実施の形態に係る情報処理装置４００のハードウェア構成の一例を示すブロック図である。図１９に示すように、情報処理装置４００は、データキャッシュ装置４０１、インメモリ型情報処理装置１０２および通信Ｉ／Ｆ１０３を備えている。データキャッシュ装置４０１は、アクセラレータ１と、小容量メモリ２と、第２のアクセラレータ９とを備えている。情報処理装置４００のインメモリ型情報処理装置１０２および通信Ｉ／Ｆ１０３は、上述した各実施の形態に係るインメモリ型情報処理装置１０２および通信Ｉ／Ｆ１０３と同様であるため、説明を省略する。
【０１７７】
第２のアクセラレータ９は、アクセラレータ１と同様に、例えば、ＦＰＧＡ、メニーコアプロセッサ等で実現される。第２のアクセラレータ９は、アクセラレータ１に接続している。第２のアクセラレータ９は、インメモリ型情報処理装置１０２に読出し／書込み要求の属性名を有するデータが存在するか否かを判定する。第２のアクセラレータ９の機能構成については、図面を変えて説明する。
【０１７８】
なお、第２のアクセラレータ９は、アクセラレータ１と同一のデバイス上に実現される構成であってもよいし、アクセラレータ１とは別のデバイス上に実現される構成であってもよい。
【０１７９】
次に、図２０を参照して、データキャッシュ装置４０１の第２のアクセラレータ９について説明する。図２０は、データキャッシュ装置４０１の第２のアクセラレータ９の機能構成の一例を示す機能ブロック図である。
【０１８０】
図２０に示す通り、第２のアクセラレータ９は、判定部（データ存在判定手段）９１、送信部９２、第２のテーブル記憶部９３および管理部９５を備えている。
【０１８１】
第２のテーブル記憶部９３は、第２の管理テーブル９４を記憶する手段である。第２の管理テーブル９４は、属性名で特定されるデータが、インメモリ型情報処理装置１０２の大容量メモリ５に格納されているか否かを示す情報を管理するためのものである。第２の管理テーブル９４は、属性名と、該属性名に関連付けられた情報とを含む。後者の情報は、属性名で特定されるデータが大容量メモリ５に格納されているか否かを示す情報である。なお、第２の管理テーブル９４は、大容量メモリ５に格納されたデータに含まれる属性名を含んでもよい。これによれば、第２の管理テーブル９４に属性名が含まれることが、大容量メモリ５に該属性名で特定されるデータが格納されている情報となる。
【０１８２】
第２の管理テーブル９４は、更に、属性名に関連付けられた情報であって、該属性名で特定されるデータが格納されたインメモリ型情報処理装置１０２を示す情報を含んでもよい。例えば、複数の情報処理装置４００がネットワークを介して接続しており、ある情報処理装置４００が要求を受信したとする。そして、このとき、この受信した要求に含まれる属性名で特定されるデータを格納する大容量メモリ５を有するインメモリ型情報処理装置１０２が、他の情報処理装置に含まれるインメモリ型情報処理装置１０２であるとする。このとき、第２の管理テーブル９４には、このインメモリ型情報処理装置１０２を示す情報が含まれる。
【０１８３】
なお、上記情報は、他の情報処理装置に含まれるインメモリ型情報処理装置１０２を示す情報ではなく、上記他の情報処理装置を示す情報であってもよいし、上記他の情報処理装置のインメモリ型情報処理装置１０２に含まれる大容量メモリ５を示す情報であってもよい。つまり、第２の管理テーブル９４には、属性名で特定されるデータがどこに格納されているかを示す情報が格納されていればよい。
【０１８４】
また、第２のテーブル記憶部９３は、第２のアクセラレータ９に内蔵されるものであってもよいし、第２のアクセラレータ９とは別個の構成であってもよい。
【０１８５】
管理部９５は、第２のテーブル記憶部９３に記憶された第２の管理テーブル９４を管理する手段である。管理部９５は、インメモリ型情報処理装置１０２から、リフィル制御部１５が受信する応答（例えば、ステップＳ７３で受信する応答）と同様の応答を受信する。そして、管理部９５は、該応答に従い、第２の管理テーブル９４の情報を更新する。
【０１８６】
また、管理部９５は、第２の管理テーブル９４に、インメモリ型情報処理装置１０２に格納されたデータを示す情報に加え、上述した、他のインメモリ型情報処理装置に格納されたデータを示す情報が含まれる場合、これらの情報を管理する。このとき、管理部９５は、他のインメモリ型情報処理装置から、該他のインメモリ型情報処理装置に接続されたデータキャッシュ装置応答が送信されたとき、該他のインメモリ型情報処理装置に格納されたデータに関する情報を、ネットワークを介して取得し、更新する構成であってもよい。
【０１８７】
判定部９１は、読出し／書込み要求を通信Ｉ／Ｆ１０３から受信する。そして、判定部９１は、第２のテーブル記憶部９３を参照し、受信した要求に含まれる属性名で特定されるデータが、インメモリ型情報処理装置１０２内に格納されているか否かを判定（存在判定）する。判定部９１が行う、属性名で特定されるデータの存在判定には、種々のアルゴリムで実現されてもよく、例えば、Ｃｏｕｎｔｉｎｇ  Ｂｌｏｏｍ  Ｆｉｌｔｅｒ等によって実装されてもよい。判定部９１は、上記データがインメモリ型情報処理装置１０２に格納されていない場合、受信した要求の送信先を示す情報を、送信部９２に供給する。
【０１８８】
送信部９２は、上記データがインメモリ型情報処理装置１０２に格納されていない場合、判定部９１から、該判定部９１が受信した要求の送信先を示す情報を受信する。そして、送信部９２は、判定部９１が受信した要求に対するデータキャッシュ装置４０１における各処理を停止させる。具体的には、送信部９２は、アクセラレータ１に対し、アクセラレータ１が実行している処理であって、アクセラレータ１が受信した要求に対応する処理を停止させるための停止指示を送信する。アクセラレータ１はこの指示を受信すると、実行中の処理を停止することができる。
【０１８９】
また、送信部９２は、ネットワークを介して他の装置に応答を送信する。具体的には、送信部９２は、要求の送信先に対し、該要求を受信した自装置には該要求の対象となるデータが存在しないことを示す応答を、通信Ｉ／Ｆ１０３を介して送信する。
【０１９０】
なお、第２の管理テーブル９４に、受信した要求に含まれる属性名で特定されるデータが格納されている他の情報処理装置のインメモリ型情報処理装置１０２を示す情報が含まれる場合、判定部９１は、該他の情報処理装置のインメモリ型情報処理装置１０２を示す情報を、受信した要求と共に送信部９２に供給してもよい。この場合、送信部９２は、該他の情報処理装置に対し、上記要求を、通信Ｉ／Ｆ１０３を介して転送してもよい。
【０１９１】
（第２のアクセラレータ９の処理の流れ）
次に、図２１を参照して、本実施の形態に係るデータキャッシュ装置４０１における第２のアクセラレータ９の処理の流れについて説明する。図２１は、本実施の形態に係るデータキャッシュ装置４０１における第２のアクセラレータ９の処理の流れの一例を示す図である。
【０１９２】
図２１に示す通り、第２のアクセラレータ９は、以下のステップＳ２１１〜Ｓ２１４の処理を行う。
【０１９３】
ステップＳ２１１：判定部９１が、通信Ｉ／Ｆ１０３から書込み要求＃１０または読出し要求＃２０を受信する。このとき受信する要求は、上述したステップＳ６１にて、アクセラレータ１のコマンド解釈部１１が受信する要求と同様のものである。
【０１９４】
ステップＳ２１２：判定部９１は、受信した要求に含まれる属性名で特定されるデータが、インメモリ型情報処理装置１０２内に格納されているか否かを判定する。格納されている場合（ＹＥＳの場合）、第２のアクセラレータ９は、処理を終了する。したがって、データキャッシュ装置４０１は、第１から第３の実施の形態に係るデータキャッシュ装置のような第２のアクセラレータ９が存在しない場合と同様の処理（図６から図１３に示す処理）を行う。格納されていない場合（ＮＯの場合）、ステップＳ２１３に進む。
【０１９５】
ステップＳ２１３：送信部９２は、判定部９１が受信した要求に対するデータキャッシュ装置４０１における各処理を停止させるために、アクセラレータ１に対し、処理停止指示を送信する。これにより、アクセラレータ１は実行中の処理（例えば、図６から図１３の示す処理）を停止する。
【０１９６】
ステップＳ２１４：送信部９２が、要求の送信先に対し、該要求を受信した自装置には該要求の対象となるデータが存在しないことを示す応答を送信、または、判定部９１が受信した要求に含まれる属性名で特定されるデータが格納されている他の情報処理装置に対し、上記要求を送信する。そして、第２のアクセラレータ９は、処理を終了する。
【０１９７】
なお、ステップＳ２１３およびステップＳ２１４は逆順で行われてもよいし、同時に行われてもよい。
【０１９８】
（効果）
本実施の形態に係る情報処理装置４００によれば、大容量のデータをより高速に扱うことが可能となる。
【０１９９】
なぜならば、データキャッシュ装置４０１の第２のアクセラレータ９が、情報処理装置４００の外部から読出し要求または書込み要求を受信したとき、受信した要求に対応するデータがインメモリ型情報処理装置１０２に格納されているか否かを判定するからである。そして、データが格納されていないとき、第２のアクセラレータ９が、他の装置に応答を送信するからである。さらに、データキャッシュ装置４０１の第２のアクセラレータ９の送信部９２が要求に対するデータキャッシュ装置４０１における処理（アクセラレータ１の処理）を停止させるからである。
【０２００】
これにより、受信した要求に対応するデータが情報処理装置４００のインメモリ型情報処理装置１０２に格納されていない（存在しない）場合に、アクセラレータ１が応答を上記要求の要求元に送信する前に、第２のアクセラレータ９が応答を送信することができる。したがって、本実施の形態に係る情報処理装置４００によれば、情報処理装置４００を含むシステム全体の平均応答遅延を低減することができる。
【０２０１】
また、本実施の形態に係る情報処理装置４００は、受信した要求に対応するデータが情報処理装置４００のインメモリ型情報処理装置１０２に格納されていない場合、該データを格納しているインメモリ型情報処理装置１０２を含む他の情報処理装置に、受信した要求を転送する。
【０２０２】
これにより、要求の要求元が、該要求に対応するデータが格納されたインメモリ型情報処理装置１０２を探すための処理時間を削減することができる。したがって、情報処理装置４００を含むシステム全体の平均応答遅延をより低減することができる。
【０２０３】
なお、上述した各実施の形態は、本発明の好適な実施の形態であり、上記各実施の形態にのみ本発明の範囲を限定するものではなく、本発明の要旨を逸脱しない範囲において当業者が上記各実施の形態の修正や代用を行い、種々の変更を施した形態を構築することが可能である。
【０２０４】
例えば、上述した実施の形態における各動作は、ハードウェアまたはソフトウェア、あるいはその両方の複合構成によって実行することも可能である。
【０２０５】
なお、ソフトウェアによる処理を実行する場合には、例えば、上記各処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。また、上記プログラムは、例えば、ハードディスクなどの記録媒体に記録しておくことが可能である。
【０２０６】
上記の実施の形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
【０２０７】
（付記１）キャッシュメモリを内蔵するデータキャッシュ装置と、前記キャッシュメモリより容量の大きい大容量メモリを内蔵する管理装置とを備え、前記データキャッシュ装置は、情報処理装置の外部から読出し要求または書込み要求を受信したとき、前記キャッシュメモリに格納されている所定の条件のデータを、前記大容量メモリに配置するよう制御するデータキャッシュ制御手段を備え、前記データキャッシュ制御手段は、受信した要求が書込み要求であるとき、前記書込み要求に従って、書込み対象となるデータを前記キャッシュメモリに書込み、前記要求が読出し要求であるとき、前記読出し要求に従って読み出されたデータを前記キャッシュメモリに書込む、ことを特徴とする情報処理装置。
【０２０８】
（付記２）前記データキャッシュ制御手段は、前記キャッシュメモリに、前記受信した要求に対応するデータが存在するか否かを確認し、前記キャッシュメモリに、前記要求に対応するデータが存在する場合、前記要求に従って、前記キャッシュメモリに対し、データの読出しまたはデータの書込みを行い、前記キャッシュメモリに、前記要求に対応するデータが存在しない場合、前記所定の条件のデータを前記大容量メモリに配置するよう制御し、前記書込み対象となるデータまたは前記読出し要求に従って読み出されたデータを前記キャッシュメモリに書込む、ことを特徴とする付記１に記載の情報処理装置。
【０２０９】
（付記３）前記データキャッシュ制御手段は、前記キャッシュメモリに前記要求に対応するデータが存在しない場合、前記キャッシュメモリに、前記書込み対象となるデータまたは前記読出し要求において読み出し対象となるデータのデータ長以上の大きさの空き領域があるか否かを更に確認し、前記キャッシュメモリに前記データ長以上の大きさの空き領域があるとき、前記書込み対象となるデータまたは前記読出し要求に従って、前記大容量メモリから読み出されたデータを、前記キャッシュメモリの当該空き領域に書込み、前記キャッシュメモリに前記データ長以上の大きさの空き領域がないとき、前記所定の条件のデータを前記大容量メモリに配置するよう制御し、更に、前記書込み対象となるデータまたは前記読出し要求に従って読み出されたデータを前記キャッシュメモリに書込む、ことを特徴とする付記２に記載の情報処理装置。
【０２１０】
（付記４）前記データキャッシュ制御手段は、前記キャッシュメモリに格納されているデータに対する情報を管理するための管理テーブルを制御する管理テーブル制御手段を備え、前記管理テーブルには、前記データに対する情報として、データを示す識別子と、当該データのデータ長と、当該データの前記キャッシュメモリにおける先頭アドレスとが含まれており、前記管理テーブル制御手段は、前記管理テーブルを参照することにより、前記キャッシュメモリに前記受信した要求に対応するデータが存在するか否かを確認する、ことを特徴とする付記２または３に記載の情報処理装置。
【０２１１】
（付記５）前記管理テーブル制御手段は、前記データの状態を示す状態情報を、当該データに対する情報に対応付けて管理する、ことを特徴とする付記４に記載の情報処理装置。
【０２１２】
（付記６）前記管理テーブル制御手段は、前記データキャッシュ制御手段が、前記所定の条件のデータを前記大容量メモリに配置するよう制御し、前記書込み対象となるデータまたは前記読出し要求に従って読み出されたデータを前記キャッシュメモリに書込んだとき、前記状態情報を更新する、ことを特徴とする付記５に記載の情報処理装置。
【０２１３】
（付記７）前記所定の条件のデータとは、前記状態情報が、当該データが無効状態であることを示す情報であるデータである、ことを特徴とする付記５または６に記載の情報処理装置。
【０２１４】
（付記８）前記所定の条件のデータとは、参照度合いがより低いデータである、ことを特徴とする付記１から７のいずれかに記載の情報処理装置。
【０２１５】
（付記９）前記参照度合いがより低いデータとは、最後に参照された日時が最も古いデータである、ことを特徴とする付記８に記載の情報処理装置。
【０２１６】
（付記１０）前記キャッシュメモリは、前記データキャッシュ制御手段に内蔵されており、前記キャッシュメモリには、前記管理テーブルが格納されており、前記管理テーブルには、前記データに対する情報として、当該データのデータ本体が含まれる、ことを特徴とする付記４から７の何れかに記載の情報処理装置。
【０２１７】
（付記１１）前記データキャッシュ装置は、前記情報処理装置の外部から読出し要求または書込み要求を受信したとき、受信した要求に対応するデータが前記管理装置に格納されているか否かを判定するデータ存在判定手段と、前記データが前記管理装置に格納されていないとき、他の装置に応答を送信する送信手段と、を備え、前記送信手段は、前記要求に対する前記データキャッシュ装置における処理を停止させる、ことを特徴とする付記１から１０の何れかに記載の情報処理装置。
【０２１８】
（付記１２）前記送信手段は、前記要求の送信先に、前記要求に対応するデータが、前記管理装置に格納されていないことを示す応答を送信する、ことを特徴とする付記１１に記載の情報処理装置。
【０２１９】
（付記１３）前記データキャッシュ装置は、当該データキャッシュ装置に接続された前記管理装置、および、当該データキャッシュ装置にネットワークを介して接続された１または複数の他の情報処理装置の夫々に含まれる他の管理装置に格納されているデータを示す情報を管理する管理手段を更に備え、前記要求に対応するデータが、前記他の管理装置に格納されているとき、前記送信手段は、前記他の管理装置を含む前記他の情報処理装置に、前記受信した要求を送信する、ことを特徴とする付記１１に記載の情報処理装置。
【０２２０】
（付記１４）前記データキャッシュ装置は、前記情報処理装置の外部から読出し要求または書込み要求を受信し、当該受信した読出し要求または書込み要求が、当該データキャッシュ装置で処理する要求か否かを判定する判定手段と、前記読出し要求または前記書込み要求を前記管理装置に送信し、前記読出し要求または前記書込み要求にそれぞれ対応する読出し応答または書込み応答を受信するリフィル制御手段と、を更に備え、前記判定手段は、前記受信した読出し要求または書込み要求が前記データキャッシュ装置で処理する要求ではないと判定したとき、前記読出し要求または書込み要求を前記リフィル制御手段に供給し、前記受信した読出し要求または書込み要求が前記データキャッシュ装置で処理する要求であると判定したとき、前記読出し要求または書込み要求を前記データキャッシュ制御手段に供給する、ことを特徴とする付記１から１３の何れかに記載の情報処理装置。
【０２２１】
（付記１５）キャッシュメモリを内蔵し、前記キャッシュメモリより容量の大きい大容量メモリを内蔵する管理装置と接続されたデータキャッシュ装置であって、前記データキャッシュ装置および前記管理装置の外部から読出し要求または書込み要求を受信したとき、前記キャッシュメモリに格納されている所定の条件のデータを、前記大容量メモリに配置するよう制御するデータキャッシュ制御手段を備え、前記データキャッシュ制御手段は、受信した要求が書込み要求であるとき、前記書込み要求に従って、書込み対象となるデータを前記キャッシュメモリに書込み、前記要求が読出し要求であるとき、前記読出し要求に従って読み出されたデータを前記キャッシュメモリに書込む、ことを特徴とするデータキャッシュ装置。
【０２２２】
（付記１６）前記データキャッシュ制御手段は、前記キャッシュメモリに、前記受信した要求に対応するデータが存在するか否かを確認し、前記キャッシュメモリに、前記要求に対応するデータが存在する場合、前記要求に従って、前記キャッシュメモリに対し、データの読出しまたはデータの書込みを行い、前記キャッシュメモリに、前記要求に対応するデータが存在しない場合、前記所定の条件のデータを前記大容量メモリに配置するよう制御し、前記書込み対象となるデータまたは前記読出し要求に従って読み出されたデータを前記キャッシュメモリに書込む、ことを特徴とする付記１５に記載のデータキャッシュ装置。
【０２２３】
（付記１７）前記データキャッシュ制御手段は、前記キャッシュメモリに前記要求に対応するデータが存在しない場合、前記キャッシュメモリに、前記書込み対象となるデータまたは前記読出し要求において読み出し対象となるデータのデータ長以上の大きさの空き領域があるか否かを更に確認し、前記キャッシュメモリに前記データ長以上の大きさの空き領域があるとき、前記書込み対象となるデータまたは前記読出し要求に従って前記大容量メモリから読み出されたデータを、前記キャッシュメモリの当該空き領域に書込み、前記キャッシュメモリに前記データ長以上の大きさの空き領域がないとき、前記所定の条件のデータを前記大容量メモリに配置するよう制御し、更に、前記書込み対象となるデータまたは前記読出し要求に従って読み出されたデータを前記キャッシュメモリに書込む、ことを特徴とする付記１６に記載のデータキャッシュ装置。
【０２２４】
（付記１８）前記データキャッシュ制御手段は、前記キャッシュメモリに格納されているデータに対する情報を管理するための管理テーブルを制御する管理テーブル制御手段を備え、前記管理テーブルには、前記データに対する情報として、データを示す識別子と、当該データのデータ長と、当該データの前記キャッシュメモリにおける先頭アドレスとが含まれており、前記管理テーブル制御手段は、前記管理テーブルを参照することにより、前記キャッシュメモリに前記受信した要求に対応するデータが存在するか否かを確認する、ことを特徴とする付記１６または１７に記載のデータキャッシュ装置。
【０２２５】
（付記１９）前記管理テーブル制御手段は、前記データの状態を示す状態情報を、当該データに対する情報に対応付けて管理する、ことを特徴とする付記１８に記載のデータキャッシュ装置。
【０２２６】
（付記２０）前記管理テーブル制御手段は、前記データキャッシュ制御手段が、前記所定の条件のデータを前記大容量メモリに配置するよう制御し、書込み対象となるデータまたは前記読出し要求に従って読み出されたデータを前記キャッシュメモリに書込んだとき、前記状態情報を更新する、ことを特徴とする付記１９に記載のデータキャッシュ装置。
【０２２７】
（付記２１）前記所定の条件のデータとは、前記状態情報が、当該データが無効状態であることを示す情報であるデータである、ことを特徴とする付記１９または２０に記載のデータキャッシュ装置。
【０２２８】
（付記２２）前記所定の条件のデータとは、参照度合いがより低いデータである、ことを特徴とする付記１５から２１の何れかに記載のデータキャッシュ装置。
【０２２９】
（付記２３）前記参照度合いがより低いデータとは、最後に参照された日時が最も古いデータである、ことを特徴とする付記２２に記載のデータキャッシュ装置。
【０２３０】
（付記２４）前記キャッシュメモリは、前記データキャッシュ制御手段に内蔵されており、前記キャッシュメモリには、前記管理テーブルが格納されており、前記管理テーブルには、前記データに対する情報として、当該データのデータ本体が含まれる、ことを特徴とする付記１８から２１の何れかに記載のデータキャッシュ装置。
【０２３１】
（付記２５）前記データキャッシュ装置および前記管理装置の外部から読出し要求または書込み要求を受信したとき、受信した要求に対応するデータが前記管理装置に格納されているか否かを判定するデータ存在判定手段と、前記データが前記管理装置に格納されていないとき、他の装置に応答を送信する送信手段と、を備え、前記送信手段は、前記要求に対する前記データキャッシュ装置における処理を停止させる、ことを特徴とする付記１５から２４の何れかに記載のデータキャッシュ装置。
【０２３２】
（付記２６）前記送信手段は、前記要求の送信先に、前記要求に対応するデータが、前記管理装置に格納されていないことを示す応答を送信する、ことを特徴とする付記２５に記載のデータキャッシュ装置。
【０２３３】
（付記２７）前記データキャッシュ装置に接続された前記管理装置、および、当該データキャッシュ装置にネットワークを介して接続された１または複数の他のデータキャッシュ装置の夫々に接続された他の管理装置に格納されているデータを示す情報を管理する管理手段を更に備え、前記要求に対応するデータが、前記他の管理装置に格納されているとき、前記送信手段は、前記他の管理装置に接続された他のデータキャッシュ装置に、前記受信した要求を送信する、ことを特徴とする付記２５に記載のデータキャッシュ装置。
【０２３４】
（付記２８）前記データキャッシュ装置および前記管理装置の外部から読出し要求または書込み要求を受信し、当該受信した読出し要求または書込み要求が、自装置で処理する要求か否かを判定する判定手段と、前記読出し要求または前記書込み要求を前記管理装置に送信し、前記読出し要求または前記書込み要求にそれぞれ対応する読出し応答または書込み応答を受信するリフィル制御手段と、を更に備え、前記判定手段は、前記受信した読出し要求または書込み要求が自装置で処理する要求ではないと判定したとき、前記読出し要求または書込み要求を前記リフィル制御手段に供給し、前記受信した読出し要求または書込み要求が自装置で処理する要求であると判定したとき、前記読出し要求または書込み要求を前記データキャッシュ制御手段に供給する、ことを特徴とする付記１５から２７の何れかに記載のデータキャッシュ装置。
【０２３５】
（付記２９）キャッシュメモリを内蔵するデータキャッシュ装置と、前記キャッシュメモリより容量の大きい大容量メモリを内蔵する管理装置とを備える情報処理装置の情報処理方法であって、前記情報処理装置の外部から読出し要求または書込み要求を受信し、前記受信した要求が書込み要求であるとき、前記キャッシュメモリに格納されている所定の条件のデータを前記大容量メモリに配置するよう制御し、更に、前記書込み要求に従って、書込み対象となるデータを前記キャッシュメモリに書込み、前記受信した要求が読出し要求であるとき、前記所定の条件のデータを前記大容量メモリに配置するよう制御し、更に、前記読出し要求に従って読み出されたデータを前記キャッシュメモリに書込む、ことを特徴とする情報処理方法。
【０２３６】
（付記３０）キャッシュメモリを内蔵し、前記キャッシュメモリより容量の大きい大容量メモリを内蔵する管理装置と接続されたデータキャッシュ装置のデータキャッシュ方法であって、前記データキャッシュ装置および前記管理装置の外部から読出し要求または書込み要求を受信し、前記受信した要求が書込み要求であるとき、前記キャッシュメモリに格納されている所定の条件のデータを前記大容量メモリに配置するよう制御し、更に、前記書込み要求に従って、書込み対象となるデータを前記キャッシュメモリに書込み、前記受信した要求が読出し要求であるとき、前記所定の条件のデータを前記大容量メモリに配置するよう制御し、更に、前記読出し要求に従って読み出されたデータを前記キャッシュメモリに書込む、ことを特徴とするデータキャッシュ方法。
【０２３７】
（付記３１）キャッシュメモリを内蔵するデータキャッシュ装置と、前記キャッシュメモリより容量の大きい大容量メモリを内蔵する管理装置とを備える情報処理装置を含むコンピュータに、前記情報処理装置の外部から読出し要求または書込み要求を受信する処理と、前記受信した要求が書込み要求であるとき、前記キャッシュメモリに格納されている所定の条件のデータを前記大容量メモリに配置するよう制御し、更に、前記書込み要求に従って、書込み対象となるデータを前記キャッシュメモリに書込む処理と、前記受信した要求が読出し要求であるとき、前記所定の条件のデータを前記大容量メモリに配置するよう制御し、更に、前記読出し要求に従って読み出されたデータを前記キャッシュメモリに書込む処理と、を実行させることを特徴とするプログラム。
【０２３８】
（付記３２）キャッシュメモリを内蔵し、前記キャッシュメモリより容量の大きい大容量メモリを内蔵する管理装置と接続されたデータキャッシュ装置を含むコンピュータに、前記データキャッシュ装置および前記管理装置の外部から読出し要求または書込み要求を受信する処理と、前記受信した要求が書込み要求であるとき、前記キャッシュメモリに格納されている所定の条件のデータを前記大容量メモリに配置するよう制御し、更に、前記書込み要求に従って、書込み対象となるデータを前記キャッシュメモリに書込む処理と、前記受信した要求が読出し要求であるとき、前記所定の条件のデータを前記大容量メモリに配置するよう制御し、更に、前記読出し要求に従って読み出されたデータを前記キャッシュメモリに書込む処理と、を実行させることを特徴とするプログラム。
【０２３９】
（付記３３）付記３１または付記３２に記載のプログラムを記録するコンピュータが読み取り可能な記録媒体。
【０２４０】
以上、上述した実施形態を模範的な例として本発明を説明した。しかしながら、本発明は、上述した実施形態には限定されない。即ち、本発明は、本発明のスコープ内において、当業者が理解し得る様々な態様を適用することができる。
【０２４１】
この出願は、２０１３年１１月１日に出願された日本出願特願２０１３−２２８２９１および２０１４年４月１１日に出願された日本出願特願２０１４−０８２１５２を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【符号の説明】
【０２４２】
１    アクセラレータ
２    小容量メモリ
３    アクセラレータ
４    ＣＰＵ
５    大容量メモリ
９    第２のアクセラレータ
１０    データキャッシュ部
１１    コマンド解釈部
１２    データキャッシュ制御部
１３    データ読出し部
１４    データ書込み部
１５    リフィル制御部
１６    コマンド応答部
３０    データキャッシュ部
３２    データキャッシュ制御部
９１    判定部
９２    送信部
９３    第２のテーブル記憶部
９４    第２の管理テーブル
９５    管理部
１００    情報処理装置
１０１    データキャッシュ装置
１０２    インメモリ型情報処理装置（データベース管理装置）
１０３    通信Ｉ／Ｆ
１２１    管理テーブル制御部
１２２    データ制御部
１２３    テーブル記憶部
１２４    管理テーブル
２００    情報処理装置
２０１    データキャッシュ装置
３２１    管理テーブル制御部
３２３    小容量メモリ
３２４    管理テーブル
３００    情報処理装置
３０１    データキャッシュ装置
３０２    データキャッシュ制御部
３０３    キャッシュメモリ
４００    情報処理装置
４０１    データキャッシュ装置
＃１０    書込み要求
＃１５    書込み応答
＃２０    読出し要求
＃２５    読出し応答
【図１】
2015064048.tif 000003
【図２】
2015064048.tif 000004
【図３】
2015064048.tif 000005
【図４】
2015064048.tif 000006
【図５】
2015064048.tif 000007
【図６】
2015064048.tif 000008
【図７】
2015064048.tif 000009
【図８】
2015064048.tif 000010
【図９】
2015064048.tif 000011
【図１０】
2015064048.tif 000012
【図１１】
2015064048.tif 000013
【図１２】
2015064048.tif 000014
【図１３】
2015064048.tif 000015
【図１４】
2015064048.tif 000016
【図１５】
2015064048.tif 000017
【図１６】
2015064048.tif 000018
【図１７】
2015064048.tif 000019
【図１８】
2015064048.tif 000020
【図１９】
2015064048.tif 000021
【図２０】
2015064048.tif 000022
【図２１】
2015064048.tif 000023
【手続補正書】
【提出日】平成28年4月19日(2016.4.19)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
キャッシュメモリを内蔵するデータキャッシュ装置と、前記キャッシュメモリより容量の大きい大容量メモリを内蔵する管理装置とを備え、
前記データキャッシュ装置は、情報処理装置の外部から読出し要求または書込み要求を受信したとき、前記キャッシュメモリに格納されている所定の条件のデータを、前記大容量メモリに配置するよう制御するデータキャッシュ制御手段を備え、
前記データキャッシュ制御手段は、受信した要求が書込み要求であるとき、前記書込み要求に従って、書込み対象となるデータを前記キャッシュメモリに書込み、前記要求が読出し要求であるとき、前記読出し要求に従って読み出されたデータを前記キャッシュメモリに書込む、ことを特徴とする情報処理装置。
【請求項２】
前記データキャッシュ制御手段は、
前記キャッシュメモリに、前記受信した要求に対応するデータが存在するか否かを確認し、
前記キャッシュメモリに、前記要求に対応するデータが存在する場合、前記要求に従って、前記キャッシュメモリに対し、データの読出しまたはデータの書込みを行い、
前記キャッシュメモリに、前記要求に対応するデータが存在しない場合、前記所定の条件のデータを前記大容量メモリに配置するよう制御し、前記書込み対象となるデータまたは前記読出し要求に従って読み出されたデータを前記キャッシュメモリに書込む、ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記データキャッシュ制御手段は、
前記キャッシュメモリに前記要求に対応するデータが存在しない場合、前記キャッシュメモリに、前記書込み対象となるデータまたは前記読出し要求において読み出し対象となるデータのデータ長以上の大きさの空き領域があるか否かを更に確認し、
前記キャッシュメモリに前記データ長以上の大きさの空き領域があるとき、前記書込み対象となるデータまたは前記読出し要求に従って、前記大容量メモリから読み出されたデータを、前記キャッシュメモリの当該空き領域に書込み、
前記キャッシュメモリに前記データ長以上の大きさの空き領域がないとき、前記所定の条件のデータを前記大容量メモリに配置するよう制御し、更に、前記書込み対象となるデータまたは前記読出し要求に従って読み出されたデータを前記キャッシュメモリに書込む、ことを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記データキャッシュ制御手段は、
前記キャッシュメモリに格納されているデータに対する情報を管理するための管理テーブルを制御する管理テーブル制御手段を備え、
前記管理テーブルには、前記データに対する情報として、データを示す識別子と、当該データのデータ長と、当該データの前記キャッシュメモリにおける先頭アドレスとが含まれており、
前記管理テーブル制御手段は、前記管理テーブルを参照することにより、前記キャッシュメモリに前記受信した要求に対応するデータが存在するか否かを確認する、ことを特徴とする請求項２または３に記載の情報処理装置。
【請求項５】
前記管理テーブル制御手段は、前記データの状態を示す状態情報を、当該データに対する情報に対応付けて管理する、ことを特徴とする請求項４に記載の情報処理装置。
【請求項６】
前記管理テーブル制御手段は、前記データキャッシュ制御手段が、前記所定の条件のデータを前記大容量メモリに配置するよう制御し、前記書込み対象となるデータまたは前記読出し要求に従って読み出されたデータを前記キャッシュメモリに書込んだとき、前記状態情報を更新する、ことを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記所定の条件のデータとは、前記状態情報が、当該データが無効状態であることを示す情報であるデータである、ことを特徴とする請求項５または６に記載の情報処理装置。
【請求項８】
前記所定の条件のデータとは、参照度合いがより低いデータである、ことを特徴とする請求項１から７の何れか１項に記載の情報処理装置。
【請求項９】
前記参照度合いがより低いデータとは、最後に参照された日時が最も古いデータである、ことを特徴とする請求項８に記載の情報処理装置。
【請求項１０】
前記キャッシュメモリは、前記データキャッシュ制御手段に内蔵されており、
前記キャッシュメモリには、前記管理テーブルが格納されており、
前記管理テーブルには、前記データに対する情報として、当該データのデータ本体が含まれる、ことを特徴とする請求項４から７の何れか１項に記載の情報処理装置。
【請求項１１】
前記データキャッシュ装置は、前記情報処理装置の外部から読出し要求または書込み要求を受信したとき、受信した要求に対応するデータが前記管理装置に格納されているか否かを判定するデータ存在判定手段と、
前記データが前記管理装置に格納されていないとき、他の装置に応答を送信する送信手段と、を備え、
前記送信手段は、前記要求に対する前記データキャッシュ装置における処理を停止させる、ことを特徴とする請求項１から１０の何れか１項に記載の情報処理装置。
【請求項１２】
前記送信手段は、前記要求の送信先に、前記要求に対応するデータが、前記管理装置に格納されていないことを示す応答を送信する、ことを特徴とする請求項１１に記載の情報処理装置。
【請求項１３】
前記データキャッシュ装置は、当該データキャッシュ装置に接続された前記管理装置、および、当該データキャッシュ装置にネットワークを介して接続された１または複数の他の情報処理装置の夫々に含まれる他の管理装置に格納されているデータを示す情報を管理する管理手段を更に備え、
前記要求に対応するデータが、前記他の管理装置に格納されているとき、前記送信手段は、前記他の管理装置を含む前記他の情報処理装置に、前記受信した要求を送信する、ことを特徴とする請求項１１に記載の情報処理装置。
【請求項１４】
前記データキャッシュ装置は、
前記情報処理装置の外部から読出し要求または書込み要求を受信し、当該受信した読出し要求または書込み要求が、当該データキャッシュ装置で処理する要求か否かを判定する判定手段と、
前記読出し要求または前記書込み要求を前記管理装置に送信し、前記読出し要求または前記書込み要求にそれぞれ対応する読出し応答または書込み応答を受信するリフィル制御手段と、を更に備え、
前記判定手段は、前記受信した読出し要求または書込み要求が前記データキャッシュ装置で処理する要求ではないと判定したとき、前記読出し要求または書込み要求を前記リフィル制御手段に供給し、前記受信した読出し要求または書込み要求が前記データキャッシュ装置で処理する要求であると判定したとき、前記読出し要求または書込み要求を前記データキャッシュ制御手段に供給する、ことを特徴とする請求項１から１３の何れか１項に記載の情報処理装置。
【請求項１５】
キャッシュメモリを内蔵し、前記キャッシュメモリより容量の大きい大容量メモリを内蔵する管理装置と接続されたデータキャッシュ装置であって、
前記データキャッシュ装置および前記管理装置の外部から読出し要求または書込み要求を受信したとき、前記キャッシュメモリに格納されている所定の条件のデータを、前記大容量メモリに配置するよう制御するデータキャッシュ制御手段を備え、
前記データキャッシュ制御手段は、受信した要求が書込み要求であるとき、前記書込み要求に従って、書込み対象となるデータを前記キャッシュメモリに書込み、前記要求が読出し要求であるとき、前記読出し要求に従って読み出されたデータを前記キャッシュメモリに書込む、ことを特徴とするデータキャッシュ装置。
【請求項１６】
キャッシュメモリを内蔵するデータキャッシュ装置と、前記キャッシュメモリより容量の大きい大容量メモリを内蔵する管理装置とを備える情報処理装置の情報処理方法であって、
前記情報処理装置の外部から読出し要求または書込み要求を受信し、
前記受信した要求が書込み要求であるとき、前記キャッシュメモリに格納されている所定の条件のデータを前記大容量メモリに配置するよう制御し、更に、前記書込み要求に従って、書込み対象となるデータを前記キャッシュメモリに書込み、
前記受信した要求が読出し要求であるとき、前記所定の条件のデータを前記大容量メモリに配置するよう制御し、更に、前記読出し要求に従って読み出されたデータを前記キャッシュメモリに書込む、ことを特徴とする情報処理方法。
【請求項１７】
キャッシュメモリを内蔵し、前記キャッシュメモリより容量の大きい大容量メモリを内蔵する管理装置と接続されたデータキャッシュ装置のデータキャッシュ方法であって、
前記データキャッシュ装置および前記管理装置の外部から読出し要求または書込み要求を受信し、
前記受信した要求が書込み要求であるとき、前記キャッシュメモリに格納されている所定の条件のデータを前記大容量メモリに配置するよう制御し、更に、前記書込み要求に従って、書込み対象となるデータを前記キャッシュメモリに書込み、
前記受信した要求が読出し要求であるとき、前記所定の条件のデータを前記大容量メモリに配置するよう制御し、更に、前記読出し要求に従って読み出されたデータを前記キャッシュメモリに書込む、ことを特徴とするデータキャッシュ方法。
【請求項１８】
キャッシュメモリを内蔵するデータキャッシュ装置と、前記キャッシュメモリより容量の大きい大容量メモリを内蔵する管理装置とを備える情報処理装置を含むコンピュータに、
前記情報処理装置の外部から読出し要求または書込み要求を受信する処理と、
前記受信した要求が書込み要求であるとき、前記キャッシュメモリに格納されている所定の条件のデータを前記大容量メモリに配置するよう制御し、更に、前記書込み要求に従って、書込み対象となるデータを前記キャッシュメモリに書込む処理と、
前記受信した要求が読出し要求であるとき、前記所定の条件のデータを前記大容量メモリに配置するよう制御し、更に、前記読出し要求に従って読み出されたデータを前記キャッシュメモリに書込む処理と、
を実行させることを特徴とするプログラム。
【国際調査報告】
2015064048.tif 000024
2015064048.tif 000025
2015064048.tif 000026
2015064048.tif 000027