計算機システム
【課題】多重化された計算機システムにおいて、通常稼動中の計算機の動作状態と復旧中の計算機の動作状態を一致させる。
【解決手段】各計算機はタスク待ち合わせポイント管理テーブル105,205を備え、第1計算機101が故障から復旧する際、第2計算機201に通信線3を介してタスク待ち合わせポイント管理テーブル205に記録された待ち合わせポイントの取得要求を送信し、第2計算機201は、取得要求に応じて待ち合わせポイントを送信するとともに待ち合わせポイントにおいて自己のタスクを停止し、第1計算機101は待ち合わせポイントを受信するとともに待ち合わせポイントに基づいて自己のタスクの実行準備を行い、第2計算機201は、停止したタスクの次に実行するタスクの実行順序を第1計算機101に送信し、第1計算機101は実行順序を受信し、各計算機は、実行順序に基づいてタスクを実行してタスク処理を開始する。
【解決手段】各計算機はタスク待ち合わせポイント管理テーブル105,205を備え、第1計算機101が故障から復旧する際、第2計算機201に通信線3を介してタスク待ち合わせポイント管理テーブル205に記録された待ち合わせポイントの取得要求を送信し、第2計算機201は、取得要求に応じて待ち合わせポイントを送信するとともに待ち合わせポイントにおいて自己のタスクを停止し、第1計算機101は待ち合わせポイントを受信するとともに待ち合わせポイントに基づいて自己のタスクの実行準備を行い、第2計算機201は、停止したタスクの次に実行するタスクの実行順序を第1計算機101に送信し、第1計算機101は実行順序を受信し、各計算機は、実行順序に基づいてタスクを実行してタスク処理を開始する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数の計算機が多重化して設けられた計算機システムに関する。
【背景技術】
【0002】
パソコン等の計算機に障害が発生すると正常に処理が行えなくなるが、障害が発生した計算機と切り替わって他の計算機が処理を継続させるシステムとして多重化システムやフォールトトレラントシステムがある。
【0003】
これらのシステムでは複数の計算機で同じ処理を行うことで、1台障害が発生しても計算機間で切り替えを行って障害が発生していない計算機で処理を継続させることができ、処理結果等のデータ引継ぎが不要となる。このように複数の計算機にて同じ処理を行うシステムとして、例えば、特許文献1がある。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2007−72980号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、特許文献1のシステムにおいて、ハードウェアの障害等で1台の計算機が停止し、残りの計算機で処理を継続している場合、障害が発生した計算機は、障害要因を特定し、ハードウェア交換等の処理を行った後、その計算機を起動し、再度、同じ処理を行うようにする必要がある。
【0006】
復旧中の計算機は通常稼動中の計算機から処理の引継ぎを行う必要があるが、通常稼動中の計算機は通常の処理を継続して行っており、処理の内容が変わる。通常稼動中の計算機の動作状態と復旧中の計算機の動作状態は一致させることが好ましいことから、復旧中の計算機が引継ぎを行う場合は、通常稼動中の計算機を一旦停止させねばならず、通常稼動中の計算機の処理を妨げることになる。
【0007】
本発明が解決しようとする課題は、多重化された計算機システムにおいて、通常稼動中の計算機の処理を妨げることなく、通常稼動中の計算機の動作状態と復旧中の計算機の動作状態を一致させることである。
【課題を解決するための手段】
【0008】
上記課題を解決するため、本発明の計算機システムは、少なくとも1つのタスク要素を有する複数のタスクを定められた順序で実行するように構成され、通信線を介して通信可能な複数の計算機が多重化して設けられた計算機システムにおいて、複数の計算機のうち少なくとも1つの計算機が故障から復旧する際、その復旧中の計算機は、その他の通常稼動中の計算機から通信線を介して当該通常稼動中の計算機のタスクの動作状態を受信し、そのタスクの動作状態に合わせて自己のタスクを実行することを特徴とする。
【0009】
本発明によれば、復旧中の計算機は、通常稼動中の計算機のタスクの動作状態を知ることができるので、それに合わせて自己のタスクを実行することで、通常稼動中の計算機の処理を妨げることなく、通常稼動中の計算機の動作状態と復旧中の計算機の動作状態を一致させることができる。
【0010】
また、上記の計算機システムを具体的にすると、上記複数の計算機を、自己の複数のタスクがそれぞれ有するタスク要素の実行状態及び実行中のタスク要素の識別符号を含む動作状態情報を格納し、複数の計算機のうち少なくとも1つの計算機が故障から復旧する際、その復旧中の計算機は、その他の通常稼動中の計算機から通信線を介して当該通常稼動中の計算機の動作状態情報を受信し、その動作状態情報に基づいて自己のタスクを実行するように構成できる。
【0011】
複数の計算機は、予め決められた順序に従ってタスクを実行しているので、実行中のタスク要素の識別符号が分かれば、復旧中の計算機は、通常稼動中の計算機の現在の動作状態を知ることができ、それに合わせて自己のタスクを実行することができる。なお、タスク要素の実行状態としては、例えば、処理時間及び各タスク間の待機時間の長さ等が挙げられる。処理時間や待機時間は、動作状態により変わりうるので、これらを含めることにより、復旧中の計算機は、通常稼動中の計算機と動作時間を合わせることができるので好ましい。
【0012】
また、上記計算機システムにおいて、複数の計算機を、自己の複数のタスクがそれぞれ有するタスク要素の実行状態及び自己の複数のタスクに共通する待機時間を待ち合わせポイントとして格納するとともに、その待ち合わせポイントとその待ち合わせポイントの次に実行するタスク要素の識別符号を含む動作状態情報を格納し、複数の計算機のうち少なくとも1つの計算機が故障から復旧する際、その復旧中の計算機を、その他の通常稼動中の計算機から通信線を介して当該通常稼動中の計算機の動作状態情報を受信し、その動作状態情報に基づいて自己の前記タスクを実行するように構成することができる。
【0013】
上記待ち合わせポイントは、一定時間経過した後に発生する待ちや、排他制御でのリソース解放後に発生する待ち、ネットワークでのパケットを受信した際に発生する待ち、また、他のタスクからの起動指示で発生する待ち等である。すなわち、待ち合わせポイントは、通常の処理の過程で必然的に発生する待ちを利用している。復旧中の計算機は、例えば、次に来る待ち合わせポイントを通常稼動中の計算機から知ることにより、その待ち合わせポイントに合わせてタスクを実行すれば、通常稼動中の計算機と動作状態を合わせることができる。また、通常稼動中の計算機の処理は妨げられることがないので、計算機システムの稼働率を高めることができる。
【0014】
ここで、複数のタスクに共通する待機時間を待ち合わせポイントとするとは、複数のタスクが共通して上記の待ちに入っている時間であり、タスク全てが待機する時間を待ち合わせポイントとすると、動作状態を合わせやすくなるので好ましい。
【0015】
また、待ち合わせポイントの次に実行するタスク要素とは、次に実行すべきタスク要素がどのタスク要素であるかを示すものである。例えば、タスクがタスク要素A、Bから成り立ち、タスク要素A、B間に待ち合わせポイントがあるような場合は、次に実行すべきタスク要素はタスク要素Bしかないため、復旧中の計算機に送信する必要はない。しかし、タスクが複数のタスク要素から成り立ち、各タスク要素が複数の待ちを有している場合、復旧中の計算機はどの待ち合わせポイントであるか分からず、次に実行すべきタスク要素が分からないので、通常稼動中の計算機が待ち合わせポイントの次に実行するタスク要素を送信する必要がある。
【0016】
上記の場合において、通常稼動中の計算機を、復旧中の計算機に動作状態情報を送信するとともに、当該動作状態情報の待ち合わせポイントにおいて自己のタスクを停止し、復旧中の計算機は動作状態情報に基づいて自己のタスクの実行準備を行った後、通常稼動中の計算機及び復旧中の計算機は、それぞれ自己のタスクを実行するように構成することもできる。
【0017】
これにより、通常稼動中の計算機と復旧稼動中の計算機を待ち合わせポイントから同時に同じ動作を開始することができ、通常稼動中の計算機と復旧稼動中の計算機の同期を取ることができる。なお、タスクの実行準備とは、上記の例で説明すると、復旧中の計算機は、タスク要素Bの実行準備を行うということを示す。
【発明の効果】
【0018】
本発明によれば、多重化された計算機システムにおいて、通常稼動中の計算機の処理を妨げることなく、通常稼動中の計算機の動作状態と復旧中の計算機の動作状態を一致させることができる。
【図面の簡単な説明】
【0019】
【図1】本発明に係る計算機システムを構成する計算機の構成図である。
【図2】タスクの状態遷移図である。
【図3】タスク待ち合わせポイント算出機構の動作を示すフローチャートである。
【図4】実行待ちタスク管理テーブルのデータ構造である。
【図5】タスク待ち合わせポイント管理テーブルのデータ構造である。
【図6】一致化対象決定機構の動作を示すフローチャートである。
【図7】タスク一致化処理を示すフローチャートである。
【図8】タスクステータス管理テーブルのデータ構造である。
【図9】タスク停止指示後の処理の動作を示すフローチャートである。
【図10】タスク実行順序記録テーブルのデータ構造である。
【図11】タスク実行準備後の処理の動作を示すフローチャートである。
【発明を実施するための形態】
【0020】
以下、本発明の計算機システムについて、図面を参照して説明する。
【実施例】
【0021】
図1は、実施例1の計算機システムの構成である。計算機システムは、複数のタスク要素を有する複数のタスクを定められた順序で実行するように構成され、通信線を介して通信可能な複数の計算機が多重化して設けられており、全ての計算機が同一の構成動作を行う。本実施例では、特に、2つの計算機、第1計算機101と第2計算機201について説明する。
【0022】
第1計算機101は、ハードウェア等の障害が発生した後、ハードウェア等を交換して再起動を行い、処理準備中の実行待ち状態である復旧中の計算機であり、第2計算機201は、本体処理を行っている通常稼動中の計算機である。なお、前述したように、第1計算機101と第2計算機201の構成は同じであるが、説明の都合上、各計算機の動作に関する構成のみを図示し、図中の符号の先頭に「1」がつくものは、第1計算機の動作に関する構成であり、「2」がつくものは、第2計算機の動作に関する構成としている。
【0023】
第1計算機101は、タスク1,2,3からなるタスク処理102、タスク実行状態一致化機構103、一致化対象決定機構104、タスク待ち合わせポイント管理テーブル105、タスク実行順序記録テーブル106を動作させる。
【0024】
第2計算機201は、タスク1,2,3からなるタスク処理202、タスク状態取得機構203、タスク待ち合わせポイント算出機構204、タスク待ち合わせポイント管理テーブル205、タスク実行順序記録テーブル206、タスクステータス管理テーブル207、n個の実行待ちタスク管理テーブル208を動作させる。また、第1計算機101と第2計算機201とは、通信線3を介して通信可能である。
【0025】
図2は、図1のタスク処理102,202の通常稼動中の状態遷移図である。タスク処理102,202は、同じ動作を行う。タスク処理102のタスク1では、タスクの実行待ちポイント110,111の2つが存在し、タスク2では実行待ちポイント112,113の2つ、タスク3では実行待ちポイント114,115の2つが存在する。
【0026】
タスク処理202のタスク1では、タスクの実行待ちポイント210,211の2つが存在し、タスク2では実行待ちポイント212,213の2つ、タスク3では実行待ちポイント214,215の2つが存在する。なお、図2は、2つの実行待ちポイントがある状態を示し、実行待ちポイントは2つ以上存在する状態もある。
【0027】
この実行待ちポイントは、一定時間経過した後に発生する待ちや、排他制御でのリソース解放後に発生する待ち、ネットワークでのパケットを受信した際に発生する待ち、また、他のタスクからの起動指示で発生する待ち等がある。本実施例では、実行待ちポイント110,112,114,210,212,214は、処理準備中の待ちであり、実行待ちポイント111,113,115,211,213,215は、他のタスクからの起動指示で発生する待ちである。
【0028】
タスク処理202では、タスク1は、処理aを実行した後に、タスク2の起動を指示し、実行待ちポイント211を経た後に、再び処理aを実行し、これを繰り返す。タスク2は、実行待ちポイント211中に、タスク1からの起動指示を受けた後、タスク3の起動を指示し、処理bを実行した後に、再び実行待ちポイント213に入り、これを繰り返す。タスク3は、実行待ちポイント215中に、タスク2からの起動指示を受けた後、処理cを実行し、タスク3の起動を指示した後、再び実行待ちポイント215に入り、これを繰り返す。タスク処理102も同様である。なお、処理a、b、c及びタスク1,2,3に対する起動指示は、タスクを構成するタスク要素である。
【0029】
ここで、図1のタスク待ち合わせポイント算出機構204について説明する。待ち合わせポイント算出とは、第1計算機101及び第2計算機201のタスクをどの実行待ちポイントで待たせておくかを決定するものである。その決定方法を図2,3を参照して説明する。
【0030】
タスク待ち合わせポイント算出機構204は、図2の第2計算機201のタスク1,2,3がもっとも実行待ちに入る頻度が高いポイントを、タスクの待ち合わせポイントに設定するために、タスクの実行待ちポイントを取得し、全タスクが実行待ちの状態にいるときのそれぞれのタスク実行待ちポイントを実行待ちタスク管理テーブル208に記録する。
【0031】
実行待ちタスク管理テーブル208のデータ構造は、図4に示すようにタスク番号、実行待ちポイントで構成される。実行待ちポイントは2進数のbitフィールドで宣言され、タスク1が実行待ちポイント210であれば0001を、実行待ちポイント211であれば0010を、実行待ち状態でなければ0000を記録する。よって、全タスクが実行待ちである状態は、実行待ちタスク管理テーブル208の実行待ちポイントが全て0000でない状態である。
【0032】
また、本実施例では、実行待ちタスク管理テーブル208は、100個の同テーブルを持つ。タスク待ち合わせポイント算出機構204のタスク待ち合わせポイント算出処理は、30分周期で起動し、待ち合わせポイントを決定する。タスク待ち合わせポイント算出機構204は、タスクの実行待ちポイントを取得(S301)し、実行待ちタスク管理テーブル208に記録する(S302)。この処理を3秒周期で(S303)100回繰り返す。
【0033】
実行待ちタスク管理テーブル208に100回記録したことを確認(S304)し、100回記録した場合は、100個の実行待ちタスク管理テーブル208のデータ部をそれぞれ比較(S305)し、全てのタスクが実行待ちであるパターンのうち、もっとも多いパターンをタスク待ち合わせポイント管理テーブル205に記録する(S306)。
【0034】
図2の状態遷移図では、タスク1,2,3の処理中の実行待ちポイントがそれぞれ1つの場合についてしか図示していないが、実行待ちポイントは複数あるので、図2の状態以外の状態もある。それぞれの状態について、全てのタスクが実行待ちである実行待ちポイントを比較して待ち合わせポイントを決定する。タスク待ち合わせポイント管理テーブル205のデータ構造は、図5に示すようにタスク番号、待ち合わせポイントで構成される。
【0035】
S304で、記録数が100回に満たない場合は、再びS301に戻る。このようなタスク待ち合わせポイント算出が、30分周期で行われる(S307)。
【0036】
このように構成される計算機システムの動作について、図6乃至9を参照して説明する。第1計算機101が復旧する場合、まず、タスク実行状態一致化機構103の一致化対象決定処理により、一致化を行う計算機の決定を行う。決定の処理フローを図6に示す。第1計算機101のタスク実行状態一致化機構103は、一致化を行う計算機の決定を行う(S601)。本実施例では、第2計算機202が対象となる。次に、一致化を行う計算機の生存確認を行い(S602、S603)、稼動中であれば一致化を開始し(S604)、稼動していなければ本実施例の場合は一致化は終了する。計算機が複数ある場合は、再びS601から一致化を行う計算機の決定を行う。
【0037】
次に、第1計算機101のタスク実行状態一致化機構103は、図7のフローに従って処理を行う。タスク実行状態一致化機構103は、第2計算機201のタスク状態取得機構203に対し、通信線3を介してタスク待ち合わせポイント取得要求を送信する(S701)。第2計算機201のタスク状態取得機構203は、タスク待ち合わせポイント取得要求を受信する(S702)と、タスク待ち合わせポイント管理テーブル205から、前述した待ち合わせポイントを取得し、第1計算機101に送信する(S703)。
【0038】
タスク待ち合わせポイントを受信(S704)したタスク実行状態一致化機構103は、受信した待ち合わせポイントを第1計算機101のタスク待ち合わせ管理テーブル105に記録(S705)し、取得した待ち合わせポイントで実行待ちになるように第1計算機のタスク1,2,3の実行準備を行う(S706)。
【0039】
ここで、図2を参照すると、第2計算機201のタスク1,2,3のそれぞれの待ち合わせポイントが実行待ちポイント211,213,215の場合は、第1計算機101でも、実行待ちポイント111,113,115を待ち合わせポイントとしてタスクの実行準備が行われる。タスクの実行準備の例として、タスクを待ち合わせポイントまで実行させる方法がある。また、ローカルのデータを参照するような処理がある場合は、アプリケーションより待ち合わせポイントまでタスクの処理をスキップさせ、ミラーリングの技術よりローカルデータをコピーする方法が望ましい。
【0040】
実行準備を終えたタスクは、待ち合わせポイントから動いてしまわないように停止する(S707)。このように第1計算機の全タスクの実行準備、停止をそれぞれの待ち合わせポイントまで行う。第2計算機201は、第1計算機101ヘのタスク待ち合わせポイントの送信が終了すると、自己のタスクの停止指示を行う(S708)。
【0041】
ここで、第2計算機201のタスクの実行待ち状態は、タスクステータス管理テーブル207に記録される。タスクステータス管理テーブル207のデータ構造は、図8に示すように、タスク番号、実行待ちポイントで構成される。タスクステータス管理テーブル207は、各タスクが実行待ちに入る度に更新される。タスク停止指示(S708)を行った第2計算機201は、図9の処理フローに従う。
【0042】
図9に示すように、タスク停止指示の有無を確認(S901)し、指示がある場合は、タスクステータス管理テーブル207が更新される度に、タスクステータス管理テーブル207とタスク待ち合わせポイント管理テーブル205を比較(S902)し、内容が一致しているかを確認(S903)し、タスクの実行の停止指示を行う(S904)。ここでは、第2計算機201のタスクが、待ち合わせポイントで停止しているかどうかを確認し、待ち合わせポイントで停止している場合は、次に実行すべきタスクの実行の停止指示を行っている。
【0043】
次に、再び図7の処理フローを参照すると、第2計算機201は、第1計算機101のタスクが待ち合わせポイントに基づいて停止しているかの確認要求を送信する(S709)。第1計算機201は、自己のタスクが待ち合わせポイントに基づいて停止しているかの確認応答を送信する(S710)。第2計算機201は、確認応答を受信してタスクが停止しているかを確認(S711)し、タスクが停止していない場合は、再び自己のタスクを実行(S712)させ、タスクの停止指示(S708)へ戻る。タスクが停止している場合は、タスクの実行順序を記録したタスク実行順序記録テーブル206に記録されている実行順序を第1計算機101に送信する(S713)。
【0044】
ここで、タスク実行順序記録テーブル206について説明する。タスク実行順序記録テーブル206のデータ構成は図10のようになる。図10の各データ部には、タスクの実行順にタスク番号が記録される。タスクは、実行準備を経て実行すると、タスク実行順序記録テーブル206の自タスク番号をクリアした後、タスク番号と待ち合わせポイントを更新する。
【0045】
タスクの実行は、図11の処理フローになる。まず、実行前にタスク実行順序記録テーブル206にタスクの実行順を記録する(S1111)。タスクの実行の停止指示を確認(S1112)し、タスクの実行停止指示がない場合は、タスクの実行を行う(S1113)。タスクの実行停止指示がある場合はタスクの実行は行われない。
【0046】
再び図7の処理フローを参照すると、第1計算機101は、タスク実行順序を受信し、タスク実行順序を自己のタスク実行順序記録テーブル106に記録する(S714)。両計算機のタスク実行順序のコピーが完了すると、第2計算機201のタスクの実行指示により、計算機間で同時にタスクを実行させる(S715)。
【0047】
以上説明したように、本実施例によれば、復旧中の第1計算機101は、例えば、次に来る待ち合わせポイント及びタスク番号を第2計算機201から知ることにより、その待ち合わせポイントに合わせてタスクを実行すれば、第2計算機201と動作状態を合わせることができる。また、通常稼動中の第2計算機201の処理は妨げられることがないので、計算機システムの稼働率を高めることができる。
【0048】
以上、実施例について説明したが、本発明は、これらに限らず適宜構成を変更して適用することができる。例えば、図2のタスク処理を構成するタスクの数、実行待ちタスク管理テーブル208の数、図3の周期についても適宜変更することができる。また、図2の全てのタスクが実行待ちであるパターンが1つしかない場合は、タスク待ち合わせポイント算出をする必要はない。
【0049】
また、本実施例では、第1計算機101と第2計算機201の同期をとるために、待ち合わせポイントに合わせて第2計算機201を停止させているが、第1計算機101と第2計算機201の動作状態をほぼ一致させるだけでよい場合は、停止させるは必要なく、例えば、第1計算機101は、次に来る待ち合わせポイントを第2計算機201から知ることにより、その待ち合わせポイントに合わせてタスクを実行すれば、第2計算機201と動作状態を合わせることができる。
【0050】
さらに、通常稼動中でも復旧中でも、タスク要素の処理時間、待機時間等が変わらない場合は、待ち合わせポイントは必要なく、第1計算機101は、実行中のタスク番号を第2計算機201から知ることにより、第2計算機201と動作状態を合わせることができる。
【符号の説明】
【0051】
101 第1計算機
103 タスク実行状態一致化機構
105,205 タスク待ち合わせポイント管理テーブル
106,206 タスク実行順序記録テーブル
201 第2計算機
203 タスク状態取得機構
204 タスク待ち合わせポイント算出機構
207 タスクステータス管理テーブル
208 実行待ちタスク管理テーブル
210,211,212,213,214,215 実行待ちポイント
【技術分野】
【0001】
本発明は、複数の計算機が多重化して設けられた計算機システムに関する。
【背景技術】
【0002】
パソコン等の計算機に障害が発生すると正常に処理が行えなくなるが、障害が発生した計算機と切り替わって他の計算機が処理を継続させるシステムとして多重化システムやフォールトトレラントシステムがある。
【0003】
これらのシステムでは複数の計算機で同じ処理を行うことで、1台障害が発生しても計算機間で切り替えを行って障害が発生していない計算機で処理を継続させることができ、処理結果等のデータ引継ぎが不要となる。このように複数の計算機にて同じ処理を行うシステムとして、例えば、特許文献1がある。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2007−72980号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、特許文献1のシステムにおいて、ハードウェアの障害等で1台の計算機が停止し、残りの計算機で処理を継続している場合、障害が発生した計算機は、障害要因を特定し、ハードウェア交換等の処理を行った後、その計算機を起動し、再度、同じ処理を行うようにする必要がある。
【0006】
復旧中の計算機は通常稼動中の計算機から処理の引継ぎを行う必要があるが、通常稼動中の計算機は通常の処理を継続して行っており、処理の内容が変わる。通常稼動中の計算機の動作状態と復旧中の計算機の動作状態は一致させることが好ましいことから、復旧中の計算機が引継ぎを行う場合は、通常稼動中の計算機を一旦停止させねばならず、通常稼動中の計算機の処理を妨げることになる。
【0007】
本発明が解決しようとする課題は、多重化された計算機システムにおいて、通常稼動中の計算機の処理を妨げることなく、通常稼動中の計算機の動作状態と復旧中の計算機の動作状態を一致させることである。
【課題を解決するための手段】
【0008】
上記課題を解決するため、本発明の計算機システムは、少なくとも1つのタスク要素を有する複数のタスクを定められた順序で実行するように構成され、通信線を介して通信可能な複数の計算機が多重化して設けられた計算機システムにおいて、複数の計算機のうち少なくとも1つの計算機が故障から復旧する際、その復旧中の計算機は、その他の通常稼動中の計算機から通信線を介して当該通常稼動中の計算機のタスクの動作状態を受信し、そのタスクの動作状態に合わせて自己のタスクを実行することを特徴とする。
【0009】
本発明によれば、復旧中の計算機は、通常稼動中の計算機のタスクの動作状態を知ることができるので、それに合わせて自己のタスクを実行することで、通常稼動中の計算機の処理を妨げることなく、通常稼動中の計算機の動作状態と復旧中の計算機の動作状態を一致させることができる。
【0010】
また、上記の計算機システムを具体的にすると、上記複数の計算機を、自己の複数のタスクがそれぞれ有するタスク要素の実行状態及び実行中のタスク要素の識別符号を含む動作状態情報を格納し、複数の計算機のうち少なくとも1つの計算機が故障から復旧する際、その復旧中の計算機は、その他の通常稼動中の計算機から通信線を介して当該通常稼動中の計算機の動作状態情報を受信し、その動作状態情報に基づいて自己のタスクを実行するように構成できる。
【0011】
複数の計算機は、予め決められた順序に従ってタスクを実行しているので、実行中のタスク要素の識別符号が分かれば、復旧中の計算機は、通常稼動中の計算機の現在の動作状態を知ることができ、それに合わせて自己のタスクを実行することができる。なお、タスク要素の実行状態としては、例えば、処理時間及び各タスク間の待機時間の長さ等が挙げられる。処理時間や待機時間は、動作状態により変わりうるので、これらを含めることにより、復旧中の計算機は、通常稼動中の計算機と動作時間を合わせることができるので好ましい。
【0012】
また、上記計算機システムにおいて、複数の計算機を、自己の複数のタスクがそれぞれ有するタスク要素の実行状態及び自己の複数のタスクに共通する待機時間を待ち合わせポイントとして格納するとともに、その待ち合わせポイントとその待ち合わせポイントの次に実行するタスク要素の識別符号を含む動作状態情報を格納し、複数の計算機のうち少なくとも1つの計算機が故障から復旧する際、その復旧中の計算機を、その他の通常稼動中の計算機から通信線を介して当該通常稼動中の計算機の動作状態情報を受信し、その動作状態情報に基づいて自己の前記タスクを実行するように構成することができる。
【0013】
上記待ち合わせポイントは、一定時間経過した後に発生する待ちや、排他制御でのリソース解放後に発生する待ち、ネットワークでのパケットを受信した際に発生する待ち、また、他のタスクからの起動指示で発生する待ち等である。すなわち、待ち合わせポイントは、通常の処理の過程で必然的に発生する待ちを利用している。復旧中の計算機は、例えば、次に来る待ち合わせポイントを通常稼動中の計算機から知ることにより、その待ち合わせポイントに合わせてタスクを実行すれば、通常稼動中の計算機と動作状態を合わせることができる。また、通常稼動中の計算機の処理は妨げられることがないので、計算機システムの稼働率を高めることができる。
【0014】
ここで、複数のタスクに共通する待機時間を待ち合わせポイントとするとは、複数のタスクが共通して上記の待ちに入っている時間であり、タスク全てが待機する時間を待ち合わせポイントとすると、動作状態を合わせやすくなるので好ましい。
【0015】
また、待ち合わせポイントの次に実行するタスク要素とは、次に実行すべきタスク要素がどのタスク要素であるかを示すものである。例えば、タスクがタスク要素A、Bから成り立ち、タスク要素A、B間に待ち合わせポイントがあるような場合は、次に実行すべきタスク要素はタスク要素Bしかないため、復旧中の計算機に送信する必要はない。しかし、タスクが複数のタスク要素から成り立ち、各タスク要素が複数の待ちを有している場合、復旧中の計算機はどの待ち合わせポイントであるか分からず、次に実行すべきタスク要素が分からないので、通常稼動中の計算機が待ち合わせポイントの次に実行するタスク要素を送信する必要がある。
【0016】
上記の場合において、通常稼動中の計算機を、復旧中の計算機に動作状態情報を送信するとともに、当該動作状態情報の待ち合わせポイントにおいて自己のタスクを停止し、復旧中の計算機は動作状態情報に基づいて自己のタスクの実行準備を行った後、通常稼動中の計算機及び復旧中の計算機は、それぞれ自己のタスクを実行するように構成することもできる。
【0017】
これにより、通常稼動中の計算機と復旧稼動中の計算機を待ち合わせポイントから同時に同じ動作を開始することができ、通常稼動中の計算機と復旧稼動中の計算機の同期を取ることができる。なお、タスクの実行準備とは、上記の例で説明すると、復旧中の計算機は、タスク要素Bの実行準備を行うということを示す。
【発明の効果】
【0018】
本発明によれば、多重化された計算機システムにおいて、通常稼動中の計算機の処理を妨げることなく、通常稼動中の計算機の動作状態と復旧中の計算機の動作状態を一致させることができる。
【図面の簡単な説明】
【0019】
【図1】本発明に係る計算機システムを構成する計算機の構成図である。
【図2】タスクの状態遷移図である。
【図3】タスク待ち合わせポイント算出機構の動作を示すフローチャートである。
【図4】実行待ちタスク管理テーブルのデータ構造である。
【図5】タスク待ち合わせポイント管理テーブルのデータ構造である。
【図6】一致化対象決定機構の動作を示すフローチャートである。
【図7】タスク一致化処理を示すフローチャートである。
【図8】タスクステータス管理テーブルのデータ構造である。
【図9】タスク停止指示後の処理の動作を示すフローチャートである。
【図10】タスク実行順序記録テーブルのデータ構造である。
【図11】タスク実行準備後の処理の動作を示すフローチャートである。
【発明を実施するための形態】
【0020】
以下、本発明の計算機システムについて、図面を参照して説明する。
【実施例】
【0021】
図1は、実施例1の計算機システムの構成である。計算機システムは、複数のタスク要素を有する複数のタスクを定められた順序で実行するように構成され、通信線を介して通信可能な複数の計算機が多重化して設けられており、全ての計算機が同一の構成動作を行う。本実施例では、特に、2つの計算機、第1計算機101と第2計算機201について説明する。
【0022】
第1計算機101は、ハードウェア等の障害が発生した後、ハードウェア等を交換して再起動を行い、処理準備中の実行待ち状態である復旧中の計算機であり、第2計算機201は、本体処理を行っている通常稼動中の計算機である。なお、前述したように、第1計算機101と第2計算機201の構成は同じであるが、説明の都合上、各計算機の動作に関する構成のみを図示し、図中の符号の先頭に「1」がつくものは、第1計算機の動作に関する構成であり、「2」がつくものは、第2計算機の動作に関する構成としている。
【0023】
第1計算機101は、タスク1,2,3からなるタスク処理102、タスク実行状態一致化機構103、一致化対象決定機構104、タスク待ち合わせポイント管理テーブル105、タスク実行順序記録テーブル106を動作させる。
【0024】
第2計算機201は、タスク1,2,3からなるタスク処理202、タスク状態取得機構203、タスク待ち合わせポイント算出機構204、タスク待ち合わせポイント管理テーブル205、タスク実行順序記録テーブル206、タスクステータス管理テーブル207、n個の実行待ちタスク管理テーブル208を動作させる。また、第1計算機101と第2計算機201とは、通信線3を介して通信可能である。
【0025】
図2は、図1のタスク処理102,202の通常稼動中の状態遷移図である。タスク処理102,202は、同じ動作を行う。タスク処理102のタスク1では、タスクの実行待ちポイント110,111の2つが存在し、タスク2では実行待ちポイント112,113の2つ、タスク3では実行待ちポイント114,115の2つが存在する。
【0026】
タスク処理202のタスク1では、タスクの実行待ちポイント210,211の2つが存在し、タスク2では実行待ちポイント212,213の2つ、タスク3では実行待ちポイント214,215の2つが存在する。なお、図2は、2つの実行待ちポイントがある状態を示し、実行待ちポイントは2つ以上存在する状態もある。
【0027】
この実行待ちポイントは、一定時間経過した後に発生する待ちや、排他制御でのリソース解放後に発生する待ち、ネットワークでのパケットを受信した際に発生する待ち、また、他のタスクからの起動指示で発生する待ち等がある。本実施例では、実行待ちポイント110,112,114,210,212,214は、処理準備中の待ちであり、実行待ちポイント111,113,115,211,213,215は、他のタスクからの起動指示で発生する待ちである。
【0028】
タスク処理202では、タスク1は、処理aを実行した後に、タスク2の起動を指示し、実行待ちポイント211を経た後に、再び処理aを実行し、これを繰り返す。タスク2は、実行待ちポイント211中に、タスク1からの起動指示を受けた後、タスク3の起動を指示し、処理bを実行した後に、再び実行待ちポイント213に入り、これを繰り返す。タスク3は、実行待ちポイント215中に、タスク2からの起動指示を受けた後、処理cを実行し、タスク3の起動を指示した後、再び実行待ちポイント215に入り、これを繰り返す。タスク処理102も同様である。なお、処理a、b、c及びタスク1,2,3に対する起動指示は、タスクを構成するタスク要素である。
【0029】
ここで、図1のタスク待ち合わせポイント算出機構204について説明する。待ち合わせポイント算出とは、第1計算機101及び第2計算機201のタスクをどの実行待ちポイントで待たせておくかを決定するものである。その決定方法を図2,3を参照して説明する。
【0030】
タスク待ち合わせポイント算出機構204は、図2の第2計算機201のタスク1,2,3がもっとも実行待ちに入る頻度が高いポイントを、タスクの待ち合わせポイントに設定するために、タスクの実行待ちポイントを取得し、全タスクが実行待ちの状態にいるときのそれぞれのタスク実行待ちポイントを実行待ちタスク管理テーブル208に記録する。
【0031】
実行待ちタスク管理テーブル208のデータ構造は、図4に示すようにタスク番号、実行待ちポイントで構成される。実行待ちポイントは2進数のbitフィールドで宣言され、タスク1が実行待ちポイント210であれば0001を、実行待ちポイント211であれば0010を、実行待ち状態でなければ0000を記録する。よって、全タスクが実行待ちである状態は、実行待ちタスク管理テーブル208の実行待ちポイントが全て0000でない状態である。
【0032】
また、本実施例では、実行待ちタスク管理テーブル208は、100個の同テーブルを持つ。タスク待ち合わせポイント算出機構204のタスク待ち合わせポイント算出処理は、30分周期で起動し、待ち合わせポイントを決定する。タスク待ち合わせポイント算出機構204は、タスクの実行待ちポイントを取得(S301)し、実行待ちタスク管理テーブル208に記録する(S302)。この処理を3秒周期で(S303)100回繰り返す。
【0033】
実行待ちタスク管理テーブル208に100回記録したことを確認(S304)し、100回記録した場合は、100個の実行待ちタスク管理テーブル208のデータ部をそれぞれ比較(S305)し、全てのタスクが実行待ちであるパターンのうち、もっとも多いパターンをタスク待ち合わせポイント管理テーブル205に記録する(S306)。
【0034】
図2の状態遷移図では、タスク1,2,3の処理中の実行待ちポイントがそれぞれ1つの場合についてしか図示していないが、実行待ちポイントは複数あるので、図2の状態以外の状態もある。それぞれの状態について、全てのタスクが実行待ちである実行待ちポイントを比較して待ち合わせポイントを決定する。タスク待ち合わせポイント管理テーブル205のデータ構造は、図5に示すようにタスク番号、待ち合わせポイントで構成される。
【0035】
S304で、記録数が100回に満たない場合は、再びS301に戻る。このようなタスク待ち合わせポイント算出が、30分周期で行われる(S307)。
【0036】
このように構成される計算機システムの動作について、図6乃至9を参照して説明する。第1計算機101が復旧する場合、まず、タスク実行状態一致化機構103の一致化対象決定処理により、一致化を行う計算機の決定を行う。決定の処理フローを図6に示す。第1計算機101のタスク実行状態一致化機構103は、一致化を行う計算機の決定を行う(S601)。本実施例では、第2計算機202が対象となる。次に、一致化を行う計算機の生存確認を行い(S602、S603)、稼動中であれば一致化を開始し(S604)、稼動していなければ本実施例の場合は一致化は終了する。計算機が複数ある場合は、再びS601から一致化を行う計算機の決定を行う。
【0037】
次に、第1計算機101のタスク実行状態一致化機構103は、図7のフローに従って処理を行う。タスク実行状態一致化機構103は、第2計算機201のタスク状態取得機構203に対し、通信線3を介してタスク待ち合わせポイント取得要求を送信する(S701)。第2計算機201のタスク状態取得機構203は、タスク待ち合わせポイント取得要求を受信する(S702)と、タスク待ち合わせポイント管理テーブル205から、前述した待ち合わせポイントを取得し、第1計算機101に送信する(S703)。
【0038】
タスク待ち合わせポイントを受信(S704)したタスク実行状態一致化機構103は、受信した待ち合わせポイントを第1計算機101のタスク待ち合わせ管理テーブル105に記録(S705)し、取得した待ち合わせポイントで実行待ちになるように第1計算機のタスク1,2,3の実行準備を行う(S706)。
【0039】
ここで、図2を参照すると、第2計算機201のタスク1,2,3のそれぞれの待ち合わせポイントが実行待ちポイント211,213,215の場合は、第1計算機101でも、実行待ちポイント111,113,115を待ち合わせポイントとしてタスクの実行準備が行われる。タスクの実行準備の例として、タスクを待ち合わせポイントまで実行させる方法がある。また、ローカルのデータを参照するような処理がある場合は、アプリケーションより待ち合わせポイントまでタスクの処理をスキップさせ、ミラーリングの技術よりローカルデータをコピーする方法が望ましい。
【0040】
実行準備を終えたタスクは、待ち合わせポイントから動いてしまわないように停止する(S707)。このように第1計算機の全タスクの実行準備、停止をそれぞれの待ち合わせポイントまで行う。第2計算機201は、第1計算機101ヘのタスク待ち合わせポイントの送信が終了すると、自己のタスクの停止指示を行う(S708)。
【0041】
ここで、第2計算機201のタスクの実行待ち状態は、タスクステータス管理テーブル207に記録される。タスクステータス管理テーブル207のデータ構造は、図8に示すように、タスク番号、実行待ちポイントで構成される。タスクステータス管理テーブル207は、各タスクが実行待ちに入る度に更新される。タスク停止指示(S708)を行った第2計算機201は、図9の処理フローに従う。
【0042】
図9に示すように、タスク停止指示の有無を確認(S901)し、指示がある場合は、タスクステータス管理テーブル207が更新される度に、タスクステータス管理テーブル207とタスク待ち合わせポイント管理テーブル205を比較(S902)し、内容が一致しているかを確認(S903)し、タスクの実行の停止指示を行う(S904)。ここでは、第2計算機201のタスクが、待ち合わせポイントで停止しているかどうかを確認し、待ち合わせポイントで停止している場合は、次に実行すべきタスクの実行の停止指示を行っている。
【0043】
次に、再び図7の処理フローを参照すると、第2計算機201は、第1計算機101のタスクが待ち合わせポイントに基づいて停止しているかの確認要求を送信する(S709)。第1計算機201は、自己のタスクが待ち合わせポイントに基づいて停止しているかの確認応答を送信する(S710)。第2計算機201は、確認応答を受信してタスクが停止しているかを確認(S711)し、タスクが停止していない場合は、再び自己のタスクを実行(S712)させ、タスクの停止指示(S708)へ戻る。タスクが停止している場合は、タスクの実行順序を記録したタスク実行順序記録テーブル206に記録されている実行順序を第1計算機101に送信する(S713)。
【0044】
ここで、タスク実行順序記録テーブル206について説明する。タスク実行順序記録テーブル206のデータ構成は図10のようになる。図10の各データ部には、タスクの実行順にタスク番号が記録される。タスクは、実行準備を経て実行すると、タスク実行順序記録テーブル206の自タスク番号をクリアした後、タスク番号と待ち合わせポイントを更新する。
【0045】
タスクの実行は、図11の処理フローになる。まず、実行前にタスク実行順序記録テーブル206にタスクの実行順を記録する(S1111)。タスクの実行の停止指示を確認(S1112)し、タスクの実行停止指示がない場合は、タスクの実行を行う(S1113)。タスクの実行停止指示がある場合はタスクの実行は行われない。
【0046】
再び図7の処理フローを参照すると、第1計算機101は、タスク実行順序を受信し、タスク実行順序を自己のタスク実行順序記録テーブル106に記録する(S714)。両計算機のタスク実行順序のコピーが完了すると、第2計算機201のタスクの実行指示により、計算機間で同時にタスクを実行させる(S715)。
【0047】
以上説明したように、本実施例によれば、復旧中の第1計算機101は、例えば、次に来る待ち合わせポイント及びタスク番号を第2計算機201から知ることにより、その待ち合わせポイントに合わせてタスクを実行すれば、第2計算機201と動作状態を合わせることができる。また、通常稼動中の第2計算機201の処理は妨げられることがないので、計算機システムの稼働率を高めることができる。
【0048】
以上、実施例について説明したが、本発明は、これらに限らず適宜構成を変更して適用することができる。例えば、図2のタスク処理を構成するタスクの数、実行待ちタスク管理テーブル208の数、図3の周期についても適宜変更することができる。また、図2の全てのタスクが実行待ちであるパターンが1つしかない場合は、タスク待ち合わせポイント算出をする必要はない。
【0049】
また、本実施例では、第1計算機101と第2計算機201の同期をとるために、待ち合わせポイントに合わせて第2計算機201を停止させているが、第1計算機101と第2計算機201の動作状態をほぼ一致させるだけでよい場合は、停止させるは必要なく、例えば、第1計算機101は、次に来る待ち合わせポイントを第2計算機201から知ることにより、その待ち合わせポイントに合わせてタスクを実行すれば、第2計算機201と動作状態を合わせることができる。
【0050】
さらに、通常稼動中でも復旧中でも、タスク要素の処理時間、待機時間等が変わらない場合は、待ち合わせポイントは必要なく、第1計算機101は、実行中のタスク番号を第2計算機201から知ることにより、第2計算機201と動作状態を合わせることができる。
【符号の説明】
【0051】
101 第1計算機
103 タスク実行状態一致化機構
105,205 タスク待ち合わせポイント管理テーブル
106,206 タスク実行順序記録テーブル
201 第2計算機
203 タスク状態取得機構
204 タスク待ち合わせポイント算出機構
207 タスクステータス管理テーブル
208 実行待ちタスク管理テーブル
210,211,212,213,214,215 実行待ちポイント
【特許請求の範囲】
【請求項1】
少なくとも1つのタスク要素を有する複数のタスクを定められた順序で実行するように構成され、通信線を介して通信可能な複数の計算機が多重化して設けられた計算機システムにおいて、
前記複数の計算機のうち少なくとも1つの計算機が故障から復旧する際、該復旧中の計算機は、その他の通常稼動中の計算機から前記通信線を介して当該通常稼動中の計算機のタスクの動作状態を受信し、該タスクの動作状態に合わせて自己の前記タスクを実行することを特徴とする計算機システム。
【請求項2】
少なくとも1つのタスク要素を有する複数のタスクを定められた順序で実行するように構成され、通信線を介して通信可能な複数の計算機が多重化して設けられた計算機システムにおいて、
前記複数の計算機は、自己の複数のタスクがそれぞれ有する前記タスク要素の実行状態及び実行中のタスク要素の識別符号を含む動作状態情報を格納し、前記複数の計算機のうち少なくとも1つの計算機が故障から復旧する際、該復旧中の計算機は、その他の通常稼動中の計算機から前記通信線を介して当該通常稼動中の計算機の前記動作状態情報を受信し、該動作状態情報に基づいて自己の前記タスクを実行することを特徴とする計算機システム。
【請求項3】
少なくとも1つのタスク要素を有する複数のタスクを定められた順序で実行するように構成され、通信線を介して通信可能な複数の計算機が多重化して設けられた計算機システムにおいて、
前記複数の計算機は、自己の複数のタスクがそれぞれ有する前記タスク要素の実行状態及び自己の複数のタスクに共通する待機時間を待ち合わせポイントとして格納するとともに、該待ち合わせポイントと該待ち合わせポイントの次に実行する前記タスク要素の識別符号を含む動作状態情報を格納し、前記複数の計算機のうち少なくとも1つの計算機が故障から復旧する際、該復旧中の計算機は、その他の通常稼動中の計算機から前記通信線を介して当該通常稼動中の計算機の前記動作状態情報を受信し、該動作状態情報に基づいて自己の前記タスクを実行することを特徴とする計算機システム。
【請求項4】
請求項3に記載の計算機システムにおいて、
前記通常稼動中の計算機は、前記復旧中の計算機に前記動作状態情報を送信するとともに、当該動作状態情報の待ち合わせポイントにおいて自己のタスクを停止し、前記復旧中の計算機は前記動作状態情報に基づいて自己のタスクの実行準備を行った後、前記通常稼動中の計算機及び前記復旧中の計算機は、それぞれ自己の前記タスクを実行することを特徴とする計算機システム。
【請求項5】
複数のタスクを定められた順序で実行するように構成され、通信線を介して通信可能な複数の計算機が多重化して設けられた計算機システムにおいて、
前記計算機は前記タスク処理の全てが待機する時間を待ち合わせポイントとして記録する管理テーブルを備え、
前記計算機が故障から復旧する際、該復旧中の計算機はその他の通常稼動中の計算機に前記通信線を介して前記管理テーブルに記録された待ち合わせポイントの取得要求を送信し、前記通常稼動中の計算機は、該取得要求に応じて待ち合わせポイントを送信するとともに当該待ち合わせポイントに基づいて自己のタスクを停止し、前記復旧中の計算機は前記待ち合わせポイントを受信するとともに当該待ち合わせポイントに基づいて自己のタスクの実行準備を行い、前記通常稼動中の計算機は、前記停止したタスクの次に起動するタスクの実行順序を前記復旧中の計算機に送信し、前記復旧中の計算機は前記実行順序を受信し、該復旧中の計算機及び通常稼動中の計算機は、前記実行順序に基づいてタスクを実行することを特徴とする計算機システム。
【請求項6】
少なくとも1つのタスク要素を有する複数のタスクを定められた順序で実行するように構成され、通信線を介して通信可能な複数の計算機が多重化して設けられた計算機システムの前記複数の計算機のうち、少なくとも1つの計算機が故障から復旧する際、該復旧中の計算機が、その他の通常稼動中の計算機から前記通信線を介して当該通常稼動中の計算機のタスクの動作状態を受信し、該タスクの動作状態に合わせて自己の前記タスクを実行する計算機システムの復旧方法。
【請求項7】
少なくとも1つのタスク要素を有する複数のタスクを定められた順序で実行するように構成され、通信線を介して通信可能な複数の計算機が多重化して設けられた計算機システムの前記複数の計算機を、自己の複数のタスクがそれぞれ有する前記タスク要素の実行状態及び識別符号を含む動作状態情報を格納するように構成し、前記複数の計算機のうち少なくとも1つの計算機が故障から復旧する際、該復旧中の計算機は、その他の通常稼動中の計算機から前記通信線を介して当該通常稼動中の計算機の前記動作状態情報を受信し、該動作状態情報に基づいて自己の前記タスクを実行する計算機システムの復旧方法。
【請求項8】
少なくとも1つのタスク要素を有する複数のタスクを定められた順序で実行するように構成され、通信線を介して通信可能な複数の計算機が多重化して設けられた計算機システムの前記複数の計算機を、自己の複数のタスクがそれぞれ有する前記タスク要素の実行状態及び自己の複数のタスクに共通する待機時間を待ち合わせポイントとして格納するとともに、該待ち合わせポイントと該待ち合わせポイントの次に実行する前記タスク要素の識別符号を含む動作状態情報を格納するように構成し、前記複数の計算機のうち少なくとも1つの計算機が故障から復旧する際、該復旧中の計算機が、その他の通常稼動中の計算機から前記通信線を介して当該通常稼動中の計算機の前記動作状態情報を受信し、該動作状態情報に基づいて自己の前記タスクを実行する計算機システムの復旧方法。
【請求項9】
請求項8に記載の計算機システムにおいて、
前記通常稼動中の計算機は、前記復旧中の計算機に前記動作状態情報を送信するとともに、当該動作状態情報の待ち合わせポイントにおいて自己のタスクを停止し、前記復旧中の計算機は前記動作状態情報に基づいて自己のタスクの実行準備を行った後、前記通常稼動中の計算機及び前記復旧中の計算機が、それぞれ自己の前記タスクを実行する計算機システムの復旧方法。
【請求項1】
少なくとも1つのタスク要素を有する複数のタスクを定められた順序で実行するように構成され、通信線を介して通信可能な複数の計算機が多重化して設けられた計算機システムにおいて、
前記複数の計算機のうち少なくとも1つの計算機が故障から復旧する際、該復旧中の計算機は、その他の通常稼動中の計算機から前記通信線を介して当該通常稼動中の計算機のタスクの動作状態を受信し、該タスクの動作状態に合わせて自己の前記タスクを実行することを特徴とする計算機システム。
【請求項2】
少なくとも1つのタスク要素を有する複数のタスクを定められた順序で実行するように構成され、通信線を介して通信可能な複数の計算機が多重化して設けられた計算機システムにおいて、
前記複数の計算機は、自己の複数のタスクがそれぞれ有する前記タスク要素の実行状態及び実行中のタスク要素の識別符号を含む動作状態情報を格納し、前記複数の計算機のうち少なくとも1つの計算機が故障から復旧する際、該復旧中の計算機は、その他の通常稼動中の計算機から前記通信線を介して当該通常稼動中の計算機の前記動作状態情報を受信し、該動作状態情報に基づいて自己の前記タスクを実行することを特徴とする計算機システム。
【請求項3】
少なくとも1つのタスク要素を有する複数のタスクを定められた順序で実行するように構成され、通信線を介して通信可能な複数の計算機が多重化して設けられた計算機システムにおいて、
前記複数の計算機は、自己の複数のタスクがそれぞれ有する前記タスク要素の実行状態及び自己の複数のタスクに共通する待機時間を待ち合わせポイントとして格納するとともに、該待ち合わせポイントと該待ち合わせポイントの次に実行する前記タスク要素の識別符号を含む動作状態情報を格納し、前記複数の計算機のうち少なくとも1つの計算機が故障から復旧する際、該復旧中の計算機は、その他の通常稼動中の計算機から前記通信線を介して当該通常稼動中の計算機の前記動作状態情報を受信し、該動作状態情報に基づいて自己の前記タスクを実行することを特徴とする計算機システム。
【請求項4】
請求項3に記載の計算機システムにおいて、
前記通常稼動中の計算機は、前記復旧中の計算機に前記動作状態情報を送信するとともに、当該動作状態情報の待ち合わせポイントにおいて自己のタスクを停止し、前記復旧中の計算機は前記動作状態情報に基づいて自己のタスクの実行準備を行った後、前記通常稼動中の計算機及び前記復旧中の計算機は、それぞれ自己の前記タスクを実行することを特徴とする計算機システム。
【請求項5】
複数のタスクを定められた順序で実行するように構成され、通信線を介して通信可能な複数の計算機が多重化して設けられた計算機システムにおいて、
前記計算機は前記タスク処理の全てが待機する時間を待ち合わせポイントとして記録する管理テーブルを備え、
前記計算機が故障から復旧する際、該復旧中の計算機はその他の通常稼動中の計算機に前記通信線を介して前記管理テーブルに記録された待ち合わせポイントの取得要求を送信し、前記通常稼動中の計算機は、該取得要求に応じて待ち合わせポイントを送信するとともに当該待ち合わせポイントに基づいて自己のタスクを停止し、前記復旧中の計算機は前記待ち合わせポイントを受信するとともに当該待ち合わせポイントに基づいて自己のタスクの実行準備を行い、前記通常稼動中の計算機は、前記停止したタスクの次に起動するタスクの実行順序を前記復旧中の計算機に送信し、前記復旧中の計算機は前記実行順序を受信し、該復旧中の計算機及び通常稼動中の計算機は、前記実行順序に基づいてタスクを実行することを特徴とする計算機システム。
【請求項6】
少なくとも1つのタスク要素を有する複数のタスクを定められた順序で実行するように構成され、通信線を介して通信可能な複数の計算機が多重化して設けられた計算機システムの前記複数の計算機のうち、少なくとも1つの計算機が故障から復旧する際、該復旧中の計算機が、その他の通常稼動中の計算機から前記通信線を介して当該通常稼動中の計算機のタスクの動作状態を受信し、該タスクの動作状態に合わせて自己の前記タスクを実行する計算機システムの復旧方法。
【請求項7】
少なくとも1つのタスク要素を有する複数のタスクを定められた順序で実行するように構成され、通信線を介して通信可能な複数の計算機が多重化して設けられた計算機システムの前記複数の計算機を、自己の複数のタスクがそれぞれ有する前記タスク要素の実行状態及び識別符号を含む動作状態情報を格納するように構成し、前記複数の計算機のうち少なくとも1つの計算機が故障から復旧する際、該復旧中の計算機は、その他の通常稼動中の計算機から前記通信線を介して当該通常稼動中の計算機の前記動作状態情報を受信し、該動作状態情報に基づいて自己の前記タスクを実行する計算機システムの復旧方法。
【請求項8】
少なくとも1つのタスク要素を有する複数のタスクを定められた順序で実行するように構成され、通信線を介して通信可能な複数の計算機が多重化して設けられた計算機システムの前記複数の計算機を、自己の複数のタスクがそれぞれ有する前記タスク要素の実行状態及び自己の複数のタスクに共通する待機時間を待ち合わせポイントとして格納するとともに、該待ち合わせポイントと該待ち合わせポイントの次に実行する前記タスク要素の識別符号を含む動作状態情報を格納するように構成し、前記複数の計算機のうち少なくとも1つの計算機が故障から復旧する際、該復旧中の計算機が、その他の通常稼動中の計算機から前記通信線を介して当該通常稼動中の計算機の前記動作状態情報を受信し、該動作状態情報に基づいて自己の前記タスクを実行する計算機システムの復旧方法。
【請求項9】
請求項8に記載の計算機システムにおいて、
前記通常稼動中の計算機は、前記復旧中の計算機に前記動作状態情報を送信するとともに、当該動作状態情報の待ち合わせポイントにおいて自己のタスクを停止し、前記復旧中の計算機は前記動作状態情報に基づいて自己のタスクの実行準備を行った後、前記通常稼動中の計算機及び前記復旧中の計算機が、それぞれ自己の前記タスクを実行する計算機システムの復旧方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【公開番号】特開2010−257243(P2010−257243A)
【公開日】平成22年11月11日(2010.11.11)
【国際特許分類】
【出願番号】特願2009−106764(P2009−106764)
【出願日】平成21年4月24日(2009.4.24)
【出願人】(000005108)株式会社日立製作所 (27,607)
【Fターム(参考)】
【公開日】平成22年11月11日(2010.11.11)
【国際特許分類】
【出願日】平成21年4月24日(2009.4.24)
【出願人】(000005108)株式会社日立製作所 (27,607)
【Fターム(参考)】
[ Back to top ]