(57)【要約】【課題】ＳＴＢ１のメモリ上の公開領域に公開されているデータを取得して処理する場合において、そのデータ取得によって処理が中断しないようにすることができる。【解決手段】  ＳＴＢ２は、処理に応じて必要なプログラムやデータを内部のメモリから適宜読み込んで実行する処理と、メインから読み出されて処理されるプログラムやデータの次に処理されると予測するプログラムやデータを、ＳＴＢ１の公開領域から予め読み込んで、メインに記憶させる処理を、それぞれ独立して実行する。【選択図】図１
2006065398.tif 000002
【特許請求の範囲】
【請求項１】
他の情報処理装置の物理記憶空間上に形成された公開領域に記憶されている単位データを読み込んで記憶部に記憶し、前記記憶部から前記単位データを読み込んで処理する情報処理装置において、
前記記憶部から単位データを読み込んで処理する第１の読み込み手段と、
前記第１の読み込み手段により前記単位データが処理されるとき、処理される単位データとは異なる単位データを、前記公開領域から読み込んで、前記記憶部に記憶させる第２の読み込み手段と
を備えることを特徴とする情報処理装置。
【請求項２】
前記公開領域は、前記他の情報処理装置の物理記憶装置の物理空間上に形成されており、
前記記憶部は、RAM（Random Access Memory）である
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記第１の読み込み手段は、前記記憶部に、処理する前記単位データが記憶されていないとき、その前記単位データを、前記公開領域から読み込んで処理する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記第１の読み込み手段は、前記公開領域から読み込んだ前記単位データを前記記憶部に記憶させる
ことを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記第２の読み込み手段は、前記第１の読み込み手段により前記単位データが処理されるとき、その前記単位データの次に処理されるものと予測する単位データを、前記公開領域から読み込んで、前記記憶部に記憶させる
ことを特徴とする請求項１に記載の情報処理装置。
【請求項６】
前記第１の読み込み手段により処理される前記単位データの次に処理されると予測する単位データを表す予測情報を記憶する記憶手段をさらに備え、
前記第２の読み込み手段は、前記第１の読み込み手段により前記単位データが処理されるとき、前記予測情報に、その前記単位データの次に処理されるものと予測されている単位データを、前記公開領域から読み込んで、前記記憶部に記憶させる
ことを特徴とする請求項５に記載の情報処理装置。
【請求項７】
情報処理装置の物理記憶空間上に形成された公開領域に記憶されている単位データを読み込んで記憶部に記憶し、前記記憶部から前記単位データを読み込んで処理する情報処理方法において、
前記記憶部から単位データを読み込んで処理する第１の読み込みステップと、
前記第１の読み込みステップにより前記単位データが処理されるとき、処理される単位データとは異なる単位データを、前記公開領域から読み込んで、前記記憶部に記憶させる第２の読み込みステップと
を含むことを特徴とする情報処理方法。
【請求項８】
情報処理装置の物理記憶空間上に形成された公開領域に記憶されている単位データを読み込んで記憶部に記憶し、前記記憶部から前記単位データを読み込んで処理する情報処理をコンピュータに実行させるプログラムであって、
前記記憶部から単位データを読み込んで処理する第１の読み込みステップと、
前記第１の読み込みステップにより前記単位データが処理されるとき、処理される単位データとは異なる単位データを、前記公開領域から読み込んで、前記記憶部に記憶させる第２の読み込みステップと
を含むことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置および方法、並びにプログラムに関し、特に、ネットワーク経由で連携動作する情報処理装置の間で記憶空間の共有を行うことができるようにした情報処理装置および方法、並びにプログラムに関する。
【背景技術】
【０００２】
複数のコンピュータ同士をネットワークで相互接続することにより、情報資源の共有、ハードウェア資源の共有、複数のユーザ間でのコラボレーションが実現することが知られている。コンピュータ間の接続メディアとして、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネットなどさまざまである。
【０００３】
特に最近では、一般家庭内にもコンピュータやネットワークなどの技術が深く浸透してきている。家庭内のパーソナル・コンピュータやＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔｓ）などの情報機器、さらにはテレビ受像機やビデオ再生装置などＡＶ機器や、各種の情報家電、ＣＥ（Ｃｏｎｓｕｍｅｒ  Ｅｌｅｃｔｒｏｎｉｃｓ）機器などがホームネットワーク経由で相互接続されている。また、このようなホームネットワークは、多くの場合、ルータ経由でインターネットを始めとする外部の広域ネットワークに相互接続されている。
【０００４】
このようにホームネットワーク上に複数のＡＶ機器が接続されるという利用形態が想定されるが、いままでは、ＡＶ機器間で充分な連携がなされていない、という問題がある。
【０００５】
このような問題に対し、最近では、ネットワーク上の機器同士を連携させるために、機器の協調動作により高い演算性能を実現するというグリッドコンピューティング技術に関する研究開発が進められている（例えば、特許文献１乃至５参照）。
【０００６】
このグリッドコンピューティング技術によれば、ネットワーク上の複数の情報処理装置が強調動作して分散処理を行ない、ユーザからは仮想的に１台の情報処理装置として動作することができる。
【０００７】
例えば、録画予約機能を持つ複数台の情報処理装置がネットワーク上に接続されている場合、録画予約の連携動作を実現することができる。すなわち、複数台の情報処理装置がホームネットワーク経由で録画予約の動作を連携させている場合、ホームネットワーク上では仮想的に１台の録画機器として動作する。そして、ユーザは、いずれかの機器のユーザ・インターフェースを用いて、ホームネットワークに接続されている任意の機器を用いて録画予約を行うことができる。
【０００８】
さらにこのような録画予約機能の連携により、予約時間が重複した番組（いわゆる裏番組）を同時録画することが可能である。同様に、記録したコンテンツの再生動作を複数の機器間で連携させ、同時・同期的なコンテンツ再生を実現することができる。このコンテンツ再生機能の連携により、別々の機器で記録されたコンテンツの再生を同時、同期的に進行させることにより、コンテンツ再生においてチャンネル切り換えの概念を導入することができる。
【０００９】
このような仮想的な１台の機器によれば、１台の機器のハードウェア資源や処理能力だけではユーザからの要求に応じることができない場合であっても、ネットワーク上で連携・協調動作する他の機器における余剰の処理能力を活用することで、ユーザの要求に応じることができ、さらに通常の１台の機器では現実的ではないサービスを実現することができる。
【００１０】
しかしながら、このような仮想的な１台の情報処理システムにおいては、システムを構成する情報処理装置毎にハードウェア構成や処理能力、さらには現在の処理負荷は区々であり、余剰の処理能力が不均一である、という問題がある。
【００１１】
このような場合、ネットワーク経由で連携するある情報処理装置においては余剰の処理能力がなく、且つメモリ資源が欠乏している一方で、他の情報処理装置では余剰の処理能力があり、オペレーティングシステムにおいて未使用のメモリ領域が十分に残っている、という無駄な状況が生じ得る。
【００１２】
例えば、ＬＡＮ回線に接続された複数のコンピュータ間におけるメモリの融通使用を可能とし、メモリ資源の有効活用とスワッピング処理の高速化を実現するメモリ共有方式について提案がなされている（特許文献６参照）。
【特許文献１】特開２００２−３４２１６５号公報
【特許文献２】特開２００２−３５１８５０号公報
【特許文献３】特開２００２−３５８２８９号公報
【特許文献４】特開２００２−３６６５３３号公報
【特許文献５】特開２００２−３６６５３４号公報
【特許文献６】特開平８−９５９２８号公報
【発明の開示】
【発明が解決しようとする課題】
【００１３】
しかしながらこの場合、メモリ要求コンピュータからのメモリ割当て要求に応じてメモリ割当てを行う共有メモリを備えたメモリ管理コンピュータをＬＡＮ上にあらかじめ設置するものである。言い換えれば、メモリ要求コンピュータとメモリ管理コンピュータは、メモリ割当て要求に関する手続き以外はそれぞれ独立して動作するものであり、ネットワーク上の各情報処理装置が連携して仮想的に１台の情報処理装置として動作するグリッドコンピューティングとは相違する。
【００１４】
また、この場合、メモリ要求コンピュータ側では、他のコンピュータから割り当てられた共有メモリを自分のメモリ空間に割り当てるものではなく、このため共有メモリへのアクセスはあくまでＬＡＮ経由でのネットワーク動作に他ならない。すなわち、メモリ要求コンピュータ側では、共有メモリへのアクセスを自分のメインメモリへのアクセスと透過的に行うことができない。
【００１５】
本発明は、このような状況に鑑みてなされたものであり、ネットワーク接続された複数の機器が協調動作により分散処理を行うことで、仮想的に１台の機器として動作することができるようにしたものである。
【課題を解決するための手段】
【００１６】
本発明の情報処理装置は、記憶部から単位データを読み込んで処理する第１の読み込み手段と、第１の読み込み手段により単位データが処理されるとき、処理される単位データとは異なる単位データを、公開領域から読み込んで、記憶部に記憶させる第２の読み込み手段とを備えることを特徴とする。
【００１７】
公開領域は、他の情報処理装置の物理記憶装置の物理空間上に形成され、記憶部は、RAM（Random Access Memory）であるようにすることができる。
【００１８】
第１の読み込み手段は、記憶部に、処理する単位データが記憶されていないとき、その単位データを、公開領域から読み込んで処理することができる。
【００１９】
第１の読み込み手段は、公開領域から読み込んだ単位データを記憶部に記憶させる
ことができる。
【００２０】
第２の読み込み手段は、第１の読み込み手段により単位データが処理されるとき、その単位データの次に処理されるものと予測する単位データを、公開領域から読み込んで、記憶部に記憶させることができる。
【００２１】
第１の読み込み手段により処理される単位データの次に処理されると予測する単位データを表す予測情報を記憶する記憶手段をさらに備え、第２の読み込み手段は、第１の読み込み手段により単位データが処理されるとき、予測情報に、その単位データの次に処理されるものと予測されている単位データを、公開領域から読み込んで、記憶部に記憶させることができる。
【００２２】
本発明の情報処理方法は、記憶部から単位データを読み込んで処理する第１の読み込みステップと、第１の読み込みステップにより単位データが処理されるとき、処理される単位データとは異なる単位データを、公開領域から読み込んで、記憶部に記憶させる第２の読み込みステップとを含むことを特徴とする。
【００２３】
本発明のプログラムは、記憶部から単位データを読み込んで処理する第１の読み込みステップと、第１の読み込みステップにより単位データが処理されるとき、処理される単位データとは異なる単位データを、公開領域から読み込んで、記憶部に記憶させる第２の読み込みステップとを含むことを特徴とする。
【００２４】
本発明の情報処理装置および方法、並びにプログラムにおいては、記憶部から単位データが読み込まれて処理され、単位データが処理されるとき、処理される単位データとは異なる単位データが、公開領域から込まれて、記憶部に記憶される。
【発明の効果】
【００２５】
本発明によれば、ネットワーク接続された複数の機器が協調動作により分散処理を行うことで、仮想的に１台の機器として動作することができる。また、協調動作を行う他の情報処理装置の記憶装置上の公開領域から所定のデータを予め取得しておくことで、そのデータを必要とする処理を迅速に行うことができる。
【発明を実施するための最良の形態】
【００２６】
以下に本発明の実施の形態を説明するが、本明細書に記載の発明と、発明の実施の形態との対応関係を例示すると、次のようになる。この記載は、本明細書に記載されている発明をサポートする実施の形態が本明細書に記載されていることを確認するためのものである。従って、発明の実施の形態中には記載されているが、発明に対応するものとして、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その発明に対応するものではないことを意味するものではない。逆に、実施の形態が発明に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その発明以外の発明には対応しないものであることを意味するものでもない。
【００２７】
さらに、この記載は、本明細書に記載されている発明の全てを意味するものではない。換言すれば、この記載は、本明細書に記載されている発明であって、この出願では請求されていない発明の存在、すなわち、将来、分割出願されたり、補正により出現、追加される発明の存在を否定するものではない。
【００２８】
本発明の情報処理装置は、記憶部から単位データを読み込んで処理する第１の読み込み手段（例えば、図５のサブプロセッサ５２）と、第１の読み込み手段により単位データが処理されるとき、処理される単位データとは異なる単位データを、公開領域から読み込んで、記憶部に記憶させる第２の読み込み手段（例えば、図５のサブプロセッサ５２）とを備えることを特徴とする。
【００２９】
公開領域（例えば、図１の公開領域１３ａ）は、他の情報処理装置の物理記憶装置（例えば、図１のＳＴＢ１のハードディスク３）の物理空間上に形成され、記憶部は、RAM（Random Access Memory）（例えば、図５のメインメモリ５４）であるようにすることができる。
【００３０】
第１の読み込み手段は、記憶部に、処理する単位データが記憶されていないとき、その単位データを、公開領域から読み込んで処理することができる（例えば、図１０のステップＳ６５，Ｓ６７，Ｓ６８）。
【００３１】
第１の読み込み手段は、公開領域から読み込んだ単位データを記憶部に記憶させる
ことができる（例えば、図１０のステップＳ６８）。
【００３２】
第２の読み込み手段は、第１の読み込み手段により単位データが処理されるとき、その単位データの次に処理されるものと予測する単位データを、公開領域から読み込んで、記憶部に記憶させることができる（例えば、図１２の処理）。
【００３３】
第１の読み込み手段により処理される単位データの次に処理されると予測する単位データを表す予測情報（例えば、図１１のマッピングテーブル）を記憶する記憶手段（例えば、メインプロセッサ１１）をさらに備え、第２の読み込み手段は、第１の読み込み手段により単位データが処理されるとき、予測情報に、その単位データの次に処理されるものと予測されている単位データを、公開領域から読み込んで、記憶部に記憶させることができる（例えば、図１２の処理）。
【００３４】
本発明の情報処理方法は、記憶部から単位データを読み込んで処理する第１の読み込みステップ（例えば、図１０の処理）と、第１の読み込みステップにより単位データが処理されるとき、処理される単位データとは異なる単位データを、公開領域から読み込んで、記憶部に記憶させる第２の読み込みステップ（例えば、図１２の処理）とを含むことを特徴とする。
【００３５】
図１は、本発明を適用したネットワークシステムの構成例を示している。
【００３６】
このネットワークシステムは、ホームネットワークなどのローカルネットワーク３により相互接続されたセットトップボックス（ＳＴＢ）１、２が互いに連携することで１台の仮想的な情報処理装置を構築している。
【００３７】
ＳＴＢ１は、例えば内蔵するハードディスク１３に公開領域１３ａを形成し、この公開領域１３ａを介して、ＳＴＢ２に情報を公開している。ＳＴＢ２はＳＴＢ１が公開した情報を適宜読み出し、実行する。
【００３８】
このように、ＳＴＢ１が保持する情報を、公開領域１３ａを介して公開し、ＳＴＢ２がそれを利用することができるようにしたので、ＳＴＢ１およびＳＴＢ２は、ユーザからは仮想的に１台の機器として動作することができる。
【００３９】
なおＳＴＢ１および２は、例えば各種のＡＶ（Ａｕｄｉｏ  ａｎｄ  Ｖｉｓｕａｌ）機器やポータブル機器のような情報処理装置とすることもできる。
【００４０】
図２は、ＳＴＢ１の構成例を示している。
【００４１】
メインプロセッサ１１は、サブプロセッサ１２−１、１２−２、および１２−３によるプログラム実行（データ処理）のスケジュールと、ＳＴＢ１の全般的な処理を管理する。
【００４２】
サブプロセッサ１２−１乃至１２−３（以下、個々に区別する必要がない場合は、サブプロセッサ１２と称する。他の場合についても同様とする）は、メインプロセッサ１１の制御下で、並列且つ独立に処理を実行する。
【００４３】
ハードディスク１３には、図３に示すように、オペレーティングシステムやアプリケーションデータが格納されている使用領域と、未使用領域が存在するが、ここでは、未使用領域が公開領域１３ａに割り当てられる。
【００４４】
未使用領域上で公開領域１３ａに割り当てられたハードディスク１３の物理セグメントアドレスには、図４に示すように、公開領域アドレスＡＨが割り当てられている。この公開領域アドレスＡＨは、ＳＴＢ１を一意に識別するＩＤからなる宛先ＩＤ（この例の場合、ＳＴＢ１のＩＤ）と情報サイズ番号から構成されている。
【００４５】
メインプロセッサ１１、サブプロセッサ１２、ハードディスク１３、およびメインメモリ１４は、バス１５を介して接続されている。
【００４６】
バス１５には、入出力インタフェース１６がさらに接続されており、入出力インタフェース１６には、LCD（Liquid Crystal Display）などよりなる出力部１７、キーボード、マウスなどよりなる入力部１８、およびネットワーク３との通信処理を行う通信部１９が接続されている。
【００４７】
入出力インタフェース１６にはまた、必要に応じてドライブ２０が接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどよりなるリムーバブル記録媒体２１が適宜装着され、それらから読み出されたコンピュータプログラムがインストールされる。
【００４８】
図５は、ＳＴＢ２の構成例を示している。ＳＴＢ２の構成は、ＳＴＢ１の構成（図２）と基本的に同様であるので、その詳細な説明は省略するが、サブプロセッサ５２−１乃至５２−３は、メインプロセッサ５１の制御下で、並列且つ独立に処理を実行する。
【００４９】
例えば、サブプロセッサ５２−１は、処理を実行する上で必要になった所定単位分のプログラムやデータ（以下、単位データと称する）をメインメモリ５４から適宜読み込んで実行する処理（以下、必要単位データ読み込み処理と称する）を、サブプロセッサ５２−２は、サブプロセッサ５２−１によりメインメモリ５４から読み込まれて処理される単位データの次に処理されると予測する単位データを、ハードディスク５３やＳＴＢ１により公開された公開領域１３ａから予め読み込んで、メインメモリ５４に記憶させる処理（以下、予測単位データ読み込み処理と称する）を、それぞれ並列的に実行する。
【００５０】
メインメモリ５４の所定の物理セグメントアドレス（未使用領域）には、図６に示すように、必要な単位データが格納されている公開領域１３ａの公開領域アドレスＡＨが割り当てられている。
【００５１】
ＳＴＢ１およびＳＴＢ２において、それぞれの物理セグメントアドレスに公開領域アドレスＡＨが割り当てられているので（図４および図６）、例えばＳＴＢ２にとって、ＳＴＢ１の公開領域１３ａが透過的となり、後述するように自装置内の物理メモリと区別することなくアクセスすることが可能となる。
【００５２】
次に、ＳＴＢ１およびＳＴＢ２の物理セグメントアドレスに公開領域アドレスＡＨを割り当てる場合の手順を、図７のフローチャートを参照して説明する。
【００５３】
ステップＳ１１において、ＳＴＢ１のメインプロセッサ１１は、ハードディスク１３上で公開する領域１３ａを指定し、ステップＳ１２において、公開先となる機器（この例の場合、ＳＴＢ２）を決定し、そのＩＤを記憶する。
【００５４】
一方ＳＴＢ２のメインプロセッサ５１は、ステップＳ２１において、メインメモリ５４の未使用領域を検出した後、ステップＳ２２において、通信部５９を介して、ＳＴＢ１に対し、領域公開要求を発行する。この領域公開要求には、ＳＴＢ２のＩＤと使用したいメモリサイズが記述されている。
【００５５】
ＳＴＢ２から、領域公開要求を受けると、ステップＳ１３において、ＳＴＢ１のメインプロセッサ１１は、この要求に応答して、ＳＴＢ２のＩＤを基に、公開先と認める機器からの要求であるか否かを判定する。
【００５６】
ステップＳ１３で、公開先と認める機器からの要求であると判定した場合、ＳＴＢ１のメインプロセッサ１１は、ステップＳ１４に進み、通信部１９を介して、領域公開許可応答をＳＴＢ２に返す。
【００５７】
次にステップＳ１５において、ＳＴＢ１のメインプロセッサ１１は、図４に示したように、ハードディスク１３空間に形成した公開領域１３ａの物理セグメントアドレスと公開領域アドレスＡＨ（宛先ＩＤ（ＳＴＢ１のＩＤ）と公開領域サイズからなるアドレス）とを対応付けて、マッピングテーブルを作成する。
【００５８】
ステップＳ１３で、公開先と認める機器からの要求ではないと判定された場合、ステップＳ１６に進み、ＳＴＢ１のメインプロセッサ１１は、通信部１９を介して、領域公開不許可応答をＳＴＢ２に返す。
【００５９】
領域公開を要求した後（ステップＳ２２）、ＳＴＢ２のメインプロセッサ５１は、ステップＳ２３に進み、ＳＴＢ１からの要求応答が許可又は不許可のいずれであるかを判定し、応答が許可であると判定した場合、ステップＳ２４に進む。
【００６０】
ステップＳ２４において、ＳＴＢ２のメインプロセッサ５１は、図６に示したような、メインメモリ５４の公開領域用に割り当てたセグメント（ステップＳ２１で検出した未使用領域のセグメント）の物理セグメントアドレスと、公開領域アドレスＡＨ（宛先ＩＤ（ＳＴＢ１のＩＤ）と公開領域サイズからなるアドレス）とを対応付けて、マッピングテーブルを作成する。その後処理は終了する。
【００６１】
ステップＳ２３で、要求応答が不許可である（応答にエラーが生じた場合も含む）と判定された場合、ステップＳ２５に進み、ＳＴＢ２のメインプロセッサ５１は、マッピングに失敗したとして、本処理ルーチンを異常終了させる。
【００６２】
次に、ＳＴＢ２がＳＴＢ１の公開領域１３ａへアクセスするための動作を、図８のフローチャートを参照して説明する。なおここではＳＴＢ１のメインプロセッサ１１およびＳＴＢ２のメインプロセッサ５１がここでの処理を実行するが、この処理が割り当てられたサブプロセッサ１２またはサブプロセッサ５２が実行するようにすることもできる。
【００６３】
ステップＳ４１において、ＳＴＢ２のメインプロセッサ５１は、メインメモリ５４の公開領域用に割り当てられているセグメントアドレスに対応するデータが必要になったとき、セグメントアドレスに対応する公開領域アドレスＡＨを、図７のステップＳ２４で作成したマッピングテーブル（図６）から読み出す。
【００６４】
次にステップＳ４２において、ＳＴＢ２のメインプロセッサ５１は、通信部５９を介して、ステップＳ４１で読み出した公開領域アドレスＡＨを構成する宛先ＩＤが指定するＳＴＢ１に対して、その公開領域アドレスＡＨを送信し、公開領域へのアクセスを要求する。
【００６５】
公開領域へのアクセス要求を受けると、ＳＴＢ１は、ステップＳ３１において、公開領域アドレスＡＨの宛先ＩＤ（ＳＴＢ１のＩＤ）を基に、自装置内の公開領域へのアクセス要求であることを認識し、ステップＳ３２において、マッピングテーブル（図４）を参照して、公開領域アドレスＡＨに対応する公開領域１３ａ（ハードディスク１３）の物理セグメントアドレスを検出する。
【００６６】
次にステップＳ３３において、ＳＴＢ１のメインプロセッサ５１は、検出した物理セグメントアドレスを有する、ハードディスク１３の物理セグメントからそこに格納されているデータを取得し、通信部１９を介して、要求元のＳＴＢ２に送信する。
【００６７】
ＳＴＢ２は、ステップＳ４３において、ＳＴＢ１から送信されてきたデータを受信する。
【００６８】
以上のようにして、ＳＴＢ１の公開領域１３ａに公開されている情報をＳＴＢ２は、透過的に取得することができる。
【００６９】
ところで上述したように、ＳＴＢ２は、ＳＴＢ１の公開領域１３ａからデータを取得することができるが、そのためには、データ転送を含めＳＴＢ１との通信が必要となる。したがって、ＳＴＢ２が、データが必要になったときに公開領域１３ａからデータを取得するようにすると、ＳＴＢ２は、そのデータが伝送されるまで待つ必要がある。すなわち処理を継続して実行するために必要なデータであれば、その間処理を中断しなければならない。
【００７０】
そこでこの例の場合、ＳＴＢ２は、以下に説明するように（図９）、公開領域１３ａに格納されているデータを予め取得して置くようにしている。
【００７１】
すなわちステップＳ５１において、ＳＴＢ２のメインプロセッサ５１は、公開領域用に割り当てられたメインメモリ５４のセグメントに対応するプログラムやデータ（単位データ）の読み込みが必要になったか否かを判定し、単位データの読み込みが必要になったと判定した場合、ステップＳ５２に進む。
【００７２】
ステップＳ５２において、メインプロセッサ５１は、必要単位データ読み込み処理を実行するサブプロセッサ５２と、予測単位データ読み込み処理を実行するサブプロセッサ５２をそれぞれ指定する。この例の場合、サブプロセッサ５２−１が、必要単位データ読み込み処理を実行するものとして指定され、サブプロセッサ５２−２が、予測単位データ読み込み処理を実行するものとして指定されるものとする。
【００７３】
ステップＳ５３において、サブプロセッサ５２−１は、必要単位データ読み込み処理を実行し、サブプロセッサ５２−２は、予測単位データ読み込み処理を実行する。その後、ステップＳ５１に戻り、それ以降の処理が繰り返し行われる。
【００７４】
必要単位データ読み込み処理を、図１０のフローチャートを参照して説明する。なお図７のステップＳ２４で、図１１に示すようなマッピングテーブルが生成されており、必要単位データ読み込み処理は、このマッピングテーブルに基づいて実行される。
【００７５】
図１１に示すマッピングテーブルには、「カレントタグ」、「必要単位データのＩＤ」、「公開領域アドレス」、「メインメモリのセグメントアドレス」、および「予測単位データのＩＤ」の欄が設けられ、その欄には、カレントタグ、公開領域に格納されている単位データのＩＤ、その単位データが格納されているＳＴＢ１の公開領域１３ａのアドレスＡＨ、そのアドレスから読み込まれた単位データが記憶されるメインメモリ５４のアドレス、およびその単位データの次に処理されるものと予測する単位データのＩＤが、それぞれ対応して設定されている。
【００７６】
なおそれぞれ対応する、「必要単位データのＩＤ」、「公開領域アドレス」、「メインメモリのセグメントアドレス」、および「予測単位データのＩＤ」の情報を、個々に区別する必要がない場合、これらをまとめてデータ情報と称する。
【００７７】
図１０に戻りステップＳ６１において、ＳＴＢ２のサブプロセッサ５２−１は、ステップＳ５１で読み込みが必要となった単位データのＩＤを、「必要単位データのＩＤ」とするデータ情報がマッピングテーブル（図１１）に存在するか否かを判定し、存在すると判定した場合、ステップＳ６２に進む。
【００７８】
ステップＳ６２において、サブプロセッサ５２−１は、必要な単位データのＩＤを「必要単位データのＩＤ」とするデータ情報に対応する位置に、カレントタグが設定されているか否かを判定する。
【００７９】
図１１の例では、単位データＰ０のＩＤを「必要単位データのＩＤ」とするデータ情報（以下、このようなデータ情報を、適宜、単位データＰ０のデータ情報と称する）に対応する位置に、カレントタグが設定されている。
【００８０】
ステップＳ６２で、カレントタグがそのデータ情報に対応する位置に設定されていないと判定された場合、ステップＳ６３に進み、サブプロセッサ５２−１は、カレントタグを、そのデータ情報に対応する位置に移動させる。
【００８１】
次にステップＳ６４において、サブプロセッサ５２−１は、メインメモリ５４の、カレントタグに対応するデータ情報の「メインメモリのセグメントアドレス」にアクセスし、そこに単位データが記憶されている否かを判定し、記憶されていると判定した場合、ステップＳ６５に進み、そこから単位データを読み出して処理する。
【００８２】
なおメインメモリ５４への単位データの記憶は、後述するステップＳ６８、または予測単位データ読み込み処理で行われる。
【００８３】
ステップＳ６１で、必要な単位データのＩＤを「必要単位データのＩＤ」とするデータ情報がマッピングテーブルに存在しないと判定した場合、ステップＳ６６に進み、サブプロセッサ５２−１は、必要な単位データのデータ情報を、マッピングテーブルに追加する。すなわち必要な単位データのＩＤ、必要な単位データが記憶されている公開領域アドレスＡＨ、そこから読み込まれた単位データが記憶されるメインメモリ５４のセグメントアドレス、そして、その単位データの次に処理されるものと（必要となると）予測する単位データのＩＤが、それぞれ対応付けられてテーブルに設定される（追加される）。
【００８４】
その後は、ステップＳ６３に進み、サブプロセッサ５２−１は、カレントタグを、そのデータ情報（ステップＳ６６で追加されたデータ情報）に対応する位置に移動させ、ステップＳ６４で、メインメモリ５４の、カレントタグに対応するデータ情報の「メインメモリのセグメントアドレス」にアクセスし、そこに単位データが記憶されている否かを判定する。
【００８５】
ステップＳ６１で、必要な単位データのＩＤを「必要単位データのＩＤ」とするデータ情報が存在しないと判定された場合（ステップＳ６６を経由している場合）、または必要な単位データが後述するように、予測単位データとして予め読み込まれていない場合、メインメモリ５４の、カレントタグに対応するデータ情報の「メインメモリのセグメントアドレス」には単位データが記憶されていないので、ステップＳ６４では、ＮＯの判定がなされ、ステップＳ６７に進む。
【００８６】
ステップＳ６７において、サブプロセッサ５２−１は、図８のステップＳ４１乃至ステップＳ４３と同様な処理を行って、ＳＴＢ１の公開領域１３ａの、カレントタグに対応するデータ情報の「公開領域アドレス」にアクセスし、そこに記憶されている単位データを取得する（読み込む）。
【００８７】
次にステップＳ６８において、サブプロセッサ５２−１は、メインメモリ５４の、カレントタグに対応するデータ情報の「メインメモリのセグメントアドレス」に、ステップＳ６７で取得した単位データを記憶させる。
【００８８】
その後、ステップＳ６５に進み、サブプロセッサ５２−１は、メインメモリ５４の、カレントタグに対応するデータ情報の「メインメモリのセグメントアドレス」から単位データを読み込んで（ステップＳ６７で公開領域１３ａから取得してステップＳ６８でメインメモリ５４に記憶させた単位データを読み込んで）処理する。
【００８９】
ステップＳ６２で、必要な単位データのＩＤを「必要単位データのＩＤ」とするデータ情報に対応する位置に、カレントタグが設定されている場合、このことは、上述したステップＳ６３，Ｓ６４，Ｓ６７，Ｓ６８の処理で、必要な単位データは、すでに、メインメモリ５４の、必要な単位データのＩＤを「必要単位データのＩＤ」とするデータ情報の「メインメモリのセグメントアドレス」に記憶されていることを意味するので、ステップＳ６５に進み、サブプロセッサ５２−１は、メインメモリ５４のそのアドレスから必要な単位データを読み込んで処理する。
【００９０】
以上のようにして必要な単位データがメインメモリ５４から読み込まれて処理される。
【００９１】
次に、予測単位データ読み込み処理を、図１２のフローチャートを参照して説明する。なお予測単位データ読み込み処理は、必要単位データ読み込み処理と同様に図１１に示すマッピングテーブルに基づいて実行される。
【００９２】
ステップＳ７１において、ＳＴＢ２のサブプロセッサ５２−２は、図１０のステップＳ６３における処理により、マッピングテーブル（図１１）のカレントタグの移動があったか否かを判定し、移動があったと判定した場合、ステップＳ７２に進む。
【００９３】
例えば、図１１に示すように、単位データＰ０のデータ情報（単位データＰ０のＩＤを「必要単位データのＩＤ」とするデータ情報）に対応する位置にあったカレントタグが、図１０のステップＳ６３の処理で、図１３に示すように、単位データＰ１のデータ情報に対応する位置に移動した場合（単位データＰ１についての必要単位データ読み込み処理が開始された場合）、ステップＳ７２に進む。
【００９４】
ステップＳ７２において、サブプロセッサ５２−２は、カレントタグに対応するデータ情報の「予測単位データのＩＤ」を、「必要単位データのＩＤ」とするデータ情報を検出する。
【００９５】
図１３の例の場合、カレントタグに対応するデータ情報の「予測単位データのＩＤ」には、単位データＰ２のＩＤが設定されているので、ここでは、図１３において斜線が付されている、単位データＰ２のデータ情報が検出される。
【００９６】
ステップＳ７３において、サブプロセッサ５２−２は、メインメモリ５４の、ステップＳ７２で検出したデータ情報の「メインメモリのセグメントアドレス」にアクセスし、そこに単位データが記憶されているか否かを判定し、記憶されていないと判定した場合、ステップＳ７４に進む。
【００９７】
ステップＳ７４において、サブプロセッサ５２−２は、図８のステップＳ４１乃至ステップＳ４３と同様な処理を行って、ＳＴＢ１の公開領域１３ａの、ステップＳ７２で検出したデータ情報の「公開領域アドレス」にアクセスし、そこに記憶されている単位データを取得する（読み込む）。
【００９８】
図１３の例の場合、メインメモリ５４のアドレスＡＬ１２に単位データＰ２が記憶されているか否かが判定され、記憶されていないと判定された場合、ＳＴＢ１の公開領域１３ａの公開領域アドレスＡＨ１２から、そこに格納されている単位データＰ２が取得される。
【００９９】
次に、ステップＳ７５において、サブプロセッサ５２−２は、ステップＳ７４で取得した単位データを、メインメモリ５４の、ステップＳ７２で検出したデータ情報の「メインメモリのセグメントアドレス」に記憶させる。
【０１００】
図１３の例では、公開領域アドレスＡＨ１２から取得された単位データＰ２が、メインメモリ５４のアドレスＡＬ１２に記憶される。
【０１０１】
その後、処理は終了する。
【０１０２】
以上のようにして、必要単位データ読み込み処理と予測単位データ読み込み処理が行われる。
【０１０３】
このように、例えば、図１１の例では、単位データＰ１について必要単位データ読み込み処理がなされる際に（図１０）、その次に処理されるものと予測する単位データＰ２を、この時点で、ＳＴＢ１の公開領域１３ａから取得してメインメモリ５４に記憶するようにしたので、実際に単位データＰ２が処理されるときは、単位データＰ２をメインメモリ５４から直接読み込むことができる（図１０のステップＳ６７およびステップＳ６８の処理が行われず、ステップＳ６５の処理が行われる）。
【０１０４】
その結果、単位データＰ２を処理するに当たり、ＳＴＢ１の公開領域１３ａから単位データＰ２をメインメモリ５４に転送する必要がないので、単位データＰ２を迅速に処理することができ、中断することなく処理を続行することができる。
【０１０５】
上述した一連の処理は、ハードウェアにより実現させることもできるが、ソフトウエアにより実現させることもできる。一連の処理をソフトウエアにより実現する場合には、そのソフトウエアを構成するプログラムがコンピュータにインストールされ、そのプログラムがコンピュータで実行されることより、上述したＳＴＢ２が機能的に実現される。
【０１０６】
なお、本明細書において、記録媒体により提供されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【図面の簡単な説明】
【０１０７】
【図１】本発明を適用したネットワークシステムの構成を示した図である。
【図２】図１のＳＴＢ１の構成例を示すブロック図である。
【図３】図２のハードディスクの領域を示す図である。
【図４】図２のハードディスクのセグメントのアドレスと公開領域アドレスＡＨとの対応付けを示す図である。
【図５】図１のＳＴＢ２の構成例を示すブロック図である。
【図６】図５のメインメモリのセグメントのアドレスと公開領域アドレスＡＨとの対応付けを示す図である。
【図７】物理セグメントを公開領域アドレスＡＨに対応付けるための処理を説明するフローチャートである。
【図８】図１のＳＴＢ２が、ＳＴＢ１の公開領域１３ａにアクセスするための処理を説明するフローチャートである。
【図９】図１のＳＴＢ２の処理動作を説明するフローチャートである。
【図１０】図９のステップＳ５３における必要単位データ読み込み処理を説明するフローチャートである。
【図１１】ＳＴＢ２のマッピングテーブルの例を示す図である。
【図１２】図９のステップＳ５３における予測単位データ読み込み処理を説明するフローチャートである。
【図１３】ＳＴＢ２のマッピングテーブルの他の例を示す図である。
【符号の説明】
【０１０８】
１  ＳＴＢ，  ２  ＳＴＢ，  ３  ネットワーク，  １１  メインプロセッサ，  １２  サブプロセッサ，  １３  ハードディス，  １４  メインメモリ，  ５１  メインプロセッサ，  ５２  サブプロセッサ，  ５３  ハードディス，  ５４  メインメモリ
【図１】
2006065398.tif 000003
【図２】
2006065398.tif 000004
【図３】
2006065398.tif 000005
【図４】
2006065398.tif 000006
【図５】
2006065398.tif 000007
【図６】
2006065398.tif 000008
【図７】
2006065398.tif 000009
【図８】
2006065398.tif 000010
【図９】
2006065398.tif 000011
【図１０】
2006065398.tif 000012
【図１１】
2006065398.tif 000013
【図１２】
2006065398.tif 000014
【図１３】
2006065398.tif 000015