(57)【特許請求の範囲】
【請求項１】
ＣＰＵとメモリとＰＣＩインターフェースとを有する複数の計算機と、
前記複数の計算機を前記ＰＣＩインターフェース経由で接続する１以上のＰＣＩスイッチと、
前記ＰＣＩスイッチに接続する複数のＰＣＩデバイスと、
前記計算機の制御を行う装置制御部と、
前記ＰＣＩデバイスと前記計算機の割り当てを制御するＰＣＩマネージャと、を備えて前記計算機とＰＣＩマネージャとの割り当てを管理する複合型計算機システムの管理方法において、
前記装置制御部が、前記複数の計算機の１つに電源を投入してオペレーションシステムを起動するステップと、
前記装置制御部が、前記起動する計算機に割り当てられたＰＣＩデバイスのトポロジーを示すＰＣＩツリーについて、ＰＣＩツリーの識別子と、前記ＰＣＩツリーの状態を示すＰＣＩツリー管理情報とを前記ＰＣＩマネージャから取得するステップと、
前記取得したＰＣＩツリー管理情報が初期化中または初期化未了を示す場合には、前記装置制御部が前記起動する計算機の電源投入を再実行または電源投入を中止するステップと、
前記ＰＣＩ管理情報が前記ＰＣＩツリーの初期化完了を示す場合には、前記装置制御部が、前記起動する計算機への電源投入を実施するステップと、を含み、
前記装置制御部が、前記複数の計算機の１つに電源を投入してオペレーションシステムを起動するステップは、
前記装置制御部が、前記起動する計算機からオペレーションシステムの起動の完了を検知するステップを含み、
前記装置制御部が、前記起動する計算機に割り当てられたＰＣＩデバイスのトポロジーを示すＰＣＩツリーについて、ＰＣＩツリーの識別子と、ＰＣＩツリーの状態を示すＰＣＩツリー管理情報とを前記ＰＣＩマネージャから取得するステップは、
前記装置制御部が、前記オペレーションシステムが認識しているＰＣＩデバイスのＰＣＩツリーとＰＣＩデバイスの種類情報を含むＰＣＩツリー状態情報を取得するステップと、
前記装置制御部が、前記起動する計算機と前記ＰＣＩデバイスの割当てと、前記ＰＣＩスイッチの設定情報を含むＰＣＩツリー構成情報を取得するステップと、を含み、
さらに、前記装置制御部が、前記ＰＣＩツリー構成情報から前記起動する計算機のオペレーションシステムが認識するＰＣＩツリーを算出し、実際のＰＣＩツリーであるＰＣＩツリー状態情報と前記オペレーションシステムが認識するＰＣＩツリーを比較するステップと、
前記装置制御部は、前記比較の結果、前記ＰＣＩツリー状態情報とＰＣＩツリーが一致しない場合は前記オペレーションシステムをシャットダウンして前記起動する計算機の電源切断を行うステップと、を含むことを特徴とする複合型計算機システムの管理方法。
【請求項２】
前記起動する計算機に割当てられているＰＣＩツリーに対して、ＰＣＩデバイスの追加またはＰＣＩデバイスの削除の何れかを含む構成変更を行う場合に、前記ＰＣＩマネージャが前記構成変更を行うＰＣＩツリーを割当てられた計算機の電源状態を取得するステップと、
前記ＰＣＩマネージャが、前記構成変更を行うＰＣＩツリーを割当てられた計算機で動作するオペレーションシステムの種別を取得するステップと、
前記ＰＣＩマネージャが、前記構成変更を行うＰＣＩツリーを割当てられた計算機の電源状態とオペレーションシステムの種別から前記起動する計算機に割当てられているＰＣＩツリーの構成変更が可能か否かを判定するステップと、
前記ＰＣＩマネージャが、前記判定の結果、前記ＰＣＩツリーの変更が不可の場合は構成変更を中止するステップと、
をさらに含むことを特徴とする請求項１に記載の複合型計算機システムの管理方法。
【請求項３】
前記計算機は複数の仮想サーバを生成する仮想マシンモニタを含み、
前記装置制御部が、前記計算機の１つに電源を投入してオペレーションシステムを起動するステップは、
前記計算機の１つに電源を投入して仮想マシンモニタを起動し、１以上の仮想サーバを構成して該仮想サーバ上にオペレーションシステムを起動するステップを含むことを特徴とする請求項１に記載の複合型計算機システムの管理方法。
【請求項４】
前記計算機の１つに電源を投入して仮想マシンモニタを起動し、１以上の仮想サーバを構成して該仮想サーバ上にオペレーションシステムを起動するステップは、前記装置制御部が、前記起動する計算機から仮想マシンモニタの起動の完了を検出するステップを含み、
前記装置制御部が、前記起動する計算機に割り当てられたＰＣＩデバイスのトポロジーを示すＰＣＩツリーについて、ＰＣＩツリーの識別子と、ＰＣＩツリーの状態を示すＰＣＩツリー管理情報とを前記ＰＣＩマネージャから取得するステップは、
前記装置制御部が、前記仮想マシンモニタが認識しているＰＣＩデバイスのＰＣＩツリーとＰＣＩデバイスの種類情報を含むＰＣＩツリー状態情報を取得するステップと、
前記装置制御部が、前記起動する計算機と前記ＰＣＩデバイスの割当てと前記スイッチの設定情報を含むＰＣＩツリー構成情報を取得するステップと、を含み、
さらに、前記装置制御部は、前記ＰＣＩツリー構成情報から前記起動する計算機の仮想マシンモニタが認識するＰＣＩツリーを算出し、実際のＰＣＩツリーであるＰＣＩツリー状態情報と前記仮想マシンモニタが認識するＰＣＩツリーを比較するステップと、
前記装置制御部は、前記比較の結果、前記ＰＣＩツリー状態情報とＰＣＩツリーが一致しない場合は前記仮想マシンモニタをシャットダウンして前記起動する計算機の電源切断を行い、前記装置制御部は前記比較の結果、前記ＰＣＩツリー状態情報とＰＣＩツリーが一致する場合は、１以上の仮想サーバを構成して該仮想サーバ上にオペレーションシステムを起動するステップと、
を含むことを特徴とする請求項３に記載の複合型計算機システムの管理方法。
【請求項５】
前記起動する計算機に割当てられているＰＣＩツリーに対して、ＰＣＩデバイスの追加またはＰＣＩデバイスの削除の何れかを含む構成変更を行う場合に、前記ＰＣＩマネージャが前記構成変更を行うＰＣＩツリーを割当てられた計算機の電源状態を取得するステップと、
前記ＰＣＩマネージャが、前記構成変更を行うＰＣＩツリーを割当てられた計算機で動作する仮想マシンモニタの種別を取得するステップと、
前記ＰＣＩマネージャが、前記構成変更を行うＰＣＩツリーが割当てられたすべての仮想サーバの電源状態を取得するステップと、
前記ＰＣＩマネージャが、前記構成変更を行うＰＣＩツリーを割当てられた仮想サーバで動作するオペレーションシステムの種別を取得するステップと、
前記ＰＣＩマネージャが、前記取得した計算機の電源状態と仮想マシンモニタの種別と、仮想サーバの電源状態とオペレーションシステムの種別から前記ＰＣＩツリーの構成変更が可能か否かを判定するステップと、
前記ＰＣＩマネージャが、前記判定の結果、前記ＰＣＩツリーの変更が不可の場合は前記構成変更を中止するステップと、
をさらに含むことを特徴とする請求項４に記載の複合型計算機システムの管理方法。
【請求項６】
前記取得したＰＣＩツリー管理情報が初期化中または初期化未了を示す場合には、前記装置制御部が前記起動する計算機の電源投入を再実行または電源投入を中止するステップは、
前記ＰＣＩツリー管理情報が初期化中を示す場合でも電源投入を許可する設定がある場合には、前記取得したＰＣＩツリー管理情報が初期化中の場合に前記起動する計算機の電源投入を実施することを特徴とする請求項１に記載の複合型計算機システムの管理方法。
【請求項７】
前記起動する計算機は複数の仮想サーバを生成する仮想マシンモニタを含み、
前記起動する計算機に割当てられているＰＣＩツリーに対して、ＰＣＩデバイスの追加またはＰＣＩデバイスの削除の何れかを含む構成変更を行う場合に、前記ＰＣＩマネージャが、前記起動する計算機の状態がアクティブでも前記起動する計算機に割当てられているＰＣＩツリーの構成変更を許可する設定を有する場合は、前記起動する計算機の状態がアクティブのときに前記ＰＣＩツリーの構成変更を実施するステップをさらに含むことを特徴とする請求項６に記載の複合型計算機システムの管理方法。
【請求項８】
前記起動する計算機は複数の仮想サーバを生成する仮想マシンモニタを含み、
前記起動する計算機に割当てられているＰＣＩツリーに対して、ＰＣＩデバイスの追加またはＰＣＩデバイスの削除の何れかを含む構成変更を行う場合に、前記ＰＣＩマネージャが前記起動する計算機に割当てられたすべての仮想サーバの状態がアクティブの場合でも前記ＰＣＩツリーの構成変更を許可する設定を有する場合は、前記仮想サーバの状態がアクティブのときに前記起動する計算機に割当てられているＰＣＩツリーの構成変更を実施するステップさらに含むことを特徴とする請求項６に記載の複合型計算機システムの管理方法。
【請求項９】
ＣＰＵとメモリとＰＣＩインターフェースとを有する複数の計算機と、
前記複数の計算機を前記ＰＣＩインターフェースで接続する１以上のＰＣＩスイッチと、
前記ＰＣＩスイッチに接続する複数のＰＣＩデバイスと、
前記計算機の制御を行う装置制御部と、
前記ＰＣＩデバイスと前記計算機の割当てを制御するＰＣＩマネージャと、を備えた複合型計算機システムにおいて、
前記装置制御部は、
前記計算機上で稼動するオペレーションシステムが認識するＰＣＩツリー状態情報と、少なくとも前記計算機の識別子と前記計算機に割当てられたＰＣＩデバイスのトポロジーを示すＰＣＩツリーの識別子と、前記計算機の電源状態と、前記計算機上で動作するオペレーションシステムの種別から成る物理ホスト管理情報と、を備え、
前記ＰＣＩマネージャは、
少なくとも前記ＰＣＩスイッチの識別子と、前記ＰＣＩスイッチのポート番号と、前記ポートに割当てられた前記ＰＣＩツリーの識別子と、前記ＰＣＩツリーの初期化状態と、を含むＰＣＩツリー管理情報と、
前記ＰＣＩマネージャが管理するすべてのＰＣＩデバイスのトポロジーを示すＰＣＩツリー構成情報と、を備え、
前記装置制御部が、前記複数の計算機の１つに電源を投入してオペレーションシステムを起動する場合に、
前記装置制御部は、
前記ＰＣＩマネージャから前記起動する計算機に割当てられた前記ＰＣＩツリーの識別子を取得するＰＣＩツリー識別子取得部と、
前記ＰＣＩマネージャから前記起動する計算機に割当てられたＰＣＩツリーの前記初期化状態を取得し前記起動する計算機の電源投入が可能かどうか判定する物理ホスト起動判定部と、
前記起動する計算機から該ＰＣＩツリーの前記ＰＣＩツリー状態情報を取得するＰＣＩツリー状態情報取得部と、
前記ＰＣＩマネージャから前記ＰＣＩツリー構成情報を取得し、前記起動する計算機上で動作するオペレーションシステム、または、仮想マシンモニタが認識するＰＣＩツリーを算出し、前記算出したＰＣＩツリーと前記取得したＰＣＩツリー状態情報とを比較して一致するか否かを確認するＰＣＩツリー確認部と、
を備えたことを特徴とする複合型計算機システム。
【請求項１０】
前記ＰＣＩマネージャは、前記起動する計算機に割当てられているＰＣＩツリーに対して、ＰＣＩデバイスの追加やＰＣＩデバイスの削除の構成変更を行う場合に、前記装置制御部から構成変更を行う前記ＰＣＩツリーが割当てられている計算機または仮想サーバの電源状態と、前記起動する計算機上で動作するオペレーションシステムの種別または仮想マシンモニタの種別とを取得し、前記ＰＣＩツリーの構成変更が可能か否かを判定するＰＣＩツリー変更判定部を備えたことを特徴とする請求項９に記載の複合型計算機システム。
【請求項１１】
ＣＰＵとメモリとＰＣＩインターフェースとを有する複数の計算機と、
前記複数の計算機を前記ＰＣＩインターフェースで接続する１以上のＰＣＩスイッチと、
前記ＰＣＩスイッチに接続する複数のＰＣＩデバイスと、
前記計算機の制御を行う装置制御部と、
前記ＰＣＩデバイスと前記計算機の割り当てを制御するＰＣＩマネージャと、
前記ＰＣＩマネージャ及び装置制御部を制御する管理端末と、を備え、前記管理端末で提供するユーザインターフェースを介して設定する複合型計算機システムにおいて、
前記ユーザインターフェースは、
前記計算機の電源を投入し起動する場合に、該起動する計算機に割当てられているＰＣＩツリーの初期化状態を確認して電源投入の可否を判断するかどうかを設定する第１の項目と、
前記起動する計算機に割当てられているＰＣＩツリーに対して、ＰＣＩデバイスの追加またはＰＣＩデバイスの削除の何れかを含む構成変更を行う場合に、前記起動する計算機の電源状態と前記起動する計算機上で動作するオペレーションシステムの種別を確認してＰＣＩツリーの構成変更可否を判断するか否かを設定する第２の項目と、
前記起動する計算機に割当てられているＰＣＩツリーに対して、ＰＣＩデバイスの追加またはＰＣＩデバイスの削除の何れかを含む構成変更を行う場合に、前記起動する計算機の電源状態と前記起動する計算機上で動作する仮想マシンモニタの種別と該仮想マシンモニタ上に構成される仮想サーバの電源状態と該仮想サーバ上で動作するオペレーションシステムの種別を確認してＰＣＩツリーの構成変更可否を判断するか否かを設定する第３の項目と、のうち少なくとも１つ以上を含むことを特徴とする複合型計算機システム。
【請求項１２】
前記ＰＣＩスイッチは、１以上のＰＣＩスイッチで構成する複数ＰＣＩツリーについて、個別にＰＣＩツリーのトポロジー情報を取得するＰＣＩコンフィグレーション情報取得部を備え、前記装置制御部から特定のＰＣＩツリー状態情報を取得する要求がある場合に、前記ＰＣＩツリーのＰＣＩコンフィグレーション情報を取得して前記装置制御部に通知することを特徴とする請求項１１に記載の複合型計算機システム。
【請求項１３】
前記複数の計算機と前記ＰＣＩスイッチと管理ＬＡＮに接続されて前記計算機の管理を行う管理サーバをさらに備え、
前記管理サーバは前記装置制御部を含み、前記ＰＣＩスイッチは前記ＰＣＩマネージャを含むことを特徴とする請求項１２に記載の複合型計算機システム。
【請求項１４】
前記複数の計算機と前記ＰＣＩスイッチと管理ＬＡＮに接続されて前記計算機の管理を行う管理モジュールとを１つの筺体に備え、
前記管理モジュールは前記装置制御部を含み、前記ＰＣＩスイッチは前記ＰＣＩマネージャを含み、前記管理モジュールと前記ＰＣＩスイッチは制御インターフェースで接続されたことを特徴とする請求項１２に記載の複合型計算機システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の計算機と複数のＰＣＩデバイスをＰＣＩスイッチで接続した複合型計算機システムの装置管理技術に関し、特に、ＰＣＩデバイスを計算機に割当てる際の初期化や計算機の電源制御の技術や計算機に割当てたＰＣＩデバイスの割当てを変更する際の制御技術に関するものである。
【背景技術】
【０００２】
インターネットサイトに代表されるＩＴシステムは、ユーザに対して情報を表示するＷＥＢサーバ、情報を結合し処理するＡＰ（Application）サーバ、情報を蓄積保存するＤＢ（Data Base）サーバ等の様々なサーバから構成され、これらサーバにはＣＰＵ、メモリ、Ｉ／Ｏデバイス等から成る計算機が用いられている。上記のようにＩＴシステムは、多くのサーバから構成されるため、近年、サーバの管理を容易にするために１つの装置に複数の計算機を搭載したブレードサーバが用いられるようになっている（例えば、特許文献１）。またＣＰＵに複数のプロセッサコアを持つマルチコア化によりＣＰＵの処理性能が向上し、それに伴い効率的にＣＰＵを使用するため１つの計算機に複数の仮想的なサーバを稼動させる仮想サーバ技術が用いられるようになっている。
【０００３】
計算機では他の計算機とのネットワーク通信やストレージ装置の接続にＮＩＣ（Network Interface Card）やＦＣ−ＨＢＡ（Fiber Channel-Host Bus Adapter）等のＩ／Ｏデバイスが用いられるが、上記のように１つの計算機に複数のサーバを稼動させる場合は相対的に計算機当りのＩ／Ｏデバイス数が不足する。このような問題を補う技術として、複数の計算機と複数のＩ／ＯデバイスであるＰＣＩ（Peripheral Component Interconnect）デバイスとを接続可能とするマルチルートＰＣＩスイッチ技術と、１つのＰＣＩデバイスを複数の計算機で共有することを可能とするマルチルートＩ／Ｏ仮想化技術（ＩＯＶ：IO Virtualization）とが知られている。前者のマルチルートＰＣＩスイッチ技術では、１つの計算機に接続可能なＰＣＩデバイスの個数をスケーラブルに変えることが可能である（例えば、特許文献２、非特許文献１等）。後者のマルチルートＩ／Ｏ仮想化技術では、１つのＰＣＩデバイスを共有することで仮想的にＰＣＩデバイスの数を増やすことが可能である。これらの技術を用いることで、仮想サーバを用いた場合のＩ／Ｏデバイス数の不足を解消することができる。
【特許文献１】特開特開２００２−３２１５３号
【特許文献２】米国特許第７０５８７３８号
【非特許文献１】「Advanced Switching Technology Tech Brief」、2005年発行、著者ASI-SIG、第１〜２頁
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上記従来の計算機では、計算機に接続されるＰＣＩ（またはＰＣＩ  Ｅｘｐｒｅｓｓ）デバイスは、計算機とＰＣＩデバイスが１対１に接続が固定であるが、複数の計算機と複数のＰＣＩデバイスを接続するマルチルートＰＣＩスイッチを用いた複合型計算機システムでは、計算機とＰＣＩデバイスの接続が可変である。計算機とＰＣＩデバイスの割当ての管理は、管理ソフトウェアであるＰＣＩマネージャを計算機で実行することで行われる。
【０００５】
このようなマルチルートＰＣＩスイッチを用いた複合型計算機システムでのＰＣＩデバイスを計算機に割当てる際の初期化と計算機の電源制御、および、計算機に割当てたＰＣＩデバイスの割当てを変更では、次のような問題点があることが本発明者により見い出された。
【０００６】
複合型計算機ではＰＣＩデバイスの計算機への割当ては、ＰＣＩマネージャにより以下に示すように行われる。
【０００７】
計算機及びマルチルートＰＣＩスイッチを含む複合型計算機に電源を投入した直後の初期状態では、マルチルートＰＣＩスイッチに接続されたＰＣＩデバイスはどの計算機にも割り当てられていない。
【０００８】
第１ステップとして、ＰＣＩマネージャはマルチルートＰＣＩスイッチとＰＣＩデバイスの接続関係を表すトポロジーの検索を行う。これによりマルチルートＰＣＩスイッチとＰＣＩデバイスの接続関係が分かるため、第２ステップとしてＰＣＩマネージャはＰＣＩデバイスと計算機の割当ての設定を行う。
【０００９】
この割当ての設定は、計算機毎に異なるトポロジー、いわゆる、ＰＣＩツリーの識別子をマルチルートＰＣＩスイッチ、または、マルチルートＰＣＩデバイスのレジスタに登録することで行う。ここでマルチルートＰＣＩデバイスとは、ＩＯＶに対応した複数の計算機から共有が可能なＰＣＩデバイスのことを指す。
【００１０】
一方、計算機の電源制御は管理サーバや複合型計算機システムの管理モジュール等の装置制御部が行うため、計算機に電源を投入する場合に、計算機に割当てられたＰＣＩツリーの設定が完了していないと、計算機は正しいＩ／Ｏ構成で起動することができないという課題がある。
【００１１】
また、計算機に割当てられたＰＣＩデバイスを削除、すなわち、割当てを解除する場合は、ＰＣＩマネージャが、マルチルートＰＣＩスイッチ、または、マルチルートＰＣＩデバイスのレジスタから、計算機に割当てられたＰＣＩツリーの識別子を削除することで行う。
【００１２】
一方、ＰＣＩデバイスを使用するのは、計算機上のオペレーションシステム（ＯＳ）やデバイスドライバであるため、ＯＳが稼動中にＰＣＩマネージャによりＰＣＩデバイスの削除を行うと、Ｉ／Ｏ切断によるＯＳ障害が発生する可能性があり問題である。
【００１３】
特に、重要な業務を行うサーバではこのような障害の発生は許容されず大きな課題である。
【００１４】
そこで本発明は、上記問題点に鑑みてなされたもので、計算機に電源を投入する際に、当該計算機に割当てるＰＣＩツリーの構成が完了していることを保証するものであり、また、計算機とＰＣＩデバイスの割当てが可変である複合型計算機システムにおいても、従来の計算機とＰＣＩデバイスが固定的に割当てられた計算機システムと同じレベルの使い易さと信頼性を確保することを目的とする。
【課題を解決するための手段】
【００１５】
本発明は、ＣＰＵとメモリとＰＣＩインターフェースとを有する複数の計算機と、前記複数の計算機を前記ＰＣＩインターフェース経由で接続する１以上のＰＣＩスイッチと、前記ＰＣＩスイッチに接続する複数のＰＣＩデバイスと、前記計算機の制御を行う装置制御部と、前記ＰＣＩデバイスと前記計算機の割り当てを制御するＰＣＩマネージャと、を備えて前記計算機とＰＣＩマネージャとの割り当てを管理する複合型計算機システムの管理方法において、前記装置制御部が、前記複数の計算機の１つに電源を投入してオペレーションシステムを起動するステップと、前記装置制御部が、前記起動する計算機に割り当てられたＰＣＩデバイスのトポロジーを示すＰＣＩツリーについて、ＰＣＩツリーの識別子と、前記ＰＣＩツリーの状態を示すＰＣＩツリー管理情報とを前記ＰＣＩマネージャから取得するステップと、前記取得したＰＣＩツリー管理情報が初期化中または初期化未了を示す場合には、前記装置制御部が前記起動する計算機の電源投入を再実行または電源投入を中止するステップと、前記ＰＣＩ管理情報が前記ＰＣＩツリーの初期化完了を示す場合には、前記装置制御部が、前記起動する計算機への電源投入を実施するステップと、を含み、前記装置制御部が、前記複数の計算機の１つに電源を投入してオペレーションシステムを起動するステップは、前記装置制御部が、前記起動する計算機からオペレーションシステムの起動の完了を検知するステップを含み、前記装置制御部が、前記起動する計算機に割り当てられたＰＣＩデバイスのトポロジーを示すＰＣＩツリーについて、ＰＣＩツリーの識別子と、ＰＣＩツリーの状態を示すＰＣＩツリー管理情報とを前記ＰＣＩマネージャから取得するステップは、前記装置制御部が、前記オペレーションシステムが認識しているＰＣＩデバイスのＰＣＩツリーとＰＣＩデバイスの種類情報を含むＰＣＩツリー状態情報を取得するステップと、前記装置制御部が、前記起動する計算機と前記ＰＣＩデバイスの割当てと、前記ＰＣＩスイッチの設定情報を含むＰＣＩツリー構成情報を取得するステップと、を含み、さらに、前記装置制御部が、前記ＰＣＩツリー構成情報から前記起動する計算機のオペレーションシステムが認識するＰＣＩツリーを算出し、実際のＰＣＩツリーであるＰＣＩツリー状態情報と前記オペレーションシステムが認識するＰＣＩツリーを比較するステップと、前記装置制御部は、前記比較の結果、前記ＰＣＩツリー状態情報とＰＣＩツリーが一致しない場合は前記オペレーションシステムをシャットダウンして前記起動する計算機の電源切断を行うステップと、を含む。
【発明の効果】
【００１６】
したがって、本発明は、複数の計算機と複数のＰＣＩデバイスとこれらの計算機とＰＣＩデバイス間を接続するＰＣＩスイッチで構成される複合型計算機システムにおいて、計算機に電源を投入する際に、当該計算機に割当てるＰＣＩツリーの構成が完了していることを保証することができ、正しいＰＣＩデバイス構成で計算機を起動することが可能となる。
【００１７】
これにより、計算機上で動作するオペレーションシステム、または、仮想マシンモニタ等、いわゆるシステムソフトウェアが認識する実際のＰＣＩツリーとユーザが設定したＰＣＩツリーとが一致していることを保証することが可能となる。
【００１８】
また、計算機に割当てられているＰＣＩツリーの構成を変更する際に、システムソフトウェアが稼動していない、または、稼動中にＰＣＩツリーが変更可能なシステムソフトウェアである、ことを保証することが可能となる。
【００１９】
さらに、ユーザまたは装置管理者は、計算機とＰＣＩデバイスの割当てが可変である複合型計算機システムにおいても、従来の計算機とＰＣＩデバイスが固定的に割当てられた計算機システムと同じレベルの使い易さと信頼性を享受することが可能となる。
【発明を実施するための最良の形態】
【００２０】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するために全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は原則として省略する。
【００２１】
先ず本発明の第１の実施の形態による複合型計算機システムの構成について説明する。図１は本発明の第１の実施の形態による複合型計算機システムの構成図である。図１に示すように、本実施形態において複合型計算機システムは、計算機である１以上の物理ホスト１００１、１００２と、Ｉ／Ｏデバイスと物理ホスト１００の接続状態を変更可能な１以上のマルチルートＰＣＩスイッチ１０１１、１０１２と、１以上のＰＣＩデバイス１０２と、複合型計算機システムの電源制御や状態管理を行う装置制御部（装置制御計算機）１０３、ＰＣＩデバイス１０２の物理ホスト１００への割当てを管理するＰＣＩマネージャ（ＰＣＩ管理計算機）１０４、ユーザや装置管理者が複合型計算機システムを制御するための管理用端末１０５から構成されている。なお、図１においては、物理ホスト１００１、１００２が２つ、ＰＣＩスイッチが２つの構成を示し、２つの物理ホスト１００１、１００２は、物理ホスト１、物理ホスト２として識別し、２つのＰＣＩスイッチ１０１１、１０１２は、ＰＣＩスイッチ１，ＰＣＩスイッチ２として識別する。装置制御部１０３、ＰＣＩマネージャ１０４については、図１では１つのみを示しているが、信頼性向上のため２以上構成しても良い。
【００２２】
物理ホスト１００１、１００２は、１以上のＣＰＵ（プロセッサ）１０８と、１以上のメモリ１０９、１以上のチップセット１０７と、管理コントローラであるＢＭＣ（Baseboard Management Controller）１２０３と、を含むハードウェア構成要素１０６から構成される。物理ホスト１００１、１００２上ではソフトウェア構成要素であるオペレーションシステムＯＳ１１０が動作し、または、仮想サーバ技術を用いる場合は仮想マシンモニタ（以下、ＶＭＭ）１１１上に複数の仮想サーバ１１２、１１２を構成し、仮想サーバ１１２上でゲストＯＳ１１３が動作する。物理ホスト１００１、１００２とマルチルートＰＣＩスイッチ１０１１、１０１２間、及びマルチルートＰＣＩスイッチ１０１１、１０１２とＰＣＩデバイス１０２間は、ＰＣＩの一形態であるＰＣＩＥｘｐｒｅｓｓ１１４によって接続される。
【００２３】
また、物理ホスト１００１、１００２と装置制御部１０３間と、マルチルートＰＣＩスイッチ１０１１、１０１２とＰＣＩマネージャ１０４間、及び装置制御部１０３とＰＣＩマネージャ１０４間は、それぞれ制御インターフェース１１７、１１８、１１６で接続される。制御インターフェースとしては、例えば、ＬＡＮ（Local Area Network）やＩ2Ｃ（Inter-Integrated Circuit）を用いる。また、ＢＭＣ１２０３は、物理ホストの構成情報や電源状態を収集し、装置制御部１０３に通知する。
【００２４】
マルチルートＰＣＩスイッチ１０１１、１０１２は、物理ホスト１００１、１００２が接続されるポート１１５１と、ＰＣＩデバイス１０２が接続されるポート１１５２を備える。また、マルチルートＰＣＩスイッチ１０１１、１０１２は、各ポート１１５１、１１５２間の接続状態を設定するレジスタ（図示省略）を備える。
【００２５】
装置制御部１０３と管理用端末１０５間、及びＰＣＩマネージャ１０４と管理用端末１０５間は、それぞれ管理インターフェース１２０、１１９で接続される。管理インターフェースとしては、例えば、ＬＡＮやＲＳ−２３２Ｃを用いる。
【００２６】
本実施形態においては、ＰＣＩツリーの初期化と物理ホストの電源投入の手順の不整合、および、ＰＣＩツリーの構成変更と物理ホストの電源状態の不整合を防ぐために以下の構成要素を備えることを特徴とする。
【００２７】
装置制御部１０３は、物理ホスト１００１、１００２および仮想サーバ１１２の電源状態、物理ホスト１００１、１００２または仮想サーバ１１２に割当てられたＰＣＩツリーの識別子の情報を管理する物理ホスト管理情報１３５と、各ＰＣＩツリーのＯＳ１１０やＶＭＭ１１１から認識した状態を保持するＰＣＩツリー状態情報１３６と、を保持する。
【００２８】
またＰＣＩマネージャ１０４は、物理ホスト１００１、１００２に割当てるＰＣＩツリーの状態を保持するＰＣＩツリー管理情報１３９と、ＰＣＩマネージャが管理するマルチルートＰＣＩスイッチ１０１１、１０１２内のＰＣＩ−ｔｏ−ＰＣＩブリッジやＰＣＩデバイス１０２のトポロジーと物理ホスト１００１、１００２へ割当てるＰＣＩツリーの対応関係を保持するＰＣＩツリー構成情報１４０と、を保持する。
【００２９】
また、装置制御部１０３は、少なくとも、ＰＣＩツリー識別子取得部１３１、物理ホスト起動判定部１３２、物理ホストＰＣＩツリー状態取得部１３３、物理ホストＰＣＩツリー確認部１３４、を含む。ＰＣＩツリー識別子取得部１３１は、ＰＣＩマネージャ１０４から物理ホスト１００１、１００２に割当てられたＰＣＩツリーの識別子およびＰＣＩツリーの初期化状態を取得する。
【００３０】
物理ホスト起動判定部１３２は、物理ホスト１００１、１００２に割当てられたＰＣＩツリーを監視して、すべてのＰＣＩツリーについて初期化が完了したときに物理ホスト１００１、１００２の電源の投入可能と判定し、それ以外の場合は電源の投入は不可であると判定する。
【００３１】
物理ホストＰＣＩツリー状態取得部１３３は、物理ホスト１００１、１００２上のＯＳ１１０またはＶＭＭ１１１から認識したＰＣＩツリーの情報、すなわち、ＰＣＩツリー状態情報１３６を取得する。
【００３２】
物理ホストＰＣＩツリー確認部１３４は、ＰＣＩマネージャ１０４からＰＣＩツリー構成情報１４０を取得する。
【００３３】
次に、ＰＣＩマネージャ１０４は、少なくとも、ＰＣＩツリー初期化終了確認部１３７と、ＰＣＩツリー変更判定部１３８を備える。
【００３４】
ＰＣＩツリー初期化終了確認部１３７は、マルチルートＰＣＩスイッチ１０１１、１０１２を監視してポート１１５１とポート１１５２間の接続状態が更新された否かを判定し、更新された場合にはＰＣＩツリーの初期化が完了したことを確認し、ＰＣＩツリー管理情報１３９に初期化の完了を反映する。マルチルートＰＣＩスイッチ１０１１、１０１２の監視は、例えば、マルチルートＰＣＩスイッチ１０１１、１０１２内のレジスタをポーリングすることにより状態を取得し、レジスタの値が更新された場合にＰＣＩツリー管理情報１３９に反映する。
【００３５】
ＰＣＩツリー変更判定部１３８は、装置制御部１０３からＰＣＩツリーが割当てられた物理ホスト１００１、１００２の電源状態と、システムソフトウェアの種別と、ＰＣＩツリー状態情報１３６を取得する。
【００３６】
次に、複合型計算機システムが保持する情報について図２〜図１０を用いて詳しく説明する。
【００３７】
図２は第１の実施の形態による複合型計算機システムの物理ホスト管理情報１３５の一例を示した説明図で、図３は第１の実施の形態による複合型計算機システムの物理ホスト１００１、１００２のうち物理ホスト１のＰＣＩツリーの一例を示した説明図で、図４は第１の実施の形態による複合型計算機システムの物理ホスト１のＰＣＩツリー状態情報１３６の一例を示した説明図で、図５は第１の実施の形態による複合型計算機システムの物理ホスト２のＰＣＩツリーの一例を示した説明図で、図６は第１の実施の形態による複合型計算機システムの物理ホスト２のＰＣＩツリー状態情報１３６の一例を示した説明図で、図７は第１の実施の形態による複合型計算機システムの物理ホスト２の仮想サーバ１のＰＣＩツリー状態情報１３６の一例を示した説明図で、図８は第１の実施の形態による複合型計算機システムのＰＣＩマネージャ１０４が管理するＰＣＩツリーの変形例を示した説明図で、図９は第１の実施の形態による複合型計算機システムのＰＣＩツリー管理情報１３９の一例を示した説明図で、図１０は第１の実施の形態による複合型計算機システムの物理ホスト１のＰＣＩツリー構成情報１４０の一例を示した説明図である。
【００３８】
装置制御部１０３が保持する物理ホスト管理情報１３５は表形式で表すと図２のＦＴ２に示すように、少なくとも、複合型計算機システム内で物理ホスト１００１、１００２のうち物理ホスト１または物理ホスト２を特定する物理ホスト識別子Ｋ２０１と、物理ホスト内で仮想サーバ１１２を特定する仮想サーバ識別子Ｋ２０２と、物理ホストに割当てられたＰＣＩツリーを示すＰＣＩツリー識別子Ｋ２０３と、物理ホストまたは仮想サーバの電源状態を示す電源状態Ｋ２０４と、物理ホスト上で動作するＯＳ１１０またはＶＭＭ１１１の種別または仮想サーバ１１２上で動作するＯＳの種別を表すＯＳ／ＶＭＭ種別Ｋ２０５と、ＯＳ１１０またはＶＭＭ１１１から認識したＰＣＩツリーの状態であるＰＣＩツリー状態情報１３６の有効または無効を示すＰＣＩツリー状態情報Ｋ２０６と、の列で構成される。
【００３９】
電源状態Ｋ２０４の種類については、例えば、初期設定を実行中である初期化中、電源を投入できる状態であるスタンバイ、電源を投入されている状態であるアクティブの何れかが設定される。図２に示す例では、行Ｇ２０１の物理ホスト識別子Ｋ２０１が１の物理ホスト１については、ＶＭＭは動作していないので仮想サーバ識別子Ｋ２０２はＮｏｔ  Ａｖａｉｌａｂｌｅ（ＮＡ）であり、物理ホスト１に割当てられているＰＣＩツリーの識別子Ｋ２０３はＰＴ１、電源状態Ｋ２０４はスタンバイ、ＯＳ／ＶＭＭ種別Ｋ２０５はＯＳｘ、ＰＣＩツリー状態情報Ｋ２０６は有効である。また、行Ｇ２０２〜Ｇ２０５の物理ホスト識別子Ｋ２０１が２の物理ホスト２については、ＶＭＭ１１１が動作しており、仮想サーバ識別子Ｋ２０２に示すようにＶＭ１、ＶＭ２、ＶＭ３の３つの仮想サーバが構成されている。
【００４０】
物理ホスト２（１００２）ではＰＣＩツリー識別子Ｋ２０３は、物理ホストを示す行Ｇ２０２に示すようにＰＣＩツリーＰＴ２、ＰＴ３が割当てられている。仮想サーバ１１１（ＶＭ１〜ＶＭ３）は物理ホスト２に割当てられたＰＣＩツリーＰＴ２、ＰＴ３を用いるため仮想サーバＶＭ１〜ＶＭ３に関する他の行Ｇ２０３〜Ｇ２０５についてはＮＡである。すなわち、仮想サーバＶＭ１〜ＶＭ３に割り当てるＰＣＩツリーは、ＶＭＭ１１１が割り当てるため、物理ホスト管理情報１３５においてはＰＣＩツリー識別子Ｋ２０３の値を、Ｎｏｔ  Ａｖａｉｌａｂｌｅ（ＮＡ）とする。
【００４１】
物理ホスト２（１００２）は、電源状態Ｋ２０４はアクティブ、ＯＳ／ＶＭＭ種別Ｋ２０５はＶＭＭｙ、ＰＣＩツリー状態情報Ｋ２０６は有効である。行２０３の物理ホスト２の仮想サーバ１は、電源状態Ｋ２０４はアクティブ、ＯＳ／ＶＭＭ種別Ｋ２０５はＯＳｙ、ＰＣＩツリー状態情報Ｋ２０６は有効である。
【００４２】
次に、物理ホスト１と、物理ホスト２及び物理ホスト２の仮想サーバ１（ＶＭ１）のＰＣＩツリー状態情報１３６について以下に説明する。
【００４３】
図３に示すように、物理ホスト１のＯＳ１１０が認識するＰＣＩツリーは、物理ホスト１（１００１）とマルチルートＰＣＩスイッチ１０１１、１０１２から割当てられるＰＣＩツリーＰＴ１（３０６１）から構成される。
【００４４】
物理ホスト１は、ＣＰＵ、メモリを含むホストバス３０１と、ＰＣＩ−ｔｏ−ＰＣＩブリッジ３０２１と、ＮＩＣ３０３１と、ＰＣＩバスＢＵＳ０（３０５０）から構成される。ＰＣＩツリーＰＴ１（３０６１）は、マルチルートＰＣＩスイッチ１（１０１１）、ＰＣＩ−ｔｏ−ＰＣＩブリッジ８０１１、８０１３、８０１５、ＮＩＣ８０４１、ＨＢＡ８０５１、８０５２、ＰＣＩバスＢＵＳ２（３０５２）、ＢＵＳ３（３０５３）、ＢＵＳ４（３０５４）から構成される。物理ホスト１とＰＣＩツリーＰＴ１（３０６１）は、ＰＣＩバスＢＵＳ１（３０５１）で接続される。
【００４５】
従って、物理ホスト１のＰＣＩツリー状態情報１３６は、表形式で表すと図４のＦＴ４に示すように、少なくとも、ＰＣＩデバイス１０２のＰＣＩツリー内の場所を特定するＢｕｓ  Ｎｕｍｂｅｒ（Ｂｕｓ＃）Ｋ４０１と、Ｄｅｖｉｃｅ  Ｎｕｍｂｅｒ（Ｄｅｖ＃）Ｋ４０２と、Ｆｕｎｃｔｉｏｎ  Ｎｕｍｂｅｒ（Ｆｕｎｃ＃）Ｋ４０３と、ＰＣＩデバイスの種類を示すデバイス種類Ｋ４０４、当該デバイスが属するＰＣＩツリー識別子Ｋ４０５の列で構成される。
【００４６】
例えば、（Ｂｕｓ＃、Ｄｅｖ＃、Ｆｕｎｃ＃）＝（０、１、０）については、デバイスの種類Ｋ４０４はＰＣＩ−ＰＣＩブリッジ３０２１で、図３に示すようにＰＣＩツリーＰＴ１に属さないためＰＣＩツリー識別子Ｋ４０５はＮＡである。同様に、（Ｂｕｓ＃、Ｄｅｖ＃、Ｆｕｎｃ＃）＝（０、２、０）については、デバイスの種類Ｋ４０４はネットワークコントローラ３０３１で、図３に示すようにＰＣＩツリーＰＴ１に属さないためＰＣＩツリー識別子Ｋ４０５はＮＡとなる。
【００４７】
次に、図５に示すように、物理ホスト２のＶＭＭ１１１が認識するＰＣＩツリーは、物理ホスト２、マルチルートＰＣＩスイッチ１（１０１１）から割当てられるＰＣＩツリーＰＴ２（５０６２）と、マルチルートＰＣＩスイッチ２（１０１２）から割当てられるＰＣＩツリーＰＴ３（５０６３）、から構成される。
【００４８】
物理ホスト２（１００２）は、ＣＰＵ、メモリを含むホストバス３０１、ＰＣＩ−ｔｏ−ＰＣＩブリッジ５０１１、５０１２、ＮＩＣ５０２１、ＰＣＩバスＢＵＳ０（５０５０）から構成される。ＰＣＩツリーＰＴ２（５０６２）は、マルチルートＰＣＩスイッチ１（１０１１）、ＰＣＩ−ｔｏ−ＰＣＩブリッジ８０１２、８０１４、８０１５、ＮＩＣ８０４２、ＨＢＡ８０５３、８０５４、ＰＣＩバスＢＵＳ２（５０５２）、ＢＵＳ３（５０５３）、ＢＵＳ４（５０５４）から構成される。
【００４９】
ＰＣＩツリーＰＴ３（５０６３）は、マルチルートＰＣＩスイッチ２（１０１２）、ＰＣＩ−ｔｏ−ＰＣＩブリッジ８０１６、８０１８、８０１９、ＮＩＣ８０４３、８０４４、ＨＢＡ８０５５、ＰＣＩバスＢＵＳ６（５０５６）、ＢＵＳ７（５０５７）、ＢＵＳ８（５０５８）から構成される。
【００５０】
物理ホスト２（１００２）とＰＣＩツリーＰＴ２（５０６２）は、ＰＣＩバスＢＵＳ１（５０５１）で接続され、物理ホスト２（１００２）とＰＣＩツリーＰＴ３（５０６３）は、ＰＣＩバスＢＵＳ５（５０５５）で接続される。
【００５１】
物理ホスト２（１００２）のようにＶＭＭ１１１上に複数の仮想サーバ１１２を構成する場合のＰＣＩツリー状態情報１３６は、表形式で表すと図６のＦＴ６に示すように、少なくとも、図４のＦＴ４に示す項目と、ＰＣＩデバイスの仮想サーバへの割当てを示すＶＭ割当てＫ６０６、の列で構成される。例えば、図６の（Ｂｕｓ＃、Ｄｅｖ＃、Ｆｕｎｃ＃）＝（０、１、０）については、デバイスの種類Ｋ４０４はＰＣＩ−ＰＣＩブリッジ５０１１で、図５に示すようにＰＣＩツリーＰＴ２、ＰＴ３に属さないためＰＣＩツリー識別子Ｋ４０５はＮＡ（Ｎｏｔ  Ａｖａｉｌａｂｌｅ：該当なし）とする。この例ではＰＣＩ−ＰＣＩブリッジは特定の仮想サーバには割当てないためＶＭ割当てＫ６０６はＮＡである。
【００５２】
また、（Ｂｕｓ＃、Ｄｅｖ＃、Ｆｕｎｃ＃）＝（３、１、０）の行については、デバイスの種類Ｋ４０４はネットワークコントローラ８０４２で、図５に示すようにＰＣＩツリー識別子Ｋ４０５はＰＴ２、ＶＭ割当てＫ６０６はＶＭ１である。この図５に示す例のように、１つの物理ホストに複数のＰＣＩツリーを割当てても良い。
【００５３】
また、物理ホスト２の仮想サーバＶＭ１のＰＣＩツリー状態情報１３６は、図６で示した物理ホスト１と同様に、図７のＦＴ７で示すようになる。
【００５４】
次に、ＰＣＩツリー管理情報１３９について説明する。ＰＣＩマネージャ１０４が認識するマルチルートＰＣＩスイッチ１０１１、１０１２のＰＣＩツリーは、例えば図８に示す構成となる。図８の例では、前記図１に物理ホスト３（１００３）を加え、ＰＣＩマネージャ１０４は、ＣＰＵを含むホストバス８０６、ＢＵＳ０（８０７０）から構成される。マルチルートＰＣＩスイッチ１０１１、１０１２は、管理ポート１１５３経由で、ＰＣＩマネージャ１０４のＢＵＳ０（８０７０）に接続される。ＰＣＩマネージャ１０４は、ＰＣＩバスＢＵＳ０〜ＢＵＳ７（８０７０〜８０７７）のＰＣＩツリーを保持する。
【００５５】
物理ホスト１（１００１）はマルチルートＰＣＩスイッチ１（１０１１）のＰｏｒｔ１に接続され、物理ホスト２（１００２）はマルチルートＰＣＩスイッチ１（１０１１）のＰｏｒｔ２とマルチルートＰＣＩスイッチ２（１０１２）のＰｏｒｔ１に接続され、物理ホスト３（１００３）はマルチルートＰＣＩスイッチ２（１０１２）のＰｏｒｔ２に接続される。
【００５６】
マルチルートＰＣＩスイッチ１（１０１１）は、ＰＣＩ−ｔｏ−ＰＣＩブリッジ８０１１、８０１２、８０１３、８０１４、８０１５、８０２１、を備え、ポート１１５２にＮＩＣ８０４１、８０４２、ＨＢＡ８０５１、８０５２、８０５３、８０５４が接続される。また、マルチルートＰＣＩスイッチ２（１０１２）は、ＰＣＩ−ｔｏ−ＰＣＩブリッジ８０１６、８０１７、８０１８、８０１９、８０１１０、８０２２、を備え、ポート１１５２にＮＩＣ８０４３、８０４４、及びＨＢＡ８０５５が接続される。
【００５７】
図８に示す構成において、ＰＣＩツリー管理情報１３９は、表形式で表すと図９のＦＴ９に示すように、少なくとも、マルチルートＰＣＩスイッチ１０１１または１０１２を特定するスイッチ番号Ｋ９０１、物理ホスト１００１、１００２が接続されるマルチルートＰＣＩスイッチのポート番号Ｋ９０２、ポート番号Ｋ９０２がツリー構造のトップとなるＰＣＩツリーを特定するＰＣＩツリー識別子Ｋ９０３、ＰＣＩツリーの物理ホストへの割当て設定の状態を示すＰＣＩツリー初期化状態Ｋ９０４、の列で構成される。
【００５８】
ＰＣＩツリー初期化状態Ｋ９０４の例としては、ＰＣＩツリーの設定が完了していない状態を示す「初期化未了」、設定中の「初期化中」、設定が完了した「初期化完了」がある。
【００５９】
次にＰＣＩツリー構成情報１４０について説明する。ＰＣＩツリー構成情報１４０は、物理ホスト１００１、１００２とＰＣＩデバイス１０２の割当て関係を示すマスターとなる構成情報である。この構成情報は、多くの場合、ユーザや装置管理者が管理用端末１０５経由で設定する。
【００６０】
図８に示す構成においてＰＣＩツリー構成情報１４０は、表形式で表すと図１０のＦＴ１０に示すように、少なくとも、ＰＣＩデバイス１０２のＰＣＩツリー内の場所を特定するバス番号を格納するＢｕｓ＃Ｋ１００１と、デバイスの識別子を格納するＤｅｖ＃Ｋ１００２と、デバイスの機能を示す識別子を格納するＦｕｎｃ＃Ｋ１００３と、ＰＣＩデバイスの種類を示すデバイス種類Ｋ１００４と、当該デバイスが属するＰＣＩツリー識別子Ｋ１００５と、当該ＰＣＩデバイスが属するマルチルートＰＣＩスイッチの識別子を格納するスイッチ番号Ｋ１００６と、当該ＰＣＩデバイスがマルチルートＰＣＩスイッチ内のＰＣＩ−ｔｏ−ＰＣＩブリッジの場合はそのブリッジに関係付けられたスイッチのポート番号を示すＰｏｒｔ番号Ｋ１００７と、から構成される。
【００６１】
次に本発明の第１の実施の形態による複合型計算機システムの制御について説明する。最初に、複合型計算機システムの物理ホスト１０１１または１０１２に電源を投入する場合の制御について説明する。
【００６２】
図１１は本発明の第１の実施形態による複合型計算機システムの物理ホスト１（非仮想サーバ環境）に電源を投入する場合の制御の一例を示したフローチャートである。物理ホスト１００１、１００２に電源を投入する契機は、例えば、ユーザや装置管理者が管理用端末１０５を用いて装置制御部１０３に対し物理ホスト１（１００１）の電源投入を指示する（ステップＳ１１０１）ことが契機となる。装置制御部１０３はＰＣＩツリー識別子取得部１３１によりＰＣＩマネージャ１０４から物理ホスト１（１００１）に割当てられたＰＣＩツリーの識別子およびそのＰＣＩツリーの初期化状態を取得する（ステップＳ１１０２）。
【００６３】
ここで装置制御部１０３は、物理ホスト１（１００１）が接続されているマルチルートＰＣＩスイッチ１０１１、１０１２のスイッチ番号とポート番号を用いてＰＣＩマネージャ１０４に取得要求を出すので、ＰＣＩマネージャ１０４は図９に示すＰＣＩツリー管理情報１３９からＰＣＩツリー識別子Ｋ９０３を選択することができる。また、ＰＣＩツリーの初期化状態は、ＰＣＩマネージャ１０４のＰＣＩツリー初期化終了確認部１３７により、例えば、マルチルートＰＣＩスイッチ１０１１、１０１２のレジスタ（図示省略）をポーリングすることにより状態取得を行い、状態に更新がある場合にＰＣＩツリー管理情報１３９に反映される。
【００６４】
次に装置制御部１０３は物理ホスト起動判定部１３２により物理ホスト１（１００１）に割当てられたＰＣＩツリーすべてが初期化完了のときは物理ホスト１の電源の投入可能と判断し、それ以外の場合は電源の投入不可と判断する（ステップＳ１１０３）。
【００６５】
図９に示す例では、物理ホスト１（１００１）に割当てられたＰＣＩツリーＰＴ１の初期化状態は初期化完了であるため当該物理ホストに対する電源の投入可能と判断する。装置制御部１０３は、このステップＳ１１０３で電源の投入不可と判断した場合は、例外処理として、例えば、電源投入処理を最初からやり直す、あるいは、エラーを管理用端末１０５に通知して電源投入処理を中止する、等の処理を行う（ステップＳ１１０５）。
【００６６】
一方、電源の投入可能と判断した場合、装置制御部１０３は、制御インターフェース１１７経由で物理ホスト１（１００１）の電源投入を実行する（ステップＳ１１０４）。物理ホスト１（１００１）の電源が投入されるとＰＣＩツリーＰＴ１のＰＣＩデバイス１０２を、物理ホスト１のＯＳ１１０から使用可能にするための初期設定を含む処理が行われ、その後、ＯＳ１１０が起動する。
【００６７】
装置制御部１０３は、制御インターフェース１１７を介して物理ホスト１００でＯＳ１１０が起動したことを検出する（ステップＳ１１０６）。
【００６８】
次に装置制御部１０３は、物理ホストＰＣＩツリー状態取得部１３３により物理ホスト１（１００１）からＯＳ１１０が認識したＰＣＩツリーの情報、すなわち、ＰＣＩツリー状態情報１３６を取得する（ステップＳ１１０７）。次に、ステップＳ１００８では、
上記ステップＳ１１０１〜１１０７の処理は、図１２のように行われる。
【００６９】
図１２は第１の実施の形態による装置制御部１０３の物理ホストＰＣＩツリー状態取得部１３３がＰＣＩツリー状態情報１３６を取得する手順の一例を示したブロック図である。なお、図１２に示すように、本実施形態ではＯＳ１１０は、ＰＣＩデバイス１０２を使用するためにＯＳ自身で認識したＰＣＩツリーの情報であるＰＣＩツリー状態情報１２０２を保持している。
【００７０】
ＯＳ１１０は、例えば、装置制御部１０３からＰＣＩツリー状態取得要求を受けた場合、物理ホスト１１０１上の管理コントローラであるＢＭＣ１２０３経由でＰＣＩツリー状態情報を通知する（経路１２０４、および、経路１２０５）。
【００７１】
次に物理ホストＰＣＩツリー状態取得部１３３は、ＰＣＩツリー状態情報１３６を保存し（経路１２０７）、図２の物理ホスト管理情報１３５のＰＣＩツリー状態情報Ｋ２０６にＰＣＩツリー状態情報１３６が有効であることを設定する（経路１２０６）。なお、物理ホスト２では、ＯＳ１１０に代わってＶＭＭ１１１上に構成される仮想サーバ１１２上で動作するＯＳ１１３を指す。また、ＯＳ１１０に代わって、ＢＩＯＳ（Basic Input/Output System）、ＥＦＩ（Extensible Firmware Interface）等のシステムファームウェアが上述の処理を行っても良い。
【００７２】
次に装置制御部１０３は、物理ホストＰＣＩツリー確認部１３４により、ＰＣＩマネージャ１０４からＰＣＩツリー構成情報１４０を取得し（ステップＳ１１０８）、前述のＰＣＩツリー状態情報１３６とＰＣＩツリー構成情報１４０を比較することにより一致するか確認を行う（ステップＳ１１０９）。これにより、ユーザ、または、装置管理者が設定した物理ホスト１００１、１００２とＰＣＩデバイス１０２の割当て設定とＯＳ１１０等のシステムソフトウェアが認識するＰＣＩデバイス１０２の実際の割当て状態とが一致することを確認することができる。つまり、設定が実際に正しく反映されているかを確認できる。このステップＳ１１０９で、構成情報と状態が一致している場合は、通常の物理ホスト１（１００１）の稼動状態となる（ステップＳ１１１０）。一方、一致していない場合は、例外処理として、例えば、物理ホスト１（１００１）を再起動したり、あるいは、エラーを管理用端末１０５に通知して物理ホスト１をシャットダウンする、等の処理を行う（ステップＳ１１１１）。
【００７３】
ここで、本実施形態のステップＳ１１０９におけるＰＣＩツリー状態情報１３６とＰＣＩツリー構成情報１４０の比較処理について、図１３〜図１５を用いて詳しく述べる。図１３は第１の実施の形態による複合型計算機システムのＰＣＩツリー状態情報１３６とＰＣＩツリー構成情報１４０の比較処理の一例を示したフローチャートで、図１４は第１の実施の形態による複合型計算機システムのシステムソフトウェア（ＯＳ１１０またはＶＭＭ１１１）が認識するＰＣＩツリーの一例を示した説明図で、図１５は第１の実施の形態による複合型計算機システムのシステムソフトウェアが認識するＰＣＩツリーの一例を示した説明図である。
【００７４】
図１３に示すように、装置制御部１０３の物理ホストＰＣＩツリー確認部１１４は、物理ホスト管理情報１３５から物理ホスト１００１、１００２に割当てられているＰＣＩツリー識別子ＰＴ１を取得する（ステップＳ１３０１）。また、物理ホストＰＣＩツリー確認部１１４は、物理ホスト管理情報１３５から物理ホスト１００１、１００２上で動作するシステムソフトウェアの種別である図２のＯＳ／ＶＭＭ種別Ｋ２０５からＯＳｘを取得する（ステップＳ１３０２）。ＰＣＩでは、ＰＣＩツリーのＢｕｓ  Ｎｕｍｂｅｒはシステムソフトウェアの起動時に固有の方法で指定されるので、システムソフトウェアの種別ごとにＰＣＩツリーのトポロジーが異なることがある。
【００７５】
例えば、物理ホスト１（１００１）に割当てられたＰＣＩツリーＰＴ１をシステムソフトウェア（ＯＳ１１０）から認識すると図１４に示すようなＰＣＩバスＢＵＳ２（１４０１２）、ＢＵＳ３（１４０１３）、ＢＵＳ４（１４０１４）のトポロジーとなり、別の種別のシステムソフトウェアから認識すると図１５に示すようなＰＣＩバスＢＵＳ２（１５０１２）、ＢＵＳ３（１５０１３）、ＢＵＳ４（１５０１４）のトポロジーとなる。
【００７６】
すなわち、この図１４、図１５の例ではＢＵＳ３とＢＵＳ４が入れ替わったトポロジーとなる。従って、ＰＣＩツリー状態情報１３６とＰＣＩツリー構成情報１４０を単純に比較しても、正しいトポロジーの比較ができない。そこで、本実施形態では物理ホストＰＣＩツリー確認部１１４は、ＰＣＩツリー構成情報１４０とシステムソフトウェアの種別であるＯＳｘのＰＣＩツリー生成アルゴリズムに従って、ＯＳｘから認識されるＰＣＩツリーを算出する（ステップＳ１３０３）。
【００７７】
物理ホストＰＣＩツリー確認部１１４が算出したＯＳｘから認識されるＰＣＩツリーとＰＣＩツリー状態情報１３６を比較し、両者が一致するか判定を行う（ステップＳ１３０４）。その結果として物理ホストＰＣＩツリー確認部１１４は、一致（ステップＳ１３０５）、または、不一致（ステップＳ１３０６）の判定結果を出す。上記の方法では、装置制御部１０３の物理ホストＰＣＩツリー確認部１１４がシステムソフトウェアから認識されるＰＣＩツリーの算出を行った例を示したが、ＰＣＩマネージャ１０４が算出し、算出した結果のみを装置制御部１０３に知らせる方法でも良い。
【００７８】
図１１に示した処理では非仮想サーバの場合について説明したが、次に仮想サーバ１１２を構成する物理ホスト１００２に電源を投入する場合の制御について説明する。
【００７９】
図１６は本発明の第１の実施形態による複合型計算機システムの物理ホスト２（仮想サーバ環境）に電源を投入する場合の制御の一例を示したフローチャートである。
【００８０】
図２で示したように、物理ホスト２（１００２）は３つの仮想サーバＶＭ１、ＶＭ２、ＶＭ３が構成される。図１６に示す手順では、図１１の本発明の第１の実施形態による複合型計算機システムの物理ホスト１に電源を投入する場合の処理で示したステップＳ１１０１〜Ｓ１１０５、Ｓ１１０７〜Ｓ１１０９、および、Ｓ１１１１と同じである。従って、以下では異なる部分についてのみ説明し、同じ部分については説明を省略する。
【００８１】
仮想サーバ１１２では、物理ホスト２の電源投入の実行後（ステップＳ１１０４）、ＶＭＭ１１１が起動するので、装置制御部１０３は制御インターフェース１１７経由でＶＭＭ１１１が起動したことを確認する（ステップＳ１６０１）。また、ＰＣＩツリー状態情報１３６とＰＣＩツリー構成情報１４０を比較することにより、２つの情報が一致するか否かの確認（ステップＳ１１０９）で一致と判断した場合に、装置制御部１０３は制御インターフェース１１７経由でＶＭ２上のＯＳ１１３を起動させ（ステップＳ１６０２）、制御インターフェース１１７経由でＯＳ１１０が起動したことを確認する（ステップＳ１６０３）。その後、通常の物理ホスト２（１００２）の稼動状態となる（ステップＳ１６０４）。本実施形態の複合型計算機システムの制御により、計算機に電源を投入する際にその計算機に割当てるＰＣＩツリーの構成が完了していることを保証することができ、正しいＰＣＩデバイス構成で計算機を起動することが可能となる。また、ＯＳ１１０、または、ＶＭＭ１１１等のいわゆるシステムソフトウェアが認識する実際のＰＣＩツリーとユーザが設定したＰＣＩツリーとが一致していることを保証することが可能となる。
【００８２】
次に、複合型計算機システムの物理ホストに割当てられたＰＣＩツリーの構成を変更する場合の制御について説明する。図１７は本発明の第１の実施形態による複合型計算機システムの物理ホスト１（非仮想サーバ環境）に割当てられたＰＣＩツリーの構成を変更する場合の制御の一例を示したフローチャートである。ＰＣＩツリーの構成を変更する契機は、例えば、ユーザや装置管理者が管理用端末１０５を用いてＰＣＩマネージャ１０４に対し、物理ホスト１（１００１）のＰＣＩツリーＰＴ１の構成変更指示（ステップＳ１７０１）による。ＰＣＩマネージャ１０４はＰＣＩツリー変更判定部１３８により、装置制御部１０３からＰＣＩツリーＰＴ１が割当てられた物理ホスト１（１００１）の電源状態と、システムソフトウェアの種別、ＰＣＩツリー状態情報を取得する（ステップＳ１７０２〜Ｓ１７０４）。
【００８３】
次に、ＰＣＩマネージャ１０４は、これらの物理ホスト１（１００１）に関する情報を用いてＰＣＩツリーＰＴ１の構成変更が可能か判定する（ステップＳ１７０５）。この判定方法としては、例えば、物理ホスト１００１の電源状態がアクティブのときは構成変更不可、システムソフトウェアの種別がＰＣＩデバイスのホットプラグに対応していない場合は構成変更不可、ＰＣＩツリー状態情報からＰＣＩデバイスの種類がホットプラグに対応していない場合は構成変更不可、等がある。この判定の結果ＰＣＩマネージャ１０４は、ＰＣＩツリーの構成変更可の場合は、ＰＣＩツリーＰＴ１の構成変更を実行する（ステップＳ１７０６）。一方、判定が構成変更不可の場合は、例外処理として、例えば、エラーを管理用端末１０５に通知して構成変更処理を中止する等の処理を行う（ステップＳ１７０７）。
【００８４】
上記図１７に示す処理では非仮想サーバの場合について説明したが、次に仮想サーバ１１２を構成する物理ホスト１００２のＰＣＩツリーの構成を変更する場合の制御について説明する。
【００８５】
図１８は本発明の第１の実施形態による複合型計算機システムの物理ホスト２（仮想サーバ環境）に割当てられたＰＣＩツリーの構成を変更する場合の制御の一例を示したフローチャートである。図２に示すように、物理ホスト２（１００２）では３つの仮想サーバ  ＶＭ１、ＶＭ２、ＶＭ３が構成される。図１８に示す手順では、図１７の本発明の第１の実施形態による複合型計算機システムの物理ホスト１にＰＣＩツリーの構成を変更する場合の処理のステップＳ１７０１〜Ｓ１７０４と図１８のステップＳ１８０１〜Ｓ１８０４は同様の処理である。従って、以下ではステップＳ１８０５以降の図１７とは異なる部分について説明し、同じ部分については説明を省略する。
【００８６】
図１８の例では、ＰＣＩツリーＰＴ２の変更を行う場合の制御方法を示している。仮想サーバでは、ＰＣＩマネージャ１０４はＰＣＩツリー変更判定部１３８により、ＰＣＩツリーＰＴ２が割当てられた物理ホスト２の物理ホスト管理情報１３５、および、ＰＣＩツリー状態情報を取得後（ステップＳ１８０２〜Ｓ１８０４）、物理ホスト２に構成される仮想サーバＶＭ１、ＶＭ２、ＶＭ３に関する電源状態、システムソフトウェアの種別、ＰＣＩツリー状態情報を取得する（ステップＳ１８０５〜Ｓ１８０７）。次に、これらの物理ホスト２（１００２）と仮想サーバＶＭ１、ＶＭ２、ＶＭ３に関する情報を用いてＰＣＩツリーＰＴ２の構成変更が可能か判定する（ステップＳ１８０８）。この判定方法としては、例えば、物理ホスト１００２の電源状態がアクティブのときは構成変更不可、ＰＴ２が割当てられた仮想サーバ、すなわち、図２に示したようにＶＭ１、ＶＭ２の電源状態がアクティブのときは構成変更不可、ＶＭ１上のシステムソフトウェアＯＳｙがＰＣＩデバイスのホットプラグに対応していない場合は構成変更不可、システムソフトウェアＶＭＭ  ｙがＰＣＩデバイスのホットプラグに対応していない場合は構成変更不可、等がある。
【００８７】
図１７に示す制御と同様に、この判定の結果ＰＣＩマネージャ１０４は、ＰＣＩツリーの構成変更可の場合は、ＰＣＩツリーＰＴ２の構成変更を実行する（ステップＳ１８０９）。一方、判定が構成変更不可の場合は、例外処理を行う（ステップＳ１８１０）。
【００８８】
本実施形態の複合型計算機システムの制御により、計算機に割当てられているＰＣＩツリーの構成を変更する際に、システムソフトウェアが稼動していない、または、稼動中にＰＣＩツリーが変更可能なシステムソフトウェアである、ことを保証することが可能となる。
【００８９】
＜第２実施形態＞
次に本発明の第２の実施の形態による複合型計算機システムの構成について説明する。第２の実施形態における複合型計算機システムの構成は、図１に示した第１の実施形態の複合型計算機システムの構成に対して、ＰＣＩマネージャ１０４とマルチルート１０１１、１０１２の接続を変更したもので、その他の構成は前記第１実施形態と同様である。従って、以下では第１の実施形態と異なる分部についてだけ説明し、同じ部分については説明を省略する。
【００９０】
図１９は第２の実施の形態による複合型計算機システムのＰＣＩマネージャ１０４が管理するＰＣＩツリーの一例を示した説明図である。本実施形態では、マルチルートＰＣＩスイッチ１０１１、１０１２にＢＭＣ１９０１を搭載し、ＰＣＩマネージャ１０４は制御インターフェース１９０２経由で各ＢＭＣ１９０１と接続される。この場合は、ＰＣＩマネージャ１０４は、ＢＭＣ１９０１経由で、マルチルートＰＣＩスイッチ１０１１または１０１２に構成されるＰＣＩデバイス（８０４１〜８０５５）のトポロジーを把握することが可能である。
【００９１】
＜第３実施形態＞
次に本発明の第３の実施の形態による複合型計算機システムの構成について説明する。第３の実施形態における複合型計算機システムの構成は、図１に示した第１の実施形態の複合型計算機システムに対して、物理ホストＰＣＩツリー状態取得部１３３がＰＣＩツリー状態を取得する方法を変更したもので、その他については前記第１実施形態と同様である。従って、以下では第１の実施形態と異なる分部についてのみ説明し、同じ部分については説明を省略する。
【００９２】
図２０は第３の実施の形態による複合型計算機システムの物理ホストＰＣＩツリー状態取得部１３３がＰＣＩツリー状態情報１３６を取得する方法の一例を示した説明図である。なお、図２０では、説明を簡易にするため、前記図１の物理ホスト１００１とＰＣＩスイッチ１０１１と、ＰＣＩマネージャ１０４と、装置制御部１０３のみを示し、その他を省略した。本実施形態では、装置制御部１０３がマルチルートＰＣＩスイッチ１０１１にＰＣＩデバイス１０２のコンフィグレーションレジスタにアクセスすることができ、コンフィグレーション情報を取得することが可能なＰＣＩコンフィグ情報取得部１３０を備える。装置制御部１０３の物理ホストＰＣＩツリー状態取得部１３３は、ＰＣＩコンフィグ情報取得部１３０からＰＣＩマネージャ１０４経由（経路２００１）でＰＣＩツリー状態を取得する。次に、物理ホストＰＣＩツリー状態取得部１３３は、ＰＣＩツリー状態情報１３６を保存し（経路２００３）、図２の物理ホスト管理情報１３５のＰＣＩツリー状態情報Ｋ２０６にＰＣＩツリー状態情報１３６が有効であることを設定する（経路２００２）。
【００９３】
次に、ＰＣＩコンフィグ情報取得部１３０の具体的な回路について説明する。図２１は第３の実施の形態による複合型計算機システムのＰＣＩコンフィグ情報取得部１３０の一例を示した回路図である。
【００９４】
本実施形態では、ＰＣＩコンフィグ情報取得部１３０は、ＰＣＩツリー状態情報の取得をコントロールするＢＭＣ１９０１とＰＣＩのコンフィグレーションリクエストの送信と受信を行うＰＣＩ送受信部２１０２から構成される。
【００９５】
さらにＰＣＩ送受信部２１０２は、ホストバスに近いｕｐｓｔｒｅａｍ２１１１からホストバスに遠いｄｏｗｎｓｔｒｅａｍ２１３８向きのＰＣＩトランザクションを処理するｏｕｔｂｏｕｎｄ制御部２１０４、ｄｏｗｎｓｔｒｅａｍ２１３８からｕｐｓｔｒｅａｍ２１１１向きのＰＣＩトランザクションを処理するｉｎｂｏｕｎｄ制御部２１０３、実行中のコンフィグレーションアクセスを保持する実行中コンフィグレーションバッファ２１２９、ＰＣＩツリー状態情報１３６を取得するためのコンフィグレーションアクセスを保持するスキャン中コンフィグレーションバッファ２１３０、から構成される。また、２１３７はＡＮＤ論理回路である。
【００９６】
ＰＣＩコンフィグレーション情報取得部１３０が有効な場合は、ＢＭＣ１９０１はｏｕｔｂｏｕｎｄのＰＣＩトランザクションがコンフィグレーションリクエストであることを特定するコンフィグレーションリクエスト特定部２１１３とｉｎｂｏｕｎｄのＰＣＩトランザクションがコンフィグレーションコンプリーションであることを特定するコンフィグレーションコンプリーション特定部２１２０を制御インターフェース２１１４、２１２１により有効（Ｅｎａｂｌｅ）にする。これによりＰＣＩのトランザクションは以下のように処理される。
【００９７】
ｕｐｓｔｒｅａｍ２１１１からの非コンフィグレーションのＰＣＩトランザクションは、経路２１１２、２１１６、２１１８によりｄｏｗｎｓｔｒｅａｍ２１３８に転送される。
【００９８】
ｕｐｓｔｒｅａｍ２１１１からのコンフィグレーションのＰＣＩトランザクションは、経路２１１２、２１１７、２１１８によりｄｏｗｎｓｔｒｅａｍ２１３８に転送されると共に、実行中コンフィグレーションバッファ２１２９に保持される。
【００９９】
ｄｏｗｎｓｔｒｅａｍ２１３８からの非コンフィグレーションコンプリーションのＰＣＩトランザクションは、経路２１１９、２１２３、２１２５によりｕｐｓｔｒｅａｍ２１１１に転送される。
【０１００】
ｄｏｗｎｓｔｒｅａｍ２１３８からのコンフィグレーションコンプリーションのＰＣＩトランザクションは、スキャン中コンフィグレーションコンプリーション特定部２１３３により、ｕｐｓｔｒｅａｍから来たコンフィグレーションに対するコンプリーションか、ＰＣＩコンフィグレーション情報取得部１３０が出したコンフィグレーションに対するコンプリーションかが特定される。
【０１０１】
前者のｕｐｓｔｒｅａｍからきたコンフィグレーションに対するコンプリーションの場合は、経路２１１９、２１２２、２１２４、２１２５によりｕｐｓｔｒｅａｍ２１１１に転送される。後者のＰＣＩコンフィグレーション情報取得部１３０が出したコンフィグレーションに対するコンプリーションの場合については、以下のＰＣＩコンフィグレーション情報取得方法の中で説明する。
【０１０２】
ＰＣＩコンフィグレーション情報取得部１３０がＰＣＩデバイス１０２のコンフィグレーション情報を取得する方法は、先ずＢＭＣ１９０１がスキャン用コンフィグレーションＲｅａｄ生成部２１２６に対して制御インターフェース２１２７により、情報を取得する対象のＰＣＩデバイス１０２の設定、すなわち、スキャン設定を行う。スキャン用コンフィグレーションＲｅａｄ生成部２１２６は、実行中コンフィグレーションバッファ２１２９を参照し、実行中のｕｐｓｔｒｅａｍからきたコンフィグレーションのトランザクションが無いことを確認する。このコンフィグレーションのトランザクションが無い場合は、情報を取得する対象ＰＣＩデバイス１０２に対してスキャン用のコンフィグレーションＲｅａｄを生成し、経路２１２８、２１１８によりｄｏｗｎｓｔｒｅａｍ２１３８に転送する。同時に、このコンフィグレーションＲｅａｄをスキャン中コンフィグバッファ２１３０に保持する。
【０１０３】
次に、スキャン用のコンフィグレーションＲｅａｄに対するコンプリーションが、ｄｏｗｎｓｔｒｅａｍ２１３８から、経路２１１９、２１２２でｉｎｂｏｕｎｄ制御部２１０３に返ってくる。スキャン中コンフィグレーションコンプリーション特定部２１３３は、実行中コンフィグレーションバッファ２１２９とスキャン中コンフィグバッファ２１３０を参照して、このコンフィグレーションコンプリーションがスキャン用であることを特定する。
【０１０４】
スキャン中コンフィグレーションコンプリーション特定部２１３３は、実行中コンフィグレーションバッファ２１２９、または、スキャン中コンフィグレーションバッファ２１３０に保持されているコンフィグレーションの該当するエントリを削除して更新を行う。
【０１０５】
スキャン用のコンフィグレーションコンプリーションのコンプリーションは、経路２１３４によりスキャンデータバッファ２１５３を経由して経路２１３６によりＢＭＣ１９０１に転送される。これによりＢＭＣ１９０１は、ＰＣＩデバイス１０２のコンフィグレーション情報を取得することが可能である。
【０１０６】
＜第４実施形態＞
次に本発明の第４の実施の形態による複合型計算機システムの制御について説明する。第４の実施形態における複合型計算機システムの制御は、図１１および図１６に示す第１の実施形態の複合型計算機システムの制御に、ユーザまたは装置管理者が設定するポリシーに応じて、物理ホスト１００１、１００２の電源投入の可否を判定する処理を追加したもので、その他は前記第１実施形態と同様である。従って、以下では第１の実施形態と異なる分部についてだけ説明し、同じ部分については説明を省略する。
【０１０７】
図２２は本発明の第４の実施形態による複合型計算機システムの物理ホストに電源を投入する場合の電源投入判断処理の一例を示したフローチャートである。前記第１実施形態の図１１および図１６に示したステップＳ１１０３で装置制御部１０３により物理ホスト１（１００１）の電源投入判定が開始される（ステップＳ２２０１）。装置制御部１０３は物理ホスト１（１００１）の電源を投入するポリシーの設定が有効か判定し（ステップＳ２２０２）、ポリシー設定が有効の場合は電源投入可と判断する（ステップＳ２２０４）。一方ポリシー設定が無効の場合は、物理ホスト１（１００１）に割当てられているすべてのＰＣＩツリーの初期化が完了したかを判定する（ステップＳ２２０３）。前記条件を満たしている場合は電源投入可と判断し（ステップＳ２２０４）、前記条件を満たしていない場合は電源投入不可と判断する（ステップＳ２２０５）。
【０１０８】
本実施形態は、非仮想サーバ環境および仮想サーバ環境の両方に共通である。本実施形態により、ユーザまたは装置管理者が設定するポリシーにより物理ホストの電源投入を判断できるようになる。
【０１０９】
＜第５実施形態＞
次に本発明の第５の実施の形態による複合型計算機システムの制御について説明する。第５の実施形態における複合型計算機システムの制御は、図１７および図１８に示した第１の実施形態の複合型計算機システムの制御に対して、ユーザまたは装置管理者が設定するポリシーによるＰＣＩツリーの構成変更可否の判定処理を追加したもので、その他の構成については同様である。従って、以下では第１の実施形態と異なる分部についてだけ説明し、同じ部分については説明を省略する。
【０１１０】
図２３は本発明の第５の実施形態による複合型計算機システムの物理ホスト１（非仮想サーバ環境）に割当てられたＰＣＩツリーの構成を変更する場合の構成変更可否を判断する方法の一例を示したフローチャート、図２４は本発明の第５の実施形態による複合型計算機システムの物理ホスト２（仮想サーバ環境）に割当てられたＰＣＩツリーの構成を変更する場合の構成変更可否を判断する方法の一例を示したフローチャートである。
【０１１１】
図２３に示すように、物理ホスト１００１が非仮想サーバ環境である場合は、図１７に示したステップＳ１７０５で、装置制御部１０３により物理ホスト１（１００１）のＰＣＩツリーＰＴ１の構成変更可否の判定が開始される（ステップＳ２３０１）。ＰＣＩマネージャ１０４は、物理ホスト１がアクティブ状態のときでもＰＣＩツリーの構成変更を許可するポリシーの設定が有効か否かを判定し（ステップＳ２３０２）、ポリシー設定が有効の場合は、ＰＣＩツリーＰＴ１が割当てられた物理ホスト１（１００１）上で動作するＯＳ１１０の種別からアクティブ状態でＰＣＩツリーの変更が可能か判定する（ステップＳ２３０３）。この判定結果がアクティブ状態でＰＣＩツリーの変更が可能な場合は構成変更可と判断する（Ｓ２３０５）。一方、ステップＳ２３０２でポリシーの設定が無効、または、ステップＳ２３０３でアクティブ状態でＰＣＩツリーの変更が不可な場合は、ＰＣＩツリーＰＴ１が割当てられた物理ホスト１（１００１）の電源状態がアクティブか否かを判定し、アクティブのときは構成変更不可と判断する（ステップＳ２３０６）。一方、物理ホスト１（１００１）の電源状態がアクティブで無いときは構成変更可と判断する（ステップＳ２３０５）。
【０１１２】
また、図２４に示すように、物理ホストが仮想サーバ環境である場合は、図１８に示したステップＳ１８０４で、装置制御部１０３により物理ホスト２（１００２）のＰＣＩツリーＰＴ２の構成変更可否の判定が開始される（ステップＳ２３０１）。
【０１１３】
ＰＣＩマネージャ１０４は、物理ホストがアクティブ状態のときでもＰＣＩツリーの構成変更を許可するポリシーの設定が有効か判定し（ステップＳ２３０２）、ポリシー設定が有効の場合は、ＰＣＩツリーＰＴ１が割当てられた物理ホスト２（１００２）上で動作するＶＭＭ１１１の種別からアクティブ状態でＰＣＩツリーの変更が可能か判定する（ステップＳ２４０１）。
【０１１４】
ステップＳ２３０２でポリシー設定が無効の場合、または、ステップＳ２４０１でアクティブ状態でもＰＣＩツリーの変更が不可の場合は、ＰＣＩツリーＰＴ２が割当てられた物理ホスト２（１００２）の電源状態がアクティブかどうか判定し（ステップＳ２３０４）、アクティブの場合は構成変更不可と判定する（Ｓ２４０６）。
【０１１５】
ステップＳ２４０１でＶＭＭ１１１がアクティブ状態でもＰＣＩツリーの変更が不可の場合、または、ステップＳ２３０４でアクティブでない場合は、物理ホスト２（１００２）上に構成される仮想サーバ１１２がアクティブ状態のときでもＰＣＩツリーの構成変更を許可するポリシー設定が有効か判定し（ステップＳ２４０２）、ポリシー設定が有効の場合はＰＣＩツリーＰＴ２が割当てられた仮想サーバ１１２上で動作するＯＳ１１３の種別からアクティブ状態でＰＣＩツリーの変更が可能か判定する（ステップＳ２４０３）。
【０１１６】
アクティブ状態でＰＣＩツリーの変更が可能な場合は構成変更可と判定する（ステップＳ２４０５）。ステップＳ２４０２でポリシーの設定が無効、または、ステップＳ２４０３でアクティブ状態でＰＣＩツリーの変更が不可の場合は、ＰＣＩツリーＰＴ２が割当てられた仮想サーバ１１２の電源状態がアクティブか否かを判定し、１以上の仮想サーバ１１２がアクティブのときは構成変更不可と判断する（ステップＳ２４０６）。
【０１１７】
一方、すべての仮想サーバ１１２がアクティブでないときは構成変更可と判断する（ステップＳ２４０５）。本実施形態により、ユーザまたは装置管理者が設定するポリシーによりＰＣＩツリーの構成変更可否を判断できるようになる。
【０１１８】
＜第６実施形態＞
次に本発明の第６の実施の形態による複合型計算機システムの構成について説明する。第６の実施形態における複合型計算機システムの構成は、図１に示した第１の実施形態の複合型計算機システムに示したＰＣＩマネージャ１０４と、装置制御部１０３の搭載場所を変更したものでその他の構成は前記第１実施形態と同様でである。従って、以下では第１の実施形態と異なる分部についてのみ説明し、同じ部分については説明を省略する。
【０１１９】
図２５は第６の実施の形態による複合型計算機システムの構成図である。図２５に示すように、本実施形態では、ＰＣＩマネージャ１０４はマルチルートＰＣＩスイッチ１０１１に搭載され、装置制御部１０３は複数の単体装置（計算機）である物理ホスト１００１、１００２、１００３を管理する管理サーバ２５０１に搭載される。管理サーバ２５０１と物理ホスト１００１、１００２、１００３と、管理サーバ２５０１とマルチルートＰＣＩスイッチ１０１１と、管理サーバ２５０１と管理用端末１０５は、それぞれ管理ＬＡＮ  ２５０２で接続される。本実施形態では、本発明を複数のラック型サーバまたはペデスタル型サーバとマルチルートＰＣＩスイッチ装置から構成されるシステムにも適用が可能である。
【０１２０】
＜第７実施形態＞
次に本発明の第７の実施の形態による複合型計算機システムの構成について説明する。第７の実施形態における複合型計算機システムの構成は、図１に示した第１の実施形態の複合型計算機システムの構成のうち、ＰＣＩマネージャ１０４と、装置制御部１０３の搭載場所を変更したもので、その他の構成は前記第１実施形態と同様である。従って、以下では第１の実施形態と異なる分部についてだけ説明し、同じ部分については説明を省略する。
【０１２１】
図２６は第７の実施の形態による複合型計算機システムの構成図である。図２６に示すように、本実施形態では、ブレードサーバ２６０１は、複数の物理ホスト１００１、１００２、１００３と、マルチルートＰＣＩスイッチ１０１１と、ＰＣＩデバイス１０２、ブレードサーバ内の物理ホスト１００１、１００２、１００３と、マルチルートＰＣＩスイッチ１０１１と、ＰＣＩデバイス等の管理を行う管理モジュール２６０２から構成される。なお、前記第１実施形態のマルチルートＰＣＩスイッチ１０１２は図示を省略した。
【０１２２】
ＰＣＩマネージャ１０４はマルチルートＰＣＩスイッチ１０１１に搭載され、装置制御部１０３は管理モジュール２６０２に搭載される。管理モジュール２６０２と物理ホストは管理ＬＡＮ２６０５で接続され、管理モジュール２６０２とマルチルートＰＣＩスイッチ１０１１はＩ2Ｃ２６０４で接続され、管理モジュール２６０２と管理用端末１０５は管理ＬＡＮ２６０３で接続される。
【０１２３】
本実施形態では、本発明をマルチルートＰＣＩスイッチ１０１１、１０１２を搭載するブレード型サーバのシステムにも適用が可能である。
【０１２４】
＜第８実施形態＞
次に本発明の第８の実施の形態による複合型計算機システムの構成について説明する。第８の実施形態における複合型計算機システムの構成は、図１に示した第１の実施形態の複合型計算機システムのうち、ＰＣＩマネージャ１０４、装置制御部１０３の搭載場所を変更したもので、その他の構成は前記第１実施形態と同様である。従って、以下では第１の実施形態と異なる分部についてのみ説明し、同じ部分については説明を省略する。
【０１２５】
図２７は第８の実施の形態による複合型計算機システムの構成図である。図２７に示すように、本実施形態では、複数のブレードサーバ２６０１、複数のＩＯシャーシ２７０１、管理用端末１０５から構成される。ブレードサーバ２６０１は、複数の物理ホスト１００１、１００２、１００３と、マルチルートＰＣＩスイッチ１０１１と、管理モジュール２６０２から構成される。なお、前記第１実施形態のマルチルートＰＣＩスイッチ１０１２は図示を省略した。
【０１２６】
ＩＯシャーシ２７０１は、マルチルートＰＣＩスイッチ１０１１、複数のＰＣＩデバイス１０２から構成される。それぞれのマルチルートＰＣＩスイッチ１０１１間は、ＰＣＩ  Ｅｘｐｒｅｓｓ（例えば、ケーブル等）によって接続される。管理モジュール２６０２とマルチルートＰＣＩスイッチ１０１１は管理ＬＡＮ２７０１で接続され、複数の管理モジュールおよび管理用端末１０５は管理ＬＡＮ２６０３で接続される。
【０１２７】
本実施形態では、本発明をマルチルートＰＣＩスイッチ１０１１、１０１２を搭載するブレード型サーバとＩＯシャーシから成るシステムにも適用が可能である。
【０１２８】
＜第９実施形態＞
次に本発明の第９の実施の形態による複合型計算機システムの構成について説明する。第９の実施形態における複合型計算機システムの構成は、図１に示した第１の実施形態の複合型計算機システムのうち、管理用端末１０５のグラフィカルインターフェースの構成を変更したものでその他の構成は前記第１実施形態と同様である。従って、以下では第１の実施形態と異なる分部についてだけ説明し、同じ部分については説明を省略する。
【０１２９】
図２８は第９の実施の形態による複合型計算機システムのグラフィカルインターフェースの一例を示した説明図である。図２８に示すように、管理用端末１０５のグラフィカルインターフェース２８０１は、ＰＣＩマネージャを設定するＰＣＩマネージャ設定部２８０２に、少なくとも物理ホスト１００１、１００２の電源投入時にＰＣＩツリーの初期化状態の確認を行うかを設定するＰＣＩツリー初期化確認無効化入力部２８０３、物理ホスト１００１、１００２に割当てられたＰＣＩツリーの構成変更時に物理ホスト１００１、１００２の状態の確認を行うかを設定する物理ホスト用のＰＣＩツリー変更確認無効化入力部２８０４、仮想サーバ１１２に割当てられたＰＣＩツリーの構成変更時に物理ホスト１００１、１００２の状態の確認を行うかを設定する仮想サーバ用のＰＣＩツリー変更確認無効化入力部２８０５、設定確定入力部２８０６を備える。
【０１３０】
ＰＣＩマネージャ設定部２８０２の各入力部２８０３、２８０４、２８０５、２８０６は、複合型計算機システムに１つ備えても良いし、個々の物理ホスト１００１、１００２毎に備えても良い。
【０１３１】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることは言うまでもない。
【産業上の利用可能性】
【０１３２】
本発明は、計算機とＰＣＩデバイスの割当てが可変である複合型計算機システム、すなわち、マルチルートＰＣＩスイッチを用いた計算機システムに適用することができる。
【図面の簡単な説明】
【０１３３】
【図１】第１の実施の形態を示し、本発明を適用する複合型計算機システムのブロック図。
【図２】第１の実施の形態を示し、複合型計算機システムの物理ホスト管理情報の一例を示す説明図。
【図３】第１の実施の形態を示し、複合型計算機システムの物理ホスト１のＰＣＩツリーの一例を示すブロック図。
【図４】第１の実施の形態を示し、物理ホスト１のＰＣＩツリー状態情報の一例を示す説明図。
【図５】第１の実施の形態を示し、物理ホスト２のＰＣＩツリーの一例を示すブロック図。
【図６】第１の実施の形態を示し、物理ホスト２のＰＣＩツリー状態情報の一例を示す説明図。
【図７】第１の実施の形態を示し、物理ホスト２の仮想サーバＶＭ１のＰＣＩツリー状態情報の一例を示す説明図。
【図８】第１の実施の形態を示し、ＰＣＩマネージャが管理するＰＣＩツリーの一例を示すブロック図。
【図９】第１の実施の形態を示し、ＰＣＩツリー管理情報の一例を示す説明図。
【図１０】第１の実施の形態を示し、物理ホスト１のＰＣＩツリー構成情報の一例を示す説明図。
【図１１】第１の実施の形態を示し、物理ホスト１（非仮想サーバ環境）に電源を投入した場合の処理の一例を示すフローチャート。
【図１２】第１の実施の形態を示し、物理ホストＰＣＩツリー状態取得部がＰＣＩツリー状態情報を取得する手順を示すブロック図。
【図１３】第１の実施の形態を示し、ＰＣＩツリー状態情報１３６とＰＣＩツリー構成情報１４０の比較処理の一例を示すフローチャート。
【図１４】第１の実施の形態を示し、システムソフトウェアが認識するＰＣＩツリーの一例を示すブロック図。
【図１５】第１の実施の形態を示し、他のシステムソフトウェアが認識するＰＣＩツリーの一例を示すブロック図。
【図１６】第１の実施の形態を示し、物理ホスト２（仮想サーバ環境）に電源を投入した場合の処理の一例を示すフローチャート。
【図１７】第１の実施の形態を示し、物理ホスト１（非仮想サーバ環境）に割当てられたＰＣＩツリーの構成を変更する場合の処理の一例を示すフローチャート。
【図１８】第１の実施の形態を示し、物理ホスト２（仮想サーバ環境）に割当てられたＰＣＩツリーの構成を変更する場合の処理の一例を示すフローチャート。
【図１９】第２の実施の形態を示し、複合型計算機システムのＰＣＩマネージャが管理するＰＣＩツリーの一例を示すブロック図。
【図２０】第３の実施の形態を示し、複合型計算機システムの物理ホストＰＣＩツリー状態取得部１３３がＰＣＩツリー状態情報１３６を取得する処理の一例を示すブロック図。
【図２１】第３の実施の形態を示し、複合型計算機システムのＰＣＩコンフィグレーション情報取得部１３０の一例を示す回路図。
【図２２】第４の実施の形態を示し、複合型計算機システムの物理ホストに電源を投入した場合の電源投入判定処理の一例を示すフローチャート。
【図２３】第５の実施の形態を示し、複合型計算機システムの物理ホスト１（非仮想サーバ環境）に割当てられたＰＣＩツリーの構成を変更する場合の構成変更可否を判定する処理の一例を示すフローチャート。
【図２４】第５の実施の形態を示し、複合型計算機システムの物理ホスト２（仮想サーバ環境）に割当てられたＰＣＩツリーの構成を変更する場合の構成変更可否を判定する処理の一例を示すフローチャート。
【図２５】第６の実施の形態を示し、複合型計算機システムのブロック図。
【図２６】第７の実施の形態を示し、複合型計算機システムのブロック図。
【図２７】第８の実施の形態を示し、複合型計算機システムのブロック図。
【図２８】第９の実施の形態を示し、管理用端末のグラフィカルインターフェースの一例を示す説明図。
【符号の説明】
【０１３４】
１００１、１００２、１００３  物理ホスト
１０１１、１０１２  マルチルートＰＣＩスイッチ
１０２  ＰＣＩデバイス
１０３  装置制御部
１０４  ＰＣＩマネージャ
１０５  管理端末
１０６  ハードウェア構成要素
１０７  チップセット
１０８  ＣＰＵ
１０９  メモリ
１１０  オペレーションシステム
１１１  仮想マシンモニタ
１１２  仮想サーバ
１１３  オペレーションシステム
１１４  ＰＣＩ  Ｅｘｐｒｅｓｓ
１１５１、１１５２、１１５３  ポート
１３１  ＰＣＩツリー識別子取得部
１３２  物理ホスト起動判定手段
１３３  物理ホストＰＣＩツリー状態取得手段
１３４  物理ホストＰＣＩツリー確認手段
１３５  物理ホスト管理情報
１３６  ＰＣＩツリー状態情報
１３７  ＰＣＩツリー初期化終了確認手段
１３８  ＰＣＩツリー変更判定手段
１３９  ＰＣＩツリー管理情報
１４０  ＰＣＩツリー構成情報
３０１  ＣＰＵ
３０６１  ＰＣＩツリーＰＴ１
５０６２  ＰＣＩツリーＰＴ２
５０６３  ＰＣＩツリーＰＴ３
８０６        ＣＰＵ
１２０３、１９０１  ＢＭＣ
【図１】
0005154238.tif 000002
【図２】
0005154238.tif 000003
【図３】
0005154238.tif 000004
【図４】
0005154238.tif 000005
【図５】
0005154238.tif 000006
【図６】
0005154238.tif 000007
【図７】
0005154238.tif 000008
【図８】
0005154238.tif 000009
【図９】
0005154238.tif 000010
【図１０】
0005154238.tif 000011
【図１１】
0005154238.tif 000012
【図１２】
0005154238.tif 000013
【図１３】
0005154238.tif 000014
【図１４】
0005154238.tif 000015
【図１５】
0005154238.tif 000016
【図１６】
0005154238.tif 000017
【図１７】
0005154238.tif 000018
【図１８】
0005154238.tif 000019
【図１９】
0005154238.tif 000020
【図２０】
0005154238.tif 000021
【図２１】
0005154238.tif 000022
【図２２】
0005154238.tif 000023
【図２３】
0005154238.tif 000024
【図２４】
0005154238.tif 000025
【図２５】
0005154238.tif 000026
【図２６】
0005154238.tif 000027
【図２７】
0005154238.tif 000028
【図２８】
0005154238.tif 000029