(57)【要約】【課題】計算機の構成要素である機能モジュールをより有効に利用する。【解決手段】本発明のデータ処理装置３は、機能モジュール接続制御部７を介して機能モジュール２と接続し、ネットワーク接続制御部９を介してネットワーク４に接続している。そして、自己紹介部８は、機能モジュール２の公開データをネットワーク４上に公開するので、計算機１を利用しようとするユーザは、ネットワーク４に接続されている全ての機能モジュール２の中から任意の機能モジュール２を選択することができる。そして、選択した各機能モジュール２の設定データ格納部１７に、計算機１の設定データを書き込むことにより、選択した機能モジュールを計算機１として動作させることができるので、ネットワーク４に接続している機能モジュール２をより有効に利用することができる。【選択図】図１
2008003808.tif 000002
【特許請求の範囲】
【請求項１】
機能要素とネットワークとに接続し、該機能要素とネットワークとの間でデータ処理を行うデータ処理装置であって、
データ処理装置と機能要素との間で行われるデータの送受信を制御する機能要素接続制御手段と、
データ処理装置と前記ネットワークとの間で行われるデータの送受信を制御するネットワーク接続制御手段と、
機能要素接続制御手段を介して接続している機能要素を特定するための公開データを前記ネットワーク上に公開すると共に、前記ネットワークを介して接続する接続先、及び該接続先と接続するときの接続設定条件を示す設定データを格納している自己紹介手段とを備えていることを特徴とするデータ処理装置。
【請求項２】
複数の機能要素が、請求項１に記載のデータ処理装置とネットワークとを介して互いに接続されることによって構成されていることを特徴とする計算機。
【請求項３】
上記データ処理装置は、前記計算機を構成する複数の機能要素間で行われるデータ送受信時に、データ送信側の機能要素から送信されるデータ形式を、データ受信側が処理可能なデータ形式に変換するデータ変換手段を備えていることを特徴とする請求項２に記載の計算機。
【請求項４】
上記機能要素接続制御手段は、機能要素間で送受信されるデータを格納する送受信データ記憶手段を備えていること特徴とする請求項２または３に記載の計算機。
【請求項５】
上記公開データを管理する組織構築手段を備え、
上記組織構築手段は、上記ネットワーク上に公開されている公開データを記憶する公開データ記憶手段と、
上記公開データ記憶手段に記憶されている公開データの中から、任意の機能要素を選択する選択手段とを備えていることを特徴とする請求項２乃至４の何れか１項に記載の計算機。
【請求項６】
上記計算機を構成する複数の機能要素には、上記計算機における演算処理及び制御処理を行う処理装置、該処理装置の主記憶機能を担う主記憶装置、及び該主記憶装置の容量を補う補助記憶装置が含まれており、
上記処理装置と主記憶装置との間に仮想メモリ機構を構築するためのアドレス変換手段を有することを特徴とする請求項２乃至５の何れか１項に記載の計算機。
【請求項７】
機能要素とネットワークとに接続し、該機能要素とネットワークとの間でデータ処理を行うデータ処理装置のデータ処理方法であって、
データ処理装置と機能要素との間で行われるデータの送受信を制御するステップと、
データ処理装置と前記ネットワークとの間で行われるデータの送受信を制御するステップと、
機能要素を特定するための公開データを前記ネットワーク上に公開するステップと、
前記ネットワークを介して接続する接続先、及び該接続先と接続するときの接続設定条件を示す設定データに基づいて接続先を決定するステップとを備えていることを特徴とするデータ処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はデータ処理装置、計算機、及びデータ処理方法に関するものである。
【背景技術】
【０００２】
従来の計算機は、計算機を構成する各機能要素がバスを介して結合され、各機能要素の固有の性能が最も有効に働くように構成されている。また、計算機をネットワークに接続して通信することによって、ＯＳ（Operating System）上で計算機の資源を共有する技術が知られている。例えば、電子メール、ＦＴＰ（File Transfer Protocol）、ＮＦＳ（Network File System）等を用いて計算機同士でデータの交換を行ったり、Ｗｅｂサーバ上に公開されているデータを閲覧・取得したりすることによって、ネットワークに接続されている複数の計算機の有する情報資源を共有することができる。
【０００３】
さらに、計算機資源をより有効に活用するための計算機資源共有技術が生まれてきた。すなわち、グリッドコンピューティング、Ｐｅｅｒ‐ｔo‐Ｐｅｅｒ（Ｐ２Ｐ）、ＮＡＳ（Network Attached Storage）等である。
【０００４】
グリッドコンピューティングは、ネットワークに接続された複数の計算機を１つの仮想計算機として利用できるようにしたものである。すなわち、グリッドコンピューティングでは、複数の計算機のそれぞれにグリッドミドルウェアを搭載して仮想組織を構築し、該仮想組織のメンバーとして登録することにより、グリッドミドルウェアを登載している複数の計算機に計算処理を分散して実行させることができる。これにより、ネットワークに接続している遊休状態の計算機を利用して、大規模な計算処理を行うことができる。
【０００５】
グリッドコンピューティングの例としては、非特許文献１に紹介されているように、メタコンピューティング、研究グリッド、アクセスグリッド、データグリッド、計算サービスグリッド、グリッドＡＳＰ（Application Service Provider）、デスクトップグリッドコンピューティング、センサーグリッド等、多様な形態が知られている。
【０００６】
Ｐ２Ｐは、基本的にサーバを介さず、計算機同士が直接にデータの交換を行うものである。Ｐ２Ｐを用いることによって、ネットワークに接続している計算機が持つデータを共有することができる。Ｐ２Ｐの例としては、非特許文献２に紹介されているように、クライアント・サーバＰ２Ｐ、スーパーノードハイブリッドＰ２Ｐ、ピュアＰ２Ｐ等が知られている。
【０００７】
ＮＡＳは、非特許文献３に示されているように、ネットワークにハードディスクを接続し、ネットワーク上でハードディスクを共有するものである。ＮＡＳは、ハードディスク側にＯＳを搭載し、従来のサーバと同様にネットワーク上にデータを記憶させるものである。
【０００８】
また、上記以外の計算機資源共有技術として、ｉＳＣＳＩと呼ばれるＳＣＳＩ接続により、インターネット上でハードディスクを共有する技術がある（特許文献１参照）。
【０００９】
さらに、他の計算機資源共有技術として、マルチプロセッサの環境でのＨＴＴＰキャッシュの管理をネットワーク上で行う方法がある（特許文献２参照）。その基礎となるメモリマネジメント技術については古くから知られていて、例えば、非特許文献４（‘Virtual Memory’,pp.481-501）に詳しく述べられている。
【００１０】
これらの技術を用いることによって、計算資源及び情報資源をネットワーク上で共有することができ、計算機資源を有効に活用することができる。
【非特許文献１】亘理誠夫：グリッドの動向  −次世代インターネット利用の中核技術になるか−、文部科学省科学技術研究所科学技術動向、２００２年９月
【非特許文献２】R. Dingledinne et.al. ‘Peer-To-Peer: Harnessing the Power of Disruptive Technologies ’, O’reilly & Associates, March 15. 2001.
【非特許文献３】W. C.Perston:‘ SANs & NAS’, O’reilly & Associates, October. 2002.
【非特許文献４】D.A.Patterson, et.al ‘Computer Organization & Design The Hardware / Software Interface’Morgan Kaufmann Publishers Inc., 1994.
【特許文献１】特表２００５‐５０２２２５（平成17年1月20日公表）
【特許文献２】米国特許第７，０１７，０２５号明細書
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかしながら、上記従来の技術では、ネットワーク全体として、計算機資源が完全に有効には活用されているとは言い難い。すなわち、上記従来の技術では、ネットワークに接続した機器のうち、ＣＰＵを有するパソコンなどの機器は他のコンピュータからその存在を認識することができるが、そのパソコンに含まれるメモリやハードディスク、ディスプレイ等の機能要素は、他のコンピュータから、その存在を認識することができない。そのため、あるコンピュータが所有する資源の全てを他のコンピュータが利用することは困難であり、システム全体として資源が有効に使用されていない。
【００１２】
本発明は、上記の問題点に鑑みてなされたものであって、その目的は、機能要素をより有効に利用することができるデータ処理装置、計算機、及びデータ処理方法を提供することにある。
【課題を解決するための手段】
【００１３】
本発明のデータ処理装置は、上記の課題を解決するために、機能要素とネットワークとに接続し、該機能要素とネットワークとの間でデータ処理を行うデータ処理装置であって、データ処理装置と機能要素との間で行われるデータの送受信を制御する機能要素接続制御手段と、データ処理装置と前記ネットワークとの間で行われるデータの送受信を制御するネットワーク接続制御手段と、機能要素接続制御手段を介して接続している機能要素を特定するための公開データを前記ネットワーク上に公開すると共に、前記ネットワークを介して接続する接続先、及び該接続先と接続するときの接続設定条件を示す設定データを格納している自己紹介手段とを備えていることを特徴としている。
【００１４】
また、本発明のデータ処理方法は、上記の課題を解決するために、機能要素とネットワークとに接続し、該機能要素とネットワークとの間でデータ処理を行うデータ処理装置のデータ処理方法であって、データ処理装置と機能要素との間で行われるデータの送受信を制御するステップと、データ処理装置と前記ネットワークとの間で行われるデータの送受信を制御するステップと、機能要素を特定するための公開データを前記ネットワーク上に公開するステップと、前記ネットワークを介して接続する接続先、及び該接続先と接続するときの接続設定条件を示す設定データに基づいて接続先を決定するステップとを備えていることを特徴としている。
【００１５】
上記の構成によると、データ処理装置は、機能要素接続制御手段、及びネットワーク接続制御手段を備えているので、機能要素は、データ処理装置を介して、ネットワークに接続している他の機能要素とデータの送受信を行うことができる。
【００１６】
なお、機能要素とは、計算機を構成する要素であり、機能的なまとまりを持つ要素を指す。例えば計算機を構成する機能モジュールは、機能要素に含まれる。
【００１７】
また、自己紹介手段は、公開データをネットワーク上に公開するので、ネットワークにアクセスすれば、ネットワークに接続する全ての機能要素の公開データを閲覧することができる。したがって、前記ネットワークには、どれだけの機能要素、すなわち計算機資源が、ネットワークのどこに接続されているかを把握することができる。これにより、計算機資源を最適に配分し、有効に利用することができる。
【００１８】
さらに、自己紹介手段は、前記ネットワークを介して接続する接続先、及び該接続先と接続するときの接続設定を示す設定データを格納しているので、データ処理装置は、この設定データに定義されている接続先に、設定データに定義されている接続設定条件で接続することができる。なお、接続設定条件は、通信速度や記憶容量等、接続先に要求する接続条件を指す。例えば、設定データにおける接続先をＣＰＵ、メモリ、及びハードディスク（ＨＤＤ）の機能要素とし、接続設定条件としてメモリやＨＤＤの使用容量等を定義した設定データを作成する。そして、この設定データをＣＰＵ、メモリ、及びＨＤＤの機能要素がそれぞれ備えているデータ処理手段の設定データ格納手段に格納することにより、ＣＰＵ、メモリ、及びＨＤＤの機能要素を１つの計算機として機能させることが可能となる。
【００１９】
また、本発明の計算機は、上記の課題を解決するために、複数の機能要素が、請求項１に記載のデータ処理装置とネットワークとを介して互いに接続されることによって構成されていることを特徴としている。
【００２０】
上記の構成によると、上記計算機を利用しようとするユーザは、ネットワークに接続している機能要素について、各機能要素を特定する公開データを閲覧することができる。そして、公開データに基づいて、ネットワークに接続する機能要素の中から必要な機能要素を選択して計算機を構成することができる。したがって、ネットワーク接続と同様に、接続先となる機能要素を容易に追加、変更、または削除することができ、計算機を容易に再構築することができる。そして、このようにして構成された計算機は、ネットワークをあたかも自らの構成要素として動作する。
【００２１】
従って、従来はＯＳの上でしか共有することができなかったＣＰＵ、メモリ等の機能要素を直接にネットワーク上で共有することができる。これにより、ネットワークに接続する機能要素を複数のユーザで最適に配分して利用することが可能となる。
【００２２】
また、上記計算機は、複数の機能要素から、必要な機能要素を選択して使用することができるので、選択した機能要素に故障等のトラブルが発生した場合、容易に他の機能要素で代用することができる。また、予め同等の処理を行うことのできる複数の機能要素を計算機の構成要素として選択しておくこともできる。従って、上記計算機は、従来の計算機と比べて、故障に強く信頼性が高い計算機であるといえる。
【００２３】
さらに、上記計算機は、機能要素をネットワークを介して接続して構成されているので、例えばネットワークとしてインターネットを用いたような場合には、世界中の機能要素を用いて計算機を構成することができる。従って、従来は、物理的、或いは経済的に困難であった構成の計算機を実現することができる。
【００２４】
また、本発明の計算機は、上記の構成に加えて、上記データ処理装置は、前記計算機を構成する複数の機能要素間で行われるデータ送受信時に、データ送信側の機能要素から送信されるデータ形式を、データ受信側が処理可能なデータ形式に変換するデータ変換手段を備えていることが好ましい。
【００２５】
計算機を動作させるときには、その計算機を構成する機能要素間でデータの送受信をしながら動作することになる。ここで、機能要素によっては、取り扱い可能なデータ形式が異なる等の理由でデータの送受信ができない場合がある。このような場合に、データ処理装置がデータ変換手段を備えていれば、データ変換手段が機能要素間でデータ形式を変換するので、データの送受信が可能となる。なお、機能要素が送受信するデータには、計算機１を動作させるための制御データ、及びファイル等のデータを含む。
【００２６】
また、本発明の計算機は、上記の構成に加えて、上記機能要素接続制御手段は、機能要素間で送受信されるデータを格納する送受信データ記憶手段を備えていることが好ましい。
【００２７】
上述のように、本発明の計算機では、データ処理装置を介して複数の機能要素間でデータの送受信をしながら動作する。ここで、上記機能要素接続制御手段が送受信データ記憶手段を備えている場合、送受信データ記憶手段をキャッシュ・メモリのように動作させることができる。例えば、送受信されるデータを送受信データ記憶手段に一時的に格納することによって、機能要素と、データ処理装置との間、またはデータ処理装置と他のデータ処理装置との間で行われるデータ送受信の回数や通信データ量を減らすことができ、データの送受信をよりスピーディに行うことができる。また、データ送受信の際にデータが損傷したような場合に、送受信データ記憶手段に記憶されているデータを用いてデータの修復を行うこともできる。
【００２８】
また、本発明の計算機は、上記の構成に加えて、組織構築手段を備えることができ、その組織構築手段は、上記ネットワーク上に公開されている公開データを記憶する公開データ記憶手段と、公開データ記憶手段に記憶されている公開データの中から、任意の機能要素を選択する選択手段とを備えていることが好ましい。この場合、複数の機能要素を接続して計算機を構成するときに、組織構築手段は、ネットワークに接続する各機能要素の公開データを記憶しており、上記計算機のユーザは、組織構築手段の選択手段によって、所望する機能要素を速やかに選び出し、計算機を構成することができる。
【００２９】
また、本発明の計算機は、上記の構成に加えて、上記計算機を構成する複数の機能要素は、上記計算機における演算処理及び制御処理を行う処理装置、該処理装置の主記憶機能を担う主記憶装置、及び該主記憶装置の容量を補う補助記憶装置を含み、上記処理装置と主記憶装置との間に仮想メモリ機構を構築するためのアドレス変換手段を有することが好ましい。
【００３０】
上記の構成によると、処理装置、主記憶装置、及び補助記憶装置を用いて仮想メモリ機構を構築することができ、より少ない容量の主記憶装置で効率良く計算機を動作させることができる。
【発明の効果】
【００３１】
本発明のデータ処理装置は、上述のように、機能要素とネットワークとに接続し、該機能要素とネットワークとの間でデータ処理を行うデータ処理装置であって、データ処理装置と機能要素との間で行われるデータの送受信を制御する機能要素接続制御手段と、データ処理装置と前記ネットワークとの間で行われるデータの送受信を制御するネットワーク接続制御手段と、機能要素接続制御手段を介して接続している機能要素を特定するための公開データを前記ネットワーク上に公開すると共に、前記ネットワークを介して接続する接続先、及び該接続先と接続するときの接続設定条件を示す設定データを格納している自己紹介手段とを備えている。従って、ネットワークに接続する機能要素を最適に配分し、有効に活用することができるという効果を奏する。
【発明を実施するための最良の形態】
【００３２】
本発明の一実施形態について図１ないし図１１に基づいて説明すれば、以下の通りである。
【００３３】
図２は、従来の計算機１００の概略構成を示す図である。図示のように、従来の計算機１００は、計算機の構成要素である複数の機能モジュールが、バスと呼ばれる伝送路にハードウェア・ロジックのインターフェイスを介して結合することによって構成されている。
【００３４】
なお、上記機能モジュールは、主演算処理や計算機全体の制御処理を行うＣＰＵのような処理装置や、処理装置の主記憶機能を担うメモリのような主記憶装置や、主記憶装置の記憶容量を補ったり、データを保存したりするハードディスクドライブ（ＨＤＤ）、フロッピーディスクドライブ、光ディスクドライブ等の補助記憶装置や、キーボードやマウス等の入力装置、ディスプレイやプリンタ等の出力装置等を指す。
【００３５】
図３は、本発明の一実施形態の計算機１の概略構成を示す図である。図示のように、本実施の形態の計算機１は、複数の機能モジュール（機能要素）２を、データ処理装置３及びネットワーク４を介して接続することによって構成されている。すなわち、計算機１では、図２に示した計算機１００のバスに相当する部分をネットワーク４が担っている。本実施の形態の計算機１は、データ処理装置３の働きにより、ネットワーク４に接続された機能モジュール２を任意に組み合わせて構成することができる。なお、計算機１を構成する機能モジュール２は、図３に示すものに限られない。計算機１は、図３に示す機能モジュール２を全て備えている必要は無いし、図３に示していない機能モジュール２で計算機１を構成することもできる。また、データ処理装置３の詳細については後述する。
【００３６】
機能モジュール２は、従来の計算機１００の機能モジュールと同様のものを使用することができる。また、図４に示すように、組織構築手段６を計算機１の構成に加えることもできる。
【００３７】
組織構築手段６は、図示していない公開データ記憶部（公開データ記憶手段）と、機能モジュール選択処理部（選択手段）とを備えている。公開データ記憶部は、ネットワーク４に接続している機能モジュール２を特定するための公開データを記憶している。機能モジュール選択処理部は、公開データ記憶部が記憶している公開データの中から、計算機１を利用しようとするユーザが希望する機能モジュール２の選択を受け付ける。そして、選択に基づいて設定データを作成し、作成した設定データを、選択された機能モジュール２に接続しているデータ処理装置３の設定データ格納部に書き込む。例えば、計算機１の構成要素として、ＣＰＵ♯１とメモリ♯１とＨＤＤ♯１とが選択された場合、計算機１がＣＰＵ♯１とメモリ♯１とＨＤＤ♯１とで構成される旨を示す設定データを作成し、ＣＰＵ♯１、メモリ♯１、及びＨＤＤ♯１の機能モジュール２に接続しているデータ処理装置３の設定データ格納部に書き込む。なお、公開データ、設定データ、及び設定データ格納部については後述する。
【００３８】
組織構築手段６を有する場合、計算機１を利用しようとするユーザは、組織構築手段６が記憶する公開データを参照し、機能モジュール選択処理部によって所望の機能モジュール２を選択して計算機１を構成することができる。また、組織構築手段６に、計算機１を構成する機能モジュール２の間で行われるデータの送受信を中継するデータ中継機能を持たせることもできる。データ中継機能を有する場合、機能モジュール２の間で行われるデータの送受信を最適化することができる。
【００３９】
なお、図４では、機能モジュール２の一つとして組織構築手段６を導入した例を示したが、組織構築手段６の導入方法はこれに限られない。すなわち、組織構築手段６を必要な各所に設ける方法や、階層化する方法、一部の機能モジュール２が組織構築手段６を兼ねるようにする方法等、様々な方法が可能である。
【００４０】
ネットワーク４としては、例えば、ＬＡＮ、Ｂｌｕｅｔｏｏｔｈ（登録商標）、イーサネット（登録商標）、ＵＳＢ、ＩＥＥＥ１３９４、ＩＥＥＥ−４８８、ＲＳ−２３２Ｃ等、有線、無線に関わらず様々なネットワークを使用することができる。なお、本実施の形態では、ネットワーク４がインターネットである場合を想定している。
【００４１】
また、図３に参照番号５で示しているのは、Ｗｅｂブラウザ上の表示画面の一例である表示画面５である。本実施の形態の計算機１は、ネットワーク４に接続する複数の機能モジュール２が協調して一台の計算機として動作する。例えば、図中に示すマウスを移動させる操作を行った場合、マウスから出力される操作データが該マウスのデータ処理装置３及びネットワーク４を介してＣＰＵの機能モジュール２に伝達され、ＣＰＵの機能モジュール２は、操作データの受信を受けてメモリやディスプレイの機能モジュール２に命令を送る。これにより、表示画面５のカーソルが移動することになる。
【００４２】
次に、データ処理装置３の構成について、図５に基づいて説明する。図５は、データ処理装置３の概略構成を示す図である。図示のように、データ処理装置３は、機能モジュール接続制御部（機能要素接続制御手段）７と、自己紹介部（自己紹介手段）８と、ネットワーク接続制御部（ネットワーク接続制御手段）９と、データ変換部（データ変換手段）１０とを備えている。これらの機能について、図５に基づいて説明する。なお、図５では、機能モジュール接続制御部７と、ネットワーク接続制御部９を別個の部材として記載しているが、これらを一体に構成しても良い。
【００４３】
機能モジュール接続制御部７は、機能モジュール２とデータ処理装置３との接続を制御する。なお、図示していないが、機能モジュール接続制御部７に、送受信データ記憶部（送受信データ記憶手段）を設け、機能モジュール接続制御部７を介して送受信されるデータのうち、頻繁に使用されるデータを送受信データ記憶部に一時的に格納しても良い。この場合、機能モジュール接続制御部７と機能モジュール２との間や、機能モジュール接続制御部７と、他の機能モジュール２と接続しているデータ処理装置３との間で行われるデータ送受信の回数や通信データの量を減らすことができ、データの送受信をよりスピーディに行うことができる。また、データ送受信の際にデータが損傷したような場合に、送受信データ記憶部に記憶されているデータを用いてデータの修復を行うこともできる。さらに、機能モジュール接続制御部７に、データの圧縮、解凍を行う機能を付加した場合、よりスムーズにデータの送受信を行うことができる。また、機能モジュール２と他の機能モジュール２を接続するときに、機能モジュール接続制御部７に各機能モジュール２のインターフェイスのハードウェアに代わって働く機能をさせることもできる。
【００４４】
自己紹介部８は、ネットワーク４を介して機能モジュール２の公開データを送信する。また、自己紹介部８は、ネットワーク４を介して接続する接続先のネットワークＩＤ、及び上記接続先と接続するときの接続設定条件を示す設定データを格納している。ここで、上記接続先とは、ネットワーク４に接続している他の機能モジュール２や、ネットワーク４に接続している従来の計算機等を指し、接続設定条件とは、通信速度や記憶容量等、接続先に要求する条件を指している。自己紹介部８については、後に詳しく説明する。
【００４５】
ネットワーク接続制御部９は、データ処理装置３とネットワーク４との間で行われるデータの送受信を制御する。具体的には、ネットワーク４を介して他の機能モジュール２や、ネットワーク４に接続している他の計算機との間で行われるデータの送受信を制御する。
【００４６】
また、ネットワーク接続制御部９は、計算機１の動作時に機能モジュール２の間で行われるデータ送受信を制御する。具体的には、ネットワーク接続制御部９は、通信プロトコルとしてＴＣＰ／ＩＰを備え、ネットワーク４を介して接続する他の機能モジュール２との間で行われるデータ送受信の制御を行う。ここで、機能モジュール２の間で処理可能なデータ形式が異なる場合には、データ変換部１０を介してデータの送受信を行う。なお、ネットワーク接続制御部９が送受信するデータには、計算機１を動作させるための制御データ、及びファイル等のデータを含む。
【００４７】
データ変換部１０は、機能モジュール２の間におけるデータの送受信時にデータ形式の変換を行う。例えば、計算機１を構成するＣＰＵの機能モジュール２とメモリの機能モジュール２とで処理可能なデータ形式が異なる場合等も考えられる。このような場合に、ＣＰＵからメモリへとデータが送信されるとき、データ変換部１０は、ＣＰＵからのデータをメモリが処理可能なデータ形式に変換する。なお、この場合、ＣＰＵ側、またはメモリ側の何れか一方のデータ変換部１０が変換を行えばよい。すなわち、データ変換部１０は、全ての機能モジュール２に組み込む必要は無い。
【００４８】
なお、データ変換部１０を備えていない場合でも、本実施の形態の計算機１を動作させることは可能である。しかしながら、データ変換部１０を備えている場合、処理可能なデータ形式が異なる機能モジュール２の間でのデータの送受信を可能にすることができるので、データ処理装置３は、データ変換部１０を備えていることが好ましい。
【００４９】
本実施の形態の計算機１は、上述のように、データ処理装置３を介して機能モジュール２を接続することから、ＯＳ等の基本ソフトウェアを従来よりも簡略化することができる。計算機１で使用されるソフトウェアについて、図６に基づいて説明する。
【００５０】
図６は、従来の計算機で使用されているソフトウェアを示す図である。従来の計算機で使用されているソフトウェアは、図示のように、アプリケーション・ソフトウェア、ミドルウェア、ＯＳ、基本ネットワーク機能、及び通信機能を備えている。なお、基本ネットワーク機能及び通信機能は、ＯＳの機能である。
【００５１】
これに対し、本実施の形態の計算機１では、基本ネットワーク機能及び通信機能は、各機能モジュール２のデータ処理装置３が担うので、ＯＳを簡略化することができる。具体的には、ネットワーク接続制御手段９が従来のソフトウェアにおける基本ネットワーク機能の役割を果たし、データ変換部１０が通信機能の役割を果たす。すなわち、図６に示す基本ネットワーク機能及び通信機能の部分だけＯＳを簡略化することができる。
【００５２】
なお、計算機１は、ミドルウェアを搭載することもできるので、上記〔背景技術〕で紹介したグリッドや、Ｐ２Ｐ等のミドルウェアによる資源の共有化機能を計算機１上で動作させることもできる。
【００５３】
図７は、本実施の形態の計算機１におけるデータ伝達の一例を示している。同図に小円で示すノード１２は、機能モジュール２である。図７の左下、及び右下のｎ×ｎの平面は、それぞれノード群を表しており、各ノード群は、ｎ２個のノード１２を含む。また、楕円で示すスーパーノード１１は、従来の計算機である。スーパーノード１１は、図７の上部中央に記載されている最上位のスーパーノード１１から、図示していない最下位のスーパーノード１１まで、計ｎ個存在する。スーパーノード１１は、上記ノード群とは別の階層に位置し、各スーパーノード１１もそれぞれ別の階層に位置する。なお、本実施の形態では、ネットワーク４がインターネットであることを想定しているので、ノード群とスーパーノード１１とは、ＩＰアドレスによってその階層が区別される。なお、スーパーノード１１として、本発明の計算機を用いることもできる。
【００５４】
まず、ノード群におけるデータ伝達の方法について説明する。本実施の形態の計算機１では、機能モジュール２の間、すなわちノード１２の間でデータが伝達される際に、該データの伝達回数を示す濃度レベルを、該データに添付して伝達する。なお、濃度レベルは、データの伝達回数の増加に従って濃度が薄くなる（レベル値が大きくなる）ように更新される。例えば、濃度レベルがレベル０のノード１２から、他のノード１２にデータを送ると、該データを受け取ったノード１２では、そのデータの濃度レベルをレベル１に更新して、また他のノード１２へとデータを送る。そしてそのデータを受け取ったノード１２では、濃度レベルをレベル２に更新する。データを他のノード１２に送った後も、該データはノード１２にキャッシュとして記憶されているので、データの伝達中にデータが損傷を受けたような場合には、損傷を受けたデータに添付されている濃度レベルを参照し、より小さいレベル値のデータを用いてデータの修復をすることができる。
【００５５】
ここで、ノード群の中の、ある１つのノード１２に対してデータを伝達する場合を考える。この、データを伝達する対象のノード１２を目標ノードと称する。目標ノードにデータを伝達するためには、ｎ２個のノード１２の１つ１つにデータを伝達して行くという試行を目標ノードに到達するまで繰り返す必要がある。すなわち、目標ノードに到達するまでには、最大でｎ２回の試行が必要となる。このように、ノード群内でデータ伝達を行う場合、目標ノードに到達するまでに多くの試行が必要になる。なお、これは同時に、多くのノード１２を経由してデータ伝達が行われることを意味するので、多くのノード１２にデータがキャッシュとして残ることになり、これをキャッシュ・メモリとして利用することにより、伝送速度を向上することができる。
【００５６】
次に、スーパーノード１１を用いたデータ伝達の方法について説明する。ｎ個のスーパーノード１１で、ノード群に含まれるｎ２個のノード１２についての全てのデータを記憶している。ノード群内のデータは、ｎ個のスーパーノード１１の少なくとも１つに記憶されているので、最大でもｎ回の試行で目標ノードに到達できる。すなわち、スーパーノード１１を用いてデータ伝達を行う場合、より短時間で目標ノードに到達することができる。
【００５７】
また、図７に示すように、複数のノード群をスーパーノード１１で接続した場合、ノード群内のデータが複数の階層のスーパーノード１１やノード１２に分散されたキャッシュとして存在することになるので、データの損傷に強い信頼性の高いシステムとなる。
【００５８】
なお、データ伝達の形態は、図７に示すようなスーパーノード１１を用いる方法に限られず、他の多様な形態が可能である。
【００５９】
〔本実施形態の計算機の構成方法〕
本実施の形態の計算機１は、従来の計算機とは異なり、独立した機能モジュール２を任意に組み合わせて構成されるので、ネットワーク４に接続している機能モジュール２を複数の計算機で共有し、有効に利用することが可能となる。機能モジュール２は、主に自己紹介部８の働きによって計算機１として構成される。計算機１を構成する方法について、図１、図８及び図９に基づいて説明する。
【００６０】
図８は、計算機１を構成するための初期設定の方法を示している。上述のように、機能モジュール２はデータ処理装置３を介してネットワーク４に接続しているが、この状態では計算機１として動作しない。そこで、ネットワーク４に従来の計算機を接続し、計算機１の初期設定を行う。
【００６１】
まず、計算機１を利用しようとするユーザは、従来の計算機でネットワーク４にアクセスし、自己紹介部８が公開する公開データを参照し、計算機１を構成する機能モジュール２を選択する。なお、上記公開データは、後述する公開データ格納部に格納されている。選択する機能モジュール２は、ネットワーク４に接続されている機能モジュール２であればどのようなものを選択しても良いが、ここでは、ＣＰＵ、メモリ、ＨＤＤの機能モジュール２を選択するものとする。
【００６２】
続いて、選択したそれぞれの機能モジュール２の自己紹介部８に設定データを書き込む。ここでは、設定データの種別の項目に、選択した各機能モジュール２、すなわちＣＰＵ、メモリ、及びＨＤＤが書き込まれ、接続設定条件の項目に、メモリ及びＨＤＤの使用記憶容量や通信速度等が書き込まれ、ＩＤの項目に、ＣＰＵ、メモリ、及びＨＤＤのネットワークＩＤが書き込まれる（図９参照）。これにより、ＣＰＵ、メモリ、ＨＤＤの機能モジュール２が１つの計算機１として動作するための関係が構築される。
【００６３】
上記構成では、ＣＰＵ、メモリ、及びＨＤＤは互いに接続されている必要があるので、設定データには、ＣＰＵ、メモリ、及びＨＤＤの全てが書き込まれる必要がある。しかしながら、設定データには、機能モジュール２の接続先のみが書き込まれていても良い。例えば、上記計算機１の構成要素としてキーボードの機能モジュール２を追加する場合、キーボードの機能モジュール２は、ＣＰＵのみと接続していれば良く、メモリやＨＤＤの機能モジュール２とは接続する必要はない。この場合、キーボードの機能モジュール２の設定データには、上記ＣＰＵのネットワークＩＤ、及び上記ＣＰＵとの接続設定条件のみが書き込まれていれば良い。設定データに機能モジュール２の接続先のみが書き込まれている場合、データ処理装置３の格納するデータ量を減らすことができ、データ処理装置を簡略化することができる。
【００６４】
次に、計算機１にＯＳをインストールする手順を説明する。上述のようにして計算機１を構成する全ての機能モジュール２について設定データを書き込んだ後、ＣＰＵの機能モジュール２のＲＯＭ（Read Only Memory）にＢＩＯＳ（Basic Input Output System）を書き込む。ＢＩＯＳには、ＣＰＵが起動した際に最初に行う命令が含まれている。ＢＩＯＳの書き込み終了後、計算機１を構成する全ての機能モジュール２の初期化を行う。初期化は、計算機１を構成する全ての機能モジュール２の電源を切り、再度電源を入れる、または計算機１を構成する全ての機能モジュール２をリセットする等して行う。
【００６５】
初期化を行うと、ＣＰＵの機能モジュール２で、上記ＢＩＯＳの作用により、ＨＤＤ、の機能モジュール２に格納されているＯＳのインストールが行われる。なお、ＯＳは、ネットワーク４を介して計算機１を構成していない他の機能モジュール２や、ネットワーク４に接続している他の記録装置や記録媒体等から供給されるようにしても良い。ＯＳのインストール後、ＣＰＵの機能モジュール２のＲＯＭを、インストールしたＯＳが起動するように書き換える。以上の手順により、計算機１にはＯＳがインストールされる。
【００６６】
ＯＳのインストールが完了した後、計算機１を再起動すると、起動時にＯＳが動作するようになり、以降は従来の計算機と全く同様に使用することができる。すなわち、計算機１では、図２に示したような従来の計算機におけるバスの機能を、データ処理手段３及びネットワーク４が代替することにより、ネットワーク４上に分散した機能モジュール２を１つの計算機１として動作させることができる。
【００６７】
なお、補足として、機能モジュール２及び計算機１で行われるデータ送受信を、ＯＳＩ参照モデル用いて説明すると以下のようになる。ＯＳＩ参照モデルとは、計算機等で使用される通信プロトコルを物理層（Layer1）、データリンク層（Layer2）、ネットワーク層（Layer3）、トランスポート層（Layer4）、セッション層（Layer5）、プレゼンテーション層（Layer6）、アプリケーション層（Layer7）の７層に分け、各階層について機能と役割を定めたものである。ＯＳＩ参照モデルに準拠した通信プロトコルを使用することにより、異なる種類の機器の接続が容易になる。本実施の形態の計算機１においても、ＯＳＩ参照モデルに準拠した通信プロトコルを使用しているが、これに限られるものではない。
【００６８】
ネットワーク４に接続している機能モジュール２のうち、計算機１を構成していないものは、上記公開データをネットワーク４に公開し、上記設定データの書き込みを受け付ける。このとき、上記機能モジュールのデータ処理装置３で使用する階層は、アプリケーション層（Layer7）である。また、計算機１として構成された機能モジュール２のデータ処理装置３は、ネットワーク層（Layer3）及びトランスポート層（Layer4）で通信し、機能モジュール２間でのデータの送受信を中継する。
【００６９】
次に、計算機１の構成方法について、図１に基づいてより詳しく説明する。図１は、図８に示した計算機１の自己紹介部８をより詳細に示す図である。図示のように、ＣＰＵ、メモリ、及びＨＤＤの機能モジュール２は、それぞれデータ処理装置３を備えており、データ処理装置３には、機能モジュール接続制御部７、自己紹介部８、ネットワーク接続制御部９、及びデータ変換部１０を備えている。なお、図１では、ＨＤＤの機能モジュール２に接続したデータ処理装置３のみ、これらの構成要素を図示しているが、他の機能モジュール２についても同様の構成要素を備えている。
【００７０】
自己紹介部８は、図１に示すように、制御部１３、公開データ格納部１４、接続先条件格納部１５、接続候補格納部１６、及び設定データ格納部１７を備えている。
【００７１】
制御部１３は、自己紹介部８全体の機能を統括的に制御する。制御部１３は、図示していないが、ＣＰＵ及び記憶部を備えており、記憶部に記憶されたプログラムをＣＰＵが実行することによって機能する。
【００７２】
公開データ格納部１４は、ネットワーク４上に公開する公開データを格納する。具体的には、図９に示すように、機能モジュール２の種別、仕様、及びネットワークＩＤ等、機能モジュール２を特定するためのデータを格納する。なお、図９では、一例として、ＣＰＵの機能モジュール２の自己紹介部８を示しているので、公開データの種別の項目はＣＰＵとなっている。制御部１３は、公開データ格納部１４に格納されているこれらの公開データを、ネットワーク接続制御部９を介してネットワーク４上に公開する。
【００７３】
設定データ格納部１７は、設定データとして、ネットワーク４を介して接続する接続先の種別、ＩＤ、及び該接続先と接続するときの接続設定条件を格納している。図９では、種別の項目には、メモリやＨＤＤ等が、ＩＤの項目には、種別の項目に格納されている各機能モジュール２に対応するネットワークＩＤが格納されている。そして、接続設定条件の項目は、メモリについては実メモリ使用容量及び仮想メモリ使用容量等が、ＨＤＤについては使用領域、仮想メモリ記憶容量、物理記憶領域等が格納されている。なお、図９には示していないが、接続設定条件には通信速度等も含まれている。なお、１つの種別について複数のＩＤを対応付けることもできる。例えば、計算機１で複数のＨＤＤを使用したい場合には、複数のＨＤＤのネットワークＩＤをＩＤの項目に格納することができる。
【００７４】
自己紹介部８は、公開データ格納部１４と設定データ格納部１７とを備えているので、計算機１を利用しようとするユーザは、計算機１の初期設定を行うことができ、複数の機能モジュール２を１つの計算機１として動作させることができる。
【００７５】
本実施の形態の計算機１は、仮想メモリ機構を構築してデータの送受信を行う機能をさらに備えている。接続先条件格納部１５、及び接続候補格納部１６は、仮想メモリ機構を構築するための構成である。なお、仮想メモリ機構については後に詳しく説明する。
【００７６】
接続先条件格納部１５は、接続先の条件を格納する。ここでは、機能モジュール２がＣＰＵであるから、図９に示すように、接続先のメモリに対して要求する条件、例えば、読み書き速度や揮発／不揮発性等の条件を格納している。制御部１３が、ネットワーク４上に公開されている機能モジュール２の公開データを取得し、その中から上記接続先条件を満たすものを選択して接続候補格納部１６に格納する。
【００７７】
なお、接続先候補となる機能モジュール２を絞り込む必要がない場合は、計算機１のユーザが、接続候補格納部１６に格納する接続候補を任意に選択すればよい。この場合、自己紹介部８は、接続先条件格納部１５を備えていなくてもよい。但し、ネットワーク４に接続する機能モジュール２の数が多数になるような場合、接続先条件格納部１５を備えていると、必要な機能モジュール２の選択が容易になるので、自己紹介部８は、接続先条件格納部１５を備えていることが好ましい。
【００７８】
また、計算機１は、設定データを変更することにより、計算機１を構成する機能モジュール２間の接続関係、例えば通信速度や記憶容量等を変更したり、計算機１を構成する機能モジュール２を変更、追加、または削除したりすることによって計算機１を再構築することができる。
【００７９】
例えば、計算機１のユーザが、各機能モジュール２の設定データを直接変更することによって計算機１を再構築することができるし、組織構築手段６によって各機能モジュール２の設定データを更新することによっても計算機１を再構築することができる。
【００８０】
ここでは、計算機１を再構築する例として、設定データにおける接続設定条件（図９参照）が変更された場合に、制御部１３が計算機１の再構築を行う例を説明する。
【００８１】
まず、計算機１のユーザは、計算機１を構成する任意の機能モジュール２に接続しているデータ処理装置３の設定データ格納部１７における接続設定条件を所望の条件に変更する。接続設定条件が変更されたデータ処理装置３の制御部１３は、設定データ格納部１７から、変更された接続設定条件を読み出す。ここで、制御部１３は、変更された接続設定条件が、接続先の変更を伴うか否かを判断する。接続先の変更を伴う場合、制御部１３は、接続候補格納部１６から接続先となる機能モジュール２を選択し、選択した機能モジュール２のネットワークＩＤを設定データに反映させる。そして、制御部１３は、該設定データを、計算機１を構成する各機能モジュール２に送り、各機能モジュール２の設定データを更新する。
【００８２】
一方、接続先の変更を伴わない場合、制御部１３は、計算機１を構成する各機能モジュール２に接続設定条件が変更された設定データを送り、各機能モジュール２の設定データを更新する。
【００８３】
このように、制御部１３が各機能モジュール２の設定データを更新する場合、計算機１のユーザは、所望の接続設定条件を書き込むだけで計算機１を再構築することができる。すなわち、計算機１のユーザは、計算機１を構成する各機能モジュール２のデータ処理装置３の１つ１つについて設定データを変更する必要が無く、計算機１を容易に再構築することができる。また、接続先のネットワークＩＤ書き込む必要も無い。
【００８４】
例えば、計算機１におけるＨＤＤの物理記憶容量を１００メガバイトから２００メガバイトに変更する場合、計算機１を構成する任意の機能モジュール２（例えばＣＰＵの機能モジュール２）に接続しているデータ処理装置３の設定データ格納部１７における接続設定条件として、ＨＤＤの物理記憶容量が１００メガバイトと定義されている所を、２００メガバイトに書き替える。
【００８５】
ＣＰＵに接続しているデータ処理装置３の制御部１３は、接続設定条件の書き替えを受け、現在の接続先ＨＤＤに２００メガバイトの記憶容量が確保できるか否かを判定する。確保できる場合、制御部１３は、ＨＤＤの接続設定条件が２００メガバイトに変更された設定データを、計算機１を構成する各機能モジュール２に送り、各機能モジュール２の設定データに反映させる。
【００８６】
一方、現在の接続先ＨＤＤに２００メガバイトの記憶容量が確保できない場合、制御部１３は、接続候補格納部１６から、不足分の記憶容量を補うことのできる１つまたは複数の、記憶機能を持つ機能モジュール２（ＨＤＤ等）を選択し、そのネットワークＩＤを設定データに反映させる。制御部１３は、新たに追加された記憶機能を持つ機能モジュール２を含めた、計算機１を構成する各機能モジュール２に、上記設定データを送り、各機能モジュール２の設定データを更新する。
【００８７】
なお、制御部１３は、計算機１を構成する各機能モジュール２の中から、設定データの更新が必要な機能モジュール２を選択し、選択した機能モジュール２のみに対して設定データの更新を行っても良い。例えば、キーボードの機能モジュール２を追加した場合、キーボードの機能モジュール２は、ＣＰＵの機能モジュール２とのみ接続するので、ＣＰＵの機能モジュール２の設定データのみを更新することで計算機１を再構築することができる。この場合、計算機１のメモリやＨＤＤ等の機能モジュール２の設定データを更新する必要はない。
【００８８】
〔本実施の形態の計算機の動作例〕
次に、計算機１の動作例について、図１０及び図１１に基づいて説明する。まず、比較のために、従来の計算機の動作について簡単に説明する。
【００８９】
一般に、ＣＰＵは、命令を実行するときにメモリから必要なデータを読み出し、命令実行後に演算結果をメモリに書き戻す動作を行っている。本実施の形態の計算機１においても、ＣＰＵの機能モジュール２は、上記と同様の方法で命令の実行を行う。ここでは、計算機１の動作例として、ＣＰＵの機能モジュール２がメモリからデータを読み出す動作について、図１０に基づいて説明する。図１０は、ＣＰＵ♯１（処理装置）、メモリ♯２（主記憶装置）、メモリ♯３（主記憶装置）、ＨＤＤ♯１（補助記憶装置）、及びＨＤＤ♯２（補助記憶装置）の機能モジュール２間におけるデータの読み出し動作の一例を示す図である。
【００９０】
なお、図１０は、計算機１がＣＰＵ♯１、メモリ♯１、メモリ♯２、ＨＤＤ♯１、及びＨＤＤ♯２の機能モジュール２を備えている状態を示しているが、計算機１を構成する機能モジュール２はこの組み合わせに限られない。図１０に示す機能モジュール２の全てを備えていない場合でも計算機１を動作させることは可能であるし、図示していない機能モジュール２が計算機１の構成要素として接続されている場合でも計算機１を動作させることができる。
【００９１】
まず、ＣＰＵ♯１は、読み出したいデータの物理アドレスをデータ処理装置３に送る。データ処理装置３のネットワーク接続制御部９（図５参照）は、受け取った物理アドレス、すなわちメモリ♯１の物理アドレスに対して、ネットワーク４を介してデータ送信要求を送る。なお、ここでは、ＣＰＵ♯１が読み出したいデータがメモリ♯１に物理的に格納されているものとする。従って、ＣＰＵ♯１のネットワーク接続制御部９は、メモリ♯１の物理アドレスにデータ送信要求を送り、メモリ♯１の物理アドレスに送られたデータ送信要求は、メモリ♯１のネットワーク接続制御部９を介してメモリ♯１に渡される。データ送信要求を受け取ったメモリ♯１は、要求された物理アドレスに格納されているデータをＣＰＵ♯１のアドレスに送信する。該データは、メモリ♯１のネットワーク接続制御部９、ネットワーク４、及びＣＰＵ♯１のネットワーク接続制御部９を介してＣＰＵ♯１に渡される。計算機１は、以上のようにしてデータの送受信を行いながら動作する。
【００９２】
このように、メモリの物理アドレスにのみデータを格納する方法でも計算機１を動作させることができるが、容量が限られており、揮発してしまう性質を持つメモリをより有効に活用することができれば好ましい。従来の計算機では、限られたメモリ容量を有効に利用するために、仮想メモリを使用する方法が利用されている。仮想メモリを使用すると、仮想メモリ領域の一部のみに物理メモリが割り当てられることになるので、少ない物理メモリで大容量のデータやプログラムを処理することができる。
【００９３】
仮想メモリを使用するためには、ＭＭＵ（Memory Management Unit）というハードウェアが使用されている。ＭＭＵは、仮想メモリと物理メモリとのアドレス変換を行う。また、ＭＭＵは、物理メモリを仮想メモリ空間に割り当てる。この機能によって、メモリが足りなくなった場合、ＨＤＤ等の２次記憶装置で代用することができるので、物理メモリよりも大きい仮想メモリをソフトウェアに提供することができる。
【００９４】
本実施の形態の計算機１においても、仮想メモリを使用することができる。以下では、計算機１のより複雑な動作例として、仮想メモリを使用して動作する例を説明する。仮想メモリを使用するためには、上述のように、ＣＰＵとメモリとの間にＭＭＵを備える必要がある。
【００９５】
計算機１において、仮想メモリを用いたデータの送受信方法について、図１０及び図１１に基づいて説明する。図１０に示すＣＰＵ♯１、メモリ♯１、及びメモリ♯２の機能モジュール２は、データ処理装置３と機能モジュール２との間にＭＭＵ（アドレス変換手段）１８を備えている。
【００９６】
なお、計算機１は、従来の計算機と異なり、機能モジュール２をネットワーク４で接続して構成されているので、ＭＭＵ１８の構成も従来のＭＭＵとは異なる部分がある。ＭＭＵ１８は、基本的には従来のＭＭＵと同様に、仮想メモリと物理メモリとのアドレス変換を行い、また、物理メモリをページに分割して管理し、これを仮想メモリ空間に割り当てる。これらの機能に加えて、ＭＭＵ１８は、接続候補格納部１６を参照し、接続候補格納部１６に格納されているネットワークＩＤに従って他の記憶装置にデータ要求を転送することができる。
【００９７】
続いて、計算機１における仮想メモリを用いたデータの送受信の具体的なデータの流れを図１１に基づいて説明する。まず、計算機１の通常の動作状態におけるデータの送受信について説明する。
【００９８】
ＣＰＵ♯１は、ＣＰＵ♯１と接続しているＭＭＵ１８に、ＣＰＵ♯１が要求するデータの仮想アドレスを送る。ＭＭＵ１８は、仮想アドレスを仮想ページに変換し、データ処理装置３に渡す。データ処理装置３のネットワーク接続制御部９は、受け取った仮想ページにメモリ♯１のネットワークＩＤを対応付けて、ネットワーク・ページＩＤとしてネットワーク４に送り出す。
【００９９】
ネットワーク・ページＩＤを受け取ったメモリ♯１のデータ処理装置３は、該ネットワーク・ページＩＤからネットワークＩＤを外して仮想ページに戻し、メモリ♯１のＭＭＵ１８に渡す。メモリ♯１のＭＭＵ１８は、仮想ページを物理アドレスに変換し、メモリ♯１に物理アドレスを渡す。メモリ♯１は、その物理アドレスに対応するデータをネットワーク接続制御部９に渡し、ネットワーク接続制御部９は、受け取ったデータにＣＰＵ♯１のネットワークＩＤを付してネットワーク４に送り出す。
【０１００】
なお、ここでは、ＣＰＵ♯１がメモリ♯１にデータ送信要求を送る例を示したが、データ送信要求の送り先は、メモリ♯１に限られず、計算機１を構成する記憶装置の機能モジュール２であれば任意のものが可能である。また、データ送信要求を複数の機能モジュール２に対して送ることもできる。ただし、ＨＤＤのような記憶装置にデータ送信要求を送る場合、メモリにデータ送信要求を送る場合と比較して、データの読み出しに時間がかかることがある。例えば、図１１の破線矢印で示されるように、ＣＰＵ♯１のデータ処理装置３から、ＨＤＤ♯１にデータ送信要求を送る場合、ＨＤＤ♯１のデータ処理装置３が受け取ったネットワーク・ページＩＤを仮想ページに戻してＨＤＤ♯１に渡す。そして、ＨＤＤ♯１は、受け取った仮想ページをディスクページに変換し、このディスクページに基づいて、ＨＤＤ♯１の物理ページに格納されているデータを読み出す。この、ＨＤＤの物理ページに格納されているデータを読み出す動作には、少なくとも数ミリ秒の時間を要するために、ＨＤＤからのデータの読み出しはメモリからの読み出しと比較して時間がかかることになる。
【０１０１】
また、それぞれのメモリにキャッシュ・メモリを設けることもできる。キャッシュ・メモリを設けた場合、ＣＰＵが行うデータ読み出しは、ＨＤＤの物理記憶にまでアクセスが及ばないので、効率のよい読み出しが可能となる。
【０１０２】
このようにして、ＣＰＵ♯１は要求したデータを受け取ることができる。なお、ＣＰＵ♯１がデータの書き込みを行う場合、ＣＰＵ♯１がデータ書き込みの指示を出すと、ネットワーク接続制御部９がメモリ♯１のネットワークＩＤをデータに付してネットワーク４に送り出し、メモリ♯１に記録する。続いて、メモリ♯１が備えるデータ処理装置３のネットワーク接続制御部９は、上記データにＨＤＤ♯１のネットワークＩＤを付してネットワーク４に送り出し、データは最終的にＨＤＤ♯１に記録される。なお、最終的にデータが書き込まれる機能モジュール２は、ＨＤＤ♯１に限られず、ＨＤＤ♯２でもよいし、ＨＤＤ♯１及びＨＤＤ♯２の両方でもよい。すなわち、不揮発性の記憶装置でありさえすれば、計算機１に接続するどの機能モジュール２に記憶しても良い。
【０１０３】
上述のように、ＣＰＵ♯１が書き込み指示を出した後は、メモリ♯１、ＨＤＤ♯１等の記憶装置がＣＰＵ♯１の指示とは独立に動作して書き込み処理を行う。従って、ＣＰＵ♯１は、指示を出すだけで書き込み処理が行われることになり、指示を出した直後から別の処理を行うことができる。
【０１０４】
次に、初期状態やページフォールトが発生した場合等における、仮想メモリを用いたデータの送受信方法について説明する。上述した、通常のデータ送受信の例では、ＣＰＵ♯１が要求したデータがメモリ♯１に存在していたが、初期状態や、ページフォールトが発生した場合、揮発性のメモリが記憶していたデータは消えてしまうので、ＨＤＤ等の不揮発性の記憶装置からデータの読み込みを行う必要がある。ここでは、ＣＰＵ♯１の要求するデータがメモリ♯１及びメモリ♯２には格納されておらず、ＨＤＤ♯１に格納されているものとする。
【０１０５】
初期状態やページフォールトが発生した場合等におけるデータの送受信も、通常のデータ送受信と同様に、ＣＰＵ♯１は、まず、メモリ♯１にデータ送信要求を送る。しかしながら、初期状態やページフォールトが発生した後であるから、メモリ♯１には要求されたデータが存在しない。
【０１０６】
この場合、メモリ♯１のＭＭＵ１８は、接続候補格納部１６を参照し、他の接続候補にデータ送信要求を転送する。なお、ここでは、メモリ♯２、ＨＤＤ♯１、及びＨＤＤ♯２が接続候補格納部１６に格納されているものとする。初期状態やページフォールトが発生した場合等におけるデータの送受信の、具体的なデータの流れを図１１に基づいて説明する。なお、ＣＰＵ♯１がデータ送信要求を送ってからメモリ♯１のＭＭＵ１８がメモリ♯１に物理アドレスを送るまでの処理は、上記と同様であるから、説明を省略する。
【０１０７】
メモリ♯１のＭＭＵ１８は、メモリ♯１に物理アドレスを送るが、ここでは、メモリ♯１には、メモリ♯１のＭＭＵ１８から送られてくる物理アドレスに対応するデータが格納されていないので、データを返すことができない。この場合、メモリ＃１のＭＭＵ１８は、接続候補格納部１６に格納されているメモリ♯２、ＨＤＤ♯１、及びＨＤＤ♯２にデータ送信要求を転送する。このとき、仮想ページに転送先のネットワークＩＤを付加してネットワーク・ページＩＤとし、ネットワーク接続制御部９を介してネットワーク４に送り出す。このようにして、ＣＰＵ♯１が要求するデータを探してゆく。なお、図１１には、ＨＤＤ♯３にネットワーク・ページＩＤを送る様子は示していない。
【０１０８】
ここでは、ＨＤＤ♯１にＣＰＵ♯１が要求するデータが格納されていることを想定しているので、メモリ♯１のＭＭＵ１８から転送されたデータ送信要求を受け取ったＨＤＤ♯１は、上記の通常のデータ送受信時と同様にして要求されたデータを読み出し、メモリ♯１に読み出したデータを送る。メモリ＃１はそのデータを受け取ると、該データを自らに書き込むとともに、ＣＰＵ♯１に送る。このように、ＨＤＤ♯１から読み出されたデータは、メモリ♯１に書き込まれるので、これ以降は、メモリ♯１から上記データを読み出すことができる。
【０１０９】
初期状態やページフォールトが発生した場合等には、以上のようにしてＣＰＵ♯１が要求するデータを読み出す。なお、図１０及び図１１では、ＣＰＵ及びメモリの双方がＭＭＵ１８を備えている例を示したが、ＭＭＵ１８は、ＣＰＵとメモリとの間に少なくとも１つ備えられていれば良い。
【０１１０】
なお、ＭＭＵ１８をメモリ、ＨＤＤ等といった記憶装置の機能モジュール２のそれぞれに設けた場合、記憶装置の機能モジュール２がそれぞれ仮想メモリ機能を備えることもできる。この場合、ＣＰＵのデータ送信要求を受けた記憶装置は、該データ送信要求の要求先アドレスをさらに別の記憶装置のアドレスに変換することができる。なお、仮想メモリは、最終的に物理的な記憶として１台、または複数台の記憶装置上に記憶させる。従って、ＣＰＵの要求したデータが複数の記憶装置上に分散して存在することとなる。すなわち、複数の記憶装置がキャッシュ・メモリのような働きをすることにより、計算機１の動作をより高速化することができる。
【０１１１】
上述の実施形態では、１つの機能モジュール２が、１つの計算機１のみで使用される態様を示した。しかしながら、設定データに複数の接続先を書き込むことにより、１つの機能モジュール２を複数の計算機１で共有して利用することもできる。なお、１つの機能モジュール２を複数の計算機１で共有する場合、各計算機で矛盾が生じないようにする必要がある。例えば、ＨＤＤを２台の計算機（仮に、計算機１Ａ及び計算機１Ｂとする）で共有する場合、計算機１Ａが書き込んだデータを計算機１Ｂから消去できるというようなことが無いようにする必要がある。この方法の一例としては、ＨＤＤのパーティションを設定データとして書き込んでおく、または〔背景技術〕で説明したＮＡＳのシステムを利用する等の方法が可能である。
【０１１２】
無論、複数の計算機１で共有して利用することができる機能モジュール２は、ＨＤＤに限られず、任意の機能モジュール２を共有して利用することができる。なお、ＣＰＵを共有することもできるが、ＣＰＵを共有する場合、ＢＩＯＳを書き込んだＣＰＵは避けることが望ましい。従って、計算機１が占有するＣＰＵを少なくとも１つ設けることが望ましい。
【０１１３】
〔変形例〕
上述の説明では、データ処理装置３の自己紹介部８が機能モジュール２の公開データをネットワーク４上に公開するので、計算機１を利用しようとするユーザは、ネットワーク４に接続して公開データを閲覧し、必要な機能モジュール２を選択することによって、計算機１が構成される形態を示した。ここでは、変形例として、自己紹介部８が公開データを格納していない場合に計算機１を構成方法について説明する。
【０１１４】
計算機１を構成するためには、ネットワーク４に接続している機能モジュール２の中から、計算機１を構成するために必要な機能モジュール２を選択する必要がある。上述の実施の形態では、自己紹介部８の公開データ格納部１４が格納する公開データを、自己紹介部８がネットワーク４に送信することによって、ユーザは、公開データを閲覧し、必要な機能モジュール２を選択することができる。
【０１１５】
ここで、例えば、図４に示した組織構築手段６に公開データを格納しておけば、計算機１のユーザは、組織構築手段６にアクセスすることによって公開データを閲覧し、計算機１を構成する機能モジュール２を選択することができる。
【０１１６】
また、例えば、計算機１を利用しようとするユーザが、計算機１を構成する各機能モジュール２のネットワークＩＤを知っていれば、従来の計算機をネットワーク４に接続して計算機１を構成する各機能モジュール２に直接アクセスし、設定データを書き込むことによって計算機１を構成することができる。
【０１１７】
この変形例のように、自己紹介部８は、公開データ格納部１４を備えていない場合でも、計算機１を利用しようとするユーザが、ネットワーク４に接続している機能モジュール２の中から、計算機１を構成する機能モジュール２を選択し、選択した機能モジュール２のデータ処理装置３に設定データを書き込むことができさえすれば、計算機１を構成することができる。この場合、自己紹介部８は、公開データ格納部１４を備えていなくても良いし、公開データをネットワーク４に送信する必要もない。従って、自己紹介部８を大幅に簡略化することができる。
【０１１８】
本発明は、上記の実施の形態に限定されるものではなく、本発明の範囲内で種々の変更が可能である。
【産業上の利用可能性】
【０１１９】
本発明は、メモリ、ＨＤＤ、ＣＰＵ、ディスプレイ等の計算機を構成する機能モジュールを、ネットワーク上で共有することを可能にするものであり、上記以外にも種々の機能モジュールに適用することができる。
【図面の簡単な説明】
【０１２０】
【図１】自己紹介部によって機能モジュールを接続して計算機を構成する例を示す図である。
【図２】従来の計算機の概略構成を示す図である。
【図３】本発明の計算機の概略構成を示す図である。
【図４】組織構築手段を備えた本発明の計算機の概略構成を示す図である。
【図５】本発明のデータ処理装置の概略構成を示す図である。
【図６】従来の計算機で使用されるソフトウェアを示す図である。
【図７】本発明の計算機におけるデータ伝達の一例を示す図である。
【図８】本発明の計算機における初期設定の方法を示す図である。
【図９】本発明のデータ処理装置における自己紹介部の詳細を示す図である。
【図１０】本発明の計算機の動作例を示すものであり、ＣＰＵの要求するデータをメモリまたはＨＤＤから読み出す動作を示す図である。
【図１１】図１０に示すデータ読出し動作時におけるデータの流れを示す図である。
【符号の説明】
【０１２１】
１  計算機
２  機能モジュール（機能要素）
３  データ処理装置
４  ネットワーク
５  表示画面
６  組織構築手段
７  機能モジュール接続制御部（機能要素接続制御手段）
８  自己紹介部（自己紹介手段）
９  ネットワーク接続制御部（ネットワーク接続制御手段）
１０  データ変換部（データ変換手段）
１１  スーパーノード
１２  ノード
１３  制御部
１４  公開データ格納部
１５  接続先条件格納部
１６  接続候補格納部
１７  設定データ格納部
１８  ＭＭＵ（アドレス変換手段）
【図１】
2008003808.tif 000003
【図２】
2008003808.tif 000004
【図３】
2008003808.tif 000005
【図４】
2008003808.tif 000006
【図５】
2008003808.tif 000007
【図６】
2008003808.tif 000008
【図７】
2008003808.tif 000009
【図８】
2008003808.tif 000010
【図９】
2008003808.tif 000011
【図１０】
2008003808.tif 000012
【図１１】
2008003808.tif 000013