(57)【特許請求の範囲】
【請求項１】
割り当てられたプロセスを実行するプロセス制御部と、割り振られたプロセスを監視して当該プロセスの実行に要した処理時間を収集する処理時間収集部とを備えるプロセス制御計算機と、
前記プロセス制御部にプロセスを割り当てる常用系移行プロセス決定部を備える常用系移行プロセス決定計算機と、
前記常用系移行プロセス決定部に異常が発生した場合に新たな常用系移行プロセス決定部として前記プロセス制御部にプロセスを割り当てる待機系移行プロセス決定部を備える待機系移行プロセス決定計算機と、
前記処理時間収集部にプロセスを割り振る常用系処理時間収集部監視部を備える常用系処理時間収集部監視計算機と、
前記常用系処理時間収集部監視部に異常が発生した場合に新たな常用系処理時間収集部監視部として前記処理時間収集部にプロセスを割り振る待機系処理時間収集部監視部を備える待機系処理時間収集部監視計算機と
を有することを特徴とする計算機システム。
【請求項２】
前記常用系移行プロセス決定計算機と前記待機系移行プロセス決定計算機とのいずれかと前記常用系処理時間収集部監視計算機と前記待機系処理時間収集部監視計算機とのいずれかとが同一の計算機である
ことを特徴とする請求項１記載の計算機システム。
【請求項３】
前記常用系処理時間収集部監視計算機と前記待機系処理時間収集部監視計算機と前記プロセス制御計算機とのいずれかは、前記待機系移行プロセス決定部が新たな常用系移行プロセス決定部として前記プロセス制御部にプロセスを割り当てる場合、前記常用系移行プロセス決定部に異常が発生した場合に新たな常用系移行プロセス決定部として前記プロセス制御部にプロセスを割り当てる待機系移行プロセス決定部を備え、
前記常用系移行プロセス決定計算機と前記待機系移行プロセス決定計算機と前記プロセス制御計算機とのいずれかは、前記待機系処理時間収集部監視部が新たな常用系処理時間収集部監視部として各計算機の処理時間収集部にプロセスを割り振る場合、前記常用系処理時間収集部監視部に異常が発生した場合に新たな常用系処理時間収集部監視部として前記処理時間収集部にプロセスを割り振る待機系処理時間収集部監視部を備える
ことを特徴とする請求項１記載の計算機システム。
【請求項４】
プロセス制御計算機のプロセス制御部が割り当てられたプロセスを実行し、
前記プロセス制御計算機の処理時間収集部が割り振られたプロセスを監視して当該プロセスの実行に要した処理時間を収集し、
常用系移行プロセス決定計算機の常用系移行プロセス決定部が、前記プロセス制御部にプロセスを割り当て、
待機系移行プロセス決定計算機の待機系移行プロセス決定部が、前記常用系移行プロセス決定部の異常を検出した場合に新たな常用系移行プロセス決定部として前記プロセス制御部にプロセスを割り当て、
常用系処理時間収集部監視計算機の常用系処理時間収集部監視部が、前記処理時間収集部にプロセスを割り振り、
待機系処理時間収集部監視計算機の待機系処理時間収集部監視部が、前記常用系処理時間収集部監視部の異常を検出した場合に新たな常用系処理時間収集部監視部として前記処理時間収集部にプロセスを割り振る
ことを特徴とする計算機システムの計算機制御方法。
【請求項５】
請求項４記載の計算機制御方法をコンピュータに実行させる計算機制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、例えば、複数の計算機がネットワークを形成して、連携して複数のプロセスを並行処理する分散システムの可用性を向上させるための計算機システム、計算機システムの計算機制御方法および計算機制御プログラムに関するものである。
【背景技術】
【０００２】
従来の計算機リソース動的制御方式は、従来例１として例えば特許文献１によれば、繰り返し周期ごとに処理時間と処理データのデータの内容、データの大きさと前回の処理時間をもとにしてプロセスの次の処理時間を予測する手段と、処理予測時間の大きさの範囲ごとに定められたタスクの実行順序案を保持し、予測によって求めた次の処理時間のデータに基づいて、あらかじめ定められた実行順序案に基づいて次の周期の処理順序を決定することにより、処理のデッドラインミス発生を防止することを特徴としている。デッドラインミス発生とは所定時間内に終了しないことを言う。
【０００３】
また従来例２として他の特許文献２によれば、処理すべきプロセス量を単位化して、例えばあるプロセスは８単位、他のプロセスは５単位等とし、この細分化されたプロセスの単位を基準にして、各プロセッサに処理する単位を割当てる方法が示されている。従ってプロセスが持つ単位量を管理するプロセス管理手段と、実行するプロセッサを管理するプロセッサ管理手段と、割当リソース量決定手段とを持っている。
【特許文献１】特開平４−１７１５３８号公報
【特許文献２】特開平６−２８３２３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上記の従来例１や従来例２では、１つの計算機に障害が発生した場合に、デッドラインミスが発生し続けることを防げない、という課題がある。
【０００５】
この発明は上記のような課題を解決するためになされたもので、例えば、１つの機能に障害が発生した場合でも、プロセスのデッドラインミスの継続発生を防止することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の計算機システムは、特定処理の実行を開始する際の特定処理開始通知の送信と特定処理の実行を終了する際の特定処理終了通知の送信とを待機系計算機に対して行う常用系計算機と、待機系計算機と、常用系計算機および待機系計算機以外の計算機であり特定処理の実行契機となる事象が発生した際に事象発生通知を常用系計算機に送信する一般計算機とを有する計算機システムであり、常用系計算機と待機系計算機とは定期的に通信を行って相手から通信が無い場合に相手の計算機が異常を発生したと判定する制御部を備え、待機系計算機の制御部は常用系計算機から特定処理開始通知を受信する前に常用系計算機に異常が発生した際に、新たな常用系計算機として稼動し、新たな常用系計算機として稼働することを一般計算機に通知する常用系稼働処理と、新たな常用系計算機として稼働することを通知した一般計算機から事象発生通知を受信した場合に特定処理を実行する第１の実行処理と、一般計算機を新たな待機系計算機として稼働させる待機系稼働処理と、新たな待機系計算機に記憶機器に記憶している計算機システムの状態情報をコピーさせる状態コピー処理とをＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）を用いて実行する特定処理開始通知前制御部と、常用系計算機から特定処理開始通知を受信した後から常用系計算機から特定処理終了通知を受信するまでの間に常用系計算機に異常が発生した際に、前記常用系稼働処理と、前記待機系稼働処理と、前記状態コピー処理と、未実行である特定処理を実行する第２の実行処理とをＣＰＵを用いて実行する特定処理終了通知前制御部とを備えることを特徴とする。
【発明の効果】
【０００７】
本発明によれば、常用系計算機に異常が発生した場合に待機系計算機を新たな待機系計算機として稼働させることができるため、例えば、１つの機能に障害が発生した場合でもプロセスのデッドラインミスの継続発生を防止することができる。
【発明を実施するための最良の形態】
【０００８】
実施の形態１．
図１は、実施の形態１における計算機システム２００の構成図である。
計算機システム２００は複数の計算機２１０が通信ネットワークで接続され、各計算機２１０がデータ通信を行う。
計算機２１０には、特定の処理を実行する常用系計算機と、常用系計算機が故障した際に新たな常用系計算機として稼働する待機系計算機と、常用系計算機でも待機系計算機でもない一般計算機とがある。一般計算機は待機系計算機が新たな常用系計算機として稼働した場合や待機系計算機が故障した場合に新たな待機系計算機として稼働する。
また、常用系計算機および待機系計算機には制御部３００（制御部３０５）が存在する。
【０００９】
待機系計算機の制御部３０５は、常用系計算機が故障した際に、新たな常用系計算機の制御部３００として稼働し、一般計算機を新たな待機系計算機として稼働させる計算機制御処理を行う。
また、常用系計算機の制御部３００は、待機系計算機が故障した際に、一般計算機を新たな待機系計算機として稼働させる計算機制御処理を行う。
【００１０】
図２は、実施の形態１における計算機２１０のハードウェア資源の一例を示す図である。
図２において、計算機２１０は、プログラムを実行するＣＰＵ９１１（Ｃｅｎｔｒａｌ・Ｐｒｏｃｅｓｓｉｎｇ・Ｕｎｉｔ、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう）を備えている。ＣＰＵ９１１は、バス９１２を介してＲＯＭ９１３、ＲＡＭ９１４、通信ボード９１５、表示装置９０１、キーボード９０２、マウス９０３、ＦＤＤ９０４（Ｆｌｅｘｉｂｌｅ・Ｄｉｓｋ・Ｄｒｉｖｅ）、ＣＤＤ９０５（コンパクトディスク装置）、プリンタ装置９０６、スキャナ装置９０７、マイク９０８、スピーカー９０９、磁気ディスク装置９２０と接続され、これらのハードウェアデバイスを制御する。磁気ディスク装置９２０の代わりに、光ディスク装置、メモリカード読み書き装置などの記憶装置でもよい。
ＲＡＭ９１４は、揮発性メモリの一例である。ＲＯＭ９１３、ＦＤＤ９０４、ＣＤＤ９０５、磁気ディスク装置９２０の記憶媒体は、不揮発性メモリの一例である。これらは、記憶機器、記憶装置あるいは記憶部の一例である。
通信ボード９１５、キーボード９０２、スキャナ装置９０７、ＦＤＤ９０４などは、入力機器、入力装置あるいは入力部の一例である。
また、通信ボード９１５、表示装置９０１、プリンタ装置９０６などは、出力機器、出力装置あるいは出力部の一例である。
【００１１】
通信ボード９１５は計算機システム２００の通信ネットワークに接続されている。
磁気ディスク装置９２０には、ＯＳ９２１（オペレーティングシステム）、ウィンドウシステム９２２、プログラム群９２３、ファイル群９２４が記憶されている。プログラム群９２３のプログラムは、ＣＰＵ９１１、ＯＳ９２１、ウィンドウシステム９２２により実行される。
【００１２】
上記プログラム群９２３には、実施の形態において「〜部」として説明する機能を実行するプログラムが記憶されている。プログラムは、ＣＰＵ９１１により読み出され実行される。
ファイル群９２４には、実施の形態において、「〜部」の機能を実行した際の「〜の判定結果」、「〜の計算結果」、「〜の処理結果」などの結果データ、「〜部」の機能を実行するプログラム間で受け渡しするデータ、その他の情報やデータや信号値や変数値やパラメータが、「〜ファイル」や「〜データベース」の各項目として記憶されている。「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してＣＰＵ９１１によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示などのＣＰＵの動作に用いられる。抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示のＣＰＵの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリやキャッシュメモリやバッファメモリに一時的に記憶される。
また、実施の形態において説明するフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、ＲＡＭ９１４のメモリ、ＦＤＤ９０４のフレキシブルディスク、ＣＤＤ９０５のコンパクトディスク、磁気ディスク装置９２０の磁気ディスク、その他光ディスク、ミニディスク、ＤＶＤ（Ｄｉｇｉｔａｌ・Ｖｅｒｓａｔｉｌｅ・Ｄｉｓｃ）等の記録媒体に記録される。また、データや信号値は、バス９１２や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
【００１３】
また、実施の形態において「〜部」として説明するものは、「〜回路」、「〜装置」、「〜機器」、「〜手段」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明するものは、ＲＯＭ９１３に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、ＤＶＤ等の記録媒体に記憶される。プログラムはＣＰＵ９１１により読み出され、ＣＰＵ９１１により実行される。すなわち、計算機制御プログラムは、「〜部」としてコンピュータを機能させるものである。あるいは、「〜部」の手順や方法をコンピュータに実行させるものである。
【００１４】
図３は、実施の形態１における常用系計算機の制御部３００の構成図である。
実施の形態１における常用系計算機の制御部３００の構成について、図３に基づいて以下に説明する。
常用系計算機の制御部３００は常用系プロセス制御部３０１、常用系異常検出部３０２、常用系制御判定部３０３、待機系制御部３７０および常用系記憶部３９０を備える。また、常用系計算機の制御部３００は、待機系計算機から新たな常用系計算機に切り替わってから待機系計算機の計算機制御処理が終了するまで、処理開始通知前制御部３３０、処理終了通知前制御部３４０および待機系稼動中制御部３６０を備える。
各部の機能について以下に説明する。
【００１５】
まず、常用系プロセス制御部３０１（計算機管理部）について説明する。
常用系プロセス制御部３０１は、計算機システム２００に発生したプロセスをどの計算機２１０に実行させるかを制御するプロセス制御処理をＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｃｅｓｓｉｎｇ  Ｕｎｉｔ）を用いて実行する。プロセス制御処理は特定処理の一例である。
常用系プロセス制御部３０１は空きリソース量、リソース不足、割り当てプロセスなどのリソースに関する情報（計算機リソース情報）を各計算機２１０から取得し、各計算機２１０から取得した計算機リソース情報を計算機システム２００の状態情報として常用系記憶部３９０に記憶する。
そして、常用系プロセス制御部３０１は計算機システム２００の状態情報が示す各計算機２１０のリソース負荷状態に応じて各プロセスを各計算機２１０に割り当てる。
また、常用系プロセス制御部３０１はどの計算機２１０にどのプロセスを割り当てたかを割当プロセス情報として記憶機器に記憶する。
以下、計算機システム２００の状態情報や割当プロセス情報など、プロセス制御処理に用いる情報をプロセス制御情報とする。
【００１６】
一般計算機は常用系プロセス制御部３０１により割り当てられたプロセスをＣＰＵやメモリなどのリソースを用いて実行する。
また、一般計算機はリソース不足が発生した際にリソース不足の発生を常用系プロセス制御部３０１に通知する。リソース不足の発生はプロセス制御処理の実行契機となり、常用系プロセス制御部３０１は一般計算機からリソース不足の発生を示す通知を受けた場合にプロセス制御処理を実行してリソース不足を解消する。以下、リソース不足の発生を示す通知を事象発生通知とする。
【００１７】
また、常用系プロセス制御部３０１は、常用系計算機が故障した際に待機系計算機が新たな常用系計算機としてプロセス制御処理を実行できるように、プロセス制御処理の実行に際して以下に説明する各種通知データを待機系計算機の後述する待機系プロセス制御部３０６に送信する。このとき、各通知にはプロセス制御情報に関する情報が含まれている。
【００１８】
常用系プロセス制御部３０１はプロセス制御処理の実行に際して以下の通知を待機系計算機の待機系プロセス制御部３０６に送信する。
１．プロセス制御処理の実行を開始する際の処理開始通知
２．プロセス制御処理の実行を終了する際の処理終了通知
【００１９】
次に、常用系異常検出部３０２について説明する。
常用系異常検出部３０２は、例えば、待機系計算機および一般計算機に所定の周期で応答要求を送信し、所定の時間内に応答要求に対する応答を受信できなかった場合に当該計算機に故障が発生したものと判定する。
【００２０】
次に、常用系制御判定部３０３について説明する。
常用系制御判定部３０３は常用系異常検出部３０２が待機系計算機の異常を検出した場合に待機系制御部３７０を動作させ、常用系異常検出部３０２が一般計算機の異常を検出した場合に常用系プロセス制御部３０１を動作させる。
【００２１】
次に、待機系制御部３７０について説明する。
待機系制御部３７０は、待機系計算機に異常が発生した際に、後述する（Ｄ）待機系制御処理をＣＰＵを用いて実行する。（Ｄ）待機系制御処理は常用系計算機の制御部３００が実行する計算機制御処理の一例である。
【００２２】
次に、常用系記憶部３９０について説明する。
常用系記憶部３９０は各計算機２１０の計算機リソース情報を計算機システム２００の状態情報として記憶する記憶機器である。
また、常用系記憶部３９０はどの計算機２１０にどのプロセスが割り当てられているかを示す割当プロセス情報を記憶する。
また、常用系記憶部３９０は、計算機システム２００の状態情報や割当プロセス情報と併せて、プロセス制御処理に用いる情報をプロセス制御情報として記憶する。
【００２３】
また、常用系記憶部３９０はどの計算機２１０が待機系計算機として稼働しているか、どの計算機２１０が一般計算機として稼働しているかを示す計算機稼働情報を記憶する。
待機系制御部３７０は計算機稼働情報に基づいて各計算機２１０を識別することができる。
【００２４】
新たに稼動し始めた常用系計算機は、待機系計算機として稼働していたときに実行し始めた計算機制御処理が終了するまで、後述する処理開始通知前制御部３３０、処理終了通知前制御部３４０および待機系稼動中制御部３６０を備える。
【００２５】
図４は、実施の形態１における待機系計算機の制御部３０５の構成図である。
実施の形態１における待機系計算機の制御部３０５の構成について、図４に基づいて以下に説明する。
待機系計算機の制御部３０５は待機系プロセス制御部３０６、待機系異常検出部３０７、待機系制御判定部３０８、処理開始通知前制御部３３０、処理終了通知前制御部３４０、待機系稼動中制御部３６０および待機系記憶部３９１を備える。
各部の機能について以下に説明する。
【００２６】
まず、待機系プロセス制御部３０６（計算機管理部）について説明する。
待機系プロセス制御部３０６は、常用系プロセス制御部３０１から送信された前記の各通知が示す情報を待機系記憶部３９１に記憶済みのプロセス制御情報に反映することによって常用系計算機と同じ内容のプロセス制御情報を記憶し、常用系計算機の故障の発生に備える。以下、待機系プロセス制御部３０６が常用系計算機の故障の発生に備える処理のことを待機系処理とする。
【００２７】
そして、待機系プロセス制御部３０６は、常用系計算機が故障し待機系計算機が新たな常用系計算機として稼働した際に、常用系プロセス制御部３０１として故障前の常用系計算機と同じプロセス制御処理を実行する。つまり、待機系プロセス制御部３０６は故障前に常用系計算機の常用系プロセス制御部３０１が実行していたプロセス制御処理を引き継ぎ、新たな常用系計算機の常用系プロセス制御部３０１として稼働する。
【００２８】
次に、待機系異常検出部３０７について説明する。
待機系異常検出部３０７は、例えば、常用系計算機に所定の周期で応答要求を送信し、所定の時間内に応答要求に対する応答を受信できなかった場合に常用系計算機に故障が発生したものと判定する。
また、待機系異常検出部３０７は、待機系プロセス制御部３０６が常用系計算機の常用系プロセス制御部３０１から受信した各通知に基づいて、どのタイミングで常用系計算機が故障したかを判定する。
【００２９】
次に、待機系制御判定部３０８について説明する。
待機系制御判定部３０８は、待機系プロセス制御部３０６が常用系計算機から（１）処理開始通知（特定処理開始通知の一例）を受信する前に、待機系異常検出部３０７が常用系計算機に異常が発生したことを検出した場合に、処理開始通知前制御部３３０を動作させる。
また、待機系制御判定部３０８は、待機系プロセス制御部３０６が常用系計算機から（１）処理開始通知（特定処理開始通知の一例）を受信した後から（２）処理終了通知（特定処理終了通知の一例）を受信するまでの間に、待機系異常検出部３０７が常用系計算機に異常が発生したことを検出した場合に、処理終了通知前制御部３４０を動作させる。
また、待機系制御判定部３０８は、新たな待機系計算機として稼働し始める際に、待機系異常検出部３０７が新たな常用系計算機に異常が発生したことを検出した場合に、待機系稼動中制御部３６０を動作させる。
【００３０】
処理開始通知前制御部３３０（特定処理開始通知前制御部、常用系稼働部の一例）は、（１）処理開始通知（特定処理開始通知の一例）の受信前に常用系計算機に異常が発生した際に、後述する（Ａ）処理開始通知前制御処理をＣＰＵを用いて実行する。（Ａ）処理開始通知前制御処理は待機系計算機の制御部３０５が実行する計算機制御処理の一例である。
【００３１】
処理終了通知前制御部３４０（特定処理終了通知前制御部、常用系稼働部の一例）は、（１）処理開始通知の受信後から（２）処理終了通知（特定処理終了通知の一例）の受信前までの間に常用系計算機に異常が発生した際に、後述する（Ｂ）処理終了通知前制御処理をＣＰＵを用いて実行する。（Ｂ）処理終了通知前制御処理は待機系計算機の制御部３０５が実行する計算機制御処理の一例である。
【００３２】
待機系稼動中制御部３６０（常用系稼働部の一例）は、（ｂ）待機系稼働処理後から（ｄ）状態コピー処理前までの間に常用系計算機に異常が発生した際に、ＣＰＵを用いて（Ｃ）待機系稼動中制御処理を実行する。（ｂ）待機系稼働処理、（ｄ）状態コピー処理および（Ｃ）待機系稼動中制御処理については後述する。（Ｃ）待機系稼動中制御処理は待機系計算機の制御部３０５が実行する計算機制御処理の一例である。
【００３３】
次に、待機系記憶部３９１について説明する。
待機系記憶部３９１は常用系計算機と同じ内容のプロセス制御情報を記憶する記憶機器である。待機系記憶部３９１は、待機系計算機が新たな常用系計算機として稼働した後、常用系記憶部３９０として機能する。
【００３４】
また、待機系記憶部３９１はどの計算機２１０が常用系計算機として稼働しているか、どの計算機２１０が一般計算機として稼働しているかを示す計算機稼働情報を記憶する。
処理開始通知前制御部３３０、処理終了通知前制御部３４０および待機系稼動中制御部３６０は計算機稼働情報に基づいて各計算機２１０を識別することができる。
【００３５】
図５は、実施の形態１における計算機制御方法を示す表である。
実施の形態１における計算機制御処理を構成する（Ａ）処理開始通知前制御処理、（Ｂ）処理終了通知前制御処理、（Ｃ）待機系稼動中時制御処理および（Ｄ）待機系制御処理について、図５に基づいて以下に説明する。
【００３６】
待機系計算機の処理開始通知前制御部３３０による（Ａ）処理開始通知前制御処理には（ａ）常用系稼働処理と（ｂ）第１の実行処理と（ｃ）待機系稼働処理と（ｄ）状態コピー処理とが含まれる。
【００３７】
待機系計算機の処理終了通知前制御部３４０による（Ｂ）処理終了通知前制御処理には（ａ）常用系稼働処理と（ｂ）第１の実行処理と（ｃ）待機系稼働処理と（ｄ）状態コピー処理と（ｅ）第２の実行処理とが含まれる。
【００３８】
待機系計算機の待機系稼動中制御部３６０による（Ｃ）待機系稼働中制御処理には（ａ）常用系稼働処理と（ｃ）待機系稼働処理と（ｄ）状態コピー処理と（ｆ）状態取得処理とが含まれる。
【００３９】
常用系計算機の待機系制御部３７０による（Ｄ）待機系制御処理には（ｃ）待機系稼働処理と（ｄ）状態コピー処理とが含まれる。
以下、（ａ）、（ｂ）、（ｃ）、（ｄ）、（ｅ）、（ｆ）の処理について説明する。
【００４０】
（ａ）常用系稼働処理において、待機系計算機の処理開始通知前制御部３３０、処理終了通知前制御部３４０および待機系稼動中制御部３６０は、待機系計算機（自計算機）を新たな常用系計算機として稼動させる。これにより、待機系異常検出部３０７が常用系計算機の故障を検出した場合に、待機系計算機上の待機系プロセス制御部３０６は自身が常用系プロセス制御部３０１になったということを知る。そして、新たな常用系計算機の常用系プロセス制御部３０１は、新規に常用系計算機の常用系プロセス制御部３０１となったことを各計算機２１０に通知する。新たな常用系計算機の常用系プロセス制御部３０１は、この通知により、リソース不足を発生している各計算機２１０に事象発生通知の再送を促す。
【００４１】
（ｂ）第１の実行処理において、新たな常用系計算機の常用系プロセス制御部３０１は、各計算機２１０から再送された事象発生通知に基づいてプロセス制御処理（特定処理の一例）を実行する。
このとき、常用系プロセス制御部３０１は、受信した事象発生通知に基づいて、リソース不足を発生した計算機２１０が実行しているプロセスを他の計算機２１０に割り当ててリソース不足を解消する。
【００４２】
（ｃ）待機系稼働処理において、待機系計算機の処理開始通知前制御部３３０、処理終了通知前制御部３４０および待機系稼動中制御部３６０、また、常用系計算機の待機系制御部３７０は、一般計算機から１台を新たな待機系計算機として選択し、選択した一般計算機を新たな待機系計算機として稼働させ、新たな待機系計算機は制御部３０５を動作させる。例えば、常用系計算機の待機系制御部３７０は新たな待機系計算機として稼働するよう一般計算機に命令を出す。そして、命令を受信した一般計算機は待機系プロセス制御部３０６に対してリソースを割り当て、待機系処理を実行可能な状態にする。
【００４３】
（ｄ）状態コピー処理において、待機系計算機の処理開始通知前制御部３３０、処理終了通知前制御部３４０および待機系稼動中制御部３６０、また、常用系計算機の待機系制御部３７０は、新たな待機系計算機の待機系プロセス制御部３０６に対して新たな常用系計算機の常用系記憶部３９０に記憶されているプロセス制御情報を送信する。新たな待機系計算機の待機系プロセス制御部３０６は受信したプロセス制御情報を待機系記憶部３９１に記憶する。
【００４４】
（ｅ）第２の実行処理において、新たな常用系計算機の常用系プロセス制御部３０１は未実行であるプロセス制御処理を実行する。
以下に具体例を挙げる。
旧常用系計算機の常用系プロセス制御部３０１は、故障前に、（１）処理開始通知の送信を待機系計算機（新たな常用系計算機）に対して行っている。ここで、処理開始通知は計算機Ａのプロセスａを計算機Ｃに割り当てることと計算機Ｂのプロセスｂを計算機Ｄに割り当てることとを示しているとする。また、旧常用系計算機は、常用系プロセス制御部３０１が計算機Ｃにプロセスａを割り当ててから計算機Ｄにプロセスｂを割り当てるまでの間に故障したものとする。旧常用系計算機が故障すると、待機系計算機（新たな常用系計算機）は、待機系異常検出部３０７が故障を検出し、新規に常用系計算機となる。そして、新たな常用系計算機の常用系プロセス制御部３０１は、旧常用系計算機から受信した処理開始通知に基づいて、プロセスａを割り当てているかを計算機Ｃに問い合わせ、プロセスｂを割り当てているかを計算機Ｄに問い合わせる。新たな常用系計算機の常用系プロセス制御部３０１は、計算機Ｃからプロセスａが割り当て済みであることを通知され、計算機Ｄからプロセスｂが割り当てられていないことを通知される。計算機Ｃと計算機Ｄとから通知を受けた新たな常用系計算機の常用系プロセス制御部３０１は、プロセスｂが未だ割り当てられていない計算機Ｄにプロセスｂを割り当てさせる。
【００４５】
（ｆ）状態取得処理において、新たな常用系計算機の常用系プロセス制御部３０１はプロセス制御情報を取得する。例えば、新たな常用系計算機の常用系プロセス制御部３０１は各計算機２１０に計算機リソース情報を要求し、各計算機２１０から受信した計算機リソース情報に基づいて、各計算機２１０のリソース負荷状態を示す計算機システム２００の状態情報と、どのプロセスがどの計算機２１０に割り当てられているかを示す割当プロセス情報とをプロセス制御情報として生成し記憶機器に記憶する。プロセス制御情報を取得することにより、新たな常用系計算機の常用系プロセス制御部３０１は、プロセス制御情報に基づいてプロセス制御処理を実行することができる。
【００４６】
図６は、実施の形態１における（Ａ）処理開始通知前制御処理を示すフローチャートである。
実施の形態１における処理開始通知前制御部３３０による（Ａ）処理開始通知前制御処理について、図６に基づいて以下に説明する。
【００４７】
まず、処理開始通知前制御部３３０は（ａ）常用系稼働処理を実行する（Ｓ２２０１）。
次に、新たな常用系計算機の常用系プロセス制御部３０１は（ｂ）第１の実行処理を実行する（Ｓ２２０２）。
次に、処理開始通知前制御部３３０は（ｃ）待機系稼働処理を実行する（Ｓ２２０３）。
そして、新たな常用系計算機の常用系プロセス制御部３０１は（ｄ）状態コピー処理を実行する（Ｓ２２０４）。
【００４８】
待機系制御判定部３０８は、待機系プロセス制御部３０６が常用系計算機から（１）処理開始通知を受信する前に、待機系異常検出部３０７が常用系計算機の故障を検出した場合、処理開始通知前制御部３３０を動作させる。
図６において、処理開始通知前制御部３３０が（ａ）常用系稼働処理（Ｓ２１０１）することにより待機系計算機は新たな常用系計算機として稼働して常用系プロセス制御部３０１を動作し、常用系プロセス制御部３０１は（ｂ）第１の実行処理（Ｓ２２０２）において事象発生通知に基づきプロセス制御処理を実行する。また、処理開始通知前制御部３３０は（ｃ）待機系稼働処理することにより一般計算機を新たな待機系計算機として稼働させ、常用系プロセス制御部３０１は（ｄ）状態コピー処理によりプロセス制御情報を新たな待機系計算機に提供する。
また、どの計算機２１０にもリソース不足が発生しておらず、常用系プロセス制御部３０１が事象発生通知を受信しない場合、（ｂ）第１の実行処理においてプロセス制御処理は実行されない。
【００４９】
図７は、実施の形態１における（Ｂ）処理終了通知前制御処理を示すフローチャートである。
実施の形態１における処理終了通知前制御部３４０が実行する（Ｂ）処理終了通知前制御処理について、図７に基づいて以下に説明する。
【００５０】
まず、処理終了通知前制御部３４０は（ａ）常用系稼働処理を実行する（Ｓ２３０１）。
次に、新たな常用系計算機の常用系プロセス制御部３０１は（ｅ）第２の実行処理を実行する（Ｓ２３０２）。
次に、新たな常用系計算機の常用系プロセス制御部３０１は（ｂ）第１の実行処理を実行する（Ｓ２３０３）。
次に、処理終了通知前制御部３４０は（ｃ）待機系稼働処理を実行する（Ｓ２３０４）。
そして、新たな常用系計算機の常用系プロセス制御部３０１は（ｄ）状態コピー処理を実行する（Ｓ２３０５）。
【００５１】
待機系制御判定部３０８は、待機系プロセス制御部３０６が常用系計算機から（１）処理開始通知を受信した後から（２）処理終了通知を受信するまでの間に、待機系異常検出部３０７が常用系計算機の故障を検出した場合、処理終了通知前制御部３４０を動作させる。
図７では、故障前の旧常用系計算機の常用系プロセス制御部３０１により一部のプロセス制御処理が実行済みである場合があるため、図６が示す処理（ａ，ｂ，ｃ，ｄ）に対して、（ｅ）第２の実行処理（Ｓ２３０２）が加わっている。
【００５２】
図８は、実施の形態１における（Ｃ）待機系稼働中制御処理を示すフローチャートである。
実施の形態１における待機系稼動中制御部３６０が実行する（Ｃ）待機系稼働中制御処理について、図８に基づいて以下に説明する。
【００５３】
ここで、待機系計算機上の処理開始通知前制御部３３０または処理終了通知前制御部３４０が、常用系計算機が故障した際に（ａ）常用系稼働処理と（ｃ）待機系稼働処理とを実行し、新たな常用系計算機の常用系プロセス制御部が（ｄ）状態コピー処理により新たな待機系計算機へプロセス制御情報を送信する前に、新たな常用系計算機に故障が発生したものとする。
このとき、（ｃ）待機系稼働処理により稼働した新たな待機系計算機の待機系制御判定部３０８は、待機系稼動中制御部３６０を動作させる。
【００５４】
新たな待機系計算機の待機系稼動中制御部３６０は、（ａ）常用系稼働処理（常用系第２稼働処理）を実行して、自身の計算機２１０を新たな（第２の）常用系計算機として稼働させる（Ｓ２４０１）。
次に、新たな常用系計算機の常用系プロセス制御部３０１は（ｆ）状態取得処理を実行して、プロセス制御情報を取得する（Ｓ２４０２）。
次に、新たな常用系計算機の待機系稼動中制御部３６０は、（ｃ）待機系稼働処理を実行して、一般計算機を新たな（第２の）待機系計算機として稼働させる（Ｓ２４０３）。
そして、新たな常用系計算機の常用系プロセス制御部３０１は（ｄ）状態コピー処理を実行して、Ｓ２４０３で稼働した新たな（第２の）待機系計算機の待機系プロセス制御部３０６にプロセス制御情報を送信する（Ｓ２４０４）。
【００５５】
図９は、実施の形態１における（Ｄ）待機系制御処理を示すフローチャートである。
常用系計算機の常用系制御判定部３０３は常用系異常検出部３０２が待機系計算機の異常を検出した場合に待機系制御部３７０を動作させる。
実施の形態１における常用系計算機の待機系制御部３７０が実行する（Ｄ）待機系制御処理について、図９に基づいて以下に説明する。
【００５６】
まず、常用系計算機の待機系制御部３７０は（ｃ）待機系稼働処理を実行する（Ｓ２５０１）。
そして、常用系計算機の常用系プロセス制御部３０１は（ｄ）状態コピー処理を実行する（Ｓ２５０２）。
【００５７】
実施の形態１における計算機システム２００は、どのようなタイミングで常用系計算機または待機系計算機が故障した場合でも、前記計算機制御処理により常用系計算機および待機系計算機の機能（特定の処理の実行など）を確保し、システムの可用性を向上させることができる。
【００５８】
実施の形態２．
本実施の形態における常用系計算機の常用系プロセス制御部３０１はどの計算機２１０にどのプロセスが割り当てられているか管理するプロセス制御処理を実行する。
以下、前記実施の形態１と異なる事項について説明し、説明しない事項については前記実施の形態１と同様である。
【００５９】
図１０は、実施の形態２における常用系計算機の常用系プロセス制御部３０１の構成図である。
実施の形態２における常用系計算機（制御装置の一例）の常用系プロセス制御部３０１の構成について、図１０に基づいて以下に説明する。
【００６０】
常用系計算機の常用系プロセス制御部３０１は、割当プロセス検出部３８２、割当先計算機検出部３８３およびプロセス割当部３８４を備える。
【００６１】
割当プロセス検出部３８２は、常用系計算機の制御部３００が備える常用系異常検出部３０２（異常検出部）が検出した計算機２１０に割り当てている（計算機２１０が管理している）プロセスを、前記割当プロセス情報（プロセス対応情報の一例）に基づきＣＰＵ９１１を用いて検出する。
割当先計算機検出部３８３は、異常検出部３８１が検出した計算機２１０以外の各計算機２１０の中で、割り当てられているプロセスの数・リソース使用量が一番少ない計算機２１０を（または、プロセス数・リソース使用量の少ない順で計算機２１０を）、前記割当プロセス情報に基づきＣＰＵ９１１を用いて検出する。
プロセス割当部３８４は、割当先計算機検出部３８３が検出した計算機２１０に割当プロセス検出部３８２が検出したプロセスを管理するようＣＰＵ９１１を用いて命令する。管理する情報としては、例えばプロセスの処理開始時刻、処理終了時刻などがある。
【００６２】
前記常用系記憶部３９０は、複数の計算機２１０により実行される複数のプロセスについて、管理しているプロセスとプロセスを管理している計算機２１０とを対応付けた前記割当プロセス情報を記憶する。
【００６３】
図１１は、実施の形態２における常用系プロセス制御部３０１による、ある計算機２１０が故障時におけるプロセス制御方法を示すフローチャートである。
実施の形態２における常用系プロセス制御部３０１が実行するプロセス制御処理について、図１１に基づいて以下に説明する。
「〜部」で説明する常用系プロセス制御部３０１の各構成要素は以下の処理をＣＰＵ９１１を用いて実行する。
【００６４】
ここで、常用系計算機の制御部３００が備える常用系異常検出部３０２は異常を発生した計算機２１０をＣＰＵ９１１を用いて検出したものとする（異常検出処理）。
【００６５】
＜Ｓ２６０１：割当プロセス検出処理＞
まず、常用系プロセス制御部３０１の割当プロセス検出部３８２は、常用系異常検出部３０２で検出された計算機２１０に割り当てられているプロセスを、常用系記憶部３９０に記憶されている割当プロセス情報に基づきＣＰＵ９１１を用いて検出する。
このとき、割当プロセス検出部３８２は、常用系異常検出部３０２から故障した計算機２１０の識別子を入力し、、常用系異常検出部３０２から入力した計算機２１０の識別子に対応付けられているプロセスの識別子を割当プロセス情報から取得する。そして、常用系異常検出部３０２から入力した計算機２１０の識別子と割当プロセス情報から取得したプロセスの識別子とを割当先計算機検出部３８３に出力する。
【００６６】
＜Ｓ２６０２：割当先計算機検出処理＞
常用系プロセス制御部３０１の割当先計算機検出部３８３は、常用系異常検出部３０２が検出した計算機２１０以外の各計算機２１０の中で、割り当てられているプロセスの量が一番少ない計算機２１０を、割当プロセス情報に基づきＣＰＵ９１１を用いて検出する。
このとき、割当先計算機検出部３８３は、割当プロセス検出部３８２から故障した計算機２１０の識別子と故障した計算機２１０に割り当てられているプロセスの識別子とを取得する。次に、割当先計算機検出部３８３は、割当プロセス情報において計算機２１０の識別子に対応付けられているプロセスの識別子の数を計算機２１０の識別子毎に算出する。そして、割当先計算機検出部３８３から故障した計算機２１０の識別子以外の識別子の中で、割当プロセス情報において対応付けられているプロセスの数（または各プロセスに要するリソース使用量の合計）が一番少ない計算機２１０の識別子を（または、プロセス数・リソース使用量の少ない順で計算機２１０の識別子を）プロセス割当部３８４に出力する。また、割当先計算機検出部３８３は割当プロセス検出部３８２から入力したプロセスの識別子をプロセス割当部３８４に出力する。
【００６７】
＜Ｓ２６０３：プロセス割当処理＞
プロセス割当部３８４は、割当先計算機検出部３８３が検出した計算機２１０に割当プロセス検出部３８２が検出したプロセスを管理させるようＣＰＵ９１１を用いて命令する。
このとき、プロセス割当部３８４は、割当先計算機検出部３８３から故障した計算機２１０に割り当てられているプロセスの識別子と割り当てられているプロセスの数（または各プロセスに要するリソース使用量の合計）が一番少ない計算機２１０の識別子（または、プロセス数・リソース使用量の少ない順での計算機の識別子）とを入力する。そして、プロセス割当部３８４は、入力した識別子に基づいて、故障した計算機２１０のプロセスをプロセスの数が一番少ない計算機２１０に割り当てる。
「プロセスの割り当て」は、例えば、制御装置では各プロセスの「処理開始時刻」、「処理終了時刻」、「処理時間」などの情報が管理されることである。
【００６８】
実施の形態２における常用系計算機の常用系プロセス制御部３０１は、故障した計算機２１０が管理する予定だったプロセスを他の計算機２１０に効率良く割り当て、計算機システム２００の可用性を向上させることができる。
【００６９】
実施の形態３．
図１２に実施の形態３の構成を示す。
実施の形態３のシステムの特徴は、各計算機がプロセス制御部２６、プロセス情報管理テーブル２７を持つ点、システム内に移行プロセス決定・資源割当部３ｂおよびシステム構成情報管理テーブル７を２つ持つ点である。
各計算機は前記実施の形態１における計算機２１０と同様にハードウェアを有する（図２参照）。
【００７０】
プロセス情報管理テーブル２７には当該計算機に割り当てられているプロセスが設定されている。
プロセス制御部２６はプロセス情報管理テーブル２７に設定されているプロセスを実行する。
つまり、実施の形態３のシステムは各計算機がそれぞれにプロセスを実行制御する。
【００７１】
システム構成情報管理テーブル７には各計算機が実行しているプロセスや各計算機の空きリソース量・リソース使用量などが設定されている。
また、移行プロセス決定・資源割当部３ｂはシステム構成情報管理テーブル７に基づいて各計算機にプロセスを割り当てるプロセス制御処理を実行する。
例えば、システム構成情報管理テーブル７は前記実施の形態１におけるプロセス制御情報に対応し、移行プロセス決定・資源割当部３ｂを備える計算機は前記実施の形態１における常用系計算機、待機系計算機に対応する。
つまり、実施の形態３のシステムは各計算機に対するプロセス制御を行う常用系計算機と常用系計算機が故障した際に故障した常用系計算機の代わりにプロセス制御を行う待機系計算機とを備える。
【００７２】
なお、本実施の形態における処理時間収集・予測部２ｂは、本図には示していないが、デッドラインミス発生時刻予測部２１、処理時間収集部２、ＣＰＵ時間予測部２３を持っている。
処理時間収集部２は各計算機からプロセスの実行に要した処理時間（ＣＰＵ使用時間）を取得する。
ＣＰＵ時間予測部２３は処理時間収集部２が取得した各プロセスの実行に要した処理時間の変化量に基づいて各プロセスの実行に要する将来の処理時間を算出する。
デッドラインミス発生時刻予測部２１はＣＰＵ時間予測部２３が算出した各プロセスの将来の処理時間に基づいて所定時間内に終了しないプロセスが発生する時刻（デッドラインミス発生時刻）を算出する。
【００７３】
同様に、計算機負荷量収集・予測部５ｂは計算機負荷量収集部５、計算機負荷予測部２２、メモリ使用量予測部２４を持ち、計算機状態テーブル１０および計算機負荷履歴テーブル９を管理する。
計算機負荷量収集部５は各計算機から各プロセスの実行に要した負荷量（ＣＰＵ使用率・メモリ使用量）を取得する。
計算機負荷予測部２２は計算機負荷量収集部５が取得した各プロセスの実行に要したＣＰＵ使用率の変化量に基づいて各プロセスの実行に要する将来のＣＰＵ使用率を算出する。
メモリ使用量予測部２４は計算機負荷量収集部５が取得した各プロセスの実行に要したメモリ使用量の変化量に基づいて各プロセスの実行に要する将来のメモリ使用量を算出する。
計算機状態テーブル１０には各計算機の故障有無が設定される。
計算機負荷履歴テーブル９には計算機負荷量収集部５が取得した各プロセスの実行に要したＣＰＵ使用率・メモリ使用量が設定される。
【００７４】
同様に、移行プロセス決定・資源割当部３ｂは、資源割当部６、移行プロセス決定部３を持つ。
移行プロセス決定部３は処理時間収集・予測部２ｂが予測した時刻においてデッドラインミスが発生しないように各計算機間で移行する各プロセスを計算機負荷量収集・予測部５ｂが予測した計算機負荷量に基づいて決定する。
資源割当部６は移行プロセス決定部３が決定したプロセスにリソース（ＣＰＵ時間、メモリ）を割り当てるよう各計算機に命令する。
【００７５】
本実施の形態における各計算機のプロセス制御部２６は移行プロセス決定部３が決定したプロセスを、資源割当部６が決定した計算機で実際に起動したり、プロセスを停止したりする役割を持つ。また、各計算機上で動作しているプロセス一覧をプロセス情報管理テーブル２７に記録し、保持する役割を持つ。
【００７６】
本実施の形態におけるプロセス情報管理テーブル２７の例を図１３に示す。本テーブルは各計算機上に存在し、例えば各計算機で動作するプロセスの名前、識別子など、プロセスの停止、起動に必要な情報が記録される。
【００７７】
本実施の形態における資源割当部６は、プロセスの割付先決定後、実際にプロセスを起動するのではなく、各計算機上にあるプロセス制御部２６にプロセスの起動・停止を依頼する。そして、各依頼を受けたプロセス制御部２６がプロセス起動・停止の結果を資源割当部６に通知する。
【００７８】
本実施の形態におけるプロセス制御部２６の動作は以下の通りである。
１．資源割当部６からプロセスの起動・停止依頼を受け取る。
２．プロセスを起動（ＵＮＩＸ（登録商標）のｆｏｒｋ／ｅｘｅｃなど）・停止（ＵＮＩＸ（登録商標）のｋｉｌｌなど）する。
３．プロセスを起動した場合には起動したプロセスの名前、識別子を「プロセス情報管理テーブル２７」に記載し、停止した場合には、停止したプロセスの名前、識別子をプロセス情報管理テーブル２７から削除する。
４．成功・失敗を資源割当部６に戻す。
【００７９】
２つの移行プロセス決定・資源割当部３ｂがともに正常に動作しているときの動作手順について図１４に基づいて以下に説明する。
１．処理時間収集・予測部２ｂは、デッドラインミスを予測後、警告メッセージ（計算機リソース情報の一例）を常用系のみに送信する。
２．移行プロセス決定・資源割当部３ｂの一方がデッドラインミス解消に向けた処理を開始する。本手順で処理を行う方を常用系，もう一方を待機系とする。常用系・待機系の区別はあらかじめシステムによって決定されているものとする。資源割当部６は「『どのプロセス』を『どの計算機に移行させるか』、『どのプロセス』を停止させるか、どのプロセスをいくつに『分割』させるか」といった内容で再配置方法を決定する。
３．プロセス制御部２６による対処を始める前に再配置方法（処理開始通知の一例）を待機系に通知する。
４．３の後、移行プロセス決定・資源割当部３ｂの常用系は各計算機のプロセス制御部２６に対処を要求し、各計算機のプロセス制御部２６にてプロセスの起動・停止などを行う（プロセス制御処理の一例）。
５．４の後、移行プロセス決定・資源割当部３ｂの常用系は、システム構成情報管理テーブル７（プロセス制御情報の一例）を更新する。
６．移行プロセス決定・資源割当部３ｂの常用系は待機系に対して対処結果（処理終了通知の一例）を報告する。
７．移行プロセス決定・資源割当部３ｂの待機系は受信した報告をもとに、待機系が持つシステム構成情報管理テーブル７を更新する。
８．移行プロセス決定・資源割当部３ｂの常用系は処理時間収集・予測部２ｂに処理完了を通知し、処理時間収集・予測部２ｂは、警告を破棄する。
【００８０】
２つの移行プロセス決定・資源割当部３ｂのどちらかに異常が発生している場合の残りの正常な移行プロセス決定・資源割当部３ｂの動作を以下で述べる。起こり得るケースは以下の５つであり、各ケースの動作を以下に示す。
【００８１】
ケース１：デッドラインミスが予測する前に常用系に異常が発生した場合
ケース２：常用系が正常時動作の手順１で「処理時間収集・予測部２ｂ」からデッドラインミス警告を受信し、正常時動作の手順３で対処方法を待機系に送信するまでの間に異常が発生した場合
ケース３：正常時の動作手順３において、常用系が再配置方法を通知後、待機系が正常時動作の手順６にて対処完了報告を受信するまでの間に常用系に異常が発生した場合
ケース４：常用系の処理終了後に常用系に異常が発生した場合
ケース５：待機系に異常が発生した場合
【００８２】
ケース１の動作（図１５に基づいて説明する）：（（Ａ）未事象時制御処理の一例）
常用系の故障は、常用系と待機系の間で行われるハートビート（定期的な信号の送受信）によって検出することができる。対処の手順は以下の通りとなる。
１．待機系が常用系に対してハートビートメッセージの送信に失敗すると、待機系は常用系が故障したと判断し、常用系に切り替わる（（ａ）常用系稼働処理の一例）。
２．待機系は常用系に切り替わったことを処理時間収集・予測部２ｂに通知する。
３．例えば計算機負荷の最も低い計算機にて移行プロセス決定・資源割当部３ｂの待機系を１つ起動する。
４．新規起動した待機系に「システム構成情報管理テーブル７」を送信する（（ｃ）待機系稼働処理の一例、（ｄ）状態コピー処理の一例）。
【００８３】
ケース２の動作（図１６に基づいて説明する）：（（Ｃ）処理開始通知前制御処理の一例）
常用系がデッドラインミス警告を受信し、正常時手順３の対処方法通知メッセージが待機系に届く前に常用系に故障が発生した場合、まだプロセス制御部２６による対処は行われていないため、常用系・待機系が持つ「システム構成情報管理テーブル７」の内容と実際のプロセス配置状況は一致している。対処の手順は以下のようになる。
【００８４】
１．正常時手順の１〜２と同じ。
２．処理時間収集・予測部２ｂに対して待機系が常用系に切り替わったことを通知する。３．処理時間収集・予測部２ｂは、新規に常用系に切り替わった移行プロセス決定・資源割当部３ｂにデッドラインミスを再度警告する。
４．移行プロセス決定・資源割当部３ｂ内の資源割当部６にてリソース再配置方法を決定する（（ｂ）第１の実行処理の一例）。
５．プロセスを移行する計算機のプロセス制御部２６に処理を依頼する（（ｂ）第１の実行処理の一例）。
６．プロセス制御部２６の処理完了後、移行プロセス決定・資源割当部３ｂはシステム構成情報管理テーブル７を更新する（（ｂ）第１の実行処理の一例）。
７．移行プロセス決定・資源割当部３ｂの待機系を新規起動する（（ｃ）待機系稼働処理の一例）。
８．新たな待機系は新たな常用系にシステム構成情報管理テーブル７を送信する（（ｄ）状態コピー処理の一例）。
９．処理時間収集・予測部２ｂに処理完了を通知する。
【００８５】
ケース３の動作（図１７、図１８に基づいて説明する）：（（Ｄ）処理終了通知前制御処理の一例）
常用系による対処方法の通知（正常時手順３）後、対処結果の通知が待機系に届く（正常時手順６）前に常用系の故障を検出した場合、待機系はプロセス制御部２６による対処が完了した後に常用系に障害したのかその前に障害が発生したのかわからず、移行プロセス決定・資源割当部３ｂの待機系が持っているテーブルの内容と実際のプロセス配置の状態が異なっている。本ケースのパターンの故障では、実際のプロセスの配置状況と待機系が持っているテーブルの内容を整合する必要がある。対処の手順は以下のようになる。
【００８６】
１．移行プロセス決定・資源割当部３ｂの待機系は、常用系から送られた「対処方法通知」に示されている各計算機のプロセス制御部２６に対し、各計算機にどのプロセスが動作しているのかを問い合わせる（（ｅ）第２の実行処理の一例）。
２．各プロセス制御部２６からの１の問い合わせの応答と、待機系が持つシステム構成情報管理テーブル７と、常用系から送られた対処するプロセスのリストを比較することにより、プロセス制御部２６への対処要求のうち、どの対処が行われ、どの対処が未対処であるかを識別する（（ｅ）第２の実行処理の一例）。
３．対処済のものがあれば、実際のプロセス配置状況になるようシステム構成情報管理テーブル７を更新する。未対処のリクエストがあれば、プロセス制御部２６に対して処理を依頼する（（ｅ）第２の実行処理の一例）。
４．プロセス制御部２６の処理終了後、新たな常用系はシステム構成情報管理テーブル７を更新する。
５．移行プロセス決定・資源割当部３ｂの待機系を起動する（（ｃ）待機系稼働処理の一例）。
６．新たな常用系は新規起動した待機系に、システム構成情報管理テーブル７を送信する（（ｄ）状態コピー処理の一例）。
７．処理時間収集・予測部２ｂに処理完了および移行プロセス決定・資源割当部３ｂが変更されたことを通知し、処理時間収集・予測部２ｂは「デッドラインミス警告」を破棄する。
【００８７】
ケース４の動作（図１９に基づいて説明する）：（（Ｅ）処理終了通知後制御処理の一例）
対処結果の通知が届いた後（正常時手順７以降）に移行プロセス決定・資源割当部３ｂの常用系が停止したことは、待機系はハートビートにより知ることができる。この場合には、待機系が持つシステム構成情報管理テーブル７には実際のプロセス配置状況が反映されていることになる。この場合の手順は以下の通りである。
【００８８】
１．移行プロセス決定・資源割当部３ｂの待機系が常用系に切り替わる（（ａ）常用系稼働処理の一例）。
２．切り替わった常用系は新規に待機系を起動してテーブルを送信する（（ｃ）待機系稼働処理、（ｄ）状態コピー処理の一例）。
３．処理時間収集・予測部２ｂに、プロセス再配置の対処が終了したこと、および移行プロセス決定・資源割当部３ｂが変更されたことを通知する。
４．処理時間収集・予測部２ｂは、本通知を受けて「デッドラインミス警告」を破棄する。
【００８９】
ケース５（図２０に基づいて説明する）：（（Ｇ）待機系制御処理の一例）
待機系の異常は、待機系よりハートビートが届かないことにより知ることが出来る。手順は以下の通りである。
【００９０】
１．ケース１と同様、例えば計算機負荷の最も小さい計算機上での移行プロセス決定・資源割当部３ｂの待機系を起動する（（ｃ）待機系稼働処理の一例）。
２．待機系に、システム構成情報管理テーブル７を送信する（（ｄ）状態コピー処理の一例）。
【００９１】
なお、本ケースでは常用系は変更されないので、処理時間収集・予測部２ｂへのメッセージ送信は行われない。
【００９２】
このように、移行プロセス決定・資源割当部３ｂをつねに２つ起動し、一方を待機系、もう一方を常用系として動作させ、異常ケースに応じたシステム構成情報管理テーブル７の整合動作を行うことにより、移行プロセス決定・資源割当部３ｂの常用系が停止した場合においても待機系はそのまま処理を引き継ぐことができる。すなわち、移行プロセス決定・資源割当部３ｂの１つに異常が発生した場合においても動的リソース制御を継続することができる。
【００９３】
実施の形態４．
図２１に実施の形態４の構成を示す。実施の形態３との相違点は、各計算機に処理時間収集・予測部２ｂ、処理時間履歴テーブル８が配置されている点と、ある計算機上に処理時間収集部監視部２８および処理時間収集・予測部情報テーブル２９が配置されている点である。
【００９４】
実施の形態４における計算機負荷監視部４は、計算機の負荷量を計算機負荷量収集・予測部５ｂに通知し、また、計算機負荷量収集・予測部５ｂの異常を検出し、処理時間収集部監視部２８に伝える役割を持つ。
実施の形態４における処理時間監視部１は、全ての処理時間収集・予測部２ｂに対して処理開始時刻、処理終了時刻、ＣＰＵ時間を送信する役割を持つ。
【００９５】
図２２に、本実施の形態における処理時間収集・予測部情報テーブル２９の構成を示す。本テーブルには、システム内に存在する処理時間収集・予測部２ｂを識別する番号と、正常・異常を示す値、および、各処理時間収集・予測部２ｂが管理するパイプライン処理（プロセスの順次処理）を判別する番号が記入される。
【００９６】
本実施の形態における処理時間収集部監視部２８の、処理時間収集・予測部２ｂが管理するパイプライン処理のＩＤを割り振る際の動作について説明する。
システム起動時には、処理時間収集部２は自身の識別番号と「『パイプライン処理ＩＤ÷計算機台数』の剰余値」が一致するＩＤを持つパイプライン処理アプリケーションの処理時間、およびパイプライン処理を構成するプロセスのＣＰＵ時間を管理する。そして、「処理時間収集部２」の異常を検出した場合には、異常がおきた処理時間収集部２が管理していたパイプライン処理（アプリケーション）のＩＤを、管理しているパイプライン処理の数が少ない順で、かつ、処理時間収集・予測部２ｂの識別子の小さい順に割り振る。
例えば、図２２において、処理時間収集・予測部ＩＤ１に異常が発生した場合、図２３に示すように、ＩＤ２の処理時間収集・予測部２ｂがパイプライン処理ＩＤ１を、ＩＤ３の処理時間収集・予測部２ｂがパイプライン処理ＩＤ５を管理することになる。
本実施の形態における処理時間収集・予測部２ｂは、処理時間収集部監視部２８によって割り当てられたパイプライン処理アプリケーションのみのデッドラインミスを監視することになる。
【００９７】
このように、各計算機上に処理時間収集・予測部２ｂを配置し、さらに、ある計算機上に処理時間収集部監視部２８を配置し、処理時間収集・予測部２ｂに故障が発生した場合に、その処理時間収集・予測部２ｂで監視していたアプリケーションを、他の処理時間収集・予測部２ｂが監視することにより、処理時間収集・予測部２ｂが停止しても、デッドラインミスの監視を継続することができ、アプリケーションのリアルタイム処理を継続することができる。
【００９８】
実施の形態５．
図２４に実施の形態５の構成を示す。実施の形態４との相違点は、システム上に処理時間収集部監視部２８が２つ配置されている点と、処理時間収集部監視部２８が配置されている計算機と同一の計算機上に処理時間収集・予測部情報テーブル２９が配置されている点、および各計算機上に管理アプリケーション一覧テーブル３０が配置されている点である。
【００９９】
本実施の形態における処理時間収集部監視部２８は、実施の形態４の役割のほか、２つの処理時間収集部監視部２８をハートビートにより相互監視し、片方の異常を検出した場合に、他の計算機上で処理時間収集部監視部２８を起動する役割を持つ。
【０１００】
本実施の形態における計算機負荷監視部４は、さらに、処理時間収集・予測部２ｂの異常を調査し、異常検出時には２つの処理時間収集部監視部２８に通知する。それぞれの処理時間収集部監視部２８は異常を検出すると処理時間収集・予測部情報テーブル２９の該当エントリにおいて「正常／異常」を書き換える。
【０１０１】
本実施の形態における管理アプリケーション一覧テーブル３０の構成を図２５に示す。
テーブルの各エントリには各処理時間収集・予測部２ｂがＣＰＵ時間、処理開始時刻、処理終了時刻を収集し、デッドラインミスを予測するパイプライン処理アプリケーションの識別子が格納される。
【０１０２】
本実施の形態における処理時間収集部監視部２８の正常時の動作を以下に示す（図２６に基づいて説明する）。
【０１０３】
１．計算機負荷監視部４から、処理時間収集・予測部２ｂの異常を検出すると、２つのうちの片方（常用系とする）が、もう片方（待機系とする）に対して、異常が発生した処理時間収集・予測部２ｂを通知（変更開始通知、処理開始通知）する。
２．異常が発生した処理時間収集・予測部２ｂが管理していたパイプライン処理アプリケーションを、他の処理時間収集・予測部２ｂが管理するように管理アプリケーション一覧テーブル３０を変更する。
３．割当変更後、処理時間収集・予測部情報テーブル２９を変更する。
４．変更完了後の処理時間収集・予測部情報テーブル２９の内容を待機系に送信する（変更完了通知、処理終了通知）。そして、待機系の処理時間収集・予測部情報テーブル２９の内容を常用系の内容と一致させる。
５．手順２において管理するパイプライン処理が変更となった処理時間収集・予測部２ｂに対し、管理するパイプライン処理アプリケーションの識別子一覧を送信する。
【０１０４】
本実施の形態における処理時間収集部監視部２８に異常が発生した場合の動作を以下に示す。
考慮すべき異常発生のタイミングとして以下の４点が考えられる。
【０１０５】
ケース１：全ての処理時間収集・予測部２ｂが正常動作している際に常用系もしくは待機系に障害が発生した場合。
ケース２：ある処理時間収集・予測部２ｂに異常が発生し、常用系から待機系に変更開始通知を送信する前に処理時間収集部監視部２８の常用系に障害が発生した場合
ケース３：待機系が変更開始通知受信後、変更完了通知までの間に常用系が停止した場合
ケース４：待機系が変更完了通知受信直後、常用系に障害が発生し、待機系起動直後にさらに切り替わった常用系が停止した場合
ケース５：待機系に障害が発生した場合
【０１０６】
ケース１の動作：（（Ａ）未事象時制御処理、（Ｇ）待機系制御処理の一例）
ケース１では、常用系と待機系の間のハートビートによって検出することができる。この場合、常用系は待機系を起動し、待機系に対して処理時間収集・予測部情報テーブル２９を送信する（図２７に基づいて説明する）。
【０１０７】
ケース２の動作：（（Ｃ）処理開始通知前制御処理の一例）
ケース２では、待機系は、常用系からのハートビートが届かないことにより常用系の故障を認識することができる。さらに、この場合は計算機負荷監視部４から故障通知が届き、処理時間収集・予測部情報テーブル２９が変更されているので、処理時間収集・予測部情報テーブル２９を参照することにより、異常が発生した処理時間収集・予測部２ｂを処理時間収集部監視部２８の待機系にて把握することができる。
【０１０８】
本ケースの手順は以下の通りである。図２８に基づいて説明する。
１．常用系の故障を認識すると、待機系は常用系に切り替わる（（ａ）常用系稼働処理の一例）。
２．新規切り替わった常用系は、障害が発生した処理時間収集・予測部２ｂが管理していたパイプライン処理アプリケーションを他の処理時間収集・予測部２ｂに割りつける（（ｂ）第１の実行処理の一例）。
３．新規切り替わった常用系は、新しく処理時間収集部監視部２８の待機系を起動する（（ｃ）待機系稼働処理の一例）。
４．新規切り替わった常用系は、新規起動した処理時間収集部監視部２８に、処理時間収集・予測部情報テーブル２９を送信する（（ｄ）状態コピー処理の一例）。
５．新規切り替わった常用系は、監視アプリケーションの割当変更のあった処理時間収集・予測部２ｂに対し、管理するアプリケーションの識別子一覧を送信する。
【０１０９】
ケース３の動作：（（Ｄ）処理終了通知前制御処理の一例）
本ケースにおいても、待機系は、常用系からのハートビートが届かないことにより、常用系に異常が発生したことを知る。本ケースの障害では、常用系から「異常箇所通知」が届いているので、どの「処理時間収集・予測部２ｂ」に異常が発生していることがわかる。
【０１１０】
本ケースの手順は以下の通りである。図２９に基づいて説明する。
１．待機系は、常用系の異常検出後、常用系に切り替わってパス割付の変更を実施する（（ｅ）第２の実行処理の一例）。
２．新規切り替わった常用系は、処理時間収集部監視部２８の待機系を新しく起動する（（ｃ）待機系稼働処理の一例）。
３．新規切り替わった常用系は、新規起動した待機系に処理時間収集・予測部情報テーブル２９を送信する（（ｄ）状態コピー処理の一例）。
４．新規切り替わった常用系は、アプリケーションの割当変更のあった処理時間収集・予測部２ｂに対し、管理するアプリケーションの識別子一覧を通知する。
【０１１１】
ケース４の動作：（（Ｆ）待機系稼動中制御処理）
本ケースは、常用系が待機系にテーブルを送信する直前、ケース２、ケース３で待機系が常用系に切り替わり、新規起動した待機系にテーブルを送信する直前に常用系が停止した場合を示している。この場合には処理時間収集・予測部情報テーブル２９を新規起動した待機系に渡すことができない。この場合、新規起動した待機系は、各計算機上にある処理時間収集・予測部２ｂに問い合わせることにより各処理時間収集・予測部２ｂが管理しているアプリケーションの識別子を知り、処理時間収集・予測部情報テーブル２９の内容を現状に合わせるようにする（図３０参照）。
【０１１２】
このように、処理時間収集部監視部２８をつねに２つ起動し、一方を待機系、もう一方を常用系として動作させ、異常ケースに応じて処理時間収集・予測部情報テーブル２９の整合動作を行うことにより、処理時間収集部監視部２８の常用系が停止した場合においても、待機系はそのまま処理を引き継ぐことができる。すなわち、処理時間収集部監視部２８に異常が発生した場合においても処理負荷の分散が可能となり、動的リソース制御を継続することができる。
【０１１３】
実施の形態６．
図３１に実施の形態６の構成を示す。実施の形態５との相違点は、システム上に計算機負荷量収集部５を２つ持つ点、および、計算機負荷量収集部５がある計算機に計算機負荷履歴テーブル９を持つ点である。本実施の形態における計算機負荷量収集部５はこれまでの機能のほか、２つの計算機負荷量収集部５を相互監視する役割を持つ。
本実施の形態における計算機負荷監視部４は、計算機の負荷を収集、予測するとともに、２つの計算機負荷量収集部５の両方に計算機負荷を通知する役割を持つ。また、計算機負荷量収集部５が新規に起動した場合には、起動した旨を知らせる通知を受信し、新規起動した計算機負荷量収集部５にも計算機負荷を通知する。
本実施の形態における移行プロセス決定・資源割当部３ｂは、リソース再配置方法を決定する際に２つの計算機負荷量収集部５に問い合わせ、例えば応答の速いほうのデータを採用する。
本実施の形態における計算機負荷量収集部５は、双方でハートビートを行い、故障を検出した場合には、新たに計算機負荷量収集部５を起動し、新しく起動した計算機負荷量収集部５は、計算機負荷量収集部５が新規に起動したことを全ての計算機負荷監視部４に通知する。
【０１１４】
このように、計算機負荷量収集・予測部５ｂをつねに２つ用意することにより、一方の「計算機負荷量収集部５」に障害が発生しても、動的リソース制御の処理を継続することができる。
【０１１５】
前記実施の形態３〜６において、以下を特徴とする計算機リソース動的制御システムについて説明した。
【０１１６】
（１）本制御システムは、プロセスを起動・停止する「プロセス制御部」を各計算機に持つ。
本制御システムは、各プロセス制御部は、各計算機で動作しているプロセス一覧を記録した「プロセス情報管理テーブル」を各計算機上に持ち、「プロセス制御部」が管理する。
本制御システムでは「資源割当部」を「移行プロセス決定部」が存在する計算機と同一計算機に配置し、「移行プロセス決定部」と「資源割当部」の両方をまとめて「移行プロセス決定・資源割当部」とする。「移行プロセス決定・資源割当部」はそれぞれ異なる計算機上に２つ持つ。２つの「移行プロセス決定・資源割当部」はお互いに正常・異常を監視する。
片方の「移行プロセス決定・資源割当部」異常時において、もう一方の「移行プロセス決定・資源割当部」が異常を検出し、処理を引き継ぐことにより、１つの「移行プロセス決定・資源割当部」に異常が発生してもリソース割当決定処理の継続を可能とする。
「移行プロセス決定・資源割当部」の一方に異常が発生しても、もう一方の「移行プロセス決定・資源割当部」が、各計算機上の「プロセス情報管理テーブル」より、リソース動的制御処理に必要なデータを取り寄せることにより、異常が発生する前の「移行プロセス決定・資源管理部」のデータに復旧させてリソース割当決定処理の継続を可能とする。
、本制御システムは、各プロセスが動作する計算機を示した情報を各計算機上で分散させて保持することにより、「移行プロセス決定部」の異常時における全データの紛失を防ぐことができる。
【０１１７】
（２）（１）の構成に加え、以下を特徴とする計算機リソース動的制御システムについて説明した。
【０１１８】
本制御システムは、「処理時間収集・予測部」および「処理時間履歴テーブル」を各計算機に持つ。
「処理時間収集部監視部」はシステム起動時および「処理時間収集・予測部」の故障時において、システム上で動作する各パイプライン処理アプリケーションの処理開始時刻・終了時刻をどの「処理時間収集・予測部」が取得・管理するかを動的に割り当てる機能を持つ。
本制御システムは、どの「処理時間収集・予測部」がどのパイプライン処理アプリケーションのデッドラインミスを監視しているか、という情報、および、各「処理時間収集・予測部」の正常・異常の情報が記載された「処理時間収集・予測部情報テーブル」を持つ。
「処理時間収集・予測部」の異常は、各計算機上にある「計算機負荷監視部」が検出し、その情報は「処理時間収集部管理部」に通知されることにより、「処理時間収集・予測部情報テーブル」の正常・異常の情報が変更される。
本制御システムにおける「処理時間監視部」は、全ての「処理時間収集・予測部」に処理開始時刻・処理終了時刻を送信する。「処理時間収集・予測部」は全てのパイプライン処理アプリケーションの処理開始時刻・終了時刻を受け取るが、「処理時間収集部管理部」が割り当てたアプリケーションについてのみ、デッドラインミスの監視などを行う。
「処理時間収集・予測部」を複数個持ち、「処理時間収集・予測部」の故障時において、故障した「処理時間収集・予測部」が監視していたアプリケーションを他の「処理時間収集・予測部」が監視することにより、アプリケーションのデッドラインミス検出の継続を可能とする。また、「処理時間収集部管理部」が処理の分散化を動的に行うことにより、１つの「処理時間収集・予測部」に加わる負荷の軽減を可能とする。
【０１１９】
（３）（２）の構成に加え、以下を特徴とする計算機リソース動的制御システムについて説明した。
【０１２０】
本制御装置は、「処理時間収集部監視部」を２つ、それぞれ異なる計算機に配置する。２つの「処理時間収集部監視部」は（２）の機能のほか、「処理時間収集部監視部」が正常に動作しているかどうかを相互監視する。
各計算機上にある「処理時間収集・予測部」は、自身が収集するパイプライン処理アプリケーションの一覧を記録した「管理アプリケーション一覧テーブル」を保持する。
「処理時間収集部監視部」の１つが停止した場合においても、もう一方の「処理時間収集部監視部」が処理を引き継ぎ、「処理時間収集・予測部」の処理分散に必要なデータを各「処理時間収集・予測部」の「管理アプリケーション一覧テーブル」から取り寄せることにより、２つの「処理時間収集部監視部」間のデータの整合を可能にする。
「処理時間収集・予測部」の１つが停止した場合においても、もう１つの「処理時間収集・予測部」が処理を継続することにより、故障した「処理時間収集・予測部」が担当していた処理の切り替え、「処理時間収集・予測部」の負荷分散処理の継続を可能とする。
【０１２１】
（４）（１）〜（３）の構成の構成に加え、以下を特徴とする計算機リソース動的制御装置について説明した。
【０１２２】
本制御装置は、「計算機負荷収集・予測部」を２つ、異なる計算機に配置する。２つの「計算機負荷収集・予測部」は、双方の「計算機負荷収集・予測部」が正常に動作しているかどうかを監視する。
各計算機上にある「計算機負荷監視部」は、２つの「計算機負荷量収集部」に計算機負荷を送信する。
一方の「計算機負荷収集・予測部」に異常が発生した場合には、もう一方の「計算機負荷量収集部」が「移行プロセス決定・資源割当部」の要求に応えることにより、「移行プロセス決定・処理割当部」の処理継続を可能とする。
【０１２３】
また、各構成要素のただ１つに異常が発生した場合に動的リソース制御処理ができなくなる、という課題に対し、処理を継続するために「処理時間収集・予測部」「計算機負荷量収集部」「移行プロセス決定部」「資源割当部」を冗長化し、故障時には故障前に各部が保持していた状態を待機系側で復旧した上で待機系に処理を切り替えるということについて説明した。
【図面の簡単な説明】
【０１２４】
【図１】実施の形態１における計算機システム２００の構成図。
【図２】実施の形態１における計算機２１０のハードウェア資源の一例を示す図。
【図３】実施の形態１における常用系計算機の制御部３００の構成図。
【図４】実施の形態１における待機系計算機の制御部３００の構成図。
【図５】実施の形態１における計算機制御処理を示す表。
【図６】実施の形態１における（Ａ）処理開始通知前制御処理を示すフローチャート。
【図７】実施の形態１における（Ｂ）処理終了通知前制御処理を示すフローチャート。
【図８】実施の形態１における（Ｃ）待機系稼働中制御処理を示すフローチャート。
【図９】実施の形態１における（Ｄ）待機系制御処理を示すフローチャート。
【図１０】実施の形態２における常用系計算機の常用系プロセス制御部３０１の構成図。
【図１１】実施の形態２における常用系プロセス制御部３０１による、ある計算機２１０が故障時におけるプロセス制御方法を示すフローチャート。
【図１２】実施の形態３における全体構成の例。
【図１３】実施の形態３におけるプロセス情報管理テーブル２７の例。
【図１４】実施の形態３における移行プロセス決定・資源割当部３ｂが正常動作している場合の動作手順を示す図。
【図１５】実施の形態３における異常ケース１の動作を示す図。
【図１６】実施の形態３における異常ケース２の動作を示す図。
【図１７】実施の形態３における異常ケース３（その１：手順２）の動作を示す図。
【図１８】実施の形態３における異常ケース３（その２：手順３〜７）の動作を示す図。
【図１９】実施の形態３における異常ケース４の動作を示す図。
【図２０】実施の形態３における異常ケース５の動作を示す図。
【図２１】実施の形態４における全体構成の例。
【図２２】実施の形態４における処理時間収集・予測部情報テーブル２９を示す図。
【図２３】実施の形態４における処理時間収集・予測部情報テーブル２９（その２）を示す図。
【図２４】実施の形態５における全体構成の例を示す図。
【図２５】実施の形態５における管理アプリケーション一覧テーブル３０を示す図。
【図２６】実施の形態５における正常時の「処理時間収集部監視部２８」の動作を示す図。
【図２７】実施の形態５におけるケース１の異常時における処理時間収集部監視部２８の動作を示す図。
【図２８】実施の形態５におけるケース２の異常時における処理時間収集部監視部２８の動作を示す図。
【図２９】実施の形態５におけるケース３の異常時における処理時間収集部監視部２８の動作を示す図。
【図３０】実施の形態５におけるケース４の異常時における処理時間収集部監視部２８の動作を示す図。
【図３１】実施の形態６における全体構成の例。
【符号の説明】
【０１２５】
１  処理時間監視部、２  処理時間収集部、２１  デッドラインミス発生時刻予測部、２２  計算機負荷予測部、２３  ＣＰＵ時間予測部、２４  メモリ使用量予測部、２６  プロセス制御部、２７  プロセス情報管理テーブル、２８  処理時間収集部監視部、２９  処理時間収集・予測部情報テーブル、２ｂ  処理時間収集・予測部、３  移行プロセス決定部、３ｂ  移行プロセス決定・資源割当部、３０  管理アプリケーション一覧テーブル、４  計算機負荷監視部、５  計算機負荷量収集部、５ｂ  計算機負荷量収集・予測部、６  資源割当部、７  システム構成情報管理テーブル、８  処理時間履歴テーブル、９  計算機負荷履歴テーブル、１０  計算機状態テーブル、２００  計算機システム、２１０  計算機、３００，３０５  制御部、３０１  常用系プロセス制御部、３０２  常用系異常検出部、３０３  常用系制御判定部、３０６  待機系プロセス制御部、３０７  待機系異常検出部、３０８  待機系制御判定部、３３０  処理開始通知前制御部、３４０  処理終了通知前制御部、３６０  待機系稼動中制御部、３７０  待機系制御部、３８２  割当プロセス検出部、３８３  割当先計算機検出部、３８４  プロセス割当部、３９０  常用系記憶部、３９１  待機系記憶部、９０１  表示装置、９０２  キーボード、９０３  マウス、９０４  ＦＤＤ、９０５  ＣＤＤ、９０６  プリンタ装置、９０７  スキャナ装置、９０８  マイク、９０９  スピーカー、９１１  ＣＰＵ、９１２  バス、９１３  ＲＯＭ、９１４  ＲＡＭ、９１５  通信ボード、９２０  磁気ディスク装置、９２１  ＯＳ、９２２  ウィンドウシステム、９２３  プログラム群、９２４  ファイル群。
【図１】
0004408122.tif 000002
【図２】
0004408122.tif 000003
【図３】
0004408122.tif 000004
【図４】
0004408122.tif 000005
【図５】
0004408122.tif 000006
【図６】
0004408122.tif 000007
【図７】
0004408122.tif 000008
【図８】
0004408122.tif 000009
【図９】
0004408122.tif 000010
【図１０】
0004408122.tif 000011
【図１１】
0004408122.tif 000012
【図１２】
0004408122.tif 000013
【図１３】
0004408122.tif 000014
【図１４】
0004408122.tif 000015
【図１５】
0004408122.tif 000016
【図１６】
0004408122.tif 000017
【図１７】
0004408122.tif 000018
【図１８】
0004408122.tif 000019
【図１９】
0004408122.tif 000020
【図２０】
0004408122.tif 000021
【図２１】
0004408122.tif 000022
【図２２】
0004408122.tif 000023
【図２３】
0004408122.tif 000024
【図２４】
0004408122.tif 000025
【図２５】
0004408122.tif 000026
【図２６】
0004408122.tif 000027
【図２７】
0004408122.tif 000028
【図２８】
0004408122.tif 000029
【図２９】
0004408122.tif 000030
【図３０】
0004408122.tif 000031
【図３１】
0004408122.tif 000032