(57)【要約】【課題】  従来のＩ／Ｏカードを論理区画で共有する方式では、ＨＷやドライバ制御に論理区画ＩＤを付加して制御しておりオーバーヘッドが生じていた。又、Ｉ／Ｏカードを共有する場合、専用ＨＷや専用ドライバとする必要があった。【解決手段】共有Ｉ／Ｏカード２９−２と論理区画＃１、＃２のＩＯＰ２１、２２とＩ／Ｏカード２９−２及びこれに接続されたＤＩＳＫアレイ３を制御するＦＷ２０４、２０５とを備え、ＤＩＳＫアレイ３側の複数の論理チャネルを分割し各論理区画に割り当て、各論理区画毎に、Ｉ／Ｏカード２９−２の識別情報と対応ドライバ２０３の名称と、物理チャネル対応のＰＣモジュール名と、割り当てられた論理チャネル対応のＬＣモジュール名を示すＩ／Ｏパス情報を記憶し、ＩＯＰ２１、２２はＩ／Ｏパス情報を参照しＦＷ２０４、２０５とドライバ２０３の初期起動時にモジュール間の通信パスを設定しておく。【選択図】      図１
2008033449.tif 000002
【特許請求の範囲】
【請求項１】
処理装置を含む複数の論理区画が、外部記憶装置を接続した入出力転送装置を共有する方式であって、
それぞれに前記外部記憶装置の記憶域を排他的に分割した論理デバイスが接続された複数の論理チャネルの前記各論理区画への割り当てを識別する情報と前記入出力転送装置を識別する情報とを記憶する共有記憶部を備え、
前記各論理区画の処理装置が前記割り当てられた論理チャネルを通じて前記論理デバイスにアクセスすることを特徴とする入出力転送装置の共有方式。
【請求項２】
前記各論理区画に、前記処理装置に実行させ、前記入出力転送装置や前記外部記憶装置を制御するファームウェアを備え、
前記ファームウェアが、各処理装置と前記入出力転送装置の組である物理チャネルに対応した第１のモジュールと、前記論理チャネルに対応した複数の第２のモジュールを含み、前記共有記憶部には、前記各論理区画の識別に対応して、前記第１のモジュール識別情報と割り当てられた論理チャネルに対応した前記第２のモジュールの識別情報と前記入出力装置の実装スロット識別情報と前記入出力転送装置を制御する共通のドライバの識別情報を含むＩ／Ｏパス情報を記憶し、
前記処理装置が、前記ファームウェア及び前記ドライバを初期起動する際に前記Ｉ／Ｏパス情報を参照し、前記第１のモジュールと前記第２のモジュール間、前記第２のモジュールと前記ドライバ間にそれぞれモジュール間通信パスを事前に設定する手段を備え、
前記第１のモジュールが、前記物理チャネルを指定した前記論理デバイスへのＩ／Ｏ要求に呼応して、前記通信パスを使用し、宛先の論理デバイスに対応した論理チャネル対応の前記第２のモジュールと前記ドライバを通じ前記割り当てられた論理チャネルにＩ／Ｏを指示することを特徴とする請求項１に記載の入出力転送装置の共有方式。
【請求項３】
前記ファームウェアが、論理区画が占有する論理デバイスの初期化要求を受けると、対応する前記第１のモジュールが、対象の全ての論理デバイスに対応した論理チャネル対応の前記第２のモジュールと前記ドライバを通じ論理チャネルに論理デバイスの初期化を指示する手段と、初期化できた論理デバイスを占有デバイス情報記憶部に記憶する手段を有することを特徴とする請求項２記載の入出力転送装置の共有方式。
【請求項４】
前記ファームウェアが、前記物理チャネルを指定したリセット指示を受けると、前記物理チャネルに属する論理チャネルの内、前記占有デバイス情報記憶部に論理デバイスが記憶された論理チャネルを通じ、占有した論理デバイスのみをリセットする手段を有することを特徴とする請求項３に記載の入出力転送装置の共有方式。
【請求項５】
前記処理装置をＩ／Ｏ要求するホスト側の処理装置とは別の入出力処理装置とすることを特徴とする請求項１乃至４の何れかに記載の入出力転送装置の共有方式。
【請求項６】
処理装置を含む複数の論理区画が、外部記憶装置を接続した入出力転送装置を共有する方法であって、
それぞれに前記外部記憶装置の記憶域を排他的に分割した論理デバイスが接続された複数の論理チャネルの前記各論理区画への割り当てを識別する情報と前記入出力転送装置を識別する情報とを共有記憶部に記憶する手順と、
前記各論理区画が前記割り当てられた論理チャネルを通じて前記論理デバイスにアクセスする手順を有することを特徴とする入出力転送装置の共有方法。
【請求項７】
前記各論理区画に、前記入出力転送装置や前記外部記憶装置を制御するファームウェア手順を有し、
前記ファームウェア手順が、前記処理装置と前記入出力転送装置の組である物理チャネルに対応した第１の手順と、前記論理チャネルに対応した複数の第２の手順を含み、
前記記憶する手順を、前記各論理区画の識別に対応して、前記第１の手順の識別情報と割り当てられた論理チャネルに対応した前記第２の手順の識別情報と前記入出力転送装置の実装スロット識別情報と前記入出力転送装置を制御する共通のドライバ手順の識別情報を含むＩ／Ｏパス情報を記憶する手順とし、
前記各論理区画に、前記ファームウェア手順及び前記ドライバ手順を初期起動する際に前記Ｉ／Ｏパス情報を参照し、前記第１の手順と前記複数の第２の手順間、及び前記第２の手順と前記ドライバ手順間にそれぞれ通信パスを事前に設定する手順を有し、
前記第１の手順は、前記物理チャネルを指定した前記論理デバイスへのＩ／Ｏ要求に呼応して、前記通信パスを使用し、宛先の論理デバイスに対応した論理チャネル対応の前記第２の手順と前記ドライバ手順とを通じ前記割り当てられた論理チャネルにＩ／Ｏを指示することを特徴とする請求項６に記載の入出力転送装置の共有方法。
【請求項８】
前記ファームウェア手順が、論理区画が占有する論理デバイスの初期化要求を受けると、対応する前記第１のモジュールが、対象の全ての論理デバイスに対応した論理チャネル対応の前記第２の手順と前記ドライバ手順を通じ対応論理チャネルに論理デバイスの初期化を指示する手順と、初期化できた論理デバイスを占有デバイス情報記憶部に記憶する手順を有することを特徴とする請求項７記載の入出力転送装置の共有方法。
【請求項９】
前記ファームウェア手順が、前記物理チャネルを指定したリセット指示を受けると、前記物理チャネルに属する論理チャネルの内、前記占有デバイス情報記憶部に論理デバイスが記憶された論理チャネルを通じ、占有した論理デバイスのみをリセットする手順を有することを特徴とする請求項８に記載の入出力転送装置の共有方法。
【請求項１０】
処理装置を含む複数の論理区画で共有する入出力転送装置に接続された外部記憶装置の記憶域を排他的に分割した論理デバイスがそれぞれに接続された、複数の論理チャネルの前記各論理区画への割り当てを識別する情報と前記入出力転送装置を識別する情報とを共有記憶部に記憶する手順と、
前記各論理区画が前記割り当てられた論理チャネルを通じて前記論理デバイスにアクセスする手順とを、
各論理区画の処理装置に実行させるためのプログラム。
【請求項１１】
請求項１０に記載のプログラムであって、
前記入出力転送装置や前記外部記憶装置を制御する手順であって、前記処理装置と前記入出力転送装置の組である物理チャネルに対応した第１の手順と、
前記制御する手順であって、前記論理チャネルに対応した複数の第２の手順と、
前記入出力転送装置を制御するドライバ手順と、
前記各論理区画の識別に対応して、前記第１の手順の識別情報と割り当てられた論理チャネルに対応した前記第２の手順の識別情報と前記入出力転送装置の実装スロット識別情報と前記入出力転送装置を制御する共通のドライバ手順の識別情報を含むＩ／Ｏパス情報を記憶する手順と、
前記制御する手順及び前記ドライバ手順を初期起動する際に前記Ｉ／Ｏパス情報を参照し、前記第１の手順と前記第２の手順間、前記第２の手順と前記ドライバ手順間にそれぞれ通信パスを事前に設定する手順と、
前記物理チャネルを指定した前記論理デバイスへのＩ／Ｏ要求に呼応して、前記通信パスを使用し、宛先の論理デバイスに対応した論理チャネル対応の前記第２の手順と前記ドライバ手順とを通じ前記割り当てられた論理チャネルにＩ／Ｏを指示する手順とを、
各論理区画の処理装置に実行させるためのプログラム。
【請求項１２】
請求項１１に記載のプログラムであって、
自論理区画が占有する論理デバイスの初期化要求を受けると、対象の全ての論理デバイスに対応した論理チャネル対応の前記第２の手順に論理デバイスの初期化を指示し、初期化できた論理デバイスを占有デバイス情報記憶部に記憶する前記第１の手順と、
前記ドライバ手順を通じ対応論理チャネルに論理デバイスの初期化を指示する前記第２の手順とを、
各論理区画の処理装置に実行させるためのプログラム。
【請求項１３】
請求項１２に記載のプログラムであって、
物理チャネルリセット指示を受けると、物理チャネルに属する論理チャネルの内、前記占有デバイス情報記憶部に論理デバイスが記憶された論理チャネルを通じ、占有した論理デバイスのみをリセットする前記第１の手順を、
各論理区画の処理装置に実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はコンピュータシステムを複数の論理区画に分割し、複数の論理区画でＩ／Ｏカード等の入出力転送装置を共有する入出力転送装置の共有方式と共有方法、及びプログラムに関し、特に、Ｉ／Ｏカードや制御ドライバ側の変更設計をする必要のない入出力転送装置の共有方式、入出力転送装置の共有方法、及びプログラムに関する。
【背景技術】
【０００２】
最近のコンピュータ業界の動向として、ＴＣＯ（ＴｏｔａｌＣｏｓｔ  ｏｆ  Ｏｗｎｅｒｓｈｉｐ）を削減するために、１筐体を複数のリソースに分割して複数の論理区画を構築する論理分割が盛んに研究、開発されている。
その中の一つとして、Ｉ／Ｏカードの数で論理分割の数が制限されないように、複数の論理ホストでＩ／Ｏカードを共有する発明が提案されている（特許文献１参照）。
【０００３】
この従来技術で、Ｉ／Ｏカードを複数の論理区画で共有する場合、各論理区画のＩ／Ｏ命令を同一上のＩ／Ｏカードで排他制御するために、ＨＷ（Ｈａｒｄ  Ｗａｒｅ）やドライバ制御に論理区画ＩＤを付加している。例えば、特許文献１では、ノードコントローラの論理区画調停部が共有するＩ／Ｏスロットについて、使用中の場合どちらの論理区画かを表に保持し管理している。
【０００４】
【特許文献１】特開２００５−１２２６４０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
上記従来の技術は、入出力転送装置を共有する際に、専用ＨＷや専用ドライバを設計しなければならないので、開発コストと開発期間を必要とするという課題がある。
【０００６】
本発明の目的は上記課題を解決した、入出力転送装置の共有方式、入出力転送装置の共有方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【０００７】
本発明の第１の入出力転送装置の共有方式は、処理装置を含む複数の論理区画が、外部記憶装置を接続した入出力転送装置を共有する方式であって、それぞれに前記外部記憶装置の記憶域を排他的に分割した論理デバイスが接続された複数の論理チャネルの前記各論理区画への割り当てを識別する情報と前記入出力転送装置を識別する情報とを記憶する共有記憶部を備え、前記各論理区画の処理装置が前記割り当てられた論理チャネルを通じて前記論理デバイスにアクセスする。
【０００８】
本発明の第２の入出力転送装置の共有方式は、前記第１の入出力転送装置の共有方式であって、前記各論理区画に、前記処理装置に実行させ、前記入出力転送装置や前記外部記憶装置を制御するファームウェアを備え、前記ファームウェアが、各処理装置と前記入出力転送装置の組である物理チャネルに対応した第１のモジュールと、前記論理チャネルに対応した複数の第２のモジュールを含み、前記共有記憶部には、前記各論理区画の識別に対応して、前記第１のモジュール識別情報と割り当てられた論理チャネルに対応した前記第２のモジュールの識別情報と前記入出力装置の実装スロット識別情報と前記入出力転送装置を制御する共通のドライバの識別情報を含むＩ／Ｏパス情報を記憶し、前記処理装置が、前記ファームウェア及び前記ドライバを初期起動する際に前記Ｉ／Ｏパス情報を参照し、前記第１のモジュールと前記第２のモジュール間、前記第２のモジュールと前記ドライバ間にそれぞれモジュール間通信パスを事前に設定する手段を備え、前記第１のモジュールが、前記物理チャネルを指定した前記論理デバイスへのＩ／Ｏ要求に呼応して、前記通信パスを使用し、宛先の論理デバイスに対応した論理チャネル対応の前記第２のモジュールと前記ドライバを通じ前記割り当てられた論理チャネルにＩ／Ｏを指示する。
【０００９】
本発明の第３の入出力転送装置の共有方式は、前記第２の入出力転送装置の共有方式であって、前記ファームウェアが、論理区画が占有する論理デバイスの初期化要求を受けると、対応する前記第１のモジュールが、対象の全ての論理デバイスに対応した論理チャネル対応の前記第２のモジュールと前記ドライバを通じ論理チャネルに論理デバイスの初期化を指示する手段と、初期化できた論理デバイスを占有デバイス情報記憶部に記憶する手段を有する。
【００１０】
本発明の第４の入出力転送装置の共有方式は、前記第３の入出力転送装置の共有方式であって、前記ファームウェアが、前記物理チャネルを指定したリセット指示を受けると、前記物理チャネルに属する論理チャネルの内、前記占有デバイス情報記憶部に論理デバイスが記憶された論理チャネルを通じ、占有した論理デバイスのみをリセットする手段を有する。
【００１１】
本発明の第５の入出力転送装置の共有方式は、前記第１乃至第４の何れかの入出力転送装置の共有方式であって、前記処理装置をＩ／Ｏ要求するホスト側の処理装置とは別の入出力処理装置とする。
【００１２】
本発明の第１の入出力転送装置の共有方法は、処理装置を含む複数の論理区画が、外部記憶装置を接続した入出力転送装置を共有する方法であって、それぞれに前記外部記憶装置の記憶域を排他的に分割した論理デバイスが接続された複数の論理チャネルの前記各論理区画への割り当てを識別する情報と前記入出力転送装置を識別する情報とを共有記憶部に記憶する手順と、前記各論理区画が前記割り当てられた論理チャネルを通じて前記論理デバイスにアクセスする手順を有する。
【００１３】
本発明の第２の入出力転送装置の共有方法は、前記第１の入出力転送装置の共有方法であって、前記各論理区画に、前記入出力転送装置や前記外部記憶装置を制御するファームウェア手順を有し、前記ファームウェア手順が、前記処理装置と前記入出力転送装置の組である物理チャネルに対応した第１の手順と、前記論理チャネルに対応した複数の第２の手順を含み、前記記憶する手順を、前記各論理区画の識別に対応して、前記第１の手順の識別情報と割り当てられた論理チャネルに対応した前記第２の手順の識別情報と前記入出力転送装置の実装スロット識別情報と前記入出力転送装置を制御する共通のドライバ手順の識別情報を含むＩ／Ｏパス情報を記憶する手順とし、前記各論理区画に、前記ファームウェア手順及び前記ドライバ手順を初期起動する際に前記Ｉ／Ｏパス情報を参照し、前記第１の手順と前記複数の第２の手順間、及び前記第２の手順と前記ドライバ手順間にそれぞれ通信パスを事前に設定する手順を有し、前記第１の手順は、前記物理チャネルを指定した前記論理デバイスへのＩ／Ｏ要求に呼応して、前記通信パスを使用し、宛先の論理デバイスに対応した論理チャネル対応の前記第２の手順と前記ドライバ手順とを通じ前記割り当てられた論理チャネルにＩ／Ｏを指示する。
【００１４】
本発明の第３の入出力転送装置の共有方法は、前記第２の入出力転送装置の共有方法であって、前記ファームウェア手順が、論理区画が占有する論理デバイスの初期化要求を受けると、対応する前記第１のモジュールが、対象の全ての論理デバイスに対応した論理チャネル対応の前記第２の手順と前記ドライバ手順を通じ対応論理チャネルに論理デバイスの初期化を指示する手順と、初期化できた論理デバイスを占有デバイス情報記憶部に記憶する手順を有する。
【００１５】
本発明の第４の入出力転送装置の共有方法は、前記第３の入出力転送装置の共有方法であって、前記ファームウェア手順が、前記物理チャネルを指定したリセット指示を受けると、前記物理チャネルに属する論理チャネルの内、前記占有デバイス情報記憶部に論理デバイスが記憶された論理チャネルを通じ、占有した論理デバイスのみをリセットする手順を有する。
【００１６】
本発明の第１のプログラムは、処理装置を含む複数の論理区画で共有する入出力転送装置に接続された外部記憶装置の記憶域を排他的に分割した論理デバイスがそれぞれに接続された、複数の論理チャネルの前記各論理区画への割り当てを識別する情報と前記入出力転送装置を識別する情報とを共有記憶部に記憶する手順と、前記各論理区画が前記割り当てられた論理チャネルを通じて前記論理デバイスにアクセスする手順とを、各論理区画の処理装置に実行させる。
【００１７】
本発明の第２のプログラムは、前記第１のプログラムであって、前記入出力転送装置や前記外部記憶装置を制御する手順であって、前記処理装置と前記入出力転送装置の組である物理チャネルに対応した第１の手順と、前記制御する手順であって、前記論理チャネルに対応した複数の第２の手順と、前記入出力転送装置を制御するドライバ手順と、前記各論理区画の識別に対応して、前記第１の手順の識別情報と割り当てられた論理チャネルに対応した前記第２の手順の識別情報と前記入出力転送装置の実装スロット識別情報と前記入出力転送装置を制御する共通のドライバ手順の識別情報を含むＩ／Ｏパス情報を記憶する手順と、前記制御する手順及び前記ドライバ手順を初期起動する際に前記Ｉ／Ｏパス情報を参照し、前記第１の手順と前記第２の手順間、前記第２の手順と前記ドライバ手順間にそれぞれ通信パスを事前に設定する手順と、前記物理チャネルを指定した前記論理デバイスへのＩ／Ｏ要求に呼応して、前記通信パスを使用し、宛先の論理デバイスに対応した論理チャネル対応の前記第２の手順と前記ドライバ手順とを通じ前記割り当てられた論理チャネルにＩ／Ｏを指示する手順とを、各論理区画の処理装置に実行させる。
【００１８】
本発明の第３のプログラムは、前記第２のプログラムであって、自論理区画が占有する論理デバイスの初期化要求を受けると、対象の全ての論理デバイスに対応した論理チャネル対応の前記第２の手順に論理デバイスの初期化を指示し、初期化できた論理デバイスを占有デバイス情報記憶部に記憶する前記第１の手順と、前記ドライバ手順を通じ対応論理チャネルに論理デバイスの初期化を指示する前記第２の手順とを、各論理区画の処理装置に実行させる。
【００１９】
本発明の第４のプログラムは、前記第３のプログラムであって、物理チャネルリセット指示を受けると、物理チャネルに属する論理チャネルの内、前記占有デバイス情報記憶部に論理デバイスが記憶された論理チャネルを通じ、占有した論理デバイスのみをリセットする前記第１の手順を、各論理区画の処理装置に実行させる。
【発明の効果】
【００２０】
本発明は、入出力転送装置を共有する際に、専用ＨＷや専用ドライバを設計しなくてもよいので、開発コストと開発期間が削減できるという効果を持つ。
【発明を実施するための最良の形態】
【００２１】
次に、本発明の第１の実施の形態について図面を参照して詳細に説明する。図１は本発明の第１の実施の形態のコンピュータシステムの構成を示すブロック図である。図１を参照すると、第１の実施の形態のコンピュータシステムは、物理ホスト装置１と、Ｉ／Ｏ制御装置２と、ＤＩＳＫアレイ３とを含む。
【００２２】
物理ホスト装置１は、ＨＷ層としては、ＣＰＵ１１とＣＰＵ１２と共有メモリのメモリ１３とメモリ１４とを含む。
【００２３】
物理ホスト装置１の物理メモリ空間は、メモリ１３とメモリ１４との領域に分割される。ＯＳ１０１は、メモリ１３に格納され、ＣＰＵ１１とメモリ１３とを使用する。ＯＳ１０２は、メモリ１４に格納され、ＣＰＵ１２とメモリ１４とを使用する。メモリ１３、および、メモリ１４は、それぞれＯＳ１０１、ＯＳ１０２に固定的に割り当てられた領域の他に、両者がアクセス可能な共有領域も含む。
【００２４】
Ｉ／Ｏ制御装置２は、ＨＷ層としては、Ｉ／ＯプロセッサであるＩＯＰ２１、２２と、メモリ２３、２４と、Ｉ／Ｏカード２９−２（入出力転送装置の１種。たとえばＦＣカード）とを含む。ＦＷ２０４（ファームウェア）は、メモリ２３に格納され、ＩＯＰ２１により実行される。ＦＷ２０５（ファームウェア）は、メモリ２４に格納され、ＩＯＰ２２により実行される。ドライバ２０３は、メモリ２３（メモリ２４でもよい）の共有領域に格納され、Ｉ／Ｏカード２９−２を制御する。
【００２５】
物理ホスト装置１、および、Ｉ／Ｏ制御装置２は、論理区画＃１、＃２に分割される。論理区画＃１は、論理ホスト＃１（ＯＳ１０１）に占有され、物理チャネル＃１、＃２を含む。物理チャネル＃２は、ＦＷ２０４（従って、ＨＷ層のＩＯＰ２１、メモリ２３）、および、ドライバ２０３（したがって、Ｈ／Ｗ層のＩ／Ｏカード２９−２）から構成される。
【００２６】
区画＃２は、論理ホスト＃２（ＯＳ１０２）に占有され、物理チャネル＃３、＃４を含む。物理チャネル＃３は、ＦＷ２０５（したがって、ＨＷ層のＩＯＰ２２、メモリ２４）、および、ドライバ２０３（したがって、Ｈ／Ｗ層のＩ／Ｏカード２９−２）から構成される。すなわち、Ｉ／Ｏカード２９−２は、論理区画＃１（論理ホスト＃１）、論理区画＃２（論理ホスト＃２）で共有される。
【００２７】
ＤＩＳＫアレイ３は、コントローラ３１と、物理ＤＩＳＫ３２とを含む。コントローラ３１は、論理チャネル（＃１）３１１〜論理チャネル（＃４）３１４による制御を行う。物理ＤＩＳＫ３２は、論理ＤＩＳＫ（＃１）〜論理ＤＩＳＫ（＃４）３２４に分割されアクセスされる。論理チャネル（＃１）３１１〜論理チャネル（＃４）３１４は、それぞれ、論理ＤＩＳＫ（＃１）３２１〜論理ＤＩＳＫ（＃４）３２４に１対１で対応する。
【００２８】
論理ＤＩＳＫ（＃１）３２１〜論理ＤＩＳＫ（＃４）３２４の各論理ＤＩＳＫはＤＩＳＫアレイ３の記憶域（アドレス空間）を排他的に４つに分割したものである。
【００２９】
また、論理チャネル＃１〜＃４は２グループに分割される。論理チャネル＃１〜＃２は論理区画＃１に割り当てられ、論理チャネル＃３〜＃４は、論理区画＃２に割り当てられる。
【００３０】
論理ホスト＃１、＃２は、それぞれ、物理チャネル＃２、＃３を介してドライバ２０３に対して、Ｉ／Ｏ命令を発行する。
【００３１】
ここで、論理ホスト＃１のＯＳ１０１、論理ホスト＃２のＯＳ１０２は、それぞれ、論理チャネル＃１〜＃２に接続された論理ＤＩＳＫ（＃１）３２１〜論理ＤＩＳＫ（＃２）３２２、論理チャネル＃３〜＃４に接続された論理ＤＩＳＫ（＃３）３２３〜論理ＤＩＳＫ（＃４）３２４の排他制御を行っている。
【００３２】
従って、論理ホスト＃１（論理ホスト＃２）は、論理区画＃２（論理区画＃１）と競合することなく物理チャネル＃２（物理チャネル＃３）から論理チャネル＃１〜＃２（論理チャネル＃３〜＃４）にＩ／Ｏ命令を発行することができる。ＯＳ１０１、１０２は、物理チャネル単位で初期化またはリセットを論理区画を意識せずに発行することができる。
【００３３】
ＦＷ２０４は、ＩＯＰ２１に実行され、物理チャネル＃２（ドライバ２０３）から、論理チャネル＃１、＃２にＩ／Ｏ命令を発行する。ＦＷ２０５は、ＩＯＰ２２に実行され、物理チャネル＃３（ドライバ２０３）から論理チャネル＃３、＃４にＩ／Ｏ命令を発行する。
【００３４】
ＯＳ１０１は、論理ＤＩＳＫ（＃１）３２１、論理ＤＩＳＫ（＃２）３２２を占有し、ＯＳ１０２は、論理ＤＩＳＫ（＃３）３２３、論理ＤＩＳＫ（＃４）３２４を占有する。
【００３５】
図２は、論理分割されるベースとなるコンピュータシステムの一構成例を示したブロック図である。図２を参照すると、コンピュータシステムは、ホスト及びＩ／Ｏ制御装置４とＤＩＳＫアレイ３とを含む。ホスト及びＩ／Ｏ制御装置４のシステムバス２０には、ＣＰＵ１１、ＣＰＵ１２、ＩＯＰ２１、ＩＯＰ２２が接続される。メモリコントローラ２５にはＣＰＵ１１、１２にアサインされるメモリ１３、１４の他、ＩＯＰ２１、２２にアサインされるメモリ２３、２４が接続される。
【００３６】
システムバス２０にはバス制御回路２６が接続される。バス制御回路２６は、システムバス２０とＩ／Ｏバス２７間のバスブリッジとシステムバス２０のバスビジー等の管理部と、Ｉ／Ｏバス２７のバスビジー等の管理部を有し、システムバス２０とＩ／Ｏバス２７間のデータの受け渡しを行う。
【００３７】
Ｉ／Ｏバス２７はＰＣＩバス等である。Ｉ／Ｏバス２７には、例えば、スロット＃１〜＃３の３スロットを持つバススロット２７２が接続されている。
【００３８】
入出力制御回路２７３は、バス制御回路２６がＩＯＰからのトランザクションデータを送出するとその宛先を解釈し対応するスロットに転送する。
【００３９】
バススロット２７２のスロット＃１、＃３にはそれぞれＩ／Ｏカード２９−１、Ｉ／Ｏカード２９−３が実装されている。これらのカードは例えばＳＣＳＩカードである。バススロット２７２のスロット＃２には、共有されるＩ／Ｏカード２９−２が実装されている。このカードは例えばＦＣ（ファイバーチャネル）カードである。ＦＣカードは、デバイス（外部記憶装置）側のコントローラ３１との物理インタフェースはシリアル伝送を行うファイバーかメタルワイヤであるが、コントローラ３１との上位層インタフェースはＳＣＳＩ（Ｓｍａｌｌ  Ｃｏｍｐｕｔｅｒ  Ｓｙｓｔｅｍ  Ｉｎｔｅｒｆａｃｅ）である。
【００４０】
ここで、ＳＣＳＩカードについて熟考してみると、ＳＣＳＩカードに複数種類のデバイスを接続し、ＳＣＳＩカードドライバが複数のデバイスドライバを要求元としコマンドを受取り、コマンド対応のデータ転送を並行して行いうることに気付く。また転送終了等のステータスはドライバかカードＨＷで要求元に対応付けて管理されていることが洞察される。したがって、Ｉ／Ｏカード２９−２及びドライバ２０３もこの様なＳＣＳＩカード機能を踏襲し備えていることが洞察される。
【００４１】
図３は、Ｉ／Ｏカード２９−２の構成を示すブロック図である。ホストインタフェース部２９１は、バススロット２７２に接続され、ドライバ２０３が発行するＩ／Ｏカード２９−２宛の指示を受信する。また、Ｉ／Ｏライト時の書き込みデータを受信し、Ｉ／Ｏリード時のデータを送信する。
【００４２】
コマンドバッファ２９３にはホストインタフェース部２９１が受信したコマンド（Ｉ／Ｏ命令等）が格納される。データバッファ部２９４にはホストインタフェース部２９１が受信したＩ／Ｏライトデータや、デバイスインタフェース部２９２が受信したＩ／Ｏリードデータ等が格納される。
【００４３】
制御部２９６はドライバ２０３が発行するＩ／Ｏカード２９−２宛の指示を解釈し、その結果に応じステータスレジスタ２９５の読み出しやコマンドバッファ２９３の書き込み、データバッファ部２９４の関連レジスタ（メモリアドレスレジスタ、転送カウントレジスタ等）の書き込みを行う。またコマンドをデバイスインタフェース部２９２を通じコントローラ３１の宛先論理チャネルに送出する。
【００４４】
制御部２９６は、Ｉ／Ｏライト時にライトデータをメモリから読み出しデータバッファ部２９４に格納する。即ち、Ｉ／Ｏバス２７の使用を要求し、バスマスタとなるとメモリ読み出しを行う。また、Ｉ／Ｏリード時にリードデータをデバイスインタフェース部２９２、伝送メディアを通じコントローラ３１の対象の論理チャネルから受信しデータバッファ部２９４に格納する。データが所定量格納されるとＩ／Ｏバス２７の使用を要求し、許可されバスマスタとなるとデータをメモリに書き込む。
【００４５】
ここで、コマンドバッファ２９３に格納された、コマンド（Ｉ／Ｏ命令等）毎にデータのバッファリング動作が行われる。即ち、コマンドバッファ２９３の各コマンドには宛先の論理チャネル番号を含まれ、これにデータバッファ部２９４の各データバッファが紐付けされる。
【００４６】
宛先の論理チャネル番号が異なるＩ／Ｏリードコマンドが相前後して発行されても、データバッファや関連レジスタがそれぞれに紐付けされ、送信元の論理チャネルに対応したバッファに格納され、コマンド単位のデータ転送動作が保証されることを洞察できる。
【００４７】
また、ドライバ２０３は、ステータスレジスタ２９５を読み出し、コマンド毎のデータ転送状態を確認できる。
【００４８】
図４に、Ｉ／Ｏ制御装置２のソフトウェア層の構成を示す。ＦＷ２０４は、論理区画＃１のＰＣモジュール（物理チャネル対応モジュール）２０４１とＬＣモジュール（論理チャネル対応モジュール）２０４２１〜２０４２２からなる。ここでＰＣモジュール２０４１は物理チャネル＃２に対応したモジュールで、ＬＣモジュール２０４２１は論理チャネル＃１に対応したモジュールで、ＬＣモジュール２０４２２は論理チャネル＃２に対応したモジュールである。
【００４９】
コントローラ３１にはＦＷ或いはＨＷによる複数の論理チャネルが存在し、論理チャネルには論理ＤＩＳＫ等の論理デバイスが排他的に割り当てられる。前記ＬＣモジュールのそれぞれが各論理チャネルに対応している。
【００５０】
同様に、ＦＷ２０５は、区画＃２のＰＣモジュール２０５１とＬＣモジュール２０５２１〜２０５２２からなる。
【００５１】
Ｉ／Ｏパス情報記憶部２３１には、ＩＯＰ番号と共有するスロット番号を含み例えばメモリ２３の共有領域に設定される。図５にその内容例を示す。番号＃１のＩＯＰとはＩＯＰ２１であり、番号＃２のＩＯＰとはＩＯＰ２２のことである。
【００５２】
ＩＯＰ２１から、スロット＃１のＳＣＳＩカード、スロット＃２のＦＣカード（Ｉ／Ｏカード２９−２）にアクセス可能であり、これらのカードを制御するドライバはドライバＸ１、ドライバ２０３であることを示している。
【００５３】
また、物理チャネル＃２はＰＣモジュール２０４１とＬＣモジュール２０４２１〜２０４２２（したがってＩＯＰ２１とメモリ２３）と、ドライバ２０３（したがってスロット＃２（ＦＣカード））で構成されていることを示している。
【００５４】
また、ＩＯＰ番号の＃１、＃２は、論理区画番号でもあり、論理区画＃１には、ＬＣモジュール２０４２１〜２０４２２が属しており、論理チャネル＃１〜＃２が割り当られていることを示している。
【００５５】
ＩＯＰ２２から、スロット＃３のＳＣＳＩカード、スロット＃２のＦＣカード（Ｉ／Ｏカード２９−２）にアクセス可能であり、これらのカードを制御するドライバはドライバＸ２、ドライバ２０３であることを示している。
また、物理チャネル＃３はＰＣモジュール２０５１とＬＣモジュール２０５２１〜２０５２２（したがってＩＯＰ２２とメモリ２４）と、ドライバ２０３（したがってスロット＃２（ＦＣカード））で構成されていることを示している。また、論理区画＃２にはＬＣモジュール２０５２１〜２０５２２が属しており、論理チャネル＃３〜＃４が割当られていることを示している。
【００５６】
デバイス占有情報記憶部２３２には、各ＬＣモジュールが占有する論理ＤＩＳＫ等の論理デバイス指定情報を含み、例えばメモリ２３の共有領域に設定される。図６にその内容例を示す。ＬＣモジュール２０４２１に対応する論理チャネル＃１には、論理ＤＩＳＫ＃１が接続されていることを示している。他のＬＣモジュールについても同様である。
【００５７】
次に、本発明の実施の形態の動作について図面を参照して説明する。図７は、本発明の第１の実施形態の動作を示すフローチャートである。図７を参照すると、ＩＯＰ２１は、起動指示により、ＦＷ２０４をメモリ２３に（図示しない不揮発性の記憶手段から）ロードする（ステップＳ１）。
【００５８】
ＩＯＰ２１は、ＦＷ２０４をロード後、メモリ２３上の共有領域にあるＩ／Ｏパス情報記憶部２３１を参照し、該当するＰＣモジュール２０４１とＬＣモジュール２０４２１間、ＬＣモジュール２０４２１とドライバ２０３間、ＰＣモジュール２０４１とＬＣモジュール２０４２２間、ＬＣモジュール２０４２２とドライバ２０３間、それぞれのモジュール間通信経路を事前に設定しておく。例えば、Ｉ／Ｏ処理要求情報受け渡し用と処理結果情報返信用の各エリアを双方の共有記憶域に設定することでプロセス間通信経路を設定しておく（ステップＳ２）。
【００５９】
次に、ＩＯＰ２１は、ＰＣモジュール２０４１とＬＣモジュール２０４２１、２０４２２とドライバ２０３を起動する。各モジュールやドライバはプロセスタイムを割り当てられると自モジュールに対する処理要求の監視動作を行う（ステップＳ３）。
【００６０】
その後、ＯＳ１０１が起動されると、ＯＳ１０１は、ＯＳ内部で管理しているデバイス（外部記憶装置）管理情報から、占有する論理ＤＩＳＫ（＃１）３２１と論理ＤＩＳＫ（＃２）３２２に対して、初期化を行う。またこの際、物理チャネル＃２を指定する（ステップＳ４）。
【００６１】
初期化は、初期化指示をＰＣモジュール２０４１が受け、ＰＣモジュール２０４１は、ＬＣモジュール２０４２１〜２０４２２に指示する（ステップＳ５）。該当するＬＣモジュールは、ドライバ２０３に対して、初期化指示を占有する論理ＤＩＳＫ（＃１）３２１、論理ＤＩＳＫ（＃２）３２２に発行する。
【００６２】
初期化指示はＩ／Ｏカード２９−２を通じてコントローラ３１に指示される。またこの時、該当ＬＣモジュールは、占有した論理ＤＩＳＫの名称（識別）をデバイス占有情報記憶部２３２に登録する（ステップＳ６）。
【００６３】
次に、ＯＳ１０１が、ＩＯＰ２１にＩ／Ｏ命令を発行し、ＤＩＳＫアレイ３等をアクセスする動作について説明する。ＯＳ１０１の要求が論理ＤＩＳＫアクセス要求であれば（ステップＳ７）、ＯＳ１０１は物理チャネル＃２を指定し、論理ＤＩＳＫ（＃１）３２１にＩ／Ｏ命令を発行し（ステップＳ８）、ＰＣモジュール２０４１がＩ／Ｏ処理を開始し、ＰＣモジュール２０４１、ＬＣモジュール２０４２１がそれぞれ既設定のプロセス間通信経路を使って、一気にドライバ２０３までＩ／Ｏ指示を伝える（ステップＳ９）。
【００６４】
ドライバ２０３は、Ｉ／Ｏカード２９−２を通じ、ＤＩＳＫアレイ３のコントローラ３１に対し、論理チャネル＃１へのＩ／Ｏ指示を出力する（ステップＳ１０）。次に、コントローラ３１は、論理チャネル＃１へのＩ／Ｏ指示を論理ＤＩＳＫ（＃１）３２１へのＩ／Ｏ指示として、物理ＤＩＳＫ３２をアクセスする。コントローラ３１は前記アクセスする際に論理ＤＩＳＫ（＃１）３２１に対するアドレスや指示を物理ＤＩＳＫ３２へのアドレスや指示に変換しアクセスする（ステップＳ１１）。
【００６５】
ＯＳ１０１の要求がチャネル＃２のリセット要求であれば（ステップＳ７）、ＯＳ１０１は、物理チャネル＃２を指定しチャネルリセット指示のＩ／Ｏ命令を発行する（ステップＳ１２）。ＰＣモジュール２０４１は、デバイス占有情報記憶部２３２に登録された該当ＬＣモジュールだけにリセット指示を行なう。指示されたＬＣモジュールが、対応の論理チャネルを通じ論理ＤＩＳＫのリセットを行う（ステップＳ１３）。
【００６６】
他区画のＩＯＰ２２も同様に動作を行う。ただし、ドライバ２０３が既に起動されていた場合は何も行わない。
【００６７】
以上説明した様に、本発明によれば、Ｉ／Ｏカード当りの最大論理チャネル数を論理区画で分割し、また、ＦＷ起動時にモジュール間、モジュール−ドライバ間の通信経路（Ｉ／Ｏパス）を設定し以降Ｉ／Ｏパス情報記憶部２３１の参照を行うことなくＩ／Ｏ要求処理しており共有するＩ／Ｏカードの制御のオーバーヘッドの増加が少ないので、論理分割を行わないときのＩ／Ｏカードの性能と同等であるという効果を有する。
【００６８】
また、占有したデバイスの情報を保持しているので、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）は、物理チャネルに対して他の区画に影響せずに初期化とリセットを行え、ＯＳの仕様変更を必要としないという効果を有する。
【００６９】
また、本発明は、入出力転送装置を共有する際に、専用ＨＷや専用ドライバを設計しなくてもよいので、開発コストと開発期間が削減できるという効果を持つ。
【００７０】
次に、本発明の第２の実施の形態について図面を参照して詳細に説明する。図８は第２の実施形態の入出力転送装置共有方式や方法を含む論理分割されたコンピュータシステムの構成を示すブロック図である。
【００７１】
ホスト及びＩ／Ｏ制御装置４ＡはＨＷ層として、ＣＰＵ１１、メモリ１３、ＣＰＵ１２、メモリ１４、Ｉ／Ｏカード２９−２を含む。ＣＰＵ１１とメモリ１３のＨＷリソースに、ＯＳ１０１とＦＷ２０４を搭載し、更にＩ／Ｏカード２９−２とこれを制御するドライバ２０３を共有することで論理区画＃１を実現している。
【００７２】
ＯＳ１０１とＦＷ２０４はメモリ１３にロードされ、ドライバ２０３はメモリ１３の共有エリアにロードされ、ＣＰＵ１１により実行される。
【００７３】
同様に、ＣＰＵ１２とメモリ１４のＨＷリソースに、ＯＳ１０２とＦＷ２０５を搭載し、更にＩ／Ｏカード２９−２とドライバ２０３を共有することで論理区画＃２を実現している。ＯＳ１０２とＦＷ２０５はメモリ１４にロードされ、共有ドライバ２０３はメモリ１３の共有エリアにロードされ、ＣＰＵ１２により実行される。ＤＩＳＫアレイ３の構成は前記第１の実施形態と同様につき説明を省略する。
【００７４】
論理区画＃１、＃２のベースとなるホスト及びＩ／Ｏ制御装置４Ａは例えば、図９に示す様な構成とすればよい。具体的には、図２のホスト及びＩ／Ｏ制御装置４のＩＯＰ２１、２２やメモリ２３、２４を含まない構成であり、メモリ２３、２４にロードしていたＦＷ２０４、２０５やドライバ２０３は、メモリ１３、１４にロードし、ＩＯＰ２１、２２が実行していた処理をＣＰＵ１１、１２が実行するようにすればよい。
【００７５】
本実施形態により、ＩＯＰ等の入出力処理装置をＣＰＵとは別に持たないコンピュータシステムを論理分割し複数の論理区画とする場合にも、本発明を適用することが出来る。
【００７６】
以上の実施形態の説明では、各論理区画が共有する入出力転送装置として、Ｉ／Ｏカード２９−２（ＦＣカード）の例で説明したが、共有する入出力転送装置は他のインタフェースカードであってもよい。
【００７７】
また、共有する入出力転送装置と接続する外部記憶装置をＤＩＳＫアレイ３とし、論理デバイスを前記ＤＩＳＫアレイ３の記憶領域を排他的に分割した論理ディスクとする例について説明したが、前記外部記憶装置はＤＩＳＫアレイ３に限定されるものでなく、記憶域（アドレス空間）を排他的に分割しそれぞれを論理デバイスとして扱える外部記憶装置であればよい。
【００７８】
また、共有する入出力転送装置と接続する外部記憶装置が一体化していても本発明は適用できることは言うまででもない。例えば、Ｉ／Ｏカード２９−２が電子ディスクカード等の様に電子ディスク部を含むカードの場合は、電子ディスクカードのインタフェース部を共有する入出力転送装置とし、電子ディスク部を外部記憶装置とすればよい。
【産業上の利用可能性】
【００７９】
本発明は、論理区画に分割されるコンピュータシステムに対して適用できる。
【図面の簡単な説明】
【００８０】
【図１】本発明の第１の実施形態の入出力転送装置共有方式を含む論理区画に分割されたコンピュータシステムの構成を示すブロック図である。
【図２】本発明の第１の実施形態の論理区画に分割されるベースコンピュータシステムの構成例を示したブロック図である。
【図３】本発明の第１の実施形態のＩ／Ｏカード２９−２の構成を示したブロック図である。
【図４】本発明の第１の実施形態のＩ／Ｏ制御装置２のソフトウェア層の構成を示す図である。
【図５】本発明の第１の実施形態のＩ／Ｏパス情報記憶部２３１の内容例を示す図である。
【図６】本発明の第１の実施形態のデバイス占有情報記憶部２３２の内容例を示す図である。
【図７】本発明の第１の実施形態の動作を示すフローチャートである。
【図８】本発明の第２の実施形態の入出力転送装置共有方式を含む論理区画に分割されたコンピュータシステムの構成を示すブロック図である。
【図９】本発明の第２の実施形態の論理区画に分割されるベースコンピュータシステムの構成例を示したブロック図である。
【符号の説明】
【００８１】
１    物理ホスト装置
１１、１２    ＣＰＵ
１３、１４    メモリ
１０１、１０２    ＯＳ
２    Ｉ／Ｏ制御装置
２０    システムバス
２１、２２    ＩＯＰ
２３、２４    メモリ
２３１    Ｉ／Ｏパス情報記憶部
２３２    デバイス占有情報記憶部
２５    メモリコントローラ
２６    バス制御回路
２７    Ｉ／Ｏバス
２７２    バススロット
２７３    入出力制御回路
２９−１、２９−２、２９−３    Ｉ／Ｏカード
２０３    ドライバ
２０４、２０５    ＦＷ
２０４１、２０５１    ＰＣモジュール
２０４２１〜２０４２２、２０５２１〜２０５２２    ＬＣモジュール
２９１    ホストインタフェース部
２９２    デバイスインタフェース部
２９３    コマンドバッファ
２９４    データバッファ部
２９５    ステータスレジスタ
２９６    制御部
３    ＤＩＳＫアレイ
３１    コントローラ
３２    物理ＤＩＳＫ
３２１    論理ＤＩＳＫ（＃１）
３２２    論理ＤＩＳＫ（＃２）
３２３    論理ＤＩＳＫ（＃３）
３２４    論理ＤＩＳＫ（＃４）
４、４Ａ    ホスト及びＩ／Ｏ制御装置
【図１】
2008033449.tif 000003
【図２】
2008033449.tif 000004
【図３】
2008033449.tif 000005
【図４】
2008033449.tif 000006
【図５】
2008033449.tif 000007
【図６】
2008033449.tif 000008
【図７】
2008033449.tif 000009
【図８】
2008033449.tif 000010
【図９】
2008033449.tif 000011