(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024168590
(43)【公開日】2024-12-05
(54)【発明の名称】故障監視装置および故障監視方法
(51)【国際特許分類】
G06F 11/20 20060101AFI20241128BHJP
【FI】
G06F11/20 623
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2023085409
(22)【出願日】2023-05-24
(71)【出願人】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(72)【発明者】
【氏名】重留 広二
(72)【発明者】
【氏名】山田 英明
【テーマコード(参考)】
5B034
【Fターム(参考)】
5B034BB03
5B034CC01
5B034DD01
(57)【要約】
【課題】各装置の動作に対応させて故障の検出動作を実施することで、複数の装置が搭載される場合にも、故障の検出が遅れることを抑制する。
【解決手段】共有メモリと、共有メモリにデータを順次書き込む第1装置と、共有メモリからデータを順次読み出す第2装置と、を有する情報処理装置に搭載される故障監視装置は、第1装置により共有メモリに書き込まれたデータのうち、第2装置により読み出されていない最古のデータを示す最古情報を保持する最古情報保持部と、第2装置により共有メモリから読み出されたデータが第2装置に後続する装置に出力された場合、最古情報保持部に保持された最古情報を更新する最古情報更新部と、第1装置により所定回数のデータが共有メモリに書き込まれても、最古情報保持部に保持された最古情報が更新されない場合、第2装置の故障を検出する第1故障検出部と、を有する。
【選択図】
図2
【特許請求の範囲】
【請求項1】
共有メモリと、前記共有メモリにデータを順次書き込む第1装置と、前記共有メモリからデータを順次読み出す第2装置と、を有する情報処理装置に搭載される故障監視装置であって、
前記第1装置により前記共有メモリに書き込まれたデータのうち、前記第2装置により読み出されていない最古のデータを示す最古情報を保持する最古情報保持部と、
前記第2装置により前記共有メモリから読み出されたデータが前記第2装置に後続する装置に出力された場合、前記最古情報保持部に保持された前記最古情報を更新する最古情報更新部と、
前記第1装置により所定回数のデータが前記共有メモリに書き込まれても、前記最古情報保持部に保持された前記最古情報が更新されない場合、前記第2装置の故障を検出する第1故障検出部と、
を有する故障監視装置。
【請求項2】
前記第1装置による前記共有メモリへのデータの書き込みと、前記第2装置による前記共有メモリからのデータの読み出しは、互いに同じ周期で繰り返し実施され、
前記共有メモリは、前記第1装置による前記共有メモリへのデータの書き込みに対応して前記最古情報が更新されない場合にカウンタ値が更新される第1カウンタを含み、
前記第1故障検出部は、前記第1カウンタのカウンタ値の増加量が閾値以上になった場合、前記第2装置の故障を検出する、
請求項1に記載の故障監視装置。
【請求項3】
前記第1装置と前記第2装置とをそれぞれ含む複数の運用系と、
前記第1故障検出部を有する第3装置を含む待機系と、を有し、
前記共有メモリは、前記複数の運用系に共通に設けられ、
前記最古情報保持部および前記第1カウンタは、前記複数の運用系毎に前記共有メモリに設けられ、
前記最古情報更新部は、前記複数の運用系の前記第2装置の各々に含まれ、
前記第3装置は、前記第1故障検出部により前記第2装置のいずれかの故障を検出した場合、故障した前記第2装置に代わって運用系に切り替わる、
請求項2に記載の故障監視装置。
【請求項4】
前記第2装置は、前記共有メモリから読み出したデータを処理し、処理後のデータを出力した後、前記共有メモリに保持された処理前のデータを消去する、
請求項1に記載の故障監視装置。
【請求項5】
前記第1装置により前記共有メモリに書き込まれた最新のデータを示す最新情報を保持する最新情報保持部と、
前記第1装置により前記共有メモリにデータが書き込まれた場合、前記最新情報保持部に保持された前記最新情報を更新する最新情報更新部と、
前記第2装置により所定回数のデータが前記共有メモリから読み出されても、前記最新情報保持部に保持された前記最新情報が更新されない場合、前記第1装置の故障を検出する第2故障検出部と、
を有する請求項1に記載の故障監視装置。
【請求項6】
前記第1装置による前記共有メモリへのデータの書き込みと、前記第2装置による前記共有メモリからのデータの読み出しは、互いに同じ周期で繰り返し実施され、
前記共有メモリは、前記第2装置による前記共有メモリからのデータの読み出しに対応して前記最新情報が更新されない場合にカウンタ値が更新される第2カウンタを含み、
前記第2故障検出部は、前記第2カウンタのカウンタ値の増加量が閾値以上になった場合、前記第2装置の故障を検出する、
請求項5に記載の故障監視装置。
【請求項7】
前記第1装置と前記第2装置とをそれぞれ含む複数の運用系と、
前記第2故障検出部を有する第3装置を含む待機系と、を有し、
前記共有メモリは、前記複数の運用系に共通に設けられ、
前記最新情報保持部および前記第2カウンタは、前記複数の運用系毎に前記共有メモリに設けられ、
前記最新情報更新部は、前記複数の運用系の前記第1装置の各々に含まれ、
前記第3装置は、前記第2故障検出部により前記第1装置のいずれかの故障を検出した場合、故障した前記第1装置に代わって運用系に切り替わる、
請求項6に記載の故障監視装置。
【請求項8】
共有メモリと、前記共有メモリにデータを順次書き込む第1装置と、前記共有メモリからデータを順次読み出す第2装置と、を有する情報処理装置に搭載される故障監視装置による故障監視方法であって、
前記情報処理装置が有する最古情報保持部に、前記第1装置により前記共有メモリに書き込まれたデータのうち、前記第2装置により読み出されていない最古のデータを示す最古情報を保持し、
前記情報処理装置が有する最古情報更新部が、前記第2装置により前記共有メモリから読み出されたデータが前記第2装置に後続する装置に出力された場合、前記最古情報保持部に保持された前記最古情報を更新し、
前記情報処理装置が有する第1故障検出部が、前記第1装置により所定回数のデータが前記共有メモリに書き込まれても、前記最古情報保持部に保持された前記最古情報が更新されない場合、前記第2装置の故障を検出する、
故障監視方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、故障監視装置および故障監視方法に関する。
【背景技術】
【0002】
稼働系装置の障害が検出された場合、稼働系装置のデータが二重化された共有ストレージからデータを取得して待機系装置を動作させ、稼働系装置の機能を待機系装置で継続させる手法が知られている(例えば、特許文献1参照)。現用機の内蔵ディスク装置と同一の内容が書き込まれた共有ディスク装置を有し、現用機に障害が発生した場合、予備機が共有ディスク装置の内容をコピーして現用機の処理を引き継ぐ手法が知られている(例えば、特許文献2参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2016-110173号公報
【特許文献2】特開平6-175788号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
例えば、共有メモリを介して接続される複数の運用系装置と、待機系装置とを含む情報処理装置では、上流側の運用系装置は、処理したデータを共有メモリに順次書き込み、下流側の運用系装置は、共有メモリから読み出したデータを順次処理する。例えば、情報処理装置に搭載される管理装置は、複数の運用系装置を監視して故障を検出し、故障した運用系装置を待機系装置に切り替える。しかしながら、運用系装置の数が多いほど、管理装置の負荷は増大し、各運用系装置の故障の監視周期は長くなり、故障の発生時の運用系装置から待機系装置への切り替えは遅くなる。例えば、下流側の運用系装置が故障したときに故障の検出と待機系装置への切り替えとが遅れると、共有メモリがオーバーフローしてデータが失われるおそれがある。
【0005】
1つの側面では、本発明は、各装置の動作に対応させて故障の検出動作を実施することで、複数の装置が搭載される場合にも、故障の検出が遅れることを抑制することを目的とする。
【課題を解決するための手段】
【0006】
一つの観点によれば、故障監視装置は、共有メモリと、前記共有メモリにデータを順次書き込む第1装置と、前記共有メモリからデータを順次読み出す第2装置と、を有する情報処理装置に搭載される故障監視装置であって、前記第1装置により前記共有メモリに書き込まれたデータのうち、前記第2装置により読み出されていない最古のデータを示す最古情報を保持する最古情報保持部と、前記第2装置により前記共有メモリから読み出されたデータが前記第2装置に後続する装置に出力された場合、前記最古情報保持部に保持された前記最古情報を更新する最古情報更新部と、前記第1装置により所定回数のデータが前記共有メモリに書き込まれても、前記最古情報保持部に保持された前記最古情報が更新されない場合、前記第2装置の故障を検出する第1故障検出部と、を有する。
【発明の効果】
【0007】
各装置の動作に対応させて故障の検出動作を実施することで、複数の装置が搭載される場合にも、故障の検出が遅れることを抑制することができる。
【図面の簡単な説明】
【0008】
【
図1】一実施形態における情報処理装置の一例を示すブロック図である。
【
図2】
図1の情報処理装置の動作の一例を示す説明図である。
【
図4】
図1の情報処理装置の動作の別の例を示す説明図である。
【
図6】
図2から
図5で説明した機能を持たない他の情報処理装置の動作の一例を示す説明図である。
【
図7】別の実施形態における情報処理装置の一例を示すブロック図である。
【
図8】
図7の共有メモリのデータ構造の一例を示すブロック図である。
【
図9】
図7の情報処理装置の動作の一例を示すシーケンス図である。
【
図12】
図7の情報処理装置のデータ管理方式の全体動作の一例を示すフロー図である。
【発明を実施するための形態】
【0009】
以下、図面を参照して実施形態が説明される。
【0010】
図1は、一実施形態における情報処理装置の一例を示す。
図1に示す情報処理装置100は、CPUと、複数の共有メモリCM(CM1、CM2、CM3)と、複数のカードCD(CD1、CD2、CD3)とを有する。各カードCDは、上流に接続された共有メモリCMからデータを読み出して処理し、処理後のデータを下流に接続された共有メモリCMに書き込む。情報処理装置100は、前段装置210および後段装置220とともにシステム300に含まれる。共有メモリCMにデータを書き込むカードCDは、第1装置の一例であり、共有メモリCMからデータを読み出すカードは、第2装置の一例である。
【0011】
カードCD1は、運用系に割り当てられたN個のカードCD11-CD1Nまたは待機系に割り当てられたカードCD1Sのいずれかである。カードCD2は、運用系に割り当てられたN個のCD21-CD2Nまたは待機系に割り当てられたカードCD2Sである。カードCD3は、運用系に割り当てられたN個のカードCD3(CD31-CD3N)または待機系に割り当てられたカードCD3Sである。待機系に割り当てられたカードCDS(CD1S、CD2S、CD3S)は、第3装置の一例である。
【0012】
CPUは、情報処理装置の動作の全体を制御するとともに、監視・制御パスCPを介して図示しないカードスロットに接続されるカードCDを管理する。特に限定されないが、各カードCDは、FPGA(Field-Programmable Gate Array)カードまたはGPU(Graphics Processing Unit)カード等のアクセラレータカードでもよい。
【0013】
また、各カードCDは、PCIe(Peripheral Component Interconnect express)インタフェースまたはCXL(Compute Express Link)インタフェースを採用してもよく、光インタフェースを採用してもよい。なお、情報処理装置100は、カードCDの代わりに、コネクタ等に着脱可能に接続される処理装置を有してもよい。
【0014】
共有メモリCMとカードCDとの間のデータ転送は、データ通信パスDPを介して実施される。カードCDの各々は、N個の運用系のいずれか、または1個の待機系に割り当てられる。待機系は、運用系のいずれかが故障した場合に運用系の代わりに使用され、運用系に故障がない場合、使用されない。
【0015】
初段の共有メモリCM1の入力は、運用系のデータ通信パスDPを介して前段装置210に接続され、前段装置210から供給されるデータを運用系毎に受信する。初段の共有メモリCM1の出力は、データ通信パスDPを介してカードCD11-CD1N、CD1Sに接続される。2段目の共有メモリCM2の入力は、データ通信パスDPを介してカードCD11-CD1N、CD1Sに接続される。2段目の共有メモリCM2の出力は、データ通信パスDPを介してカードCD21-CD2N、カードCD2Sに接続される。
【0016】
3段目の共有メモリCM3の入力は、データ通信パスDPを介してカードCD21-CD2N、CD2Sに接続される。3段目の共有メモリCM3の出力は、データ通信パスDPを介してカードCD31-CD3N、CD3Sに接続される。カードCD31-CD3N、CD3Sは、後段装置220に対応して設けられる共有メモリCM4の入力に接続される。
【0017】
特に限定されないが、例えば、各運用系のカードCD1、CD2、CD3は、前段装置210から受ける画像を順次処理し、処理後の画像を後段装置220に出力する。例えば、カードCD1は、前段装置210により共有メモリCM1に格納された圧縮画像データを共有メモリCM1から読み出して解凍し、解凍後の画像データを共有メモリCM2に書き込む。カードCD2は、解凍後の画像データを共有メモリCM2から読み出して画像データのサイズを縮小し、得られた縮小画像データを共有メモリCM3に書き込む。
【0018】
カードCD3は、縮小画像データを共有メモリCM3から読み出して、縮小画像データに含まれる物体を検出し、検出した物体を示す情報を縮小画像データとともに共有メモリCM4に書き込む。以下では、カードCD1の処理は、ステージSTG1で実施されるとし、カードCD2の処理は、ステージSTG2で実施されるとし、カードCD3の処理は、ステージSTG3で実施されるとする。また、ステージSTG1-STG3を区別なく表す場合、ステージSTGと称する。
【0019】
各カードCD1-CD3は、予め設定された周期内にそれぞれの画像処理を完了する。すなわち、各カードCD1-CD3による共有メモリCMへのデータDTの書き込みと、各カードCD1-CD3による共有メモリCMからのデータDTの読み出しは、互いに同じ周期で繰り返し実施される。
【0020】
各カードCD1-CD3が周期毎に画像処理を順次実施することで、情報処理装置100は、共有メモリCM1-CM3にデータを滞留させることなく、前段装置210から順次転送される画像データを処理することができる。そして、情報処理装置100は、処理後の画像データを後段装置220に接続された共有メモリCM4に順次転送することができる。換言すれば、情報処理装置100は、画像を欠落することなく、処理した画像を保証時間内に後段装置220に転送することができる。
【0021】
図2および
図3で説明するように、待機系のカードCD2S、CD3Sは、1つ上流側のステージSTGの運用系のカードCDおよび自ステージSTGの運用系のカードCDと連携して自ステージSTGの運用系のカードCDの故障を検出することができる。また、
図4および
図5に示すように、待機系のカードCD1S、CD2Sは、1つ下流側のステージSTGの運用系のカードCDおよび自ステージSTGの運用系のカードCDと連携して自ステージSTGの運用系のカードCDの故障を検出することができる。
【0022】
図2および
図3は、
図1の情報処理装置100の動作の一例を示す。
図2および
図3は、情報処理装置100に搭載される故障監視装置による故障監視方法の一例を示す。各カードCDは、上流側の共有メモリCMからのデータDTの読み出しと、読み出したデータDTの処理と、処理したデータDTの下流側の共有メモリCMへの書き込みとを含むデータ処理を、予め設定された周期で繰り返し実施する。各カードCDのデータ処理の周期は、システム300の仕様で決められた前段装置210から後段装置220へのデータ転送レートを満足するように設定され、全てのカードCDで共通である。
【0023】
各共有メモリCMは、最古情報OLD、最新情報NEWおよび故障カウンタCNT1、CNT2の値をそれぞれ保持する管理領域と、複数のデータDTを保持するデータ領域とを、運用系毎に有する。例えば、最古情報OLD、最新情報NEWおよび故障カウンタCNT1、CNT2の値を保持する領域の各々は、1バイト程度である。
【0024】
最古情報OLDを保持する領域は、最古情報保持部の一例であり、最新情報NEWを保持する領域は、最新情報保持部の一例である。
図2および
図3において、各共有メモリCM3、CM4には、1つの運用系に対応する管理領域およびデータ領域が示される。
【0025】
データ領域には、上流に接続されたカードCDにより処理されたデータDTが保持される。データDTの末尾に示すアルファベットa、b、c、dは、各カードCDによるデータDTの処理順(DTa、DTb、DTc、DTdの順で処理)を示す。なお、説明の簡単化のため、共有メモリCM3は、最大で3つのデータDTを保持可能であるとする。
【0026】
領域OLDには、上流に接続されたカードCDにより書き込まれたデータDTのうち最古のデータDTを示す最古情報OLDが保持される。領域NEWには、上流に接続されたカードCDにより書き込まれたデータDTのうち最新のデータDTを示す最新情報NEWが保持される。
【0027】
故障カウンタCNT1の値は、データ処理の周期毎に、最古情報OLDが更新されていないことが上流に接続されたカードCDにより検出された場合にインクリメントされる。故障カウンタCNT2の値は、データ処理の周期毎に、最新情報NEWが更新されていないことが下流に接続されたカードCDにより検出された場合にインクリメントされる。故障カウンタCNT1は、第1カウンタの一例であり、故障カウンタCNT2は、第2カウンタの一例である。
【0028】
図2および
図3では、最古情報OLDおよび故障カウンタCNT1が使用され、待機系のカードCD3Sにより運用系のカードCD3の故障が検出される例が示される。最新情報NEWおよび故障カウンタCNT2を使用して、待機系のカードCD2Sにより運用系のカードCD2の故障が検出される例は、
図4および
図5に示される。
【0029】
カードCD2は、
図1のカードCD21-CD2Nのいずれかであり、カードCD3は、
図1のカードCD31-CD3Nのいずれかである。なお、最古情報OLDおよび故障カウンタCNT1が使用され、待機系のカードCD2Sにより運用系のカードCD2の故障が検出される動作も
図2および
図3と同様である。故障カウンタCNT1、CNT2の値は、各カードCDが処理を開始する初期状態において、0に初期化されている。
【0030】
状態ST1において、共有メモリCM3は、カードCD2により処理されたデータDTa、DTbと、最古のデータDTaを示す最古情報OLD=aとを保持している。カードCD3は、最古情報OLD=aに対応するデータDTaを読み出して処理を実施する(RD)。このとき、カードCD2は、データDTcを処理している。
【0031】
次に、状態ST2において、カードCD3は、データDTaの処理の完了後、処理後のデータDTaを共有メモリCM4に書き込む。待機系のカードCD3Sは、データ処理の周期毎に故障カウンタCNT1の値を読み出して、カウンタ値の増加量が閾値以上か否かを判定する。
図2および
図3に示す例では、閾値は2である。
【0032】
カードCD3Sは、故障カウンタCNT1の値が閾値以上の場合、自ステージSTGにおいて故障カウンタCNT1に対応する運用系のカードCD3に故障が発生したと判定する。状態ST2では、故障カウンタCNT1の値は0であるため、カードCD3Sは、カードCD3が故障していないと判定する。
【0033】
次に、状態ST3において、カードCD3は、処理済みのデータDTaを消去し(DEL)、最古情報OLDをデータDTbに対応するOLD=bに更新する。処理後のデータDTaを後続する装置である共有メモリCM4に出力した後に、最古情報OLDを更新するカードCD3は、最古情報更新部としても機能する。
【0034】
カードCD2は、データDTcを共有メモリCM3に書き込む前に、最古情報OLDが前回のデータDTの書き込み時から更新されていることを確認する。状態ST3では、最古情報OLDがOLD=bに更新されているため、カードCD2は、故障カウンタCNT1をインクリメントせずに、処理が完了したデータDTcを共有メモリCM3に書き込む(WR)。
【0035】
状態ST1から状態ST3に示す動作が、運用系の全てのカードCD1、CD2、CD3で繰り返し実施されることで、運用系毎にカードCD1、CD2、CD3によりデータが順次処理されながら下流側に転送されていく。
【0036】
図3の状態ST4において、カードCD3が故障し、カードCD3による処理が停止する。故障したカードCD3は、共有メモリCM3からのデータDTbの読み出し、読み出したデータDTbの処理、共有メモリCM3に保持されたデータDTbの消去、および最古情報OLDのbからcへの更新を実施できない。待機系のカードCD3Sは、故障カウンタCNT1の値を読み出して、閾値(=2)以上でないため、カードCD3が故障していないと判定する。
【0037】
状態ST5において、カードCD2は、データDTdを共有メモリCM3に書き込む前に、最古情報OLD=bが前回のデータDTの書き込み時から更新されていないことを確認する。カードCD2は、最古情報OLDが更新されていないため、故障カウンタCNT1をインクリメント(+1)し、データDTdを共有メモリCM3に書き込む。待機系のカードCD3Sは、故障カウンタCNT1の値を読み出して、閾値(=2)以上でないため、カードCD3が故障していないと判定する。
【0038】
状態ST6において、カードCD2は、次に処理したデータDTeを共有メモリCM3に書き込む前に、最古情報OLD=bが前回のデータDTの書き込み時から更新されていないことを確認する。カードCD2は、最古情報OLDが更新されていないため、故障カウンタCNT1をインクリメント(+1)し、データDTeを共有メモリCM3に書き込む。
【0039】
共有メモリCM3は、データDTeが書き込まれたことにより、空き領域がなくなる。このため、カードCD2が次に処理したデータDTfを共有メモリCM3に書き込む場合、共有メモリCM3のデータ領域はオーバーフローしてしまう。あるいは、カードCD2が共有メモリCM3へのデータの書き込みを停止する場合、データの処理が停滞してしまう。このような不具合を抑止するために、以下に示すように、待機系のカードCD3SによりカードCD3の故障が検出され、待機系のカードCD3Sは運用系に切り替わり、故障が発生したタイミングから処理が継続される。
【0040】
カードCD3Sは、故障カウンタCNT1の値が閾値(=2)以上であるため、自ステージSTGのカードCD3の故障を検出する。カードCD3Sは、最古情報OLDが更新されないことを故障カウンタCNT1に基づいて判定し、カードCD3の故障を検出する第1故障検出部としても機能する。カードCD3Sは、故障の検出に基づいて、故障したカードCD3を運用系から切り離し、自カードCD3Sを運用系のカードCD3として動作させる。この後、新たに運用系として動作を開始したカードCD3は、最古情報OLD=bに対応するデータDTbを読み出して処理を再開する。
【0041】
図2および
図3に示すように、最古情報OLDを更新するカードCD3と、故障カウンタCNT1をインクリメントするカードCD2と、故障カウンタCNT1の値に基づいてカードCD3の故障を検出するカードCD3Sとは、故障監視装置として機能する。そして、故障したカードCD3をカード単位で交換することができる。
【0042】
各カードCD3に対応して1バイト程度の最古情報OLDおよび故障カウンタCNT1を共有メモリCM3に保持することで故障を検出できるため、故障監視装置を設けることによる運用系への影響を最小限にすることができる。
【0043】
カードCD3の故障を検出する故障監視装置の機能をカードCD2、CD3、CD3Sに搭載することで、データ通信パスDPを使用してCPUにより故障を検出する場合に比べて、故障の発生から故障の検出までの時間を短縮することができる。
【0044】
1つの待機系のカードCD3Sにより、ステージSTG毎に複数のカードCD3の故障を検出できるため、いわゆるN:1冗長システムを実現することができる。待機系のカードCD3Sの搭載数を最小限にできるため、ステージSTG毎に複数の待機系のカードCD3Sが搭載される場合に比べて、情報処理装置100の消費電力を低減することができる。なお、情報処理装置100は、2つの待機系のカードCD3Sを有するN:2冗長システムを採用してもよい。
【0045】
なお、カードCD3SがカードCD3の故障を判定する故障カウンタCNT1の閾値は、カードCD2により共有メモリCM3内のデータDTが上書きされた場合にも最古のデータDTが上書きされない値に設定される。また、故障カウンタCNT1の閾値は、カードCDの故障により共有メモリCM内にデータDTが停滞する場合にも、システム300の仕様で決められた前段装置210から後段装置220へのデータ転送レートが満足されるように設定される。
【0046】
図4および
図5は、
図1の情報処理装置100の動作の別の例を示す説明図である。
図4および
図5は、情報処理装置100に搭載される故障監視装置による故障監視方法の一例を示す。
図2および
図3と同様の動作については、詳細な説明は省略する。
図4および
図5では、最新情報NEWおよび故障カウンタCNT2が使用され、待機系のカードCD2Sにより運用系のカードCD2の故障が検出される。最古情報OLDおよび故障カウンタCNT1の値は、
図2および
図3と同様である。
【0047】
図4および
図5においても、カードCD2から共有メモリCM3に書き込まれたデータが、カードCD3により処理されて共有メモリCM4に書き込まれる場合の動作の例が示される。しかしながら、他のカードCD1、CD2の処理も
図4および
図5に示す処理と同様に実施されてもよい。カードCD2は、
図1のカードCD21-CD2Nのいずれかであり、カードCD3は、
図1のカードCD31-CD3Nのいずれかである。
【0048】
状態ST1は、
図2の状態ST1と同じである。状態ST2において、カードCD3は、データDTaの処理の完了後、処理後のデータDTaを共有メモリCM4に書き込む。
図4では、待機系のカードCD2Sが、データ処理の周期毎に故障カウンタCNT2の値を読み出して、カウンタ値の増加量が閾値以上か否かを判定する。
図4および
図5に示す例では、閾値は2である。
【0049】
カードCD2Sは、故障カウンタCNT2の値が閾値以上の場合、自ステージSTGにおいて故障カウンタCNT2に対応する運用系のカードCD2に故障が発生したと判定する。状態ST2では、故障カウンタCNT2の値は0であるため、カードCD2Sは、カードCD2が故障していないと判定する。
【0050】
次に、状態ST3において、カードCD3は、処理済みのデータDTaを消去し(DEL)、最古情報OLDをデータDTbに対応するOLD=bに更新する。カードCD2は、データDTcを共有メモリCM3に書き込み、最新情報NEWをデータDTcに対応するcに更新する。最新情報NEWを更新するカードCD2は、最新情報更新部としても機能する。
【0051】
状態ST1から状態ST3に示す動作が、運用系の全てのカードCD1、CD2、CD3で繰り返し実施されることで、運用系毎にカードCD1、CD2、CD3によりデータが順次処理されながら下流側に転送されていく。
【0052】
図5の状態ST4において、カードCD2が故障し、カードCD2による処理が停止する。故障したカードCD2は、図示しない共有メモリCM2からのデータDTeの読み出し、読み出したデータDTeの処理、共有メモリCM2に保持されたデータDTeの消去、および最古情報OLD=eの更新を実施できない。また、故障したカードCD2は、共有メモリCM3へのデータDTdの書き込みおよび最新情報NEWの更新を実施できない。待機系のカードCD2Sは、故障カウンタCNT2の値を読み出して、閾値(=2)以上でないため、カードCD2が故障していないと判定する。
【0053】
状態ST5において、カードCD3は、共有メモリCM3からデータDTbと最新情報NEW=cとを読み出し、最新情報NEW=cが更新されていないことを確認する。カードCD3は、最新情報NEWが更新されていないため、故障カウンタCNT2をインクリメント(+1)する。待機系のカードCD2Sは、故障カウンタCNT2の値を読み出して、閾値(=2)以上でないため、カードCD2が故障していないと判定する。
【0054】
状態ST6において、カードCD3は、処理したデータDTbを共有メモリCM4に書き込み、最古情報OLDをcに更新する。また、カードCD3は、共有メモリCM3からデータDTcと最新情報NEW=cとを読み出し、最新情報NEW=cが更新されていないことを確認する。カードCD3は、最新情報NEWが更新されていないため、故障カウンタCNT2をインクリメント(+1)する。
【0055】
待機系のカードCD2Sは、故障カウンタCNT2の値を読み出して、閾値(=2)以上であるため、自ステージSTGのカードCD2の故障を検出する。カードCD2Sは、最新情報NEWが更新されないことを故障カウンタCNT2に基づいて判定し、カードCD2の故障を検出する第2故障検出部としても機能する。カードCD2Sは、故障の検出に基づいて、故障したカードCD2を運用系から切り離し、自カードCD2Sを運用系のカードCD2として動作させる。この後、新たに運用系として動作を開始したカードCD2は、共有メモリCM2からデータDTdを読み出して処理を実施する。
【0056】
図4および
図5に示すように、最新情報NEWを更新するカードCD2と、故障カウンタCNT2をインクリメントするカードCD3と、カウンタCNT2の値に基づいてカードCD2の故障を検出するカードCD2Sとは、故障監視装置として機能する。そして、故障したカードCD2をカード単位で交換することができる。
【0057】
各カードCD2に対応して1バイト程度の最新情報NEWおよび故障カウンタCNT2を共有メモリCM3に保持することで故障を検出できるため、故障監視装置を設けることによる運用系への影響を最小限にすることができる。
【0058】
カードCD2の故障を検出する故障監視装置の機能をカードCD2、CD3、CD2Sに搭載することで、データ通信パスDPを使用してCPUにより故障を検出する場合に比べて、故障の発生から故障の検出までの時間を短縮することができる。
【0059】
1つの待機系のカードCD2Sにより、ステージSTG毎に複数のカードCD2の故障を検出できるため、いわゆるN:1冗長を実現することができる。待機系のカードCD2Sの搭載数を最小限にできるため、ステージSTG毎に複数の待機系のカードCD2Sが搭載される場合に比べて、情報処理装置100の消費電力を低減することができる。
【0060】
図6は、
図2から
図5で説明した機能を持たない他の情報処理装置の動作の一例を示す。
図6に示す動作は、各共有メモリCMが故障カウンタCNT1、CNT2の領域を持たず、各カードCDの故障が待機系のカードCD3Sではなく、情報処理装置に搭載されるCPUにより検出されることを除き、
図2から
図5に示す動作と同様である。
【0061】
例えば、状態ST3において、カードCD3が故障し、カードCD3による処理が停止したとする。カードCD3が故障した場合、共有メモリCM3からカードCD3にデータDTが読み出されることなく、カードCD2から共有メモリCM3にデータDT3が書き込まれ、共有メモリCM3がオーバーフローするおそれがある。
【0062】
例えば、CPUは、各カードCDによるデータ処理の周期より遅い周期で各カードCDを監視しており、共有メモリCM3がオーバーフローした後に、カードCD3の故障を検出する。CPUは、故障したカードCD3の代わりに待機系のカードCD3sを運用系に切り替える冗長切り替えを実施するが、冗長切り替え前に最古のデータDTが失われた場合、情報処理装置100による処理は正常に実施されず、システム300は誤動作してしまう。
【0063】
以上、この実施形態では、共有メモリCMを挟んで接続される運用系のカードCDと待機系のカードCDSとにより、カードCD単位で故障を検出し、交換することができる。このため、CPUにより故障を検出する場合に比べて、待機系のカードCDSの運用系への切り替えを高速に実施することができ、運用系のカードCDが故障した場合にも、データDTが欠落または重複することを抑止することができる。そして、運用系のカードCDが故障した場合にも、前段装置210から後段装置220へのデータ転送レートが仕様を超えることを抑制することができ、システム300をリアルタイム性を維持することができる。
【0064】
例えば、各カードCDに光インタフェースを採用することにより、IOWN(Innovative Optical and Wireless Network)に搭載可能になり、ディスアグリゲートコンピューティングの実現に寄与することができる。
【0065】
図7は、別の実施形態における情報処理装置の一例を示す。
図1と同様の要素については、同じ符号を付し、詳細な説明は省略する。
図7に示すシステム300は、
図1の情報処理装置100の代わりに情報処理装置100Aを有することを除き、
図1に示すシステム300と同様の構成および機能を有する。情報処理装置100Aは、運用系の各カードCDがデータ処理部DPRCと運用制御部OPCNTとを有し、待機系の各カードCDSがデータ処理部DPRCと待機制御部SBCNTとを有する。情報処理装置100Aは、
図1の情報処理装置100の構成および機能と同様の構成および機能を有する。
【0066】
情報処理装置100Aは、
図1の情報処理装置100と同様に、CPUと、複数の共有メモリCM(CM1、CM2、CM3)と、運用系の複数のカードCD1(CD11-CD1N)、CD2(CD21-CD2N)、CD3(CD31-CD3N)とを有する。また、情報処理装置100Aは、
図1の情報処理装置100と同様に、待機系の複数のカードCD1S、CD2S、CD3Sを有する。
【0067】
運用系の各カードCDのデータ処理部DPRCは、上流側の共有メモリCMから読み出したデータDTを処理して下流側の共有メモリCMに書き込む機能を有する。運用系の各カードCDの運用制御部OPCNTは、上流側の共有メモリCMからのデータDTの読み出しの管理と、下流側の共有メモリCMへのデータDTの書き込みの管理を実施する。また、運用系の各カードCDの運用制御部OPCNTは、共有メモリCMに保持される管理情報(
図8)の参照および更新を実施する。
【0068】
待機系の各カードCDSのデータ処理部DPRCは、運用系のカードCDの故障により待機系のカードCDSが運用系に切り替わったときにデータDTを処理する。待機系の各カードCDSの待機制御部SBCNTは、共有メモリCMに保持される故障カウンタCNT1、CNT2の値を参照し、運用系のカードCDの故障を検出する。
【0069】
図8は、
図7の共有メモリCMのデータ構造の一例を示す。各共有メモリCMは、N個の運用系にそれぞれ対応する保持領域とm個のデータ領域とを有する。保持領域は、同じデータ構造を有する。各保持領域は、管理情報として、最古情報OLD、最新情報NEWおよび故障カウンタCNT1、CNT2を有する。
【0070】
共有メモリCMにデータDTを書き込むカードCDは、初回のデータDTを書き込むとき(WR)に、最古情報OLDを初回のデータDTを示す情報に初期設定する。共有メモリCMにデータDTを書き込むカードCDは、データDTを共有メモリCMに書き込むときに、書き込むデータDTを示す情報を最新情報NEWとして保持領域に書き込む。
【0071】
共有メモリCMにデータDTを書き込むカードCDは、データDTを共有メモリCMに書き込むときに、最古情報OLDが前回データDTを書き込んだときから更新されているか否かを監視する。
【0072】
故障カウンタCNT1、CNT2は、情報処理装置100Aの動作の開始時と、待機系のカードCDSが運用系のカードCDに切り替わったときに"0"に初期化される。共有メモリCMにデータDTを書き込むカードCDは、データDTの書き込み時に最古情報OLDが前回の書き込み時から更新されていない場合、故障カウンタCNT1の値をインクリメントする。共有メモリCMからデータDTを読み出すカードCDは、データDTの読み出し時に最新情報NEWが前回の読み出し時から更新されていない場合、故障カウンタCNT2の値をインクリメントする。
【0073】
なお、待機系のカードCD1Sは、共有メモリCM2にカードCD11-CD1N毎に保持された故障カウンタCNT2の値に基づいて、対応するカードCD11-CD1Nの故障を検出する。待機系のカードCD3Sは、共有メモリCM3にカードCD31-CD3N毎に保持された故障カウンタCNT1の値に基づいて、対応するカードCD31-CD3Nの故障を検出する。
【0074】
待機系のカードCD2Sは、共有メモリCM3にカードCD21-CD2N毎に保持された故障カウンタCNT2の値に基づいて、対応するカードCD21-CD2Nの故障を検出する。あるいは、待機系のカードCD2Sは、共有メモリCM2にカードCD21-CD2N毎に保持された故障カウンタCNT1の値に基づいて、対応するカードCD21-CD2Nの故障を検出する。
【0075】
共有メモリCMからデータを読み出すカードCDは、処理したデータDTを下流側の共有メモリCMのデータ領域に書き込んだ後、処理したデータDTを共有メモリCMから消去し、最古情報OLDを次に読み出すデータDTを示す情報に設定する。
【0076】
待機系のカードCDSは、故障カウンタCNT1(またはCNT2)の値が予め設定された故障を判定する閾値以上の場合、対応するカードCDの故障を検出し、自カードCDSを運用系のカードCDに切り替える処理を実施する。その後、待機系のカードCDSは、運用系のカードCDとして動作する。
【0077】
図9から
図11は、
図7の情報処理装置100Aの動作の一例を示す。
図9から
図11は、情報処理装置100Aに搭載される故障監視装置による故障監視方法の一例を示す。上述した実施形態と同様に、各カードCDは、上流側の共有メモリCMからのデータDTの読み出しと、読み出したデータDTの処理と、処理したデータDTの下流側の共有メモリCMへの書き込みとを含むデータ処理を、予め設定された周期で繰り返し実施する。各カードCDのデータ処理の周期は、システム300の仕様で決められた前段装置210から後段装置220へのデータ転送レートを満足するように設定され、全てのカードCDで共通である。
【0078】
なお、
図9から
図11は、最古情報OLDと故障カウンタCNT1とを使用して、カードCD3Sが自ステージSTGのカードCD3の故障を検出する例を示す。すなわち、
図9から
図11は、上述した
図2および
図3に対応する動作を示す。最新情報NEWと故障カウンタCNT2とを使用して、カードCD2Sが自ステージSTGのカードCD2の故障を検出する動作は、
図4および
図5と同様である。
【0079】
図9から
図11では、カードCD2から共有メモリCM3に書き込まれたデータが、カードCD3により処理されて共有メモリCM4に書き込まれる場合の動作の例が示される。しかしながら、他のカードCD1、CD2の処理も
図9から
図11に示す処理と同様に実施される。カードCD2は、
図7のカードCD21-CD2Nのいずれかであり、カードCD3は、
図7のカードCD31-CD3Nのいずれかである。
【0080】
以下では、データDTは、アルファベットで識別される。アルファベットa、b、...、mは、
図7の前段装置210から供給されるデータDTの順序を示す。また、共有メモリCM2、CM3、CM4に保持されるデータDTは、アルファベットのみで示される。一点鎖線で示す枠は、カードCD2による最古情報OLDに基づく故障カウンタCNT1の更新動作と待機系のカードCD3SによるカードCD3の故障の判定動作とが実施される繰り返し周期CYCを示す。
【0081】
共有メモリCMへのデータDTの書き込みは、符号WRで示され、共有メモリCMからのデータDTの読み出しは、符号RDで示される。共有メモリCMにおいて破線枠で示すデータDTは、消去されることを示す。故障カウンタCNT1の値は、着目する共有メモリCM3のみに示す。最新情報NEWの記載は省略される。
【0082】
周期CYC1において、共有メモリCM2には、データDTe、DTf、DTgと最古情報OLD=eとが保持されている。カードCD2は、データDTeの処理を完了後、処理したデータDTeを共有メモリCM3に書き込む(
図9(a))。これにより、共有メモリCM3には、データc、d、eと最古情報OLD=cとが保持される。
【0083】
カードCD3は、共有メモリCM3から最古のデータDTcを読み出して処理し、処理後のデータDTcを共有メモリCM4に書き込む(
図9(b))。共有メモリCM4には、データa、b、cと最古情報OLD=aとが保持される。
【0084】
カードCD2は、共有メモリCM3から最古情報OLD=cを読み出し、今回の最古情報OLDとして保存する(
図9(c))。カードCD2は、データDTeを共有メモリCM3に書き込んだ後、共有メモリCM2の最古情報OLDをfに更新し、共有メモリCM2に保持されたデータDTeを消去する(
図9(d)、(e))。
【0085】
カードCD2は、データDTdを共有メモリCM3に書き込んだときの前回の最古情報OLD=bと今回の最古情報OLD=cとを比較し、同じでないため、最古情報OLDが更新されたことを確認する(
図9(f))。破線枠で示す「CNT1+1」の処理は、実施されないことを示す。カードCD3は、処理後のデータDTcを共有メモリCM4に書き込んだため、共有メモリCM3の最古情報OLDをdに更新し、データDTcを消去する(
図9(g)、(h))。
【0086】
周期CYC2においても周期CYC1と同様に、カードCD2は、処理したデータDTfを共有メモリCM3に書き込んだ後、共有メモリCM2の最古情報OLDをgに更新する(
図9(i)、(j))。カードCD2は、共有メモリCM3から最古情報OLD=dを読み出し、今回の最古情報OLDとして保存し、共有メモリCM2に保持されたデータDTfを消去する(
図9(k)、(l))。カードCD2は、前回の最古情報OLD=cと今回の最古情報OLD=dとを比較し、同じでないため、最古情報OLDが更新されたことを確認する(
図9(m))。
【0087】
カードCD3は、共有メモリCM3から最古のデータDTdを読み出して処理し、処理後のデータDTdを共有メモリCM4に書き込む(
図9(n))。カードCD3は、共有メモリCM3の最古情報OLDをeに更新し、データDTdを消去する(
図9(o)、(p))。
【0088】
図10の周期CYC3において、カードCD3は、共有メモリCM3から最古のデータDTeを読み出した後に故障する(
図10(a))。カードCD2は、カードCD3の故障を認識できないため、
図9と同様に動作する。なお、
図10では、カードCD2による共有メモリCM2のアクセスは省略される。
【0089】
カードCD2は、共有メモリCM3から最古情報OLD=eを読み出し、今回の最古情報OLDとして保存する(
図10(b))。カードCD2は、前回の最古情報OLD=dと今回の最古情報OLD=eとを比較し、同じでないため、最古情報OLDが更新されたことを確認する(
図10(c))。
【0090】
待機系のカードCD3Sは、共有メモリCM3から読み出した故障カウンタCNT1=0を閾値VTと比較し、閾値VTより小さいと判定する(
図10(d))。例えば、閾値VTは、n(2以上の整数)である。なお、
図9には記載していないが、待機系のカードCD3Sは、サイクルCYC毎に、共有メモリCM3から読み出した故障カウンタCNT1=0を閾値VTと比較する。
【0091】
周期CYC4において、カードCD2は、カードCD3の故障により更新されていない最古情報OLD=eを読み出し、今回の最古情報OLDとして保存する(
図10(e))。カードCD2は、前回の最古情報OLD=eと今回の最古情報OLD=eとを比較し、同じであるため、最古情報OLDが更新されていないと判定する(
図10(f))。なお、カードCD2、CD3の処理タイミングが周期CYC内でずれる可能性がある場合、カードCD2は、前回と今回の最古情報OLDが所定回数連続して同じ場合に、最古情報OLDが更新されていないと判定してもよい。
【0092】
カードCD2は、最古情報OLDが更新されていないため、共有メモリCM3の故障カウンタCNT1の値をインクリメントし、故障カウンタCNT1=1に設定する(
図10(g))。待機系のカードCD3Sは、共有メモリCM3から読み出した故障カウンタCNT1=1を閾値VTと比較し、閾値VTより小さいと判定する(
図10(h))。
【0093】
この後、図示しない周期CYC5以降において、カードCD2は、前回の最古情報OLD=eと今回の最古情報OLD=eとを比較し、同じであるため、故障カウンタCNT1の値を順次インクリメントする。その後、周期CYCmにおいて、カードCD2は、周期CYC4と同様に、前回の最古情報OLD=eと今回の最古情報OLD=eとが同じと判定する(
図10(i)、(j))。カードCD2は、故障カウンタCNT1の値をインクリメントし、故障カウンタCNT1=nに設定する(
図10(k))。
【0094】
待機系のカードCD3Sは、共有メモリCM3から読み出した故障カウンタCNT1=nを閾値VTと比較し、閾値VT以上であると判定する(
図10(l))。このため、カードCD3Sは、自カードを待機系から運用系に切り替える処理を実施する。なお、待機系のカードCD3Sは、同じステージSTGの全ての運用系のカードCD3の最古情報OLDの更新の有無を確認し、最古情報OLDが更新していないカードCD3の故障を検出する。
【0095】
なお、
図10には記載していないが、周期CYC3において
図1の後段装置220が共有メモリCM4からデータDTを読み出した後、最古情報OLDの更新とデータDTの消去を実施する。このため、共有メモリCM4は、周期CYC3において、最古情報OLD=c、データDTc、DTdとなり、周期CYC4において最古情報OLD=d、データDTdとなり、周期CYC5において最古情報OLD=-、データ無しの初期状態となる。
【0096】
図11の周期CYCm+1において、待機系から運用系に切り替わったカードCD3は、破線枠で示す引き継ぎ処理を実施する。カードCD3は、共有メモリCM3に保持されている最古情報OLD=eに対応するデータDTeを共有メモリCM3から読み出し、読み出したデータDTeの処理を実施する(
図11(a)、(b))。
【0097】
なお、
図9(b)、(h)に示したように、故障前のカードCD3は、データDTを共有メモリCM3から読み出した後にすぐに消去せず、データDTを処理して共有メモリCM4に書き込んだ後に消去する。このため、待機系から運用系に切り替わったカードCD3は、故障前に未処理であったデータDTeを共有メモリCM3から読み出して処理を実施することができ、情報処理装置100の誤動作を抑止することができる。
【0098】
カードCD3は、処理後のデータDTeを共有メモリCM4に書き込んだ後、共有メモリCM3の最古情報OLDをfに更新し、データDTeを消去する(
図11(c)、(d)、(e))。
【0099】
カードCD2は、処理したデータDTjを共有メモリCM3に書き込み、共有メモリCM2の最古情報OLDをkに更新する(
図11(f)、(g))。カードCD2は、共有メモリCM3から最古情報OLD=fを読み出し、今回の最古情報OLDとして保存し、共有メモリCM2に保持されたデータDTjを消去する(
図11(h)、(i))。カードCD2は、前回の最古情報OLD=eと今回の最古情報OLD=fとを比較し、同じでないため、最古情報OLDが更新されたことを確認する(
図11(j))。
【0100】
図12は、
図7の情報処理装置のデータ管理方式の全体動作の一例を示す。
図12に示すフローは、
図9から
図11の動作をまとめたものであり、運用系の各カードCDおよび待機系から運用系に切り替わったカードCDは、互いに同じ動作を実施する。以下では、運用系のカードCD2の動作と待機系のカードCD3Sが運用系に切り替わる前の動作とが説明される。
【0101】
カードCD2は、情報処理装置100の起動時またはリセット時に初期設定され、動作を開始する(
図12(a))。なお、カードCD3、CD3Sも情報処理装置100の起動時またはリセット時に初期設定され、動作を開始する。
図12は、初期設定からしばらく動作した後の状態を示す。カードCD2は、最古情報OLD=eに対応する最古のデータDTeを共有メモリCM2から読み出す(
図12(b))。
【0102】
ここで、カードCD2は、読み出したデータDTeの処理を完了して共有メモリCM3に書き込むまで、共有メモリCM2に保持されたデータDTeを消去しない。カードCD2は、最古のデータDTがない場合(すなわち、処理するデータがない場合)、最古のデータDTが共有メモリCM2に格納されるまで待つ(
図12(c))。
【0103】
カードCD2は、データDTeの処理を実施し、処理後のデータDTeを共有メモリCM3に書き込む(
図12(d))。カードCD2は、共有メモリCM3から最古情報OLD=cを読み出し、自カードCD2のワークメモリ等に保存する(
図12(e))。カードCD2は、共有メモリCM2の最古情報OLDをfに更新し、共有メモリCM2に保持されたデータDTeを消去する(
図12(f)、(g))。
【0104】
カードCD2は、前回と今回の最古情報OLDとを比較し、同じ場合、故障カウンタCNT1の値をインクリメントする(
図12(h)、(i))。そして、カードCD2は、
図12(b)から
図12(i)の動作を繰り返し実施する。例えば、下流側のカードCD3が故障した場合、カードCD3の動作は停止し、共有メモリCM3の最古情報OLDの更新動作が停止する。この場合、
図12(h)、(i)に示したように、前回と今回の最古情報OLDが一致するため、故障カウンタCNT1の値がインクリメントされる。
【0105】
待機系のカードCD3Sは共有メモリCM3の故障カウンタCNT1の読み出しを繰り返す(
図12(j))。カードCD3Sは、故障カウンタCNT1の値が閾値VT以上になった場合、運用系のカードCD3の故障を判定する。カードCD3Sは、故障したカードCD3の情報を引き継ぎ、自カードCD3Sを待機系から運用系に切り替える処理と、運用系として動作するための初期設定とを実施する(
図12(k))。
【0106】
運用系となったカードCD3は、故障前のカードCD3が実施していた処理を引き継く。ここで、各カードCDは、上流側の共有メモリCMから処理するデータDTを読み出した後、読み出したデータDTの処理を完了して下流側の共有メモリCMに書き込むまで、上流側の共有メモリCMに保持されたデータDTを消去しない。これにより、待機系から運用系に切り替わったカードCD3は、故障前に未処理であったデータDTc、DTd、DTeの処理を欠落または重複することなく順次実施することができ、情報処理装置100の誤動作を抑止することができる。
【0107】
以上、この実施形態においても、上述した実施形態と同様の効果を得ることができる。例えば、情報処理装置100Aに搭載される運用系のカードCDと待機系のカードCDSとを故障監視装置として機能させることで、故障したカードCDをカード単位で交換することができる。
【0108】
CPUにより故障を検出する場合に比べて、待機系の運用系への切り替えを高速に実施することができ、切り替えによるデータDTの欠落または重複を抑止することができる。これにより、運用系のカードCDが故障した場合にも、前段装置210から後段装置220へのデータ転送レートが仕様を超えることを抑制することができ、システム300をリアルタイム性を維持することができる。
【0109】
1つの待機系のカードCDSを使用して、いわゆるN:1冗長を実現できるため、待機系のカードCDSの搭載数を最小限にでき、情報処理装置100の消費電力を低減することができる。
【0110】
以上の詳細な説明により、実施形態の特徴点および利点は明らかになるであろう。これは、特許請求の範囲がその精神および権利範囲を逸脱しない範囲で前述のような実施形態の特徴点および利点にまで及ぶことを意図するものである。また、当該技術分野において通常の知識を有する者であれば、あらゆる改良および変更に容易に想到できるはずである。したがって、発明性を有する実施形態の範囲を前述したものに限定する意図はなく、実施形態に開示された範囲に含まれる適当な改良物および均等物に拠ることも可能である。
【符号の説明】
【0111】
100 情報処理装置
210 前段装置
220 後段装置
300 システム
CD 運用系のカード
CD1(CD11-CD1N) カード(運用系)
CD2(CD21-CD2N) カード(運用系)
CD3(CD31-CD3N) カード(運用系)
CDS、CD1S、CD2S、CD3S カード(待機系)
CM(CM1、CM2、CM3、CM4) 共有メモリ
CNT1、CNT2 故障カウンタ
CP 監視・制御パス
DP データ通信パス
DPRC データ処理部
DT データ
NEW 最新情報
OPCNT 運用制御部
OLD 最古情報
STG1-STG3 ステージ
VT 閾値