(57)【要約】実施形態は、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）デバイス用にメモリ空間を確保する方法、装置、システムを含む。１実施形態は、ＰＣＩスイッチ又はＰＣＩブリッジを介してホストコンピュータに接続している周辺機器を判定し、次にＰＣＩスイッチ又はＰＣＩブリッジに接続しているとして、仮想デバイスを提示する方法を含む。バス番号及びメモリを仮想デバイス用に確保して、ホストコンピュータにホットプラグしたＰＣＩデバイスに割当てる。【選択図】図１
2011516964.tif 000002
【特許請求の範囲】
【請求項１】
ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）スイッチ又はＰＣＩブリッジを介して実際にホストコンピュータに接続されている周辺機器のリストを確立し、
前記ＰＣＩスイッチ又は前記ＰＣＩブリッジに接続されているとして仮想デバイスを提示し、
前記仮想デバイス用にバス番号及びメモリを確保し、
前記バス番号及び前記メモリを、前記ホストコンピュータにホットプラグしたＰＣＩデバイスに、割当てること、
を含む、方法。
【請求項２】
ＰＣＩデバイスが下流ブリッジに接続されているとして、前記下流ブリッジを前記ホストコンピュータに提示することを更に含み、前記下流ブリッジに接続された前記ＰＣＩデバイスを前記仮想デバイスとする、請求項１に記載の方法。
【請求項３】
前記ホストコンピュータの列挙プロセス中にメモリを要求することを更に含み、前記要求されるメモリを前記仮想デバイス用とする、請求項１に記載の方法。
【請求項４】
仮想デバイスを前記ホストコンピュータに提示するのを、実際のデバイスを前記仮想デバイスが提示されたポート又はスロットにホットプラグした後に、中止することを更に含む、請求項１に記載の方法。
【請求項５】
予め仮想デバイスに割当てたメモリ空間を、前記ホストコンピュータにホットプラグした前記ＰＣＩデバイスの１つに割当てることを更に含む、請求項１に記載の方法。
【請求項６】
予め仮想デバイスに割当てたメモリ空間を、前記ホストコンピュータにホットプラグした前記ＰＣＩデバイスの１つに割当てることを更に含む、請求項１に記載の方法。
【請求項７】
前記ホストコンピュータに、共有入出力（Ｉ／Ｏ）システムに接続された周辺機器を確立するための列挙を行なうよう要求せずに、デバイスを前記Ｉ／Ｏシステムにホットプラグ可能にすることを更に含む、請求項１に記載の方法。
【請求項８】
１つ又は複数のＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）スイッチ又はＰＣＩブリッジによってルートノードに物理的に接続している周辺機器を判定し、
前記ＰＣＩスイッチ又は前記ＰＣＩブリッジに接続しているとして、仮想デバイスを提示し、
前記ＰＣＩスイッチ又は前記ＰＣＩブリッジに接続しているとして前記ルートノードに提示された仮想ＰＣＩデバイス用に、バス番号及びメモリを確保し、
前記バス番号及び前記メモリを、前記ルートノードにホットプラグしたＰＣＩデバイスに割当てることを含む方法をコンピュータに実行させる命令を有する、有形のコンピュータ可読媒体。
【請求項９】
前記方法が、
実際のデバイスを仮想ＰＣＩデバイスが提示されたブリッジにホットプラグした後に、前記仮想ＰＣＩデバイスを前記ルートノードに提示するのを中止することを更に含む、請求項８に記載の有形のコンピュータ可読媒体。
【請求項１０】
前記方法が、
前記ルートノードに物理的に接続された前記周辺機器と、前記ＰＣＩスイッチ及び前記ＰＣＩブリッジに接続されているとして前記ルートノードに提示された前記ＰＣＩデバイスとの両方用に、空間を提供するメモリマップを作成することを更に含む、請求項８に記載の有形のコンピュータ可読媒体。
【請求項１１】
前記方法が、
予め仮想ＰＣＩデバイスに割当てたスイッチ又はブリッジに周辺機器がホットプラグされた時を決定することを更に含む、請求項８に記載の有形のコンピュータ可読媒体。
【請求項１２】
前記方法が、
ＰＣＩデバイスが下流ブリッジに接続されているとして、前記下流ブリッジを前記ルートノードに提示し、前記下流ブリッジに接続された前記ＰＣＩデバイスを、前記仮想ＰＣＩデバイスとすることを更に含む、請求項８に記載の有形のコンピュータ可読媒体。
【請求項１３】
前記方法が、
前記ルートノードの列挙プロセス中にメモリを要求することを更に含み、前記要求されるメモリを前記仮想ＰＣＩデバイス用とする、請求項８に記載の有形のコンピュータ可読媒体。
【請求項１４】
前記方法が、
予め仮想ＰＣＩデバイスに割当てたメモリ空間を、前記ルートノードにホットプラグした前記ＰＣＩデバイスの１つに割当てることを更に含む、請求項８に記載の有形のコンピュータ可読媒体。
【請求項１５】
前記方法が、
予め仮想ＰＣＩデバイスに割当てたメモリ空間を、前記ルートノードにホットプラグした前記ＰＣＩデバイスの１つに割当てることを更に含む、請求項８に記載の有形のコンピュータ可読媒体。
【請求項１６】
前記方法が、
前記ルートノードに、共有入出力（Ｉ／Ｏ）システムに接続された周辺機器を確立するための列挙を行なうよう要求せずに、デバイスを前記Ｉ／Ｏシステムにホットプラグ可能にすることを更に含む、請求項８に記載の有形のコンピュータ可読媒体。
【請求項１７】
アルゴリズムを保存するメモリと、
１つ又は複数のＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）スイッチ又はＰＣＩブリッジによってホストコンピュータに接続している周辺機器を判定し、
前記ＰＣＩスイッチ又は前記ＰＣＩブリッジに接続しているとして、仮想デバイスを提示し、
前記ＰＣＩスイッチ又はブリッジに接続しているとして前記ホストコンピュータに提示された仮想デバイス用のバス番号及びメモリを確保し、
前記バス番号及び前記メモリを、前記ホストコンピュータにホットプラグしたＰＣＩデバイスに、割当てるように、
アルゴリズムを実行するプロセッサと、
を含む、コンピュータシステム。
【請求項１８】
前記バス番号が、下流ブリッジの後方のバスに対して発生する、請求項１７に記載のコンピュータシステム。
【請求項１９】
前記プロセッサが、前記ホストコンピュータにホットプラグする前記ＰＣＩデバイス用に線形メモリマップにおけるメモリを確保するように、前記アルゴリズムを更に実行する、請求項１７に記載のコンピュータシステム。
【請求項２０】
前記プロセッサが、
予め仮想デバイスに割当てた前記メモリ空間を、前記ホストコンピュータにホットプラグした前記ＰＣＩデバイスの１つに割当て、
予め仮想デバイスに割当てた前記メモリ空間を、前記ホストコンピュータにホットプラグした前記ＰＣＩデバイスの１つに割当てるように、
前記アルゴリズムを更に実行する、請求項１７に記載のコンピュータシステム。
【発明の詳細な説明】
【背景技術】
【０００１】
ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）規格は、周辺機器をマザーボードに取付けるためのコンピュータバスについて規定するものである。ＰＣＩ仕様では、バスの物理的属性、電気特性、バスタイミング、通信プロトコル等について記載している。ＰＣＩ−ＳＩＧ（ＰＣＩ  Ｓｐｅｃｉａｌ  Ｉｎｔｅｒｅｓｔ  Ｇｒｏｕｐ）が、様々なＰＣＩアーキテクチャに関する仕様を、維持、管理している。
【０００２】
コンピュータを立ち上げると、ＰＣＩ列挙期間となる。この間、コンピュータのＰＣＩ列挙ソフトウェアが、インストールされた周辺機器全てと、それらが必要とするメモリ空間のリストをコンパイルする。つまり、コンピュータが、どの周辺機器がＰＣＩバスに接続されているかを判定する。次に、そのソフトウェアが、インストールされたデバイス全てに対して空間を割当てるメモリマップを作成する。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
作成されるメモリマップは、将来的なデバイス用の隙間もないほど密に詰まっているかも知れない。更に、このＰＣＩバスの番号付けで、列挙完了後に接続するデバイス用にはＰＣＩバスが残っていない可能性もある。これは、ホットプラグデバイス対応可能なシステムにとって問題となる。具体的には、メモリマップ及びＰＣＩバスの番号付けを、列挙後にホットプラグするデバイス用の空間を含むよう変更するのが、厄介な場合がある。コンピュータシステムによっては、デバイスをホットプラグした後に、ホストがシステムを再列挙する必要が出てくる。
【課題を解決するための手段】
【０００４】
例示的な実施形態は、ＰＣＩデバイス用のＰＣＩメモリ空間を確保する方法、システム、及び装置に関する。１実施形態では、コンピュータが起動し、ＰＣＩ列挙が開始された後に、ホットプラグするＰＣＩデバイス用にメモリ空間を確保する。
【０００５】
例示的な１実施形態では、ホットプラグ能力はあるが接続デバイスを有さない下流ブリッジにより、下流ブリッジ後方のバスに仮想デバイスを提示する。これらの仮想デバイスは、後付けする可能性があるデバイスのために「ダミー」メモリを要求する。デバイスをホットプラグしたなら、下流ブリッジはもう仮想デバイスを提示しなくなる。仮想デバイスが初めに要求した「ダミー」メモリ空間は、その結果使用可能となり、ホットプラグしたデバイスに割当てられる。更に、仮想デバイスに割当てたＰＣＩバスが、ホットプラグしたデバイスに対して使用可能になる。
【０００６】
１実施形態では、ホストが最初に立ちあがる際に、該ホストと物理デバイスとの間のブリッジが仮想デバイスとして表示する該物理デバイスを、該ホストは認識又は検出する。また、仮想デバイスとして表示された物理デバイスをブリッジにホットプラグする今後のためにブリッジが作成した予約場所である、ダミーの仮想デバイスを、ホストが認識する。新たなデバイスを物理的に取付けるのに、必ずしもブリッジに接続する必要はない。
【図面の簡単な説明】
【０００７】
【図１】例示的な実施形態による、仮想ＰＣＩデバイス用にＰＣＩバス番号及びメモリ空間を確保し発行するコンピュータシステムのブロック図である。
【図２】例示的な実施形態による、仮想ＰＣＩデバイス用にＰＣＩバス番号及びメモリ空間を確保するためのフローチャートである。
【図３】例示的な実施形態による、確保したＰＣＩバス番号及びメモリ空間を、ホットプラグしたＰＣＩデバイスに発行するフローチャートである。
【発明を実施するための形態】
【０００８】
図１は、例示的な実施形態による、仮想ＰＣＩデバイス用のＰＣＩバス番号及びメモリ空間を確保し発行するコンピュータシステム１００のブロック図である。説明のために、ＰＣＩ  Ｅｘｐｒｅｓｓアーキテクチャを用いてコンピュータシステムを示すが、例示的な実施形態は、如何なる特定タイプのＰＣＩアーキテクチャにも限定するものではない。
【０００９】
図１は、単一ファブリックのインスタンス又は階層を示しており、このインスタンス又は階層は、ルートコンプレックス、複数のエンドポイント（例えば、入出力（Ｉ／Ｏ）デバイス）、スイッチ、ＰＣＩ  Ｅｘｐｒｅｓｓ−ｔｏ−ＰＣＩ／ＰＣＩ−Ｘブリッジを含み、全てがＰＣＩ  Ｅｘｐｒｅｓｓバス又はリンクを介して相互接続されている。具体的には、ルートノード、計算ノード又はホストコンピュータ１１０は、１つ又は複数のスイッチ１３０（説明の便宜上１つのスイッチを示したが）を介して、複数のＰＣＩ  Ｅｘｐｒｅｓｓのエンドポイント１２０に、接続している。ルートノードは、様々なデバイス（エンドポイント又はエンドノード、ブリッジ、スイッチ等）に、ＰＣＩ  Ｅｘｐｒｅｓｓ又はリンク１６０を介して、接続している。１実施形態では、１つ又は複数のＰＣＩ  Ｅｘｐｒｅｓｓのエンドポイント１２０を、スイッチ１３０に物理的に接続する。他の実施形態では、１つ又は複数のＰＣＩ  Ｅｘｐｒｅｓｓのエンドポイント１２０を、スイッチ１３０からばらす。つまり、エンドポイント１２０を、物理的にポート１７０Ｂに接続せず、ばらしている。
【００１０】
ルートノード１１０は、ＣＰＵ１４０と、メモリ１４５と、ホストバス１５５を介して接続したルートコンプレックス１５０を含む。ルートコンプレックス１５０は、様々な仮想ＰＣＩ  Ｅｘｐｒｅｓｓのエンドポイント１２５と、ＰＣＩ  Ｅｘｐｒｅｓｓ−ｔｏ−ＰＣＩ／ＰＣＩ−Ｘブリッジ１６５と、スイッチ１３０に、別々のＰＣＩ  Ｅｘｐｒｅｓｓバス１６０を介して、接続する。ＰＣＩ  Ｅｘｐｒｅｓｓ−ｔｏ−ＰＣＩ／ＰＣＩ−Ｘブリッジ１６５により、ＰＣＩ  ＥｘｐｒｅｓｓファブリックとＰＣＩ／ＰＣＩ−Ｘ階層との接続を提供する。
【００１１】
ルートコンプレックス（ＲＣ）１５０は、ＣＰＵ／メモリサブシステムをＩ／Ｏデバイスに接続するＩ／Ｏ階層のルートを表す。ルートコンプレックスにより、１つ又は複数のポートをサポートできる。
【００１２】
各インタフェースにより、別々の階層ドメインを定義し、各階層ドメインは、単一のエンドポイント或は、１つ又は複数のスイッチコンポーネント及びエンドポイントを含有するサブ階層を含む。階層ドメイン間でのピアツーピア（Ｐ２Ｐ）トランザクションをルートコンプレックス経由でルーティングする能力は、任意であって、実装次第とする。例えば、実装には、ソフトウェア透過的にピアツーピア（Ｐ２Ｐ）を完全にサポート可能にするよう、ルートコンプレックス内部に実際の又は仮想スイッチを含むことができる。
【００１３】
ルートコンプレックス１５０により、以下の１つ又は複数を機能させる又はサポートすることができる：リクエスタとしてコンフィグレーション要求の生成をサポートすること；リクエスタとしてＩ／Ｏ要求の生成をサポートすること；リクエスタとしてロック要求の生成をサポートすること。
【００１４】
エンドポイントは、仮想エンドポイントと実際のエンドポイント即ち物理エンドポイントの両方を含む。物理又は実際のエンドポイントは、それ自体又は異なる非ＰＣＩデバイス（ＰＣＩデバイス又はホストＣＰＵ以外）、例えばＰＣＩ  Ｅｘｐｒｅｓｓに接続したグラフィックスコントローラ、ＰＣＩ  Ｅｘｐｒｅｓｓ−ＵＳＢホストコントローラ等又は他のＩ／Ｏデバイス（ディスクドライブ等）のためにＰＣＩトランザクションのリクエスタ又はコンプリータになれるデバイス又はデバイス群である。対照的に、仮想エンドポイントは、コンピュータシステムに実際に物理的に提示及び／又は接続されないデバイスである。従って、ホスト１１０は、物理デバイスがコンピュータシステムのスロット／ポートに接続されていると検出する又は信じるが、実は、物理デバイスは実際には全く存在してはいない。
【００１５】
図示するように、スイッチ１３０は、複数のポート１７０と複数の仮想ＰＣＩ−ＰＣＩブリッジ１７５を含む。説明のために、スイッチ１３０を、１つの上流ポート１７０Ａと３つの下流ポート１７０Ｂと共に示している。スイッチは、１つ又は複数の物理エンドポイント１２０及び仮想エンドポイント１２５と、ＰＣＩリンク１６０を介して接続する。
【００１６】
スイッチは１つ又は複数の以下のルールに従う：各スイッチは、設定ソフトウェアに２つ以上の論理的なＰＣＩ−ｔｏ−ＰＣＩブリッジとして現れること；スイッチは、トランザクションをＰＣＩブリッジメカニズム（アドレスに基づくルーティング）を用いて送ること；スイッチは、各種のトランザクションレイヤパケットをポート組間で送ること。
【００１７】
１実施形態では、各ＰＣＩ  Ｅｘｐｒｅｓｓリンク１６０を、仮想ＰＣＩ−ｔｏ−ＰＣＩブリッジ構造を通してマッピングし、各ＰＣＩ  Ｅｘｐｒｅｓｓリンク１６０は、それと関連する論理ＰＣＩバスを有する。仮想ＰＣＩ−ｔｏ−ＰＣＩブリッジ構造を、ＰＣＩ  Ｅｘｐｒｅｓｓのルートコンプレックスポート、スイッチの上流ポート、又はスイッチの下流ポートの一部とすることができる。ルートポートを、ＰＣＩ  Ｅｘｐｒｅｓｓ階層ドメインがＰＣＩルートコンプレックスから始まる仮想ＰＣＩ−ｔｏ−ＰＣＩブリッジ構造とする。各デバイスが特定のデバイス番号に応答するように、デバイスをコンフィグレーション空間にマッピングする。
【００１８】
１実施形態では、ホスト１１０が最初に立ちあがる際に、ホストとデバイスとの間のブリッジ又はスイッチ（即ち、スイッチ１３０）が仮想デバイス（即ち、仮想ＰＣＩ  Ｅｘｐｒｅｓｓのエンドポイント１２５）として表示する物理デバイスを、ホストが認識又は検出する。また、ホストは、仮想ＰＣＩ  Ｅｘｐｒｅｓｓのエンドポイント１２５も、物理的に接続したデバイスと認識する。しかしながら、これらのデバイスは、仮想デバイスとして表示された物理デバイスをブリッジにホットプラグする今後のために、スイッチ１３０が作成した予約場所であり、実際にはダミーの仮想デバイスである。
【００１９】
図２は、例示的な実施形態による、仮想ＰＣＩデバイス用にＰＣＩバス番号及びメモリ空間を確保するためのフローチャートである。
【００２０】
ブロック２００によると、ホストコンピュータ又はルートノードが起動する。例えば、ホストをオンにする、或は再起動する。
【００２１】
ブロック２１０によると、ホストがＰＣＩ列挙を実行する。コンピュータが始動した後に、ＰＣＩ列挙期間が始まる。その間に、コンピュータのＰＣＩ列挙ソフトウェアが、インストールされた周辺機器全てとそれらが必要とするメモリ空間リストをコンパイルする。つまり、コンピュータにより、どの周辺機器が実際に又は物理的にＰＣＩバスに接続されているかを判定する。
【００２２】
１実施形態では、コンピュータを立ち上げる前に、コンピュータはオペレーションシステム（ＯＳ）にアドレスマップを構築する。列挙ソフトウェアにより、システムにどれ程のメモリ容量があるか、システムのＩ／Ｏコントローラがどれ程のアドレス空間を必要とするかを、判定する。このマップ（ＰＣＩリソース割当てマップと呼ばれることが多い）を、起動時にどのアドレスをＰＣＩスロットのカード及び／又はＩ／Ｏコントローラと相互作用するよう割当てるかを示すアドレスマップとする。
【００２３】
ブロック２２０によると、ホストはＰＣＩバスに接続しているデバイスのリストを取得する。例えば、ホストは、システムに接続している物理又は実際のエンドポイント（図１に示したＰＣＩ  Ｅｘｐｒｅｓｓのエンドポイント１２０等）のリストを受信する。
【００２４】
ブロック２３０によると、仮想エンドポイントを、実際の物理エンドポイントとして、ホスト又は計算ノードに提示する。これにより、ホストはブロック２４０による２つの機能を実行する。第１の機能として、ホストは、下流ブリッジ後方にあるバスのバス番号を確保する。第２の機能として、ホストは、仮想デバイス用に線形メモリマップでメモリを確保する。
【００２５】
こうして、ホストは、コンピュータシステムにインストールされたデバイス及び仮想デバイス全てに空間及びバス番号を割当てるメモリマップを作成する。メモリマップは、まだＰＣＩバスに接続されていない任意の将来的なデバイス（例えば、ＰＣＩホットプラグ可能なデバイス）が使用可能な空間を含む。更に、ＰＣＩバス番号付けには、まだＰＣＩバスに接続されていない任意の将来的なデバイスが使用可能な番号も含む。
【００２６】
図３は、例示的な実施形態による、確保したＰＣＩバス番号及びメモリ空間を、ホットプラグしたＰＣＩデバイスに発行するフローチャートである。
【００２７】
ブロック３００によると、１つ又は複数のデバイスをコンピュータシステムにホットプラグする。例えば、エンドポイントをＰＣＩブリッジ又はスイッチにホットプラグする。図１は、列挙後に実際の物理デバイスをスイッチ１３０に差し込み又は取付けできるＰＣＩ  Ｅｘｐｒｅｓｓの仮想エンドポイント１２５の例について、示している。
【００２８】
ブロック３１０によると、ホストが新たに追加されたデバイス又はエンドポイントを発見する。デバイスをポート又はスロットにホットプラグしたなら、仮想デバイスはもうホストに提示されない。つまり、実際の物理デバイスがその時点で接続されているので、下流ブリッジは、ブリッジに接続されているものとして仮想デバイスを提示しなくなる。
【００２９】
次に、ブロック３２０によると、ホストは新たに追加されたデバイスを、列挙中に仮想デバイス用に予め割当てた１つ又は複数のバス番号及びメモリに基づきセットアップする。例えば、ホストは、ポート又はスロットに割当てたバス番号をデバイスに提供し、対応するメモリ空間をそのポート又はスロット用に提供する。
【００３０】
デバイスがバス番号及びメモリ空間を備えたなら、デバイスは、ブロック３３０により、ポート又はスロットで使用可能になる。ホストは、この時点で別のポート又はスロットで別の新たなホットプラグデバイスに対応できる状態となり、その後ブロック３００に戻る。
【００３１】
このプロセスにより、ホットプラグデバイスに対応可能なシステムに関する問題を解決できる。具体的には、新たなデバイスを追加した際に、メモリマップには新たに追加したホットプラグデバイス用の未使用又は使用可能な空間を既に含んでいるため、メモリマップを変更しなくて済む。そのため、コンピュータシステムでは、デバイスをホットプラグした後に、システムを再立ち上げ又は再起動する必要がない。従って、例示的な実施形態により、ホストを完全に再列挙する必要無く、共有Ｉ／Ｏシステムにおいてデバイスをホットプラグ可能となる。
【００３２】
定義：本明細書及び特許請求の範囲では、次の単語及び用語を以下の通り定義する。
【００３３】
単語「ブリッジ」は、同じプロトコル（例えば、イーサネット又はトークンリング）（イーサネットは登録商標）を用いて、２つのローカルエリアネットワーク（ＬＡＮ）又はＬＡＮセグメントを接続するデバイスを意味する。例えば、ブリッジを、ＰＣＩ／ＰＣＩ−Ｘセグメント又はＰＣＩ  Ｅｘｐｒｅｓｓポートを内部コンポーネント相互接続部と又は別のＰＣＩ／ＰＣＩ−Ｘバスセグメント若しくは別のＰＣＩ  Ｅｘｐｒｅｓｓポートと仮想的に或は実際に接続する機能とする。
【００３４】
用語「コンフィグレーション空間」は、ＰＣＩアーキテクチャ内のアドレス空間を意味する。コンフィグレーション空間のアドレスを有するパケットを使用して、デバイス内の機能（即ち、アドレスエンティティ）を構成する。
【００３５】
単語「下流」は、相互接続／システム要素（ポート／コンポーネント）の相対的な位置でルートコンプレックスから遠い位置を意味する。例えば、上流ポートではないスイッチのポートは、下流ポートとなる。ルートコンプレックスの全ポートは下流ポートとなる。このように、下流は、情報がルートコンプレックスから流れる情報流の方向も含む。
【００３６】
単語「エンドポイント」又は「エンドノード」は、異なるルールセットに従い動作するデバイス（アドレス可能な電子的エンティティ）又はデバイス群を意味する。
【００３７】
単語「ホットプラグ」、「ホットスワップ」等は、機械又はシステムの電子部品を継続動作させながら、取外し、交換できる能力を意味する。例えば、ホットスワップにより、１つ又は複数のデバイス（例えば、ハードドライブ）を、該デバイスを配置しているブレード全体又はエンクロージャの動作に影響を与えずに、交換或は修理可能となる。例えば、故障した場合に、個々のハードドライブをブレードから取外して、新たな又は異なるハードドライブと交換する。ブレードの継続動作を中断せずにエンクロージャ内に残したまま、新しいハードドライブをブレードに接続できる。
【００３８】
頭字語「ＰＣＩ」は、Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ（ペリフェラル  コンポーネント  インターコネクト）を意味する。ＰＣＩ仕様には、バスの物理的属性、電気特性、バスタイミング、通信プロトコル等について記載されている。ＰＣＩ−ＳＩＧ（ＰＣＩ  Ｓｐｅｃｉａｌ  Ｉｎｔｅｒｅｓｔ  Ｇｒｏｕｐ）が、様々なＰＣＩアーキテクチャに関する仕様を、維持、管理している。
【００３９】
単語「ポート」は、コンポーネントとリンクとの間のインタフェース（即ち、２デバイス間の通信経路）を論理的に意味し、リンクを定義するチップに配設した送受信機群を物理的に意味する。
【００４０】
用語「ルートコンプレックス」は、ホストブリッジ及び１つ又は複数のポートを含むデバイス又はデバイス群を意味する。例えば、ホストコンピュータは、ルートコンプレックスである、ＰＣＩとホストをブリッジする機能を有する。ルートコンプレックスにより、ＣＰＵバス（ハイパートランスポート等）とＰＣＩバスとの間にブリッジを提供する。
【００４１】
用語「ルートノード」は、ホストコンピュータ、コンピュータシステム、又はサーバを意味する。
【００４２】
単語「スイッチ」は、２つ以上のポートを接続して、パケットをポートからポートにルーティング可能にするデバイス又はデバイス群を意味する。設定ソフトウェアには、スイッチは、仮想のＰＣＩ−ｔｏ−ＰＣＩブリッジ群として現れる。
【００４３】
単語「仮想」は、実在しないことを意味し、単なる概念的なもの（例えば、物理デバイス）を、物理的に実在するものと区別する。一例としては、事実上物理エンドポイントをバスに実際に接続していない場合に、ホストは、仮想エンドポイントを物理エンドポイントと見做し、検知する（想像上のデバイスだが、ホストが検出又は存在すると信じるデバイス）。仮想の反対は、実在又は物理的である。
【００４４】
単語「上流」は、相互接続／システム要素（ポート／コンポーネント）の相対的な位置でルートコンプレックスにより近い位置を意味する。例えば、トポロジ的にルートコンプレックスに最も近いスイッチのポートを、上流ポートとする。例えば、エンドポイントのみを含むコンポーネントのポートを、上流ポートとする。上流には、情報がルートコンプレックスへと流れる情報流の方向も含む。
【００４５】
例示的な１実施形態では、本明細書で記述した１つ又は複数のブロック又はステップを自動化する。つまり、装置、システム、及び方法は自動的に起動する。本明細書では、用語「自動化した」又は「自動的に」（及びこれらに類する用語）は、人間の介入、観察、取組み、決定の必要なく、コンピュータ及び／又は機械装置／電気装置を使用して、装置、システム、及び／又はプロセスを制御動作させることを意味する。
【００４６】
本発明の例示的な実施形態による方法は、例として提供するもので、本発明の範囲内で他の実施形態を限定すると解釈すべきものではない。例えば、図のブロック又は数字（（１）、（２）等）は、特定の順序で進めねばならないステップとして、解釈すべきではない。更なるブロック／ステップを追加してもよく、幾つかのブロック／ステップを除去したもの、又はブロック／ステップの順序を変更したものも、依然として本発明の範囲内とする。更に、各図面中に記述した方法又はステップを、他の図面に加える、或は他の図面の方法又はステップと交換することもできる。更にまた、特定のデータ数値（特定の量、数、カテゴリ等）又は他の特定情報は、例示的な実施形態を記述するのに説明したように、解釈すべきである。そうした特定情報は、本発明を限定するために提供したものではない。
【００４７】
本発明による様々な実施形態では、実施形態を、方法、システム及び／又は装置として実行する。１例として、例示的な実施形態及びそれに関連するステップを、本明細書に記載した方法を実行する１つ又は複数のコンピュータソフトウェアプログラムとして実行する。ソフトウェアを、１つ又は複数のモジュール（コードサブルーチン、又はオブジェクト指向プログラミングで「オブジェクト」とも呼ぶ）として実行する。ソフトウェアの格納先は、個々の代替実施形態によって異なる。例えば、コンピュータ又はサーバの１プロセッサ又は複数のプロセッサが、ＣＤ−ＲＯＭドライブ、又はハードドライブ等の一種の長期記憶媒体から、ソフトウェアのプログラミングコードにアクセスする。ソフトウェアのプログラミングコードを、データ処理システムで使用するあらゆる既知の各種媒体や、ディスク、ハードドライブ、ＣＤ−ＲＯＭ、ＲＯＭ等を含む、半導体、磁気装置、光学デバイスといった記憶装置に、具現又は保存する。このコードを、そうした媒体で配信する、又はこのコードをユーザに、１コンピュータシステムのメモリ又はストレージから、何らかのネットワークを介して、他のコンピュータシステムに、かかる他のシステムのユーザが使用するために、配信する。或は、プログラミングコードを、メモリに具現し、このコードにプロセッサがバスを使用してアクセスする。ソフトウェアのプログラミングコードを、物理媒体のメモリに具現する、及び／又はソフトウェアコードをネットワークを介して配信する方法は、既知であり、本明細書では詳細には説明しない。
【００４８】
以上の記述は、本発明の原理及び様々な実施形態の例示を意図するものである。上記開示を完全に理解したなら、多くの変形例及び変更例が当業者には明らかになろう。以下の請求項は、そうした変形例及び変更例全てを包含すると解釈されるものとする。
【図１】
2011516964.tif 000003
【図２】
2011516964.tif 000004
【図３】
2011516964.tif 000005
【国際調査報告】
2011516964.tif 000006
2011516964.tif 000007