(57)【要約】【課題】  本発明は、パーティション割り振り方法及びコンピュータシステムに関し、パーティションの割り振りの自由度とリソースの利用効率を向上可能とすることを目的とする。【解決手段】  複数のプロセッサボードと複数の入出力（Ｉ／Ｏ）ボードがアドレス及びデータクロスバを介して接続されたコンピュータシステムにおける、プロセッサボードの単位及びＩ／Ｏボード内のＩ／Ｏコントローラの単位でパーティションを割り振るパーティション割り振り方法において、各Ｉ／Ｏボード内の複数のＩ／Ｏポートがどのパーティションに所属するかを示す情報を、ソフトウェアにより当該Ｉ／Ｏボード内のレジスタ部に設定するように構成する。【選択図】  図５
2006260488.tif 000002
【特許請求の範囲】
【請求項１】
複数のプロセッサボードと複数の入出力（Ｉ／Ｏ）ボードがアドレス及びデータクロスバを介して接続されたコンピュータシステムにおいて、該プロセッサボードの単位及び該Ｉ／Ｏボード内のＩ／Ｏコントローラの単位でパーティションを割り振るパーティション割り振り方法であって、
各Ｉ／Ｏボード内の複数のＩ／Ｏポートがどのパーティションに所属するかを示す情報を、ソフトウェアにより当該Ｉ／Ｏボード内のレジスタ部に設定することを特徴とする、パーティション割り振り方法。
【請求項２】
該情報として、各Ｉ／Ｏポートが存在するＩ／Ｏボード内のパーティション所属単位のＩＤを該レジスタ部に設定することを特徴とする、請求項１記載のパーティション割り振り方法。
【請求項３】
該情報として、各Ｉ／Ｏポートが存在するＩ／Ｏボード内のどのＩ／Ｏコントローラに所属するかを示す所属情報を該レジスタ部に設定することを特徴とする、請求項１記載のパーティション割り振り方法。
【請求項４】
該ソフトウェアは、任意の１つのプロセッサボード内の複数のプロセッサのうち任意の１つのプロセッサが実行することを特徴とする、請求項１〜３のいずれか１項記載のパーティション割り振り方法。
【請求項５】
各々が複数のプロセッサを含む複数のプロセッサボードと、
各々が複数の入出力（Ｉ／Ｏ）コントローラ及び複数のＩ／Ｏポートを含む複数のＩ／Ｏボードと、
該複数のプロセッサボードと該複数のＩ／Ｏボードを接続するアドレス及びデータクロスバとを備え、
各Ｉ／Ｏボードは、当該Ｉ／Ｏボード内の複数のＩ／Ｏポートがどのパーティションに所属するかを示す情報がソフトウェアにより設定可能なレジスタ部を含むことを特徴とする、コンピュータシステム。
【請求項６】
該情報は、各Ｉ／Ｏポートが存在するＩ／Ｏボード内のどのＩ／Ｏコントローラに所属するかを示す所属情報であることを特徴とする、請求項５記載のコンピュータシステム。
【請求項７】
該ソフトウェアは、任意の１つのプロセッサボード内の任意の１つのプロセッサが実行することを特徴とする、請求項５又は６記載のコンピュータシステム。
【請求項８】
該レジスタ部は、当該Ｉ／Ｏボード内の各Ｉ／Ｏコントローラのデバイス番号を格納するデバイスレジスタと、当該Ｉ／Ｏボード内の各Ｉ／Ｏポートのアドレスの範囲を格納するアドレスレンジレジスタと、当該Ｉ／Ｏボード内の各Ｉ／Ｏポートに対する該情報が設定される所属情報レジスタとを含むことを特徴とする、請求項５〜７のいずれか１項記載のコンピュータシステム。
【請求項９】
当該Ｉ／Ｏボードは、任意の１つのプロセッサボードから当該Ｉ／Ｏボードに接続された所望のＩ／Ｏデバイス方向へのアクセスを指示するリクエストパケットを受信すると、該所属情報レジスタに設定されている情報に基づいて、該リクエストパケットのパーティションＩＤを該デバイスレジスタに格納されているＩ／Ｏコントローラのデバイス番号と比較すると共に、これと並行して、該リクエストパケットのアドレスと該アドレスレンジレジスタに格納されている各Ｉ／Ｏポートのアドレスの範囲とを比較することで、該リクエストパケットを比較の結果が一致するデバイス番号のＩ／Ｏコントローラに所属し、且つ、比較の結果が一致するアドレスのＩ／Ｏポートにのみ到達させてこのＩ／Ｏポートを介した該所望のＩ／Ｏデバイスへのアクセスを行うことを特徴とする、請求項８記載のコンピュータシステム。
【請求項１０】
当該Ｉ／Ｏボードは、当該Ｉ／Ｏボードに接続されたＩ／Ｏデバイスから所望のプロセッサボード方向へのアクセスを指示するリクエストを１つのＩ／Ｏポートを介して受信すると、該１つのＩ／Ｏポートが所属するＩ／Ｏコントローラのデバイス番号をパーティションＩＤに書き込んだリクエストパケットを、該アドレス及びデータクロスバを介して該所望のプロセッサボードへ送信することを特徴とする、請求項８記載のコンピュータシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パーティション割り振り方法及びコンピュータシステムに係り、特に複数のパーティションをコンピュータシステムの入出力（Ｉ／Ｏ）コントローラや入出力（Ｉ／Ｏ）ポートに割り振るパーティション割り振り方法及びそのようなパーティション割り振り方法を採用するコンピュータシステムに関する。
【背景技術】
【０００２】
図１は、一般的なコンピュータシステムの要部を示すブロック図である。図１の上部に示すように、コンピュータシステム１は、複数のプロセッサボード（プロセッサシステム）２−０〜２−Ｍ、アドレス及びデータクロスバ３及び複数のＩ／Ｏボード（ＬＳＩ）４−０〜４−Ｎからなる。ここで、Ｍ，Ｎはいずれも２以上の任意の整数である。各プロセッサボード２−０〜２−Ｍは、複数のＣＰＵ及びメモリ等を含む。例えば、プロセッサボード２−０〜２−ＰとＩ／Ｏボード４−０はパーティションＰ０を構成し、プロセッサボード２−Ｐ+１〜２−ＭとＩ／Ｏボード４−１〜４−ＮはパーティションＰ１を構成する。アドレス及びデータクロスバ３は、別体のアドレスクロスバとデータクロスバとで構成しても良い。
【０００３】
図１の下部は、アドレス及びデータクロスバ３及びＩ／Ｏボード４−０〜４−Ｎの部分１０をより詳細に示す。各Ｉ／Ｏボード４−０〜４−Ｎは、Ｉ／Ｏコントローラ４１Ａ，４１Ｂと、Ｉ／Ｏポート部４２と、レジスタ部４３を含む。レジスタ部４３は、そのレジスタ部４３が所属するＩ／Ｏボード内のＩ／Ｏコントローラ４１Ａ，４１Ｂのデバイス番号が格納されているデバイス番号レジスタと、そのレジスタ部４３が所属するＩ／Ｏボード内のＩ／Ｏポート部４２のアドレスの範囲が格納されているアドレスレンジレジスタとを含む。例えば、Ｉ／Ｏボード４−０内のＩ／Ｏコントローラ４１Ａ，４１Ｂのデバイス番号は夫々＃０、＃１であり、Ｉ／Ｏボード４−１内のＩ／Ｏコントローラ４１Ａ，４１Ｂのデバイス番号は夫々＃２、＃３であり、Ｉ／Ｏボード４−Ｎ内のＩ／Ｏコントローラ４１Ａ，４１Ｂのデバイス番号は夫々＃２Ｎ、＃２Ｎ+１である。
【０００４】
図２は、Ｉ／ＯボードのＩ／Ｏポート部を示す図である。各Ｉ／Ｏボード４−０〜４−Ｎの構成は同じであるため、図２には一例としてＩ／Ｏボード４−０の構成を示す。Ｉ／Ｏボード４−０のＩ／Ｏポート部４２は、例えば８個のＩ／Ｏポート４２−０〜４２−７を有する。従来、Ｉ／Ｏポート４２−０〜４２−７がＩ／Ｏコントローラ４１Ａ，４１Ｂのどちらに所属するかは、固定的に決められている。図２に示す例では、Ｉ／Ｏポート４２−０〜４２−３がＩ／Ｏコントローラ４１Ａに所属し、Ｉ／Ｏポート４２−４〜４２−７がＩ／Ｏコントローラ４１Ｂに所属する。各Ｉ／Ｏポート４２−０〜４２−７には、磁気ディスク装置等の各種Ｉ／Ｏデバイスが接続可能である。尚、パーティションはプロセッサボードの単位及びＩ／Ｏコントローラの単位で決定できるので、例えばＩ／Ｏコントローラ４１ＡをパーティションＰ３に含め、Ｉ／Ｏコントローラ４１ＢをパーティションＰ４に含めるといった構成にすることも可能である。しかし、Ｉ／Ｏポート４２−０〜４２−７がＩ／Ｏコントローラ４１Ａ，４１Ｂのどちらに所属するかは、予め固定的に決められているので、この場合、Ｉ／Ｏポート４２−０〜４２−３がパーティションＰ３含まれ、Ｉ／Ｏポート４２−４〜４２−７がパーティションＰ４に含まれることになる。
【０００５】
図３は、プロセッサボードからＩ／Ｏデバイス方向へのアクセスを説明する図である。同図中、三角形で示す回路は、２つの入力が一致すると「１」を出力し、不一致であると「０」を出力する比較器であり、ＡＮＤで示すゲートはアンドゲートであるものとする。又、Ｉ／Ｏボード４−０内で各ステップＳ１〜Ｓ４に関わる部分を夫々一点鎖線で囲んで示す。
【０００６】
例えば、プロセッサボード２−０からＩ／Ｏデバイス方向へのアクセスの場合、Ｉ／Ｏボード４−０にリクエストパケットが送信される（ステップＳ１）。リクエストパケットは、パーティションＩＤ（ＰＩＤ）と、リクエスト対象の物理アドレス、アドレス空間（又は、アドレスレンジ）、Ｉ／Ｏアドレス等のアドレス（Address）と、コマンドやデータを含むリクエストの内容（Request）とから構成されている。Ｉ／Ｏボード４−０では、リクエストパケットのＰＩＤをＩ／Ｏボード４−０内のレジスタ部４３のデバイスレジスタ４３１に格納されているＩ／Ｏボード４−０内のＩ／Ｏコントローラ４１Ａ，４１Ｂのデバイス番号＃０，＃１と比較し（ステップＳ２）、これと並行して、リクエストパケットのアドレスとレジスタ部４３のアドレスレンジレジスタ４３２に格納されている各Ｉ／Ｏポート４２−０〜４２−７のアドレスの範囲とを比較する（ステップＳ３）。リクエストパケットは、上記ステップＳ２の比較の結果一致するデバイス番号のＩ／Ｏコントローラに所属し、且つ、上記ステップＳ３の比較の結果一致するアドレスのＩ／Ｏポートにのみ到達し（ステップＳ４）、このＩ／Ｏポートを介して所望のＩ／Ｏデバイスへのアクセスが行われる。
【０００７】
図４は、Ｉ／Ｏデバイスからプロセッサボード方向へのアクセスを説明する図である。Ｉ／Ｏデバイスから例えばプロセッサボード２−０方向へのアクセスの場合、Ｉ／ＯポートがＩ／Ｏデバイスから受信したアドレス（Address）及びリクエストの内容（Request）からなるリクエストに基づいて、このＩ／Ｏポートが所属するＩ／Ｏコントローラのデバイス番号をＰＩＤに書き込んだリクエストパケットを、アドレス及びデータクロスバ３を介してプロセッサボード２−０へ送信する。例えば、Ｉ／Ｏボード４−０のＩ／Ｏポート４２−０〜４２−３のいずれかがＩ／Ｏデバイスからリクエストを受信すると、Ｉ／Ｏボード４−０のコントローラ４１Ａのデバイス番号＃０がＰＩＤに書き込まれたリクエストパケットが送信される。又、Ｉ／Ｏボード４−０のＩ／Ｏポート４２−４〜４２−７のいずれかがＩ／Ｏデバイスからリクエストを受信すると、Ｉ／Ｏボード４−０のコントローラ４１Ｂのデバイス番号＃１がＰＩＤに書き込まれたリクエストパケットが送信される。
【０００８】
尚、特許文献１には、クロスバスイッチをパーティションに分割する方法が記載されている。又、特許文献２には、外部バスを介してやり取りされるデータに応じて外部バスとの接続の対応関係を変更可能なバス接続コントローラが記載されている。
【特許文献１】特開平９−２３１１８７号公報
【特許文献２】特開２００１−２３６３０５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
従来のコンピュータシステムでは、各Ｉ／Ｏボード４−０〜４−Ｎにおいて、Ｉ／Ｏポート４２−０〜４２−７がＩ／Ｏコントローラ４１Ａ，４１Ｂのどちらに所属するかは、予め固定的に決められている。このため、パーティションはＩ／Ｏコントローラ４１Ａ，４１Ｂの単位で決定できるものの、各Ｉ／Ｏボード４−０〜４−ＮのＩ／Ｏポート４２−０〜４２−７はＩ／Ｏコントローラ４１Ａ，４１Ｂに対して固定的に割り当てられているため、たとえ利用可能であっても、例えばＩ／Ｏコントローラ４１Ａに対して割り当てられている各Ｉ／Ｏポート４２−０〜４２−３をＩ／Ｏコントローラ４１Ｂが所属するパーティションに自由に割り当てることはできない。このため、パーティションの割り振りの自由度が低く、リソースの利用効率を向上することは難しいという問題があった。
【００１０】
そこで、本発明は、パーティションの割り振りの自由度とリソースの利用効率を向上可能なパーティション割り振り方法及びコンピュータシステムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記の課題は、複数のプロセッサボードと複数の入出力（Ｉ／Ｏ）ボードがアドレス及びデータクロスバを介して接続されたコンピュータシステムにおいて、該プロセッサボードの単位及び該Ｉ／Ｏボード内のＩ／Ｏコントローラの単位でパーティションを割り振るパーティション割り振り方法であって、各Ｉ／Ｏボード内の複数のＩ／Ｏポートがどのパーティションに所属するかを示す情報を、ソフトウェアにより当該Ｉ／Ｏボード内のレジスタ部に設定することを特徴とするパーティション割り振り方法によって達成できる。
【００１２】
上記の課題は、各々が複数のプロセッサを含む複数のプロセッサボードと、各々が複数の入出力（Ｉ／Ｏ）コントローラ及び複数のＩ／Ｏポートを含む複数のＩ／Ｏボードと、該複数のプロセッサボードと該複数のＩ／Ｏボードを接続するアドレス及びデータクロスバとを備え、各Ｉ／Ｏボードは、当該Ｉ／Ｏボード内の複数のＩ／Ｏポートがどのパーティションに所属するかを示す情報がソフトウェアにより設定可能なレジスタ部を含むことを特徴とするコンピュータシステムによっても達成できる。
【発明の効果】
【００１３】
本発明によれば、パーティションの割り振りの自由度とリソースの利用効率を向上可能なパーティション割り振り方法及びコンピュータシステムを実現することができる。
【発明を実施するための最良の形態】
【００１４】
以下に、本発明になるパーティション割り振り方法及びコンピュータシステムの各実施例を、図５以降と共に説明する。
【実施例】
【００１５】
本発明になるコンピュータシステムの一実施例の基本構成は、図１に示す従来例の基本構成と同様であるため、その図示及び説明は省略する。コンピュータシステムの本実施例は、Ｉ／Ｏボードの構成に特徴がある。図５は、本実施例におけるＩ／ＯボードのＩ／Ｏポート部を示す図である。図５中、図１及び図２と実質的に同じ部分には同一符号を付す。コンピュータシステムの本実施例は、本発明になるパーティション割り振り方法の一実施例を採用する。
【００１６】
各Ｉ／Ｏボード４−０〜４−Ｎの構成は同じであるため、図５には一例としてＩ／Ｏボード４−０の構成を示す。Ｉ／Ｏボード４−０のＩ／Ｏポート部４２は、例えば８個のＩ／Ｏポート４２−０〜４２−７を有する。従来、Ｉ／Ｏポート４２−０〜４２−７がＩ／Ｏコントローラ４１Ａ，４１Ｂのどちらに所属するかは、固定的に決められているが、本実施例では、各Ｉ／Ｏポート４２−０〜４２−７がＩ／Ｏコントローラ４１Ａ，４１Ｂのどちらに所属するかを示すＩ／Ｏポートの所属情報をソフトウェア、即ち、例えばプロセッサボード２−０内のＣＰＵから任意に設定可能である。図５に示す例では、Ｉ／Ｏポート４２−０、４２−１、４２−５、４２−７がＩ／Ｏコントローラ４１Ａに所属し、Ｉ／Ｏポート４２−２、４２−３、４２−４、４２−６がＩ／Ｏコントローラ４１Ｂに所属するような設定がなされている。各Ｉ／Ｏポート４２−０〜４２−７には、磁気ディスク装置等の各種Ｉ／Ｏデバイスが接続可能である。尚、パーティションはプロセッサボードの単位及びＩ／Ｏコントローラの単位で決定できるので、例えばＩ／Ｏコントローラ４１ＡをパーティションＰ３に含め、Ｉ／Ｏコントローラ４１ＢをパーティションＰ４に含めるといった構成にすることも可能である。
【００１７】
尚、本実施例では、所属情報、パーティションＩＤ（ＰＩＤ）やコンフィギュレーションアドレス等の構成情報を管理するプロセッサボード以外のプロセッサボードからは、直接Ｉ／Ｏポートの所属情報を変更することはできない。又、プロセッサボードとＩ／Ｏボードでパーティションを構成するか否かを設定する専用のプロセッサボードを設け、この専用のプロセッサボードで上記構成情報を管理して所属情報を設定するソフトウェアを実行するようにしても良い。このような専用のプロセッサボードは、他のプロセッサボードと間接的には通信可能である。
【００１８】
各Ｉ／Ｏボード４−０〜４−Ｎは、図１に示したように、Ｉ／Ｏコントローラ４１Ａ，４１Ｂと、Ｉ／Ｏポート部４２と、レジスタ部４３を含む。レジスタ部４３は、そのレジスタ部４３が所属するＩ／Ｏボード内のＩ／Ｏコントローラ４１Ａ，４１Ｂのデバイス番号が格納されているデバイス番号レジスタ４３１と、そのレジスタ部４３が所属するＩ／Ｏボード内のＩ／Ｏポート部４２のアドレスの範囲が格納されているアドレスレンジレジスタ４３２と、各Ｉ／Ｏポート４２−０〜４２−７がＩ／Ｏコントローラ４１Ａに所属するかＩ／Ｏコントローラ４１Ｂに所属するかを示す所属情報がソフトウェアにより設定される所属情報レジスタ４３３とを含む。
【００１９】
図６は、プロセッサボードからＩ／Ｏデバイス方向へのアクセスを説明する図である。同図中、三角形で示す回路は、２つの入力が一致すると「１」を出力し、不一致であると「０」を出力する比較器であり、ＡＮＤで示すゲートはアンドゲートであり、ＯＲで示すゲートはオアゲートであるものとする。又、Ｉ／Ｏボード４−０内で各ステップＳ１１〜Ｓ１４に関わる部分を夫々一点鎖線で囲んで示す。
【００２０】
例えば、プロセッサボード２−０からＩ／Ｏデバイス方向へのアクセスの場合、Ｉ／Ｏボード４−０にリクエストパケットが送信される（ステップＳ１１）。リクエストパケットは、パーティションＩＤ（ＰＩＤ）と、リクエスト対象の物理アドレス、アドレス空間（又は、アドレスレンジ）、Ｉ／Ｏアドレス等のアドレス（Address）と、コマンドやデータを含むリクエストの内容（Request）とから構成されている。Ｉ／Ｏボード４−０では、Ｉ／Ｏボード４−０内のレジスタ部４３の所属情報レジスタ４３３に設定されている所属情報に基づいて、リクエストパケットのＰＩＤを、Ｉ／Ｏコントローラ４１Ａに所属しているＩ／ＯポートについてはＩ／Ｏボード４−０内のレジスタ部４３のデバイスレジスタ４３１に格納されているＩ／Ｏコントローラ４１Ａのデバイス番号＃０と比較すると共に、Ｉ／Ｏコントローラ４１Ｂに所属しているＩ／ＯポートについてはＩ／Ｏボード４−０内のレジスタ部４３のデバイスレジスタ４３１に格納されているＩ／Ｏコントローラ４１Ｂのデバイス番号＃１と比較する（ステップＳ１２）。図６に示す回路４５−０〜４５−７は、上記ステップＳ１２を実行するためにＩ／Ｏポート４２−０〜４２−７に対応させて設けられており、いずれもインバータ４２１とアンドゲート４２２，４２３とオアゲート４２４とからなる同じ構成を有する。又、ステップＳ１２と並行して、リクエストパケットのアドレスとレジスタ部４３のアドレスレンジレジスタ４３２に格納されている各Ｉ／Ｏポート４２−０〜４２−７のアドレスの範囲とを比較する（ステップＳ１３）。リクエストパケットは、上記ステップＳ１２の比較の結果一致するデバイス番号のＩ／Ｏコントローラに所属し、且つ、上記ステップＳ１３の比較の結果一致するアドレスのＩ／Ｏポートにのみ到達し（ステップＳ１４）、このＩ／Ｏポートを介して所望のＩ／Ｏデバイスへのアクセスが行われる。
【００２１】
図７は、Ｉ／Ｏデバイスからプロセッサボード方向へのアクセスを説明する図である。Ｉ／Ｏデバイスから例えばプロセッサボード２−０方向へのアクセスの場合、Ｉ／ＯポートがＩ／Ｏデバイスから受信したアドレス（Address）及びリクエストの内容（Request）からなるリクエストに基づいて、このＩ／Ｏポートが所属するＩ／Ｏコントローラのデバイス番号をＰＩＤに書き込んだリクエストパケットを、アドレス及びデータクロスバ３を介してプロセッサボード２−０へ送信する。例えば、Ｉ／Ｏボード４−０のＩ／Ｏポート４２−０，４２−１，４２−５，４２−７のいずれかがＩ／Ｏデバイスからリクエストを受信すると、Ｉ／Ｏボード４−０内のレジスタ部４３の所属情報レジスタ４３３に設定されている所属情報に基づいて、Ｉ／Ｏボード４−０内のレジスタ部４３のデバイスレジスタ４３１に格納されている各Ｉ／Ｏポート４２−０，４２−１，４２−５，４２−７が所属しているＩ／Ｏコントローラ４１Ａのデバイス番号＃０がＰＩＤに書き込まれたリクエストパケットが送信される。又、Ｉ／Ｏボード４−０のＩ／Ｏポート４２−２，４２−３，４２−４，４２−６のいずれかがＩ／Ｏデバイスからリクエストを受信すると、Ｉ／Ｏボード４−０内のレジスタ部４３の所属情報レジスタ４３３に設定されている所属情報に基づいて、Ｉ／Ｏボード４−０内のレジスタ部４３のデバイスレジスタ４３１に格納されている各Ｉ／Ｏポート４２−２，４２−３，４２−４，４２−６が所属しているＩ／Ｏコントローラ４１Ｂのデバイス番号＃１がＰＩＤに書き込まれたリクエストパケットが送信される。図７に示す回路４６−０〜４６−７は、上記の如きリクエストパケットを送信するためにＩ／Ｏポート４２−０〜４２−７に対応させて設けられており、いずれもインバータ４２６とアンドゲート４２７，４２８とオアゲート４２９とからなる同じ構成を有する。
【００２２】
図８は、任意の１つのＰＣＩバスコンフィギュレーション空間でのファンクション番号Ｆ＃０〜Ｆ＃７の割り付けを示す図である。同図に示すように、各ＰＣＩバス番号０〜２５５に対して、各デバイス番号Ｄ＃０〜Ｄ＃３１のファンクション番号Ｆ＃０〜Ｆ＃７が割り付けられている。例えば、ＰＣＩバス番号０のデバイス番号Ｄ＃０に対しては、ファンクション番号Ｆ＃０〜Ｆ＃７にＩ／Ｏボード＃０（４−０）のＩ／Ｏコントローラ＃Ａ（４１Ａ）が割り付けられている。又、ＰＣＩバス番号０のデバイス番号Ｄ＃１に対しては、ファンクション番号Ｆ＃０〜Ｆ＃７にＩ／Ｏボード＃０（４−０）のＩ／Ｏコントローラ＃Ｂ（４１Ｂ）が割り付けられている。更に、ＰＣＩバス番号０のデバイス番号Ｄ＃２に対しては、ファンクション番号Ｆ＃０〜Ｆ＃７にＩ／Ｏボード＃１（４−１）のＩ／Ｏコントローラ＃Ａ（４１Ａ）が割り付けられている。このようなファンクション番号Ｆ＃０〜Ｆ＃７の割り付けは、各ＰＣＩバスコンフィギュレーション空間、即ち、各パーティションに対してなされている。
【００２３】
図９は、各Ｉ／Ｏボード＃０〜＃Ｎ（４−０〜４−Ｎ）内の２つのＩ／Ｏコントローラ＃Ａ，＃Ｂ（４１Ａ，４１Ｂ）に所属するＩ／Ｏポート＃０〜＃７（４２−０〜４２−７）の割り付けを示す図である。同図に示すように、Ｉ／Ｏポート４２−０〜４２−７がＩ／Ｏコントローラ４１Ａに所属するようにファンクション番号Ｆ＃０〜Ｆ＃７に割り付けることが可能であり、Ｉ／Ｏポート４２−０〜４２−７がＩ／Ｏコントローラ４１Ｂに所属するようにファンクション番号Ｆ＃０〜Ｆ＃７に割り付けることも可能である。
【００２４】
図１０は、Ｉ／Ｏボード＃０（４−０）のＩ／Ｏポート＃０、＃１、＃５、＃７（４２−０，４２−１，４２−５，４２−７）がＩ／Ｏコントローラ＃Ａ（４１Ａ）に所属し、且つ、同じＩ／Ｏボード＃０（４−０）のＩ／Ｏポート＃２、＃３、＃４、＃６（４２−２，４２−３，４２−４，４２−６）がＩ／Ｏコントローラ＃Ｂ（４１Ｂ）に所属する場合のファンクション番号Ｆ＃０〜Ｆ＃７の割り付けを示す図である。同図では、説明の便宜上、Ｉ／Ｏボード４−０のＩ／Ｏコントローラ４１Ａ，４１Ｂが同じパーティションに所属しているものとする。Ｉ／Ｏボード４−０のＩ／Ｏコントローラ４１Ａ，４１Ｂが互いに異なるパーティションに所属する場合には、同図に破線で囲んだ２つの情報群が、対応するＰＣＩバスコンフィギュレーション空間、即ち、対応するパーティションでファンクション番号Ｆ＃０〜Ｆ＃７に割り付けられる。
【００２５】
従って、各Ｉ／Ｏボード内のレジスタ部４３の所属情報レジスタ４３３には、Ｉ／ＯポートのＰＣＩバスコンフィギュレーション空間におけるアドレス（ＰＣＩバス番号、デバイス番号及びファンクション番号）をＩ／Ｏポート毎に設定することなく、各Ｉ／Ｏポートが存在するＩ／Ｏボード（ＬＳＩ）内のパーティション所属単位のＩＤを設定するだけで、即ち、各Ｉ／ＯポートがＩ／Ｏコントローラ４１Ａ，４１Ｂのどちらに所属するかを示す所属情報を設定するだけで良い。
【００２６】
このように、本実施例によれば、各Ｉ／Ｏボード４−０〜４−Ｎにおいて、Ｉ／Ｏポート４２−０〜４２−７がＩ／Ｏコントローラ４１Ａ，４１Ｂのどちらに所属するかを示す所属情報を任意に設定可能である。このため、パーティションはＩ／Ｏコントローラ４１Ａ，４１Ｂの単位で決定できるので、各Ｉ／Ｏボード４−０〜４−ＮのＩ／Ｏポート４２−０〜４２−７を用途に応じてＩ／Ｏコントローラ４１Ａ，４１Ｂに対して柔軟に割り当てることで、パーティションの割り振りの自由度が向上し、リソースの利用効率を向上することができる。又、所属情報は、ハードウェアによる切り替えではなくソフトウェアで設定される。
【産業上の利用可能性】
【００２７】
本発明は、Ｉ／ＯコントローラやＩ／Ｏポートを複数のパーティションに割り振るコンピュータシステムに好適である。
【００２８】
尚、本発明は、以下に付記する発明をも包含するものである。
（付記１）  複数のプロセッサボードと複数の入出力（Ｉ／Ｏ）ボードがアドレス及びデータクロスバを介して接続されたコンピュータシステムにおいて、該プロセッサボードの単位及び該Ｉ／Ｏボード内のＩ／Ｏコントローラの単位でパーティションを割り振るパーティション割り振り方法であって、
各Ｉ／Ｏボード内の複数のＩ／Ｏポートがどのパーティションに所属するかを示す情報を、ソフトウェアにより当該Ｉ／Ｏボード内のレジスタ部に設定することを特徴とする、パーティション割り振り方法。
（付記２）  該情報として、各Ｉ／Ｏポートが存在するＩ／Ｏボード内のパーティション所属単位のＩＤを該レジスタ部に設定することを特徴とする、付記１記載のパーティション割り振り方法。
（付記３）  該情報として、各Ｉ／Ｏポートが存在するＩ／Ｏボード内のどのＩ／Ｏコントローラに所属するかを示す所属情報を該レジスタ部に設定することを特徴とする、付記１記載のパーティション割り振り方法。
（付記４）  該ソフトウェアは、任意の１つのプロセッサボード内の複数のプロセッサのうち任意の１つのプロセッサが実行することを特徴とする、付記１〜３のいずれか１項記載のパーティション割り振り方法。
（付記５）  各々が複数のプロセッサを含む複数のプロセッサボードと、
各々が複数の入出力（Ｉ／Ｏ）コントローラ及び複数のＩ／Ｏポートを含む複数のＩ／Ｏボードと、
該複数のプロセッサボードと該複数のＩ／Ｏボードを接続するアドレス及びデータクロスバとを備え、
各Ｉ／Ｏボードは、当該Ｉ／Ｏボード内の複数のＩ／Ｏポートがどのパーティションに所属するかを示す情報がソフトウェアにより設定可能なレジスタ部を含むことを特徴とする、コンピュータシステム。
（付記６）  該情報は、各Ｉ／Ｏポートが存在するＩ／Ｏボード内のパーティション所属単位のＩＤであることを特徴とする、付記５記載のコンピュータシステム。
（付記７）  該情報は、各Ｉ／Ｏポートが存在するＩ／Ｏボード内のどのＩ／Ｏコントローラに所属するかを示す所属情報であることを特徴とする、付記５記載のコンピュータシステム。
（付記８）  該ソフトウェアは、任意の１つのプロセッサボード内の任意の１つのプロセッサが実行することを特徴とする、付記５〜７のいずれか１項記載のコンピュータシステム。
（付記９）  該レジスタ部は、当該Ｉ／Ｏボード内の各Ｉ／Ｏコントローラのデバイス番号を格納するデバイスレジスタと、当該Ｉ／Ｏボード内の各Ｉ／Ｏポートのアドレスの範囲を格納するアドレスレンジレジスタと、当該Ｉ／Ｏボード内の各Ｉ／Ｏポートに対する該情報が設定される所属情報レジスタとを含むことを特徴とする、付記５〜８のいずれか１項記載のコンピュータシステム。
（付記１０）  当該Ｉ／Ｏボードは、任意の１つのプロセッサボードから当該Ｉ／Ｏボードに接続された所望のＩ／Ｏデバイス方向へのアクセスを指示するリクエストパケットを受信すると、該所属情報レジスタに設定されている情報に基づいて、該リクエストパケットのパーティションＩＤを該デバイスレジスタに格納されているＩ／Ｏコントローラのデバイス番号と比較すると共に、これと並行して、該リクエストパケットのアドレスと該アドレスレンジレジスタに格納されている各Ｉ／Ｏポートのアドレスの範囲とを比較することで、該リクエストパケットを比較の結果が一致するデバイス番号のＩ／Ｏコントローラに所属し、且つ、比較の結果が一致するアドレスのＩ／Ｏポートにのみ到達させてこのＩ／Ｏポートを介した該所望のＩ／Ｏデバイスへのアクセスを行うことを特徴とする、付記９記載のコンピュータシステム。
（付記１１）  当該Ｉ／Ｏボードは、当該Ｉ／Ｏボードに接続されたＩ／Ｏデバイスから所望のプロセッサボード方向へのアクセスを指示するリクエストを１つのＩ／Ｏポートを介して受信すると、該１つのＩ／Ｏポートが所属するＩ／Ｏコントローラのデバイス番号をパーティションＩＤに書き込んだリクエストパケットを、該アドレス及びデータクロスバを介して該所望のプロセッサボードへ送信することを特徴とする、付記９記載のコンピュータシステム。
（付記１２）  当該Ｉ／Ｏボードは、該リクエストを受信すると、該所属情報レジスタに設定されている情報に基づいて、該デバイスレジスタに格納されている該１つのＩ／Ｏポートが所属しているＩ／Ｏコントローラのデバイス番号をパーティションＩＤに書き込んだリクエストパケットを生成することを特徴とする、付記１１記載のコンピュータシステム。
【００２９】
以上、本発明を実施例により説明したが、本発明は上記実施例に限定されるものではなく、種々の変形及び改良が可能であることは、言うまでもない。
【図面の簡単な説明】
【００３０】
【図１】一般的なコンピュータシステムを要部を示すブロック図である。
【図２】Ｉ／ＯボードのＩ／Ｏポート部を示す図である。
【図３】プロセッサボードからＩ／Ｏデバイス方向へのアクセスを説明する図である。
【図４】Ｉ／Ｏデバイスからプロセッサボード方向へのアクセスを説明する図である。
【図５】本発明になるコンピュータシステムの一実施例におけるＩ／ＯボードのＩ／Ｏポート部を示す図である。
【図６】プロセッサボードからＩ／Ｏデバイス方向へのアクセスを説明する図である。
【図７】Ｉ／Ｏデバイスからプロセッサボード方向へのアクセスを説明する図である。
【図８】任意のＰＣＩバスコンフィギュレーション空間でのファンクションＦ＃０〜Ｆ＃７の割り付けを示す図である。
【図９】各Ｉ／Ｏボード内の２つのＩ／Ｏコントローラに所属するＩ／Ｏポートの割り付けを示す図である。
【図１０】Ｉ／Ｏボードの特定のＩ／Ｏポートが一方のＩ／Ｏコントローラに所属し、且つ、同じＩ／Ｏボードの他のＩ／Ｏポートが他方のＩ／Ｏコントローラに所属する場合のファンクションの割り付けを示す図である。
【符号の説明】
【００３１】
１      コンピュータシステム
２−０〜２−Ｍ      プロセッサボード
３      アドレス及びデータクロスバ
４−０〜４−Ｎ      Ｉ／Ｏボード
４１Ａ，４１Ｂ      Ｉ／Ｏコントローラ
４２      Ｉ／Ｏポート部
４２−０〜４２−７      Ｉ／Ｏポート
４３      レジスタ部
４３１      デバイスレジスタ
４３２      アドレスレンジレジスタ
４３３      所属情報レジスタ
【図１】
2006260488.tif 000003
【図２】
2006260488.tif 000004
【図３】
2006260488.tif 000005
【図４】
2006260488.tif 000006
【図５】
2006260488.tif 000007
【図６】
2006260488.tif 000008
【図７】
2006260488.tif 000009
【図８】
2006260488.tif 000010
【図９】
2006260488.tif 000011
【図１０】
2006260488.tif 000012