(57)【要約】【課題】ネットワーク上に分散配置された複数のデバイスを接続することで構築されるコンピュータシステムが使用者の意図しないシステム構成で起動してしまうことを防止することができるコンピュータシステム、コンピュータシステムの起動方法、及びプログラムを提供する。【解決手段】コンピュータシステムは、ＣＰＵ側ブリッジ１１４と、ＣＰＵ側ブリッジ１１４を介してネットワーク３に接続されるＣＰＵ１１１とを具備する。ネットワーク３にＩＯ側ブリッジ２１１を介してＩＯデバイス２１２が接続される。ＣＰＵ１１１は、ＢＩＯＳに基づく起動動作を開始し、ＣＰＵ側ブリッジ１１４とＩＯ側ブリッジ２１１の接続状態に基づいて起動動作を停止する。【選択図】図１
2014139748.tif 000002
【特許請求の範囲】
【請求項１】
ＣＰＵ側ブリッジと、
前記ＣＰＵ側ブリッジを介してネットワークに接続されるＣＰＵと
を具備し、
前記ネットワークにＩＯ側ブリッジを介してＩＯデバイスが接続され、
前記ＣＰＵは、ＢＩＯＳに基づく起動動作を開始し、前記ＣＰＵ側ブリッジと前記ＩＯ側ブリッジの接続状態に基づいて前記起動動作を停止する
コンピュータシステム。
【請求項２】
請求項１に記載のコンピュータシステムであって、
前記ＣＰＵは第１コンピュータ内部バスを介して前記ＣＰＵ側ブリッジに接続され、
前記ＩＯデバイスは第２コンピュータ内部バスを介して前記ＩＯ側ブリッジに接続され、
前記ＣＰＵ側ブリッジ及び前記ＩＯ側ブリッジは、仮想的なコンピュータ内部バススイッチを形成する
コンピュータシステム。
【請求項３】
請求項１又は２に記載のコンピュータシステムであって、
前記ＣＰＵ側ブリッジは、前記ＩＯ側ブリッジを含む複数のＩＯ側ブリッジを登録した接続管理テーブルを備え、
前記ＣＰＵは、前記ＣＰＵ側ブリッジと前記複数のＩＯ側ブリッジとの接続状態に基づいて前記起動動作を停止し、
前記接続管理テーブルは、前記起動動作を停止する又は停止しない場合の条件を登録し、
前記条件を設定する入力装置を更に具備する
コンピュータシステム。
【請求項４】
請求項３に記載のコンピュータシステムであって、
前記入力装置は、前記条件として、前記ＣＰＵ側ブリッジが前記複数のＩＯ側ブリッジのいずれかに接続されている場合に前記起動動作を停止しないこと、又は、前記ＣＰＵ側ブリッジが前記複数のＩＯ側ブリッジの全てに接続されている場合に前記起動動作を停止しないこと、を選択する
コンピュータシステム。
【請求項５】
請求項１又は２に記載のコンピュータシステムであって、
前記ＣＰＵ側ブリッジは、レジスタと、前記ＩＯ側ブリッジを登録した接続管理テーブルとを備え、
前記ＣＰＵ側ブリッジは、前記ＣＰＵ及び前記ＣＰＵ側ブリッジを含むＣＰＵデバイス群への電源投入に応じて前記ＩＯ側ブリッジとの相互接続を試行し、前記相互接続を試行した結果を前記レジスタに記録し、
前記ＣＰＵは、前記電源投入に応じて前記起動動作を開始し、前記起動動作の中で前記レジスタに記録された前記結果にアクセスし、前記結果に基づいて前記起動動作を停止する
コンピュータシステム。
【請求項６】
請求項３又は４に記載のコンピュータシステムであって、
前記ＣＰＵ側ブリッジは、レジスタを備え、
前記ＣＰＵ側ブリッジは、前記ＣＰＵ及び前記ＣＰＵ側ブリッジを含むＣＰＵデバイス群への電源投入に応じて前記複数のＩＯ側ブリッジとの相互接続を試行し、前記相互接続を試行した結果を前記レジスタに記録し、
前記ＣＰＵは、前記電源投入に応じて前記起動動作を開始し、前記起動動作の中で前記レジスタに記録された前記結果にアクセスし、前記結果に基づいて前記起動動作を停止する
コンピュータシステム。
【請求項７】
ＣＰＵがＢＩＯＳに基づく起動動作を開始し、
前記ＣＰＵをネットワークに接続するＣＰＵ側ブリッジとＩＯデバイスを前記ネットワークに接続するＩＯ側ブリッジとの接続状態に基づいて、前記ＣＰＵが前記起動動作を停止する
コンピュータシステムの起動方法。
【請求項８】
ＣＰＵがＢＩＯＳに基づく起動動作を開始し、
前記ＣＰＵをネットワークに接続するＣＰＵ側ブリッジとＩＯデバイスを前記ネットワークに接続するＩＯ側ブリッジとの接続状態に基づいて、前記ＣＰＵが前記起動動作を停止する
起動方法をコンピュータシステムに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はコンピュータシステム、コンピュータシステムの起動方法、及びプログラムに関し、特に、ネットワーク上に分散配置された複数のデバイスを接続することで構築されるコンピュータシステムに関する。
【背景技術】
【０００２】
特許文献１に記載されているように、ネットワーク上にＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）デバイス群とＩＯ（Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）デバイスを分散配置させ、それらの間をネットワークで接続して分散システムを構築する方法がある。ここで、ＣＰＵデバイス群は、ＣＰＵ、メモリ、及びチップセットを備える。ネットワーク上にデバイスを分散配置させることにより、デバイス間を自由に接続できる。そのため、距離の制約、筺体の制約の開放によりコンピュータシステムの拡張性を向上させられる。更に、特許文献１は、ＩＯデバイスのグループＩＤ（識別子）を所属させたいＣＰＵデバイス群のグループＩＤと同じにすることにより、ＩＯデバイスをＣＰＵデバイス群によって実現されるコンピュータシステムに所属させることを開示している。
【０００３】
ところで、特許文献２は、ＰＯＳ（Ｐｏｉｎｔ−ｏｆ−Ｓａｌｅ）端末の起動処理を開示している。特許文献３は、マルチプロセッサのシステムにおける縮退機能を開示している。縮退機能は、ハードエラーが発生したプロセッサをシステムから切り離し、正常なプロセッサのみでシステムの運転を行う。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−１４６０８８号公報
【特許文献２】特開２０１０−２３１３８１号公報
【特許文献３】特開平４−１８１４３５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ネットワーク上に分散配置された複数のデバイスを接続することで構築されるコンピュータシステムにおいては、コンピュータシステムに組み込まれるべきリモート側のデバイスとＣＰＵデバイス群との間のネットワークの状態、リモート側の電源状態、リモート側のデバイスの故障等の様々な原因により、リモート側のデバイスが組み込まれずにコンピュータシステムが起動してしまうおそれがある。
【０００６】
本発明は、このような問題点を解決するためになされたものであり、ネットワーク上に分散配置された複数のデバイスを接続することで構築されるコンピュータシステムが使用者の意図しないシステム構成で起動してしまうことを防止することができるコンピュータシステム、コンピュータシステムの起動方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明によるコンピュータシステムは、ＣＰＵ側ブリッジと、前記ＣＰＵ側ブリッジを介してネットワークに接続されるＣＰＵとを具備する。前記ネットワークにＩＯ側ブリッジを介してＩＯデバイスが接続される。前記ＣＰＵは、ＢＩＯＳに基づく起動動作を開始し、前記ＣＰＵ側ブリッジと前記ＩＯ側ブリッジの接続状態に基づいて前記起動動作を停止する。
【０００８】
本発明によるコンピュータシステムの起動方法において、ＣＰＵがＢＩＯＳに基づく起動動作を開始し、前記ＣＰＵをネットワークに接続するＣＰＵ側ブリッジとＩＯデバイスを前記ネットワークに接続するＩＯ側ブリッジとの接続状態に基づいて、前記ＣＰＵが前記起動動作を停止する。
【０００９】
本発明によるプログラムは、起動方法をコンピュータシステムに実行させる。その起動方法において、ＣＰＵがＢＩＯＳに基づく起動動作を開始し、前記ＣＰＵをネットワークに接続するＣＰＵ側ブリッジとＩＯデバイスを前記ネットワークに接続するＩＯ側ブリッジとの接続状態に基づいて、前記ＣＰＵが前記起動動作を停止する。
【発明の効果】
【００１０】
本発明により、ネットワーク上に分散配置された複数のデバイスを接続することで構築されるコンピュータシステムが使用者の意図しないシステム構成で起動してしまうことを防止することができるコンピュータシステム、コンピュータシステムの起動方法、及びプログラムを提供することができる。
【図面の簡単な説明】
【００１１】
【図１】実施の形態１にかかるコンピュータシステムの構成を示すブロック図である。
【図２】実施の形態１にかかるコンピュータシステムの起動方法を示すフローチャートである。
【図３】実施の形態２にかかるコンピュータシステムの構成を示すブロック図である。
【図４】実施の形態２にかかるＣＰＵデバイス群の構成を示すブロック図である。
【図５】実施の形態２にかかるＩＯデバイス群の構成を示すブロック図である。
【図６】実施の形態２にかかるＣＰＵ側ブリッジの構成を示すブロック図である。
【図７】ＣＰＵ側ブリッジのブリッジ部の動作を説明する概念図である。
【図８】ＣＰＵ側ブリッジが有する接続管理テーブルのデータ構成を示す。
【図９】実施の形態２にかかるＩＯ側ブリッジの構成を示すブロック図である。
【図１０】ＣＰＵ側ブリッジ及びＩＯ側ブリッジが形成する仮想的なコンピュータ内部バススイッチの概念図である。
【図１１】実施の形態２にかかるコンピュータシステムの起動方法を示すシーケンス図である。
【図１２】実施の形態２にかかるコンピュータシステムの起動方法で実行される処理を示すフローチャートである。
【発明を実施するための形態】
【００１２】
以下、図面を参照して本発明の実施の形態について説明する。
【００１３】
（実施の形態１）
図１を参照して、実施の形態１にかかるコンピュータシステムは、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１１１と、ＣＰＵ側ブリッジ１１４を備える。ＣＰＵ１１１は、ＣＰＵ側ブリッジ１１４を介してネットワーク３に接続される。ネットワーク３は、例えば、インターネットである。実施の形態１に係るコンピュータシステムに組み込まれるべきＩＯ（Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）デバイス２１２は、ＩＯ側ブリッジ２１１を介してネットワーク３に接続される。
【００１４】
図２を参照して、実施の形態１にかかるコンピュータシステムの起動方法は、ステップＳ１０及びＳ２０を備える。ステップＳ１０において、ＣＰＵ１１１は、ＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）に基づく起動動作を開始する。ステップＳ２０において、ＣＰＵ１１１は、ＣＰＵ側ブリッジ１１４とＩＯ側ブリッジ２１１の接続状態に基づいて起動動作を停止する。ＣＰＵ１１１は、コンピュータプログラムとしてのＢＩＯＳに基づいて実施の形態１にかかるコンピュータシステムの起動方法を実行する。
【００１５】
本実施の形態によれば、ＣＰＵ側ブリッジ１１４とＩＯ側ブリッジ２１１とが接続されない状態でコンピュータシステムが起動してしまうことが防がれる。したがって、ネットワーク３上に分散配置された複数のデバイスとしてのＣＰＵ１１１及びＩＯデバイス２１２を接続することで構築されるコンピュータシステムが使用者の意図しないシステム構成で起動してしまうことが防がれる。
【００１６】
仮に、ＣＰＵ１１１に対してリモート側に配置されるＩＯデバイス２１２が組み込まれずにコンピュータシステムが起動してしまった場合、起動後に不要な再起動を行わなければならない。この場合、更に、コンピュータシステムで用いられるアプリケーション又はＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）の構成情報設定ファイルが意図しないシステム構成に基づいて記録又は改変されるため、コンピュータシステムに障害が発生するおそれがある。本実施形態によれば、不要な再起動及びシステム障害が防がれる。
【００１７】
（実施の形態２）
次に、実施の形態２にかかるコンピュータシステム及びその起動方法を説明する。以下において、実施の形態１と共通する事項の説明を省略する場合がある。
【００１８】
図３に示すように、ＣＰＵデバイス群１１〜１９がネットワーク３に接続され、ＩＯデバイス群２１〜２９がネットワーク３に接続される。ＩＯデバイス群２１〜２９はネットワーク３を介してＣＰＵデバイス群１１に接続される。実施の形態２にかかるコンピュータシステムは、ＣＰＵデバイス群１１と、ネットワーク３と、ＩＯデバイス群２１〜２９から選択される一つ又は複数のＩＯデバイス群とから構成される。
【００１９】
図４を参照して、ＣＰＵデバイス群１１の構成を説明する。ＣＰＵデバイス群１１は、ＣＰＵ１１１と、メモリ１１２と、チップセット１１３と、ＣＰＵ側ブリッジ１１４と、記録デバイス１１５とを備える。メモリ１１２は、例えば、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）である。記録デバイス１１５は、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）やフラッシュメモリである。記録デバイス１１５は、ＢＩＯＳ１５１と、ＯＳ１５２と、アプリケーション１５３とを格納する。ＢＩＯＳ１５１、ＯＳ１５２、及びアプリケーション１５３は、コンピュータプログラムである。入力装置１３１は、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）カード１３３を介してチップセット１１３に接続される。表示装置１３２は、グラフィックカード１３４を介してチップセット１１３に接続される。入力装置１３１は、例えば、キーボードである。ＣＰＵ１１１、メモリ１１２、チップセット１１３、ＣＰＵ側ブリッジ１１４、記録デバイス１１５、ＵＳＢカード１３３、及びグラフィックカード１３４は、例えば、共通の筐体（不図示）に収容され、共通の電源（不図示）から駆動電力を供給される。尚、入力装置１３１及び表示装置１３２は、一体化されてタッチパネルを形成してもよい。
【００２０】
ＣＰＵ１１１とメモリ１１２は、メモリバス１２１を介して互いに接続される。ＣＰＵ１１１とチップセット１１３は、ＰＣＩｅ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｅｃｔ  Ｅｘｐｒｅｓｓ（登録商標））バスのようなコンピュータ内部バス１２２を介して互いに接続される。チップセット１１３とＣＰＵ側ブリッジ１１４は、ＰＣＩｅバスのようなコンピュータ内部バス１２３を介して互いに接続される。チップセット１１３と記録デバイス１１５は、記録デバイス１１５に適合したバス１２４を介して互いに接続される。ＣＰＵ側ブリッジ１１４とネットワーク３は、イーサネット（登録商標）のようなＬ２ネットワーク（Ｌａｙｅｒ  ２  Ｎｅｔｗｏｒｋ）１２５を介して互いに接続される。ＣＰＵ１１１は、ＣＰＵ側ブリッジ１１４を介してネットワーク３に接続される。
【００２１】
尚、ＣＰＵデバイス群１１は、複数のＣＰＵ１１１、複数のメモリ１１２、複数のチップセット１１３、複数のＣＰＵ側ブリッジ１１４、及び複数の記録デバイス１１５を備えてもよい。コンピュータ内部バス１２２は、ＣＰＵバスであってもよい。ＣＰＵ１１１とＣＰＵ側ブリッジ１１４は、チップセット１１３を介さずに、ＰＣＩｅバスのようなコンピュータ内部バスを介して互いに接続されてもよい。ＣＰＵ１１１と記録デバイス１１５は、チップセット１１３を介さずに、記録デバイス１１５に適合したバスを介して互いに接続されてもよい。ＣＰＵデバイス群１１以外のＣＰＵデバイス群の構成も、ＣＰＵデバイス群１１の構成と同様である。
【００２２】
図５を参照して、ＩＯデバイス群２１の構成を説明する。ＩＯデバイス群２１は、ＩＯデバイス２１２と、ＩＯ側ブリッジ２１１を備える。ＩＯデバイス２１２とＩＯ側ブリッジ２１１は、ＰＣＩｅバスのようなコンピュータ内部バス２１３を介して互いに接続される。ＩＯ側ブリッジ２１１とネットワーク３は、イーサネットのようなＬ２ネットワーク２１４を介して互いに接続される。尚、ＩＯデバイス群２１は、複数のＩＯ側ブリッジ２１１及び複数のＩＯデバイス２１２を備えてもよい。ＩＯデバイス２１２は、ＩＯ側ブリッジ２１１を介してネットワーク３に接続される。ＩＯデバイス群２１以外のＩＯデバイス群の構成も、ＩＯデバイス群２１の構成と同様である。
【００２３】
図６を参照して、ＣＰＵ側ブリッジ１１４の構成を説明する。ＣＰＵ側ブリッジ１１４は、ブリッジ部１４１と、接続管理部１４２を備える。ブリッジ部１４１は、コンピュータ内部バス１２３とＬ２ネットワーク１２５の間をブリッジする。ブリッジ部１４１は、ＰＣＩｅデバイスとして動作するために、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｅｃｔ（登録商標））コンフィグレーションレジスタのようなコンフィグレーションレジスタ１６０を備える。接続管理部１４２は、接続相手をあらかじめ登録するための接続管理テーブル１７０を備える。
【００２４】
図７を参照して、ブリッジ部１４１の動作を説明する。ＣＰＵ１１１側からネットワーク３側、つまりコンピュータ内部バス１２３側からＬ２ネットワーク１２５側にデータを転送する場合、ブリッジ部１４１は、コンピュータ内部バス１２３を介して受信したパケット８１に宛先に対応したヘッダ８２を付加し、これらをカプセル化してＬ２ネットワーク１２５を介して送信する。ネットワーク３側からＣＰＵ１１１側、つまりＬ２ネットワーク１２５側からコンピュータ内部バス１２３側にデータを転送する場合、ブリッジ部１４１は、Ｌ２ネットワーク１２５を介して受信したパケット９１に付加されたヘッダ９２を取り外した後、コンピュータ内部バス１２３を介してパケット９１を送信する。ここで、パケット８１及び９１は、例えばＰＣＩｅパケットである。ヘッダ８２及び９２は、例えばイーサネットフレームヘッダである。
【００２５】
図８を参照して、接続管理部１４２が備える接続管理テーブル１７０を説明する。ここで、ＣＰＵデバイス群１１のＣＰＵ側ブリッジ１１４とＩＯデバイス群２１〜２５のＩＯ側ブリッジ２１１〜２５１には、それぞれ同一のグルーピング用ＩＤ（識別子）が設定されている。そのため、ＣＰＵ側ブリッジ１１４は、ＩＯ側ブリッジ２１１〜２５１の各々と相互に接続することが可能である。接続管理テーブル１７０には、ＩＯデバイス群２１〜２５のＩＯ側ブリッジ２１１〜２５１が登録されている。例えば、ＣＰＵデバイス群１１がＯＳ１５２に基づいて動作しているときに、ユーザは入力装置１３１を用いてＩＯ側ブリッジ２１１〜２５１のＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレスを特定してＩＯ側ブリッジ２１１〜２５１を登録する。或いは、ＣＰＵ１１１がアプリケーション１５３に基づいて自動的にＩＯ側ブリッジ２１１〜２５１を登録する。接続管理部１４２は、接続管理テーブル１７０に登録されたＩＯ側ブリッジ２１１〜２５１とＣＰＵ側ブリッジ１１４との接続を管理する。
【００２６】
更に、接続管理テーブル１７０には、ＩＯ側ブリッジ２１１〜２５１の各々について、ユーザ指定の有無が設定されている。ＩＯ側ブリッジ２１１〜２４１については、ユーザ指定が「有」となっている。ＩＯ側ブリッジ２５１については、ユーザ指定が「無」となっている。例えば、ユーザは入力装置１３１を用いてユーザ指定の有無を設定する。
【００２７】
更に、接続管理テーブル１７０には、ＩＯ側ブリッジ２１１〜２５１とＣＰＵ側ブリッジ１１４との相互接続を判定するための判定条件が登録されている。例えば、ユーザが入力装置１３１を用いて条件１〜３から一つを選択すると、選択された条件が判定条件として接続管理テーブル１７０に設定される。条件１が設定されている場合、接続管理部１４２は、登録されたＩＯ側ブリッジ２１１〜２５１の少なくとも一つとＣＰＵ側ブリッジ１１４が接続されていれば、「接続済み」と判定する。条件２が設定されている場合、接続管理部１４２は、登録されたＩＯ側ブリッジ２１１〜２５１の全てとＣＰＵ側ブリッジ１１４が接続されていれば、「接続済み」と判定する。条件３が設定されている場合、接続管理部１４２は、ユーザ指定が「有」となっているＩＯ側ブリッジ２１１〜２４１の全てとＣＰＵ側ブリッジ１１４が接続されていれば、「接続済み」と判定する。尚、「接続済み」と判定することは、ＢＩＯＳ１５１に基づく起動動作を停止しないと判定することと等価である。
【００２８】
図９を参照して、ＩＯ側ブリッジ２１１の構成を説明する。ＩＯ側ブリッジ２１１は、ブリッジ部２１５と、接続管理部２１６を備える。ブリッジ部２１５は、コンピュータ内部バス２１３とＬ２ネットワーク２１４の間をブリッジする。ブリッジ部２１５は、ＰＣＩｅデバイスとして動作するために、ＰＣＩコンフィグレーションレジスタのようなコンフィグレーションレジスタ２１７を備える。接続管理部２１６は、接続相手をあらかじめ登録するための接続管理テーブル２１８を備える。
【００２９】
ブリッジ部２１５の動作は、ブリッジ部１４１の動作と同様である。具体的には、ＩＯデバイス２１２側からネットワーク３側、つまりコンピュータ内部バス２１３側からＬ２ネットワーク２１４側にデータを転送する場合、ブリッジ部２１５は、コンピュータ内部バス２１３を介して受信したパケットに宛先に対応したヘッダを付加し、これらをカプセル化してＬ２ネットワーク２１４を介して送信する。ネットワーク３側からＩＯデバイス側２１２側、つまりＬ２ネットワーク２１４側からコンピュータ内部バス２１３側にデータを転送する場合、ブリッジ部２１５は、Ｌ２ネットワーク２１４を介して受信したパケットに付加されたヘッダを取り外した後、コンピュータ内部バス２１３を介してパケットを送信する。ここで、パケットは、例えばＰＣＩｅパケットである。ヘッダは、例えばイーサネットフレームヘッダである。更に、接続管理部２１６の動作は、接続管理部１４２の動作と同様である。
【００３０】
図１０を参照して、ＣＰＵ側ブリッジ１１４とＩＯ側ブリッジ２１１が互いに接続されると、ＣＰＵ側ブリッジ１１４及びＩＯ側ブリッジ２１１は、仮想的なコンピュータ内部バススイッチ５００（例えば、仮想的なＰＣＩｅスイッチ）を形成する。このとき、ＣＰＵ側ブリッジ１１４は、コンピュータ内部バススイッチ５００のアップ・ストリーム・ポートに相当する動作を行い、ＩＯ側ブリッジ２１１は、コンピュータ内部バススイッチ５００のダウン・ストリーム・ポートに相当する動作を行う。これにより、ＣＰＵ側ブリッジ１１４及びＩＯ側ブリッジ２１１は、仮想的なコンピュータ内部バススイッチ５００として動作する。ＩＯ側ブリッジ２１１以外のＩＯ側ブリッジとＣＰＵ側ブリッジ１１４が互いに接続された場合も、同様に仮想的なコンピュータ内部バススイッチが形成される。
【００３１】
次に、実施の形態２にかかるコンピュータシステムの起動方法を説明する。ここでは、例として、接続管理テーブル１７０において条件３が設定されている場合を説明する。この場合、実施の形態２にかかるコンピュータシステムに組み込まれるべきデバイス群は、ＣＰＵデバイス群１１、及びＩＯデバイス群２１〜２４である。コンピュータシステムの動作は、ＣＰＵ側ブリッジ１１４とＩＯ側ブリッジ２１１〜２４１との相互接続状態に依存する。この相互接続状態は、ＩＯデバイス群２１〜２４の電源状態、ＩＯデバイス群２１〜２４の障害の有無、ネットワーク３の稼働状態、及び、ネットワーク３の障害の有無に依存する。ＩＯデバイス群２１〜２４の電源オフ状態、ＩＯデバイス群２１〜２４の障害発生、ネットワーク３の非稼働、又は、ネットワーク３の障害発生により、ＣＰＵ側ブリッジ１１４とＩＯ側ブリッジ２１１〜２４１の相互接続が不可能になる場合がある。尚、ユーザはＣＰＵデバイス群１１の近くにいて入力装置１３１及び表示装置１３２を利用できる。
【００３２】
図１１に示すように、実施の形態２にかかるコンピュータシステムの起動方法は、ステップＳ３０〜Ｓ８０を含む。ユーザが電源ボタン（不図示）を操作してＣＰＵデバイス群１１に電源を投入すると（Ｓ３０）、ＣＰＵ１１１、メモリ１１２、チップセット１１３、ＣＰＵ側ブリッジ１１４、及び記録デバイス１１５が起動する。電源投入に応答してＢＩＯＳ１５１がメモリ１１２にロードされ、ＣＰＵ１１１はＢＩＯＳ１５１に基づく起動動作を開始する（Ｓ４０）。ＣＰＵ側ブリッジ１１４の接続管理部１４２は、ユーザ指定が「有」となっているＩＯ側ブリッジ２１１〜２４１の接続管理部（例えば、接続管理部２１６）との相互接続を試行する（Ｓ７０）。接続管理部１４２は、ステップＳ７０の結果を現在の相互接続状態としてコンフィグレーションレジスタ１６０の相互接続状態を記録する部分に記録する（Ｓ８０）。ユーザ指定が「有」となっているＩＯ側ブリッジ２１１〜２４１の全てと接続できた場合、接続管理部１４２は、コンフィグレーションレジスタ１６０に「接続済み」と記録する。ＩＯ側ブリッジ２１１〜２４１の少なくとも一つと接続できなかった場合、接続管理部１４２は、コンフィグレーションレジスタ１６０に「非接続」と記録する。
【００３３】
ＣＰＵ１１１は、ＢＩＯＳ１５１に基づく起動動作の中で、メモリ１１２、チップセット１１３、ＣＰＵ側ブリッジ１１４、及び記録デバイス１１５を順次チェックする。例えば、ＣＰＵ１１１は、ＰＣＩのコンフィグレーションアクセスを用いてＣＰＵ側ブリッジ１１４にアクセスする。より具体的には、ＣＰＵ１１１は、ＢＩＯＳ１５１に基づいてコンフィグレーションレジスタ１６０に設定を書き込み、コンフィグレーションレジスタ１６０の相互接続状態を記録する部分に記録された現在の相互接続状態にアクセスして現在の相互接続状態を取得する（Ｓ５０）。ＣＰＵ１１１は、現在の相互接続状態に基づく処理を実行する（Ｓ６０）。
【００３４】
ＣＰＵ１１１は、コンピュータプログラムとしてのＢＩＯＳ１５１に基づいてステップＳ４０、Ｓ５０、及びＳ６０を実行する。一方、ＣＰＵ側ブリッジ１１４は、ＢＩＯＳ１５１に依存しないでステップＳ７０及びＳ８０を実行する。
【００３５】
図１２に示すように、ステップＳ６０は、ステップＳ６１〜Ｓ６８を含む。コンフィグレーションレジスタ１６０から取得した現在の相互接続状態によって後の処理が異なる（Ｓ６１）。コンフィグレーションレジスタ１６０から取得した現在の相互接続状態が「接続済み」の場合、ＣＰＵ１１１は、ＢＩＯＳ１５１に基づく起動動作を継続し（Ｓ６２）、ＯＳ１５２を起動する（Ｓ６３）。ステップＳ５０において現在の相互接続状態として「接続済み」を取得できなかった場合、例えばコンフィグレーションレジスタ１６０から取得した現在の相互接続状態が「非接続」である場合、ＣＰＵ１１１は、起動動作を一時的に停止し（Ｓ６４）、ユーザに接続不具合を通知する（Ｓ６５）。ステップＳ６４において、ＣＰＵ１１１は起動動作を中断する。ステップＳ６５において、例えば、ＣＰＵ１１１は、接続管理テーブル１７０に設定された接続がされていないことを表示装置１３２に表示させる。このとき、ＣＰＵ１１１は、Ｂｅｅｐ音を使用してもよい。このように、ＣＰＵ１１１は、接続管理テーブル１７０に登録された判定条件に基づいて、起動動作を停止するかしないかを決定する。
【００３６】
ステップＳ６６において、ＣＰＵ１１１は、ユーザからのキー入力を待つ。ユーザは、入力装置１３１を用いてキー入力を実行することができ、電源ボタンを操作してＣＰＵデバイス群１１の電源オフを実行することができる。ユーザから「起動継続」のキー入力があった場合、ＣＰＵ１１１は、起動動作を再開し（Ｓ６７）、ステップＳ６２に進む。ユーザからその他のキー入力があった場合、ＣＰＵ１１１は起動動作を中止し、キー入力に対応した処理を実行する（Ｓ６８）。例えば、ＣＰＵ１１１は、システムセットアップメニューを表示装置１３２に表示させ、又は、リブートを実行する。ユーザが電源ボタンを操作してＣＰＵデバイス群１１の電源オフを実行した場合、ＣＰＵ１１１を含むＣＰＵデバイス群１１は動作を停止する。
【００３７】
以上、ユーザがＣＰＵデバイス群１１の近くにいる場合を説明したが、ユーザはＩＯデバイス群２１〜２４のいずれかの近くにいてもよい。例えば、ユーザがＩＯデバイス群２１の近くにいる場合、ユーザが使用する入力装置１３１はＵＳＢカードとしての一のＩＯデバイス２１２に接続され、ユーザが使用する表示装置１３２はグラフィックカードとしての他のＩＯデバイス２１２に接続される。この場合、ＣＰＵデバイス群１１がＯＳ１５２に基づいて動作しているときに、ユーザが入力装置１３１を用いて再起動を選択すると、ＣＰＵデバイス群１１に電源が投入される（Ｓ３０）。
【００３８】
上述の例において、プログラムは、様々なタイプの非一時的なコンピュータ可読媒体（ｎｏｎ−ｔｒａｎｓｉｔｏｒｙ  ｃｏｍｐｕｔｅｒ  ｒｅａｄａｂｌｅ  ｍｅｄｉｕｍ）を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体（ｔａｎｇｉｂｌｅ  ｓｔｏｒａｇｅ  ｍｅｄｉｕｍ）を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体（例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ）、光磁気記録媒体（例えば光磁気ディスク）、ＣＤ−ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＣＤ−Ｒ、ＣＤ−Ｒ／Ｗ、半導体メモリ（例えば、マスクＲＯＭ、ＰＲＯＭ（Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）、ＥＰＲＯＭ（Ｅｒａｓａｂｌｅ  ＰＲＯＭ）、フラッシュＲＯＭ、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ））を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体（ｔｒａｎｓｉｔｏｒｙ  ｃｏｍｐｕｔｅｒ  ｒｅａｄａｂｌｅ  ｍｅｄｉｕｍ）によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【００３９】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
【符号の説明】
【００４０】
３  ネットワーク
１１〜１９  ＣＰＵデバイス群
１１１  ＣＰＵ
１１４  ＣＰＵ側ブリッジ
１２２、１２３  コンピュータ内部バス
１３１  入力装置
２１１〜２４１  ＩＯ側ブリッジ
２１２  ＩＯデバイス
２１３  コンピュータ内部バス
１５１  ＢＩＯＳ
１６０  コンフィグレーションレジスタ
１７０  接続管理テーブル
５００  仮想的なコンピュータ内部バススイッチ
【図１】
2014139748.tif 000003
【図２】
2014139748.tif 000004
【図３】
2014139748.tif 000005
【図４】
2014139748.tif 000006
【図５】
2014139748.tif 000007
【図６】
2014139748.tif 000008
【図７】
2014139748.tif 000009
【図８】
2014139748.tif 000010
【図９】
2014139748.tif 000011
【図１０】
2014139748.tif 000012
【図１１】
2014139748.tif 000013
【図１２】
2014139748.tif 000014