(57)【特許請求の範囲】
【請求項１】
複数の計算機と、該複数の計算機を通信経路により結合する結合装置で構成されるデータ処理システムにおける前記複数の計算機に対する結合装置のポーリング方法であって、
前記複数の計算機の通信パスの各々に対して順次ポーリングを行い、
計算機から通信パスにより送信されたコマンドが同期コマンドであるか非同期コマンドであるか判別し、
判別結果が同期コマンドである場合に、同期コマンドを送信した計算機の通信パスを結合装置内の登録テーブルへ登録し、
前記複数の計算機の通信パスの各々に対してのポーリングが終了した後、前記登録テーブルに登録した通信パスに対して順次ポーリングすることを特徴とする結合装置のポーリング方法。
【請求項２】
複数の計算機と、該複数の計算機を通信経路により結合する結合装置で構成されるデータ処理システムにおける結合装置であって、
該結合装置と計算機を接続する通信パスの識別情報と該通信パスのコマンド受信状態を格納するエントリを複数有する通信パス登録テーブルと、
該通信パス登録テーブルの各エントリに対してポーリングを行う通信パスポーリング手段と、
該ポーリングにより取得されたエントリのコマンド受信状態から該コマンドが同期コマンドであるか否か判定するコマンド判定手段と、
同期コマンドと判定された通信パスの識別情報を同期コマンド用の通信パス登録テーブルに登録する同期コマンド通信パス登録手段と、
前記通信パスポーリング手段によるポーリング終了後、同期コマンド用の通信パス登録テーブルの各エントリに対してポーリングを行う同期コマンド通信パスポーリング手段を有することを特徴とする結合装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は複数の計算機と、複数の計算機を通信経路で結合した結合装置を有するデータ処理システムの一形態であるパラレルシステムに係り、特に、複数の計算機のうち任意の計算機から送信されるコマンドの同期処理と非同期処理が必要とされるパラレルシステムの性能を高めるためのポーリング方法に関する。
【０００２】
【従来の技術】
通信経路を介した集中処理型のデータ処理システムにおいて、トランザクションの受信をトランザクション受信手段が検知する方法として幾つかの機構、または処理方式があり、その１つに、オペレーティングシステムもしくは通信処理によりトランザクション受信状態を定期的に検知する、ポーリング処理方式がある。
この処理方式は、計算機が、トランザクションを投じる複数の端末等に接続されている通信経路を定期的にポーリングしてトランザクションの受信を確認する。
ポーリング処理に関する従来技術としては、例えば特開平７−４９８２２号公報の技術がある。
本公報記載の従来技術では、ホスト処理装置に接続されている通信処理装置の稼動情報を収集し、前記稼動情報からポーリング時間調整部によりポーリング時間間隔を調整することで、前記通信処理装置から送られてくるトランザクションの通信処理と、通信処理以外のトランザクション処理との負荷分散を行う。
【０００３】
また、上記ポーリング技術とは異なった処理方法が必要なシステムとして、複数の計算機（中央処理複合体）と、これらの計算機により共用される結合装置（構造化電子記憶機構）と、それらを結合する通信パスとからなるデータ処理システムがある。
結合装置はデータ処理システムの一形態である、パラレルシステムを構成するための中枢機構として複数の計算機を結合するために使用され、共用のデータ・オブジェクトであるキャッシュ・オブジェクトやリスト・オブジェクトのための収納場所である。
前記パラレルシステムに関する従来技術として、例えば、特開平６−４４９０号公報等に記載された技術が知られている。
上記特開平６−４４９０号公報に記載の従来技術は、計算機と結合装置との間のメッセージの送信機構に関するもので、Ｉ／Ｓチャネルが、従来の入出力チャネルとは異なり、入出力の完了割り込みを発生させずにコマンドの完了を計算機に通知することができるようにしたものである。
【０００４】
結合装置と、トランザクション処理に起因して結合装置へコマンドを発行する計算機で構成されるパラレルシステムにおいて、互いに送受信するコマンドは処理形態が２通りある。
１つは、計算機が結合装置へ送信したコマンドの処理完了を待つ同期コマンド、もう１つは計算機が結合装置へ送信したコマンドの処理完了を待たずに別の処理を行う非同期コマンドである。
結合装置は、計算機のコマンド処理形態を意識することなく、ラウンドロビン方式のポーリングにより全通信パスのコマンド受信を定期的に、かつ均等に確認し、受信を検知した順にコマンドを処理していた。
【０００５】
【発明が解決しようとする課題】
結合装置と複数の計算機が通信パスで結合される、データ処理システムの一形態であるパラレルシステムにおいて、結合装置に結合されている複数の計算機が皆、同一処理形態のコマンドを送信する場合、従来の方式では各通信パスを均等に処理するため、各計算機の単位時間あたりのトランザクション処理件数は、ほぼ同数となる。
しかし、各計算機の送信するコマンドの処理形態が異なる場合、同期コマンドを送信する計算機は、結合装置がコマンドの受信を検知して処理を完了するまでの間、該計算機の他トランザクションを処理できないまま待つ必要があり、非同期コマンドを発行する計算機よりもこの他トランザクションの待ち時間が多くなる。
このため、同期コマンドを送信する計算機は非同期コマンドを送信する計算機に比べてトランザクション処理件数が低下し、各計算機のトランザクション処理件数にばらつきが発生すると、パラレルシステムのスループットが低下してしまう。
本発明の目的は、結合装置において、各通信パス毎のコマンド処理形態に応じたポーリング方法を提供することにあり、さらに、このポーリング方法により、パラレルシステムのスループットを向上させることにある。
【０００６】
【課題を解決するための手段】
上記目的を達成するため、本発明は、
複数の計算機と、該複数の計算機を通信経路により結合する結合装置で構成されるデータ処理システムにおける前記複数の計算機に対する結合装置のポーリング方法であり、
前記複数の計算機の通信パスの各々に対して順次ポーリングを行い、該ポーリングが終了した後、結合装置内の登録テーブルに予め登録された計算機の通信パスに対して順次ポーリングするようにしている。
【０００７】
また、複数の計算機と、該複数の計算機を通信経路により結合する結合装置で構成されるデータ処理システムにおける前記複数の計算機に対する結合装置のポーリング方法であり、
前記複数の計算機の通信パスの各々に対して順次ポーリングを行い、計算機から通信パスにより送信されたコマンドが同期コマンドであるか非同期コマンドであるか判別し、判別結果が同期コマンドである場合に、同期コマンドを送信した計算機の通信パスを結合装置内の登録テーブルへ登録し、前記複数の計算機の通信パスの各々に対してのポーリングが終了した後、前記登録テーブルに登録した通信パスに対して順次ポーリングするようにしている。
【０００８】
また、複数の計算機と、該複数の計算機を通信経路により結合する結合装置で構成されるデータ処理システムにおける結合装置であり、
該結合装置と計算機を接続する通信パスの識別情報と該通信パスのコマンド受信状態を格納するエントリを複数有する通信パス登録テーブルと、該通信パス登録テーブルの各エントリに対してポーリングを行う通信パスポーリング手段と、該ポーリングにより取得されたエントリのコマンド受信状態から該コマンドが同期コマンドであるか否か判定するコマンド判定手段と、同期コマンドと判定された通信パスの識別情報を同期コマンド用の通信パス登録テーブルに登録する同期コマンド通信パス登録手段と、前記通信パスポーリング手段によるポーリング終了後、同期コマンド用の通信パス登録テーブルの各エントリに対してポーリングを行う同期コマンド通信パスポーリング手段を有するようにしている。
【０００９】
【発明の実施の形態】
次に、本発明について図面を参照して詳細に説明する。
図１は、本発明の一実施例に係わるポーリング処理制御方法が適用された結合装置（１０）と、コマンドを送受信する複数の計算機（１１〜１３）によって構成されたパラレルシステムの構成を示す図であり、特徴となる部分は点線で囲った（１０−３３）の部分である。
本発明によるシステム構成は、集中型処理を行う結合装置（１０）、およびコマンドを送受信する計算機（１１〜１３）から構成され、それぞれの計算機は、パラレルシステムの中枢を担う結合装置（１０）と計算機（１１〜１３）とを結ぶ通信パス（１１−１１〜１３−１１）で接続される。
計算機（１１〜１３）は、通信送受信部（１１−１０〜１３−１０）により通信パス（１１−１１〜１３−１１）を介して結合装置（１０）を共用し、結合装置（１０）はコマンド受信部（１０−１０）により、複数の計算機（１１〜１３）からのコマンド処理要求を受け付ける。
【００１０】
通信パス（１１−１１〜１３−１１）を介して入出力装置（１０−２０〜１０−２２）にコマンドが受信されると、コマンド受信部（１０−１０）の通信パス登録テーブル（１０−１２）の該通信パスに対応するエントリにコマンドが受信されたことを登録する。
【００１１】
コマンド受信部（１０−１０）は、通信パス登録テーブル（１０−１２）に登録された通信パス（１１−１１〜１３−１１）のエントリに対して定期的に、通信パスポーリング部（１０−１４）によりコマンド受信チェックを行うことでコマンドの受信を検知する。
ここで、コマンドの受信が検知された場合、受信したコマンドが同期コマンドであるか非同期コマンドであるかをコマンド判別部（１０−３０）により判別し、同期コマンドであれば同期コマンド通信パス登録部（１０−３１）により当該通信パスを、同期コマンド通信パス登録テーブル（１０−３４）へ登録する。
コマンドの受信が検知されない場合は、順次、通信パス登録テーブル（１０−１２）のエントリに登録された通信パス（１１−１１〜１３−１１）のコマンド受信チェックを実施し、コマンドの受信が検知されればコマンド処理部（１０−１１）へ制御を移行する。
全エントリの通信パスのコマンド受信のチェックが終了した場合には、次に、同期コマンド通信パス登録テーブル（１０−３４）に登録している通信パスのコマンド受信チェックを同期コマンド通信パスポーリング部（１０―３２）により実施する。
全エントリの通信パスに対する通信パスポーリングの後に、同期コマンド通信パスポーリング部（１０−３２）により通信パスポーリングを行うことにより、同期コマンドの受信検知率を高め、これにより同期コマンドを送信する計算機へのサービスを高める。
【００１２】
なお、図には示していないが、ユーザが予め指定した通信パスを同期コマンド通信パス登録テーブル（１０−３４）に代わる指定通信パス登録テーブルに予め登録しておき、前記指定通信パス登録テーブルに登録した通信パスを同期コマンド通信パスポーリング部（１０―３２）に代わる図示しない指定通信パスポーリング部により通信パスポーリングを行うことで、ユーザが指定した通信パスの受信検知率を高め、当該通信パスを使用する計算機へのサービスを高めることも可能である。
この指定通信パス登録テーブルには同期コマンド通信パスのみを登録してもよいし、同期コマンド通信パスと非同期コマンド通信パスの別なく登録してもよい。
【００１３】
図２の（ａ）、（ｂ）は図１で示した構成の通信パス登録テーブル（１０−１２）と同期コマンド通信パス登録テーブル（１０−３４）を詳細に示したものである。
通信パス登録テーブル（１０−１２）は、通信パス番号（２０―１０）とコマンド受信フラグ（２０−１１）で１エントリを構成し、また、同期コマンド通信パス登録テーブル（１０−３４）は、通信パス番号（２０−２０）とコマンド受信フラグ（２０−２１）で１エントリを構成し、それぞれ結合装置に接続されている通信パス数分のエントリ数が設けられる。
通信パス登録テーブル（１０−１２）の通信パス番号（２０−１０）には、結合装置１０に接続された通信パスの番号が予め登録されている。
同期コマンド通信パス登録テーブル（１０−３４）の通信パス番号（２０−２０）には、通信パス登録テーブル（１０−１２）のポーリングにより同期コマンドの受信が検知された場合に、同期コマンドの受信が検知された通信パスの番号が１エントリに１つ格納される。
【００１４】
入出力装置（１０−２０〜１０−２２）がコマンドの受信を行うと、受信したコマンドのコマンド識別フラグにしたがって、通信パス登録テーブル（１０−１２）及び同期コマンド通信パス登録テーブル（１０−３４）の受信のあった通信パス番号のエントリのコマンド受信フラグ（２０−１１）及びコマンド受信フラグ（２０−２１）にフラグ値を登録する。
通信パスポーリング部（１０−１４）は通信パス登録テーブル（１０−１２）をポーリングすることによりコマンド受信フラグ（２０−１１）のフラグ値によりコマンド受信を検知し、検知したコマンドの処理はコマンド処理部（１０−１１）で行う。そして通信パスポーリング部（１０−１４）はコマンド受信フラグをクリアすることにより、次のコマンド受信を検知できるようにする。
同期コマンド通信パスポーリング部（１０−３１）も同期コマンド通信パス登録テーブル（１０−３４）をポーリングすることにより、上記と同様の処理をする。
【００１５】
図３は任意の計算機から結合装置に送信されるコマンドを詳細化したものである。
メッセージコマンドブロック（１０−１３）は、内部にコマンドブロック（３０−１）があり、本ブロック内のコマンド識別フラグ（３０−２）により、受信したコマンドが同期であるか、非同期であるかを判別できる。
【００１６】
図４は通信パスポーリング部（１０−１４）と同期コマンド通信パスポーリング部（１０−３２）の処理を示すフローチャートであり、点線で囲った（４３０）の部分に特徴がある。
通信パスポーリング部（１０−１４）の処理、及び同期コマンド通信パスポ―リング部（１０−３２）の処理は、コマンド受信チェック処理であり、結合装置（１０）がシステムレディ状態になる時に、通信パスポーリング部（１０−１４）の処理から開始する。
そして、コマンドを検知するか、もしくは、通信パスポーリング部（１０−１４）の処理の場合には通信パス登録テーブル（１０−１２）、同期コマンド通信パスポ―リング部（１０−３２）の処理の場合には同期コマンド通信パス登録テーブル（１０−３４）に登録されている全通信パスのコマンド受信チェックが完了した時点でポーリング処理完了となる。
【００１７】
通信パスポーリング部（１０−１４）の処理は、通信パス登録テーブル（１０−１２）のエントリから通信パス番号を求める（４００）。
求めた通信パスがコマンド受信状態であるかチェックし（４０１）、受信状態であれば受信したコマンドが同期コマンドであるか、非同期コマンドかを判別する（４２０）。
同期コマンドであれば、同期コマンド通信パス登録テーブル（１０−３４）へ通信パス番号を登録する（４２２）。
コマンド判別後、通信パスポーリング部（１０−１４）の処理は終了となり、コマンド処理部（１０−１１）へ移行して非同期コマンド及び同期コマンドの処理を行う（４２１）。
未受信状態であれば、結合装置に接続されている全通信パスのコマンド受信チェックが完了したか判断し（４０２）、未完了であれば通信パス登録テーブル（１０−１２）より次に受信状態をチェックする通信パス番号を求め（４１０）、再度受信チェックを行う（４０１）。
完了していれば通信パスポーリング部（１０−１４）の処理を終え、次に同期コマンド通信パスポーリング部（１０−３２）の処理を行う。
【００１８】
同期コマンド通信パスポーリング部（１０−３２）の処理は、同期コマンド通信パス登録テーブル（１０−３４）の第１エントリより、通信パス番号を求める（４０３）が、コマンドの受信期間を設けるために、本処理実行前に一旦、別の処理を行うようにすることも可能である。
求めた通信パス番号がコマンド受信状態であるかチェックし（４０４）、受信状態であれば同期コマンド通信パスポーリング部（１０−３２）の処理は終了し、コマンド処理部（１０−１１）へ移行して、例えばＷＡＲコマンド等の、コマンドの処理を行う（４２１）。
未受信状態であれば、同期コマンド通信パス登録テーブル（１０−３４）に登録されている全通信パスの処理が完了したかチェック（４０５）し、完了していれば同期コマンド通信パスポーリング（１０−３２）処理を終える。
未完了であれば同期コマンド通信パス登録テーブル（１０−３４）より、次に受信状態をチェックする通信パスを求め（４１１）、再度チェックする（４０４）。
【００１９】
【発明の効果】
以上詳述したように、本発明によれば、結合装置に接続される計算機を効率よく稼動させることができ、パラレルシステムのスループットを向上させることができる。
【図面の簡単な説明】
【図１】本発明の一実施例である結合装置と複数の計算機からなるパラレルシステムの構成を示すブロック図である。
【図２】通信パス登録テーブル及び同期コマンド通信パス登録テーブルの例を示す図である。
【図３】メッセージコマンドブロックを示す図である。
【図４】コマンドの受信検知のポーリング処理のフローチャートを示す図である。
【符号の説明】
１０  結合装置
１１〜１３  計算機
１１−１０〜１３−１０  通信送受信部
１１−１１〜１３−１１  通信パス
１０−２０〜１０−２２  入出力装置
１０−１０  コマンド受信部
１０−１１  コマンド処理部
１０−１２  通信パス登録テーブル
１０−１３  メッセージコマンドブロック
１０−１４  通信パスポーリング部
１０−３０  コマンド判別部
１０−３１  同期コマンド通信パス登録部
１０−３２  同期コマンド通信パスポーリング部
１０−３４  同期コマンド通信パス登録テーブル
【図１】
0003832543.tif 000002
【図２】
0003832543.tif 000003
【図３】
0003832543.tif 000004
【図４】
0003832543.tif 000005