(57)【要約】【課題】外部機器へのメッセージの送信を伴う処理の最中に常用系計算機に異常が発生し、常用系計算機から待機系計算機へ切り替えを行うとき、外部機器へのメッセージ送信が必ず１回だけ行われるパイプライン処理システムを提供する。【解決手段】常用系計算機、待機系計算機及び入出力部３００がネットワーク１００で相互に接続されている。各計算機は一貫性維持装置付き共有メモリ装置を持つ。また計算機との通信を必要とする外部機器２００が入出力部３００に接続している。計算機は外部機器２００へメッセージを送信するに際し、当該メッセージに自己の一貫性維持装置付き共有メモリ装置に保存されたＩＤを付与して入出力部３００へ送信する。入出力部３００は、受信したメッセージのＩＤを参照して未送信かどうかを判定し、送信済みであれば当該メッセージを破棄する。【選択図】図２
2010009481.tif 000002
【特許請求の範囲】
【請求項１】
識別子であるＩＤ（ＩＤｅｎｔｉｆｉｃａｔｉｏｎ）を格納する第１メモリを有する常用系計算機と、
前記常用系計算機に障害が発生した場合に前記常用系計算機に代替して使用されると共に、前記第１メモリに格納されるＩＤと同一のＩＤを格納する第２メモリを有する待機系計算機と、
前記常用系計算機と前記待機系計算機とから所定の外部機器宛てのメッセージである外部メッセージを受信し、受信した外部メッセージを前記外部機器に送信する送信装置と
を備え、
前記常用系計算機は、
処理を実行中に前記処理から派生する外部メッセージを前記外部機器宛てに送信するときには、前記第１メモリからＩＤを取得し、取得したＩＤを外部メッセージに付加して前記外部機器宛てに送信し、前記処理が完了したときに、前記第１メモリのＩＤと前記第２メモリのＩＤとを同一かつ現在の値とは異なる値に更新し、
前記待機系計算機は、
前記常用系計算機が所定の処理を実行中において外部メッセージを送信した後に前記所定の処理が完了前に中断すると、中断した前記所定の処理を前記常用系計算機に代替して最初から実行することにより、前記第２メモリからＩＤを取得し、取得したＩＤを送信するべき外部メッセージに付加して前記外部機器宛てに送信し、
前記送信装置は、
前記常用系計算機と前記待機計計算機とのいずれかからＩＤ付きの外部メッセージを受信すると、受信したＩＤが今までに受信したＩＤと重複するかどうかを判定し、重複しないと判定した場合には受信したＩＤ付きの外部メッセージからＩＤを取り去り、ＩＤの取り去られ外部メッセージを前記外部機器に送信し、重複すると判定した場合には受信したＩＤ付きの外部メッセージを破棄することを特徴とする計算機システム。
【請求項２】
前記計算機システムは、
前記送信装置に障害が発生した場合に、前記送信装置に代替して使用される待機系送信装置を備えたことを特徴とする請求項１記載の計算機システム。
【請求項３】
前記常用系計算機と、前記待機系計算機と、前記送信装置とは、
第１のネットワークに接続して互いに通信すると共に、前記第１のネットワークに障害が発生した場合に前記第１のネットワークに代替する第２のネットワークに接続可能であることを特徴とする請求項１または２のいずれかに記載の計算機システム。
【請求項４】
前記送信装置は、
前記常用系計算機と前記待機系計算機とのいずれかに組み込まれていることを特徴とする請求項１〜３のいずれかに記載の計算機システム。
【請求項５】
識別子であるＩＤ（ＩＤｅｎｔｉｆｉｃａｔｉｏｎ）を格納する第１メモリを有する常用系計算機と、
前記常用系計算機に障害が発生した場合に前記常用系計算機に代替して使用されると共に、前記第１メモリに格納されるＩＤと同一のＩＤを格納する第２メモリを有する待機系計算機と、
前記常用系計算機と前記待機系計算機とから所定の外部機器宛てのメッセージである外部メッセージを受信し、受信した外部メッセージを前記外部機器に送信する送信装置と
を使用し、
前記常用系計算機は、
処理を実行中に前記処理から派生する外部メッセージを前記外部機器宛てに送信するときには、前記第１メモリからＩＤを取得し、取得したＩＤを外部メッセージに付加して前記外部機器宛てに送信し、前記処理が完了したときに、前記第１メモリのＩＤと前記第２メモリのＩＤとを同一かつ現在の値とは異なる値に更新し、
前記待機系計算機は、
前記常用系計算機が所定の処理を実行中において外部メッセージを送信した後に前記所定の処理が完了前に中断すると、中断した前記所定の処理を前記常用系計算機に代替して最初から実行することにより、前記第２メモリからＩＤを取得し、取得したＩＤを送信するべき外部メッセージに付加して前記外部機器宛てに送信し、
前記送信装置は、
前記常用系計算機と前記待機計計算機とのいずれかからＩＤ付きの外部メッセージを受信すると、受信したＩＤが今までに受信したＩＤと重複するかどうかを判定し、重複しないと判定した場合には受信したＩＤ付きの外部メッセージからＩＤを取り去り、ＩＤの取り去られ外部メッセージを前記外部機器に送信し、重複すると判定した場合には受信したＩＤ付きの外部メッセージを破棄することを特徴とする通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク等で相互接続された計算機システムの対故障性を高める技術に関するものである。
【背景技術】
【０００２】
一般に、計算機システムの対故障性を高めるためには、構成要素のプロセスや計算機を多重化し、１台を常用系計算機、その他を待機系計算機とし、障害発生時には常用系計算機の代わりに待機系計算機が処理を引き継ぐ手法が知られている（例えば特許文献１）。
【０００３】
また、複数の計算機を用いてパイプライン処理を行う情報処理装置（以下、パイプライン処理装置）において、それぞれの計算機を多重化すると共に、各計算機に受信メッセージを保存するためのメッセージキュー、及び処理の完了を記録するための一貫性維持装置付き共有メモリを備えることで、対故障性を高める方法がある。
【０００４】
上記のパイプライン処理装置では、外部機器からメッセージを受信し、メッセージに対する処理を行い、処理結果を保存し、次の計算機へのメッセージ送信、または外部機器へのメッセージ送信を連続的に行うことで目的とする処理を実施する。このとき、各計算機へのメッセージ送信は、常用系計算機、待機系計算機へ行う。また、常用系計算機は、処理の完了後、当該メッセージの処理が完了したことを一貫性維持装置付き共有メモリ装置へ記録する。
【０００５】
異常発生時には、すでに受信済みのメッセージを元に待機系計算機で処理を引き継ぐ。このとき、待機系計算機は、一貫性維持装置付き共有メモリ装置にアクセスし、当該メッセージが未処理かどうかを調べる。待機系計算機は、当該メッセージが未処理であればメッセージの処理を行い、処理済であればメッセージを破棄する。
【特許文献１】特開２００３−２８０９３９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
上記の構成のパイプライン処理装置で、外部機器へのメッセージ送信を伴う処理の最中に異常が発生し、常用系計算機から待機系計算機への切り替えを行うとき、そのタイミングによって次の２つのケースのうち、どちらかをとりうる。
【０００７】
第１のケースは、常用系計算機が外部機器へメッセージを送信する前に、待機系計算機へ切り替えた場合である。この場合、処理の完了が一貫性維持装置付き共有メモリに記録されていないので、待機系計算機は当該処理をロールバックして最初からやり直し、外部機器へのメッセージ送信を行う。このケースでは、外部機器はメッセージを１回だけ受信する。
【０００８】
第２のケースは、常用系計算機が外部機器へメッセージを送信した後に、待機系計算機へ切り替えた場合である。この場合も、第１のケースと同様、処理の完了が一貫性維持装置付き共有メモリに記録されていないので、待機系計算機は当該処理をロールバックして最初からやり直し、外部機器へのメッセージ送信を行う。このケースでは、外部機器は同一メッセージを２回受信してしまう。
【０００９】
本発明は、上記の第２のケースの持つ課題を解決し、外部機器が常に１回だけメッセージを受信するようにするものである。
【課題を解決するための手段】
【００１０】
この発明の計算機システムは、
識別子であるＩＤ（ＩＤｅｎｔｉｆｉｃａｔｉｏｎ）を格納する第１メモリを有する常用系計算機と、
前記常用系計算機に障害が発生した場合に前記常用系計算機に代替して使用されると共に、前記第１メモリに格納されるＩＤと同一のＩＤを格納する第２メモリを有する待機系計算機と、
前記常用系計算機と前記待機系計算機とから所定の外部機器宛てのメッセージである外部メッセージを受信し、受信した外部メッセージを前記外部機器に送信する送信装置と
を備え、
前記常用系計算機は、
処理を実行中に前記処理から派生する外部メッセージを前記外部機器宛てに送信するときには、前記第１メモリからＩＤを取得し、取得したＩＤを外部メッセージに付加して前記外部機器宛てに送信し、前記処理が完了したときに、前記第１メモリのＩＤと前記第２メモリのＩＤとを同一かつ現在の値とは異なる値に更新し、
前記待機系計算機は、
前記常用系計算機が所定の処理を実行中において外部メッセージを送信した後に前記所定の処理が完了前に中断すると、中断した前記所定の処理を前記常用系計算機に代替して最初から実行することにより、前記第２メモリからＩＤを取得し、取得したＩＤを送信するべき外部メッセージに付加して前記外部機器宛てに送信し、
前記送信装置は、
前記常用系計算機と前記待機計計算機とのいずれかからＩＤ付きの外部メッセージを受信すると、受信したＩＤが今までに受信したＩＤと重複するかどうかを判定し、重複しないと判定した場合には受信したＩＤ付きの外部メッセージからＩＤを取り去り、ＩＤの取り去られ外部メッセージを前記外部機器に送信し、重複すると判定した場合には受信したＩＤ付きの外部メッセージを破棄することを特徴とする。
【発明の効果】
【００１１】
本発明により、外部機器が常に１回だけメッセージを受信するシステムを提供することができる。
【発明を実施するための最良の形態】
【００１２】
実施の形態１．
図１は、常用系計算機（待機系計算機、入出力部３００も同様である）のハードウェア資源の一例を示す図である。常用系計算機と、待機系計算機、入出力部３００とは同様のハードウェア構成であるので、常用系計算機を例に述べる。図１において、常用系計算機は、プログラムを実行するＣＰＵ８１０（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ：中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう）を備えている。ＣＰＵ８１０は、バス８２５を介してＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）８１１、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）８１２、表示装置８１３、キーボード８１４、マウス８１５、通信ボード８１６、ＦＤＤ８１７、ＣＤＤ８１８、プリンタ装置８１９、磁気ディスク装置８２０と接続され、これらのハードウェアデバイスを制御する。磁気ディスク装置８２０の代わりに、光ディスク装置、フラッシュメモリなどの記憶装置でもよい。
【００１３】
ＲＡＭ８１２は、揮発性メモリの一例である。ＲＯＭ８１１、ＦＤＤ８１７、ＣＤＤ８１８、磁気ディスク装置８２０等の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置あるいは記憶部、格納部、バッファの一例である。通信ボード８１６、キーボード８１４、ＦＤＤ８１７などは、入力部、入力装置の一例である。また、通信ボード８１６、表示装置８１３、プリンタ装置８１９などは、出力部、出力装置の一例である。
【００１４】
通信ボード８１６は、ネットワーク（ＬＡＮ等）に接続されている。通信ボード８１６は、ＬＡＮに限らず、インターネット、ＩＳＤＮ等のＷＡＮ（ワイドエリアネットワーク）などに接続されていても構わない。
【００１５】
磁気ディスク装置８２０には、オペレーティングシステム８２１（ＯＳ）、ウィンドウシステム８２２、プログラム群８２３、ファイル群８２４が記憶されている。プログラム群８２３のプログラムは、ＣＰＵ８１０、オペレーティングシステム８２１、ウィンドウシステム８２２により実行される。
【００１６】
上記プログラム群８２３には、以下に述べる実施の形態の説明において説明する機能を実行するプログラムが記憶されている。プログラムは、ＣＰＵ８１０により読み出され実行される。すなわち、プログラムは、以下に述べる「計算機の制御部」、「入出力部３００の制御部」としてコンピュータを機能させるものである。あるいは、以下に述べる「〜部」の手順や方法をコンピュータに実行させるものである。
【００１７】
ファイル群８２４には、以下に述べる実施の形態の説明において、「〜の判定結果」、「〜の算出結果」、「〜の抽出結果」、「〜の生成結果」、「〜の処理結果」として説明する情報や、データや信号値や変数値やパラメータなどが、「〜ファイル」や「〜データベース」の各項目として記憶されている。「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してＣＰＵ８１０によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示などのＣＰＵの動作に用いられる。抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示のＣＰＵの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリやキャッシュメモリやバッファメモリに一時的に記憶される。
【００１８】
また、以下に述べる実施の形態の説明においては、データや信号値は、ＲＡＭ８１２のメモリ、ＦＤＤ８１７のフレキシブルディスク、ＣＤＤ８１８のコンパクトディスク、磁気ディスク装置８２０の磁気ディスク、その他光ディスク、ミニディスク、ＤＶＤ（Ｄｉｇｉｔａｌ・Ｖｅｒｓａｔｉｌｅ・Ｄｉｓｋ）等の記録媒体に記録される。また、データや信号は、バス８２５や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
【００１９】
図２は、実施の形態１におけるパイプライン処理システム１０００のシステム構成図である。パイプライン処理システム１０００は、複数の常用系計算機１ａ〜ｎａ、複数の待機系計算機１ｂ〜ｎｂ、入出力部３００（送信装置）を備える。これらは、ネットワーク１００に接続している。常用系計算機１ａには待機系計算機１ｂが対応し、常用系計算機２ａには待機系計算機２ｂが対応し、以下同様に常用系計算機ｎａには待機系計算機ｎｂが対応する。待機系計算機は、対応する常用系計算機に障害が発生した場合にこの常用系計算機に代替して使用される。入出力部３００は、外部機器２００に接続している。
【００２０】
なお、以下では「計算機」という場合は、常用系計算機と待機系計算機との両者を含む意味である。
【００２１】
（一貫性維持機能付き共有メモリ装置）
それぞれの常用系計算機及び待機系計算機は、内部メッセージキュー１１と、一貫性維持機能付き共有メモリ装置１２とを備えている。一貫性維持機能付き共有メモリ装置１２とは、ある処理がコミットされて何らかのデータが格納されると、ネットワークを介して他の一貫性維持機能付き共有メモリ装置にも同一のデータが格納される機能のメモリである。後述のように、例えば、常用系計算機１ａの一貫性維持機能付き共有メモリ装置１２ａ（第１メモリ）の外部メッセージＩＤの値が更新されると、待機系計算機１ｂの一貫性維持機能付き共有メモリ装置１２ｂ（第２メモリ）の外部メッセージＩＤの値が更新後の一貫性維持機能付き共有メモリ装置１２ａの外部メッセージＩＤの値と同一の値に更新される。常用系計算機２ａ〜ｎａ、待機系計算機２ｂ〜ｎｂの一貫性維持機能付き共有メモリ装置の内容も、同様に、常用系計算機１ａの一貫性維持機能付き共有メモリ装置１２ａと同じ値の外部メッセージＩＤに更新される。従って、パイプライン処理システム１０００の計算機の一貫性維持機能付き共有メモリ装置は、同じ状態が保持される。
【００２２】
（内部メッセージと外部メッセージ）
図２において、パイプライン処理システム１０００を構成する計算機間で送受信されるメッセージを「内部メッセージ」と呼び、パイプライン処理システム１０００を構成する計算機と外部機器２００との間で送受信されるメッセージを「外部メッセージ」と呼ぶこととする。
【００２３】
入出力部３００は、計算機から送信される外部メッセージを保管するための外部メッセージキュー３０１を持つ。
【００２４】
図３は、パイプライン処理システム１０００における、計算機の動作を示すフローチャートである。図４は、入出力部３００の動作を示すフローチャートである。図５は、図３と図４とをまとめ、シーケンス化した図である。図６は、常用系計算機で異常が起きた場合における常用系計算機、待機系計算機の動作を示すフローチャートである。
【００２５】
まず、図５を参照してパイプライン処理システム１０００における計算機及び入出力部３００の動作を説明する。以下では、計算機が行なう処理（動作）として説明するが、実際には計算機の処理は、「ＣＰＵとプログラム」（計算機の制御部）により実現される処理である。同様に入出力部の処理（動作）として説明するものは、実際には、「ＣＰＵとプログラム」（入出力部の制御部）により実現される処理である。
【００２６】
（計算機の動作）
計算機は、内部メッセージの処理中に外部機器２００へのメッセージ送信（外部メッセージの送信）を行う必要が生じた際、まず、自己の有する一貫性維持装置付き共有メモリ装置にアクセスし、外部メッセージＩＤを取得する（Ｓ１１）。次に、計算機は、取得した外部メッセージＩＤを、送信するべき外部メッセージに付与し、外部メッセージＩＤの付加された外部メッセージ（以下、「ＩＤ付き外部メッセージ」という場合がある）を入出力部３００へ送信する（Ｓ１２）。送信されたＩＤ付き外部メッセージは、入出力部３００が外部メッセージキュー３０１に保存する。最後に、計算機は、自己の有する一貫性維持装置付き共有メモリ装置の外部メッセージＩＤを更新し、内部メッセージの処理が完了した場合に、更新した外部メッセージＩＤを自己の一貫性維持装置付き共有メモリ装置に保存する（Ｓ１３）。この場合、前述の一貫性維持装置付き共有メモリ装置の説明で述べたように、この内部メッセージの処理完了に伴う外部メッセージの更新保存は、ネットワーク１００を介して他の計算機にも伝播し、他の計算機の一貫性維持装置付き共有メモリ装置も、同様に、外部メッセージが更新される。結果として、パイプライン処理システム１０００の全部の計算機の一貫性維持装置付き共有メモリ装置の外部メッセージの値は同一になる。
【００２７】
（入出力部３００の動作）
入出力部３００は、外部メッセージキューからＩＤ付き外部メッセージを取得し（Ｓ２１、Ｓ２２）、まず、取得したＩＤ付き外部メッセージに付与された外部メッセージＩＤが未送信かどうかを調べる（Ｓ２３）。つまり、入出力部３００は、外部機器２００宛てに外部メッセージを送信する時には、送信した外部メッセージに付加されていた外部メッセージＩＤを自己の外部メッセージ記録（図示していない）に記録しておく。そして、外部メッセージＩＤを送信する時には、送信前に、外部メッセージ記録部に送信しようとする外部メッセージに付加されている外部メッセージと同一の外部メッセージが記録されているかどうかを判定する。未送信であれば（記録がなければ）、入出力部３００は、外部メッセージＩＤを取り去った外部メッセージを外部機器２００へ送信し、当該外部メッセージＩＤを送信済みとして外部メッセージ記録部に記録する。送信済みであれば（記録があれば）、入出力部３００は、単にそのＩＤ付き外部メッセージを破棄する。
【００２８】
図６を参照して、常用系計算機で異常が起きた場合における常用系計算機、待機系計算機の動作を説明する。図６は、常用系計算機１ａに障害が発生し、常用系計算機１ａから待機系計算機１ｂに処理が移行する場合の例を示している。
【００２９】
（Ｓ１０１）
ステップ１０１において、常用系計算機１ａでは、内部メッセージであるＭＳＧ１、ＭＳＧ２，ＭＳＧ３が順次に発生し、これらの内部メッセージＭＳＧ１〜ＭＳＧ３が常用系計算機１ａの内部メッセージキュー１１ａに格納される。常用系計算機１ａと同様に、待機系計算機１ｂでも内部メッセージＭＳＧ１〜ＭＳＧ３が内部メッセージキュー１１ｂに格納される。
【００３０】
（Ｓ１０２、Ｓ１０３）
Ｓ１０２において、常用系計算機１ａが内部メッセージＭＳＧ１の処理を開始すると外部メッセージを送信する必要が生じ（Ｓ１０３）、常用系計算機１ａは、図５に示したＳ１１〜Ｓ１３の処理に従って、ＩＤ付き外部メッセージ（外部メッセージＩＤ＝００１とする）を入出力部３００に送信する。入出力部３００はＩＤ付き外部メッセージを受信し、ＩＤを取り去って外部メッセージを外部機器２００に送信する。
【００３１】
（Ｓ１０４）
Ｓ１０４において、常用系計算機１ａが内部メッセージＭＳＧ１の処理中に障害が発生し処理が中断したとする。この場合、内部メッセージＭＳＧ１の処理は完了していないので、常用系計算機１ａの一貫性維持機能付き共有メモリ装置１２ａの外部メッセージＩＤ（現在の値＝００１）は更新されない。
【００３２】
（Ｓ１０５）
障害が発生すると、Ｓ１０５において、常用系計算機１ａから待機系計算機１ｂに切り替わり、待機系計算機１ｂが、内部メッセージＭＳＧ１の処理を最初から実行開始する。内部メッセージＭＳＧ１の処理では外部メッセージの送信の必要が生じるので、待機系計算機１ｂは、ＩＤ付き外部メッセージを入出力部３００に送信する。この場合、待機系計算機１ｂが送信するＩＤ付き外部メッセージの外部メッセージＩＤは「ＩＤ＝００１」であり、常用系計算機１ａが送信したＩＤ付き外部メッセージのＩＤと同じである。
【００３３】
（Ｓ１０６）
Ｓ１０６において、入出力部３００は、待機系計算機１ｂの送信したＩＤ付き外部メッセージ（ＩＤ＝００１）を受信するが、このＩＤ付き外部メッセージは、さきに常用系計算機１ａから受信したＩＤ付き外部メッセージ（ＩＤ＝００１）と外部メッセージＩＤが同一である。よって、入出力部３００は、待機系計算機１ｂから受信したＩＤ付き外部メッセージ（ＩＤ＝００１）を外部機器外部機器２００に送信することなく破棄する。
【００３４】
上記の一連の処理において、外部メッセージＩＤの更新を、「計算機での内部メッセージの処理完了とともに一貫性維持装置付き共有メモリに対して行う」ことで、待機系への切り替えが生じた際、同一の外部メッセージＩＤを付与することが可能となる。入出力部３００では、この外部メッセージＩＤを参照して送信済みの外部メッセージを破棄することで、外部メッセージを２回送信するという問題無しに計算機の対故障性を高めることができる。
【００３５】
実施の形態２．
（複数の入出力部）
上記実施の形態１では、入出力部３００は１つであったが、パイプライン処理システム１０００が２つ以上の入出力部３００（待機系送信装置）をもつ構成にしても、同様の動作を行わせることができる。入出力部３００が１つしかない場合は、入出力部３００が故障すると、計算機は内部メッセージ処理を継続処理できる状態であるにもかかわらず、計算機から外部機器２００への外部メッセージの送信ができなくなってしまう。従って入出力部３００を複数用意すれば、現在使用中の入出力部３００が故障を検出した際、他の入出力部３００へ処理を切り換えることで、計算機から外部機器２００へ外部メッセージの送信を継続することができ、対故障性をさらに高めることができる。
【００３６】
なお、入出力部３００の故障を検出する方法としては、計算機と入出力部３００のハートビートを行う方法や、入出力部３００においてプロセスの状態を監視するなどの方法があるが、その他の方法を用いてもよい。
【００３７】
実施の形態３．
（複数のネットワーク）
上記実施の形態１、２では、入出力部３００及び各計算機が接続するネットワーク１００が１つだけであったが、ネットワーク接続を多重化した構成にしても同様の動作を行わせることができる。この場合、ネットワーク障害が発生した場合でも、外部メッセージの送信を行うことができ、対故障性をさらに高めることができる。すなわち、常用系計算機と、この常用系計算機の代替機となる待機系計算機と、入出力部３００とは、ネットワーク１００に接続して互いに通信すると共に、ネットワーク１００に障害が発生した場合には、ネットワーク１００に代替する第２のネットワークに接続し、互いに通信可能である。
【００３８】
実施の形態４．
上記実施の形態１〜３では、入出力部３００と計算機とがわかれているが、計算機が入出力部３００の機能を兼ねてもよい。この場合、入出力部３００ではない計算機は、外部メッセージの送信に際して、入出力部３００の機能を兼ねた計算機に対して外部メッセージの送信を行う。例えば、入出力部３００は、常用系計算機１ａと待機系計算機１ｂとのいずれかに組み込まれているような場合である。
【００３９】
以上の実施の形態では複数の計算機と入出力部３００とからなるパイプライン処理システム１０００を説明したが、このパイプライン処理システム１０００は、複数の計算機と入出力部３００とを使用した通信システムとして把握することも可能である。
【００４０】
以上の実施の形態では、ネットワークによって接続され、一貫性維持装置付き共有メモリ装置、正常時に処理の同期を取る手段、異常発生時に待機系計算機が処理を再開する手段を備えた常用系計算機及び待機系計算機から成るパイプライン処理システムで、同様の機能を持たない外部機器との通信を行う場合を説明した。
【図面の簡単な説明】
【００４１】
【図１】実施の形態１に係る計算機、入出力部のハードウェア構成の例を示す図。
【図２】実施の形態１に係るパイプライン処理システムのシステム構成を示す図。
【図３】実施の形態１に係る計算機の動作を示すフローチャート。
【図４】実施の形態１に係る入出力部の動作例を示すフローチャート。
【図５】図３と図４との動作をまとめたシーケンス図。
【図６】実施の形態１に係る常用系計算機１ａから待機系計算機１ｂへの処理移行を説明する図。
【符号の説明】
【００４２】
１００  ネットワーク、２００  外部機器、３００  入出力部、３０１  外部メッセージキュー、１ａ  常用系計算機、１ｂ  待機系計算機、１１ａ，１１ｂ  内部メッセージキュー、１２ａ，１２ｂ  共有メモリ装置、１０００  パイプライン処理システム。
【図１】
2010009481.tif 000003
【図２】
2010009481.tif 000004
【図３】
2010009481.tif 000005
【図４】
2010009481.tif 000006
【図５】
2010009481.tif 000007
【図６】
2010009481.tif 000008