JPH04213736A - フォールト・トレラント・システムのためのチェックポイント機構 - Google Patents

フォールト・トレラント・システムのためのチェックポイント機構

Info

Publication number
JPH04213736A
JPH04213736A JP3021470A JP2147091A JPH04213736A JP H04213736 A JPH04213736 A JP H04213736A JP 3021470 A JP3021470 A JP 3021470A JP 2147091 A JP2147091 A JP 2147091A JP H04213736 A JPH04213736 A JP H04213736A
Authority
JP
Japan
Prior art keywords
processor
memory
record
state
active
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP3021470A
Other languages
English (en)
Other versions
JP2505928B2 (ja
Inventor
Haissam Alaiwan
エサム・アレワン
Jean Calvignac
ジャン・カルヴァニャック
Louis Combes Jacques
ジャック・ルイ・コンブ
Andre Pauporte
アンドレ・ポポルト
Claude Basso
クロード・バッソ
Kermarec Francois
フランソワ・カルマレック
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH04213736A publication Critical patent/JPH04213736A/ja
Application granted granted Critical
Publication of JP2505928B2 publication Critical patent/JP2505928B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2028Failover techniques eliminating a faulty processor or activating a spare
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1658Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2043Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant where the redundant components share a common memory address space

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Hardware Redundancy (AREA)
  • Retry When Errors Occur (AREA)
  • Multi Processors (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、情報処理システムにフ
ォールト・トレランス能力を与えるためのチェックポイ
ント機構に関する。
【0002】
【従来の技術】フォールト・トレランスは、プロセッサ
や通信制御装置などの情報処理システムにおいて緊急に
必要とされている。これらのマシンは、故障率が最小に
なるように設計し、修理時間が最小になるように故障の
診断及び位置決定を改善しなければならない。しかし、
ハードウェア及びソフトウェアの故障は、大抵の場合マ
シンの停止をもたらす。
【0003】通信制御装置などのマシンの可用性要件は
、ますます厳しくなっている。というのは、これらのマ
シンは、ユーザから見て1日24時間中断なく、所期の
サービスを提供しなければならないからである。ハード
ウェアの故障を防止する手段はないので、このような故
障でサービスが停止しないようにマシンを設計しなけれ
ばならない。このように設計されたマシンは、フォール
ト・トレラントであると言われる。
【0004】このようなマシンはすでに存在する。それ
らは、本質的に2つの異なる概念に基づいている。
【0005】第1の概念に基づくマシンは、同じプログ
ラム命令を同期的に実行する緊密に結合した装置を利用
するものである。このようなマシンの例は、米国特許第
4654857号及び欧州特許出願第286856号に
記述されている。
【0006】このタイプのマシンの大きな欠点は、重複
した装置間で完全な同期を維持しなければならないこと
から生ずる。さらに、故障の即時的検出が必要とされる
【0007】これとは対照的に、第2の概念に基づくマ
シンは、バックアップ装置と連動する活動装置を利用す
るものである。バックアップ装置は休眠しており、活動
装置が故障した場合にその代役を果たす。
【0008】このようなマシンの例は、フランス特許第
2261568号に記述されている。これは、一部の非
停止システムでも使用されている。
【0009】フランス特許2261568号は、障害を
起こしたプロセッサの代わりにバックアップ・プロセッ
サを使用できる、マルチプロセッサ構成を記述している
。故障が検出されると、制御装置が情報をセーブし、他
方のプロセッサがその情報を使って故障したプロセッサ
のタスクを実行することができる。このシステムは、故
障検出前にバックアップ・プロセッサを活動プロセッサ
の状態にする手段を提供しない。さらに、ある種の故障
によって、故障したプロセッサの状態をセーブできなく
なることがある。
【0010】上記非停止システムでは、活動状態の主プ
ロセッサが実行するタスクのデータのコピーがバックア
ップ・プロセッサに提供される。バックアップ・プロセ
ッサは、周期的に主プロセッサの状態を示すメッセージ
を受け取る。バックアップ・プロセッサが主プロセッサ
の実行するタスクのデータのコピーを受け取るには、主
プロセッサで実行されるタスクがその扱ったデータをソ
ートし、ソートされたデータをバックアップ・プロセッ
サに送ることが必要である。このソート処理は、複雑で
あり、通信制御装置などのリアル・タイム・システムで
は容認できないオーバヘッドを生ずる。
【0011】
【発明が解決しようとする課題】本発明の一目的は、活
動装置とバックアップ装置からなるフォールト・トレラ
ント・システム用の、活動装置の性能を低下させない、
改良されたチェックポイント機構を提供することである
【0012】本発明の他の目的は、活動装置で実行され
るタスクにとってトランスペアレントな前記の機構を提
供することである。
【0013】本発明の他の目的は、システム・ソフトウ
ェアの複雑さを増加させない、前記の機構を提供するこ
とである。
【0014】
【課題を解決するための手段】本発明によるチェックポ
イント機構は、活動プロセッサが故障したとき、活動プ
ロセッサの作業処理をバックアップ・プロセッサによっ
て再開させる。この機構は、第1及び第2の情報処理装
置を含む少なくとも1対の情報処理装置と連動する。各
情報処理装置は、メモリに記憶されたプログラムを走ら
せるためのプロセッサを含む。このメモリは、データ線
、アドレス線、及び制御線を含むメモリ・バスを介して
プロセッサに接続されている。あるいは、このメモリは
、共用メモリから構成され、この共用メモリに複数のプ
ロセッサのすべてが相互接続ネットワークによって接続
されている。これらのプロセッサは、各プロセッサに関
連する故障検出手段に応答して、関連するプロセッサが
故障しているか否かを検出する構成制御装置の制御下で
、活動状態、バックアップ状態、または故障状態にセッ
トすることができる。チェックポイント機構は、
【00
15】構成制御装置によって最初に活動状態にセットさ
れたプロセッサを有する情報処理装置と少なくとも関連
する、メモリ内容を変化させるアドレス及びデータをメ
モリ・バス上で受け取り、それからメモリ変化レコード
を生成する、第1のメモリ変化検出手段と、
【0016
】構成制御装置によって最初に活動状態にセットされる
プロセッサを有する前記情報処理装置内の、プログラム
の選択された点で前記プロセッサによって提供される信
号に応答して、回復点確立信号を発生する、第1の信号
発生手段と、
【0017】通信制御装置によって最初にバックアップ
状態にセットされたプロセッサを有する情報処理装置と
少なくとも関連する、前記第1メモリ変化検出手段から
受け取ったメモリ変化レコードを記憶するように前記第
1メモリ変化検出手段に結合された第1の記憶手段と、
【0018】前記第1記憶手段に関連し、分離レコード
が第1記憶手段に記憶されている限り、第1信号手段か
ら受け取った回復点確立信号に応答して、分離レコード
を第1記憶手段に記憶させ、メモリ変化レコードを第1
記憶手段から読み出させて、最初にバックアップ状態に
セットされたプロセッサを有する情報処理装置のメモリ
に書き込ませる第1制御手段とを含み、
【0019】バ
ックアップ・プロセッサが活動状態にセットされると、
活動状態のプロセッサの状態が活動状態から故障状態に
切り換わったとき、バックアップ・プロセッサが活動状
態のプロセッサの作業処理を再開することができる。
【0020】
【実施例】本発明をよりよく理解するために、まず図1
ないし図6に関してそれぞれがプロセッサ及び専用メモ
リを含み、互いにバックアップし合う2つの処理装置を
含む構成で、チェックポイント機構の完全な説明を行な
う。次いで、本発明を一般化して、相互接続ネットワー
ク(図7)を介して接続された複数のプロセッサ対に適
用し、さらに共通のインテリジェント・メモリ(図8)
を共用する複数のプロセッサに適用する。
【0021】本発明によるチェックポイント機構は、相
互接続された複数の同一プロセッサを含むマルチプロセ
ッサ・システムでフォールト・トレランスを実施するこ
とができる。このチェックポイント機構は、2重冗長構
成を利用する、すなわちこのシステムはプロセッサ対を
含む。各対において、一方のプロセッサが活動状態であ
り、すなわち処理作業を有効に実行するが、このときバ
ックアップ・プロセッサと呼ばれる他方のプロセッサは
休眠しており、相手のプロセッサが故障した場合だけ活
動状態になる。その切り替えは、動的に行なわれるもの
と仮定する。
【0022】本発明によれば、プログラム・ロールバッ
ク技法を使用する。この技法は、以前に到達した点から
バックアップ・プロセッサで処理作業を再開することに
より、活動プロセッサの故障からシステムを回復させる
ことができる。回復点は、処理経路に沿って分散され、
これらの回復点におけるプロセッサの状態がセーブされ
る。プロセッサの状態は、プロセッサ・メモリとレジス
タとさらにハードウェアのある部分とに存在する、将来
のプロセッサの挙動に影響を与えるすべての変数からな
る集合を含む。
【0023】プロセッサの状態は、その故障が活動プロ
セッサの故障とは相関しないメモリ装置にセーブされる
。したがって、その状態をバックアップ・プロセッサが
検索することができる。したがって、処理は、連続する
2つの回復点で区切られた連続した計算ステージにスラ
イスされる。
【0024】これらのプロセッサは、フェイルストップ
設計を有する。すなわち、故障が発生するとプロセッサ
が作業を停止し、すべての外部活動を中断する。
【0025】このような環境において、解決しなければ
ならない大きな問題は、活動プロセッサとバックアップ
・プロセッサの間の同期点の確立である。
【0026】また、故障の検出及びバックアップ・プロ
セッサによる引継ぎも実行しなければならない。活動プ
ロセッサが実際に稼働を停止して、バックアップ・プロ
セッサが確実に動作を再開できるようにするには、いく
つかの条件を満たさなければならない。
【0027】図1は、ただ1対のデータ処理装置10−
1と10−2を含むシステム内で実施されたときの本発
明のチェックポイント機構を表す。
【0028】各装置は、メモリ14に内蔵された制御プ
ログラムの制御下で働くプロセッサ12を含む。プロセ
ッサ及びメモリは、装置10−1では12−1及び14
−1、装置10−2では12−2及び14−2の参照番
号で表してある。同じ制御プログラムが、メモリ14−
1及び14−2にロードされている。
【0029】メモリ14−1及び14−2は、それぞれ
メモリ・バス16−1及び16−2を介してプロセッサ
12−1及び12−2に接続されている。メモリ・バス
は、通常通りアドレス線、データ線、及び制御線を含む
【0030】故障検出器18−1及び18−2は、周知
のどのタイプのものでよいが、プロセッサの故障を検出
し、プロセッサ12−1または12−2内で故障を検出
したとき、それぞれFAIL1線20−1またはFAI
L2線20−2上に活動信号を発生するように配置され
ている。
【0031】図1で、故障検出回路は、説明のためにプ
ロセッサの外部に表してある。実際には、これらの故障
検出回路は、プロセッサ内部の選択された点に位置する
、パリティ・チェッカ、電力故障検出器などの複数のチ
ェッカを含む。
【0032】各プロセッサは、ACTIVE状態、BA
CKUP状態、またはFAIL状態と呼ばれるどの状態
にもなることができ、その状態は構成制御装置22によ
って割り当てられる。構成制御装置は、線20−1及び
20−2から受け取ったFAIL信号の状態からプロセ
ッサの状態を決定する。これらの信号に応答して、構成
制御装置は、バス24−1及び24−2上に状態制御信
号を発生する。これらの状態制御信号は、それぞれシス
テム10−1及び10−2内の状態ハンドラ回路26−
1及び26−2に供給され、前記の両システムを、バス
27−1及び27−2上のプロセッサ制御信号によって
所定の状態に設定させる。
【0033】検出された故障が構成制御装置22に報告
されると、故障したプロセッサの状態がACTIVE状
態からFAIL状態へ切り替わり、相手プロセッサがB
ACKUP状態からACTIVE状態へ切り替わる。
【0034】FAIL−1線20−1及びFAIL−2
線20−2の状態に応じて、構成制御装置22は、バス
24−1及び24−2のうちの1本を活動化する。線2
4−1Aまたは24−2A上の活動信号は、プロセッサ
12−1または12−2をACTIVE状態にセットす
るためのものである。線24−1Bまたは24−2B上
の活動信号は、プロセッサ12−1または12−2をB
ACKUP状態にセットするためのものである。線24
−1F及び/または24−2F上の活動信号は、プロセ
ッサ12−1及び/または12−2をFAIL状態にセ
ットするためのものである。
【0035】本発明によるチェックポイント機構は、装
置10−1及び10−2内にそれぞれメモリ変化検出器
28−1及び28−2とミラーリング制御回路30−1
及び30−2を含む。このチェックポイント機構はまた
、装置10−1と10−2の間の専用経路であるミラー
・バス34を含む。このミラー・バスは、後に説明する
ように、活動プロセッサとそのバックアップ・プロセッ
サの間で状態データを転送するためのものである。
【0036】装置10−1が活動装置であり、装置10
−2がバックアップ装置であると仮定して、チェックポ
イント機構の動作を説明する。プロセッサ12−1をA
CTIVE状態にセットする線24−1Aからの制御信
号が、メモリ変化検出器28−1に供給され、プロセッ
サ12−1をBACKUP状態にセットする線24−1
Bからの制御信号が、ミラーリング制御回路30−1に
供給されて、装置10−1が活動状態のときメモリ変化
検出器28−1を活動化させ、ミラーリング制御回路3
0−1を非活動化させる。
【0037】逆に、装置10−2では、線24−2B及
び24−2A上の状態制御信号がメモリ変化検出器28
−2を非活動化させ、ミラーリング制御回路30−2を
活動化させる。
【0038】状態データは、メモリ変化検出器28−1
によって装置10−1内でセットアップされる。このメ
モリ変化検出器は、バス16−1上の書込み信号に応答
して、書込み動作が実行されたとき、少なくともバス1
6−1上にあるメモリ・アドレスとデータを含むメモリ
変化のレコードを生成する。
【0039】これらのレコードは、ミラー・バス34の
STATE  DATA線40−1を介してバックアッ
プ装置10−2内のライトアヘッド待ち行列WAQメモ
リ32−2に供給され、そこに蓄積される。プロセッサ
12−1内で走っている活動プログラムは、この過程に
は関与しない。
【0040】メモリ変化は、活動メモリ状態とバックア
ップ・メモリ状態の違いである。今後は、プロセッサ状
態はメモリ状態に等しいと仮定する。言い換えると、あ
る時点以降のプロセッサの挙動を決定する変数は、専ら
メモリ内に常駐しなければならない。
【0041】その結果、活動メモリ変化をバックアップ
・メモリに適用することにより、バックアップ・プロセ
ッサと活動プロセッサを同期させることができる。
【0042】メモリ14−1内に記憶されたプログラム
によって実行される作業処理の適当な時点で、たとえば
、各タスクの終了時点で、活動プログラムは、ESTA
BLISH  RECOVERY  POINT(ER
P、回復点確立)命令を出す。この命令は、新しいプロ
セッサ命令ではない。この命令は、たとえば、メモリ・
アドレス範囲外のメモリ・アドレス、またはERP命令
専用のメモリ・アドレスを指定するREADメモリ命令
である。このアドレスを、今後ERPアドレスと呼ぶこ
とにする。このアドレスは、検出器28−1によって検
出され、検出器28−1はそれに応答してERP線42
−1を活動化する。
【0043】線42−1上の活動ERP信号が、ミラー
リング制御回路30−2に供給される。制御回路30−
2は、SEPARATORレコードを生成し、それがバ
ス43−2を介してライトアヘッド待ち行列WAQ32
−2に書き込まれる。また、ミラーリング制御回路30
−2は、後で説明するように、読取り制御線44−2を
活動化して、最も新しく到達した回復点までの待ち行列
内のすべてのレコードをバックアップ装置10−2のメ
モリ14−2にダンプさせる。
【0044】各計算ステージ中で、ERP命令が出され
る前に、活動プロセッサの制御プログラムが次の計算ス
テージの入口点のアドレスを決定するとき、その制御プ
ログラムはSTORE命令を出す。この命令によって、
次の計算ステージのi入口点(すなわち、次の計算ステ
ージの最初の命令のアドレス)が、Next  Ent
ry  Point(次の入口点)アドレスと呼ばれる
固定したメモリ・アドレスに記憶される。
【0045】このSTORE動作は、メモリ変化検出器
28−1によってメモリ変化として検出され、対応する
メモリ変化レコードが、バックアップ装置10−2のメ
モリ14−2にロードすべく、ライトアヘッド待ち行列
WAQ32−2に入れられる。
【0046】プログラムが回復点に達した場合、計算ス
テージは活動プロセッサ12−1によって成功裡に実行
を終える。バックアップ・メモリ14−2内のプロセッ
サ状態が更新される。プログラムが回復点に達する前に
活動プロセッサ12−1が故障した場合は、バックアッ
プ・プロセッサの状態は更新されず、最も新しく到達し
た回復点でセットアップされた値が、メモリ14−2内
のNextEntry  Pointアドレスに保持さ
れる。
【0047】装置10−2の状態が、構成制御装置22
及び状態ハンドラ26−2の制御下でバックアップ状態
から活動状態に切り替わるとき、メモリ14−2に常駐
するプロセッサ・プログラムは、メモリ14−2への現
在のダンプ動作の完了を待ち、固定したNext  E
ntry  Pointメモリ・アドレスから読み出さ
れた命令アドレスからそのプログラムの実行を開始する
【0048】ミラー・バス34は、2つの装置10−1
と10−2をリンクする。
【0049】ミラー・バス34は、専ら活動プロセッサ
をしてそのメモリ変化をバックアップ・プロセッサのメ
モリにミラーさせるために使用される。以下の能力を提
供するものであればどのような種類のバスでも使用でき
る。
【0050】1.ミラー・バスは、装置10−1及び1
0−2の機能的データ経路から独立していなければなら
ない。
【0051】2.ミラー・バスは方向性を持ち、その方
向が、2つのプロセッサの諸状態の制御下になければな
らない。図1では、この能力を模式的に示すため、メモ
リ変化検出器28−1からライトアヘッド待ち行列WA
Q32−2及びミラーリング制御回路30−2へのST
ATE  DATA線40−1及びERP線42−1を
設け、メモリ変化検出器28−2からライトアヘッド待
ち行列WAQ32−1及びミラーリング制御回路30−
1へのSTATE  DATA線40−2及びERP線
42−2を設けてある。活動プロセッサからバックアッ
プ・プロセッサへの線だけが活動状態である。他のどん
な状態の組合せについても、他方の方向は阻止される。 したがって、故障プロセッサは、活動プロセッサと干渉
しない。
【0052】この機能は、図1でバス・ドライブ・ボッ
クス46−1及び46−2によって模式的に示されてい
る。これらのバス・ドライブ・ボックスは線24−1A
及び24−2A上の信号に応答し、プロセッサ12−1
と12−2のどちらのプロセッサが活動状態であるかに
応じて、ミラー・バス34上の転送の方向を制御する。
【0053】装置10−1及び10−2内で使用できる
メモリ変化検出回路28が、図2に示されている。この
回路は、活動装置10−1内にあるものと仮定し、した
がって参照番号に接尾数字1をつけてある。
【0054】メモリ・バス16−1は、アドレス線50
−1、データ線52−1、バイト・セレクト線BS54
−1、及び読み書き(R/W)制御線56−1を含む。 アドレス線は3バイトを搬送することができ、データ線
は4バイトを搬送することができ、メモリはメモリ・ア
ドレスされた位置の選択されたバイトだけを更新できる
バイト選択能力を備えているものと仮定する。
【0055】バス16−1のアドレス線、データ線、バ
イト選択線、及び読み書き制御線は、メモリ変化レコー
ド生成機構58−1に接続されている。メモリ変化レコ
ード生成機構は、プロセッサ12−1が活動状態のとき
活動状態となる。このレコード生成機構は、メモリ書込
み動作を指示するR/W制御線56−1上の信号に応答
して、アドレス線50−1及びデータ線52−1上に存
在するアドレス・ビット及びデータ・ビットをレジスタ
60−1にゲートし、制御フィールドを生成する。この
制御フィールドもレジスタ60−1に供給される。この
制御フィールドは、このレコードをメモリ変化レコード
として識別する情報と、バイト選択信号から取り出され
た情報とを含み、メモリ・アドレスされた位置で変更さ
れるバイトを指定する。
【0056】レジスタ60−1内で生成されたメモリ変
化レコードは、バス・ドライブ・ボックス46−1を介
して供給され、ライトアヘッド待ち行列32−2に書き
込まれる。
【0057】ERP検出器62−1は、読取り動作を指
示するR/W制御線上の信号、及び(プログラムがER
P命令を出すことを意味する)ERPアドレスに等しい
バス50−1内のメモリ・アドレスに応答して、バス・
ドライブ46−1を介してERP線42−1を活動化す
る。これによって、その時点まで記憶されたメモリ変化
レコードがライトアヘッド待ち行列32−2に入る(c
ommit)。
【0058】メモリ変化検出器の動作は、リアル・タイ
ムで実行される。
【0059】ライトアヘッド待ち行列32及びミラーリ
ング制御回路30は、図3に示されている。これらはバ
ックアップ装置10−2内に位置するものと仮定する。 したがって、図3では参照番号に接尾数字2がつけてあ
る。
【0060】ライトアヘッド待ち行列WAQは、書込み
ポート、読出しポート、及び先入れ先出し(FIFO)
アクセスを有する2重ポート・メモリである。WAQは
、バス40−1から受け取ったメモリ変化レコードを一
時的に待ち行列に入れるために使用される。待ち行列に
入れたレコードは、後で説明するように、ミラーリング
制御回路32−2の制御下で待ち行列から外し、すなわ
ちWAQ待ち行列から読み出し、消去することができる
。WAQ待ち行列メモリが2重ポート式であるため、同
時並行の読出しアクセスと書込みアクセスが許可される
。このようなメモリは通常のものである。
【0061】ミラーリング制御回路30−2の機能は、
WAQ待ち行列32−2内に蓄積されたメモリ変化がE
RP線42−1からのERP信号によって待ち行列に入
れられたときに、これらの変化をバックアップ・メモリ
14−2に入れることである。
【0062】ミラーリング制御回路30−2は、有限状
態マシン70−2、カウンタ72−2、レジスタ74−
2、及びゲート回路76−2を含み、レジスタ74−2
は、メモリ変化レコードと同じフォーマットをもち、制
御フィールド内の特定のコードによってそうであると識
別される、セパレータ・パターンを含む。
【0063】有限状態マシン70−2の状態図は、図4
及び図5に示されている。線24−2Bからの信号で装
置10−2がバックアップ状態にセットされると、有限
状態マシンは作業を開始する。最初の動作(動作90)
で、ERP線42−1をテストする。それが活動状態(
ON)であると判定された場合、有限状態マシン70−
2は線78−2を活動化し、それによって、レジスタ7
4−2に含まれるセパレータ・パターンをライトアヘッ
ド待ち行列32−2に書き込ませる(動作92)。次に
、有限状態マシン70−2は増分線80−2を活動化し
、それによって、カウンタ72−2を1だけ増分させる
(動作94)。
【0064】カウンタ値は、ミラーリング制御回路によ
ってサービスされる待ち行列に入れられた回復点の番号
を反映する。
【0065】次に、ERP線42−1を再びテストし、
非活動状態であると判定された場合は、動作90から処
理を再開する。非活動状態であると判定されなかった場
合は、ERP信号の下降を待つために動作96から処理
が再開される。
【0066】WAQ待ち行列32−2に入れられたメモ
リ変化レコードがある限り、有限状態マシン72−2は
読出し制御信号を線44−2上に発生し、バス82−2
を介してWAQ待ち行列から読み出されたレコードを受
け取って、それらのレコードを適当なアドレス、データ
、及びバイト選択情報に変換する。これらの情報がメモ
リ・バス16−2に供給されて、バックアップ・メモリ
14−2を更新する。ミラーリング制御回路30−2は
、直接メモリ・アクセス能力をもつ。すなわち、ミラー
リング制御回路はプロセッサ12−2から援助を受けず
にメモリにアクセスすることができる。
【0067】これらの動作を記述したマシン70−2の
状態図が、図5に示されている。
【0068】まず、有限状態マシン72−2は、カウン
タ72−2内の値をテストし(動作100)、この値が
0以外になるまで、すなわち計算ステージ中に生成され
記憶されたメモリ変化レコードが蓄積されるまで待つ。 カウンタ値が0ではないとき、読出し線43−2が活動
化され、WAQ待ち行列からレコードが読み出される(
動作102)。
【0069】次に、有限状態マシン70−2は、このレ
コードがメモリ変化であるか否かテストする(動作10
4)。メモリ変化である場合は、有限状態マシン70−
2は、そのレコードを変換し、対応するメモリ変化をメ
モリ14−2に書き込む(動作106)。次いで、動作
100を再開する。
【0070】読み出されたレコードがメモリ変化でない
場合は、有限状態マシンは、このレコードがセパレータ
・レコードであるか否かテストする(動作106)。セ
パレータ・レコードである場合は、有限状態マシンは、
線84−2を活動化し、それによってカウンタ72−2
の内容を減分させる(動作108)。というのは、計算
段に対応するメモリ変化データが、バックアップ・メモ
リ14−2内にダンプされたからである。
【0071】セパレータ・レコードでない場合は、エラ
ー信号が線86−2上で立ち上がる。
【0072】これらの動作90−108はバックアップ
・プロセッサ内で実行することもできるが、メモリ変化
が発生する速度に合わせるため、ハードワイヤ式論理回
路である有限状態マシンによって実行することが好まし
い。
【0073】プロセッサ12−2の状態がバックアップ
状態から活動状態に切り替わるとき、プロセッサは、W
AQ待ち行列に入れられたすべての記憶されたメモリ変
化がサービスされたか否かを判定するための入出力命令
READ  RP  COUNTER72−2を出す。 RPカウンタ72−2の読み取り、及びそれに続くゼロ
か否かのテストによって、その動作を行なうことが可能
になる。RPカウンタが0でない場合、プロセッサはモ
ニタリング制御回路30−2がメモリ14−2内でメモ
リ変化のコピーを完了するのを待つ。カウンタが0のと
き、プロセッサ12−2はREAD命令をNext  
Entry  Pointメモリ・アドレスに出す。こ
の命令は、プロセッサ12−2によって実行される最初
の命令のアドレスを得て、プロセッサ12−1の故障に
よって中断された作業処理を再開するためのものである
【0074】図1の状態ハンドラ26−1及び26−2
は、構成制御装置22から状態制御信号を受け取る。
【0075】これらの状態ハンドラは、状態制御バス2
4−1及び24−2上の状態制御信号によって指示され
る、FAIL状態からBACKUP状態へ、またはBA
CKUP状態からACTIVE状態へ、またはFAIL
状態からACTIVE状態への切り替え副指令に応答し
て、プロセッサに割り込みをかける。これらの割り込み
は、プロセッサがBACKUP状態にセットされるとき
はプログラムが遊休状態にセットされ、またプロセッサ
がACTIVE状態にセットされるときはランを開始す
るように、プロセッサ・プログラムに割り込みの原因を
通知する。
【0076】構成制御装置22はまた、図6に示すよう
な、バス24−1及び24−2の線を活動化する有限状
態マシンを含む。
【0077】構成制御装置22によってセットされるプ
ロセッサ12−1及び12−2の可能な状態は5つある
。これらの状態は、図6でボックス102、104、1
06、108、及び110内に示されている。表1は、
プロセッサ12−1及び12−2を5つの状態にセット
するための線24−1A、24−1B、24−1F、2
4−2A、24−2B、24−2Fの状態を示す。
【0078】
【表1】
【0079】ある状態から別の状態への切り替えを生じ
させる事象は、図6に矢印で示されている。たとえば、
プロセッサが状態102にあるとき、すなわちプロセッ
サ12−1が活動プロセッサであり、プロセッサ12−
2がバックアップ・プロセッサであるとき、プロセッサ
12−2が故障した場合、構成制御装置は状態110を
セットする。
【0080】状態102から状態110への切り替えを
生じさせる事象は、線20−2がOFF状態からON状
態へ切り替わり、線20−1はOFFであることである
【0081】状態の切り替えを生じさせるすべての可能
な事象を、表2に示す。
【0082】
【表2】
【0083】任意の装置(10−1または10−2)が
最初に活動状態またはバックアップ状態にセットされる
ようにするために、メモリ変化検出器、ミラーリング制
御回路、及びライトアヘッド待ち行列が各装置に関連付
けられている。これによってシステムにフレキシビリテ
ィが与えられる。
【0084】明らかに、このフレキシビリティが必要で
ない場合、すなわち一方の装置が常時活動装置であり、
もう一方の装置10−2が常時バックアップ装置である
場合は、ただ1つのメモリ変化検出器28−1、ライト
アヘッド待ち行列32−2、及びミラーリング制御回路
30−2で充分である。
【0085】プロセッサの利用を最適化するために、バ
ックアップ・プロセッサを使って、メモリ内の、バック
アップ機能専用のアドレス空間とは異なるアドレス空間
に記憶された別のプログラムを実行することができる。
【0086】上述のように、図1−図6に関して説明し
たチェックポイント機構は、図7に示すようなマルチプ
ロセッサ・システム内で実施することができる。この図
には2つのプロセッサ対120及び122が表されてい
る。図7に概略的に示すように、各対のプロセッサ、メ
モリ、チェックポイント機構、故障検出回路、状態ハン
ドラ、及び構成制御装置は、図1に示すように配置され
ている。
【0087】これらのプロセッサ対は、故障がないと仮
定される相互接続ネットワーク124を介して相互接続
されている。
【0088】プロセッサ同士は、相互接続ネットワーク
を経由して交換されるメッセージを用いて交信する。交
信メッセージは、ソース対の活動プロセッサによって生
成され、宛先対の活動プロセッサに送られる。
【0089】これらのメッセージは、活動ソース・プロ
セッサのメモリから相互接続アダプタを介して活動宛先
プロセッサのメモリに交換される。相互接続アダプタは
、メモリ・バスと相互接続ネットワークの間のインター
フェースを行ない、ボックス126、128、130、
及び132として模式的に示されている。
【0090】宛先対のバックアップ・プロセッサは、相
互接続ネットワークを介してメッセージを直接受け取る
ことはなく、チェックポイント機構を介してメッセージ
を得る。
【0091】このマルチプロセッサ環境におけるチェッ
クポイント機構の実施態様は、相互接続ネットワークが
、プロセッサ対を識別するが、個々のプロセッサは識別
しないアドレス方式をもち、したがって送信側は、宛先
対内のどの特定のプロセッサが活動状態であるかを知る
必要がないことを暗示している。
【0092】プロセッサ間交信は、適当なエラー回復プ
ロトコルによって、プロセッサの故障から生ずるメッセ
ージ・ロスまたは重複から保護されていなければならな
い。
【0093】メッセージ・イン動作またはメッセージ・
アウト動作の進行中にプログラムによって”Estab
lish  Recovery  Point”アクシ
ョンが出されてはならない。したがって、メッセージ・
イン動作またはメッセージ・アウト動作は、複数の計算
ステージにまたがることができず、活動プロセッサの故
障は次のような結果をもたらす。
【0094】−  打ち切られた計算ステージ中にメッ
セージ・アウト動作が実行された場合、そのメッセージ
・アウト動作は、最後の回復点におけるメモリ状態に基
づいて新しい活動プロセッサによって再発行される。
【0095】−  打ち切られた計算ステージ中にメッ
セージ・イン動作が実行された場合、そのメッセージ・
インは新しいバックアップ・プロセッサによって無視さ
れ、送信側から再び送られる。
【0096】上述したように、図1−図6に関して説明
したチェックポイント機構は、さらに図8に示すような
マルチプロセッサ・システムにおいて実施可能である。
【0097】図8は、共用メモリ140に接続された複
数のプロセッサ12−1、12−2、...、12−n
を示す。この共用メモリは、同じ出願人の欧州特許出願
EP88480102.8号に記載されたタイプの共用
メモリである。この出願を、引用により本明細書に合体
する。プロセッサは、相互接続ネットワーク142を介
して共用メモリに接続されている。共用メモリ140は
、2つのサイド、すなわちサイドA144及びサイドB
146を含み、記憶を強化してデータ保全性を得るため
に同じ情報が重複される。
【0098】上記の欧州特許出願に詳細に記載されてい
るように、互いに交信するために、プロセッサ12−1
、12−2、...、12−nは、適当なハイ・レベル
・コマンドを用い、共用メモリ内にあるレコードの待ち
行列を使ってメッセージを交換する。プロセッサから送
られたハイ・レベル・コマンドPUT、GET、ENQ
、DEQは、前記プロセッサに接続されたメモリ・イン
ターフェース156によって構築され、相互接続ネット
ワーク142を介して共用メモリ内に組み込まれたメモ
リ・コマンド実行機構(PMCE、図示せず)に送られ
て実行される。前記のハイ・レベル・コマンドは、プロ
セッサが知る論理レコード・アドレス(LRA)によっ
て識別されるデータ・レコードを使って作業する。PM
CEによるハイ・レベル・コマンドの実行中に、論理レ
コード・アドレスは、共用メモリの両サイド内の物理ア
ドレス空間に対応する物理アドレスに変換される。
【0099】図8に示すように、メモリ140内の重複
されたレコード148、150によって概略的に示され
るすべてのデータ構造は、記憶装置またはアクセス・シ
ステム内のすべての単一ハードウェア障害をサポートす
るために重複される。具体的には、本発明に関連して定
義するような、あるタスクに対して確立された回復点は
、図1−図6に関して説明したように、プロセッサに到
達するため専用の単一メモリのアドレス空間としてでは
なく、重複されたレコードとして常にメモリ内にセーブ
される。このように、回復点は、メモリ140構造の2
重構成によって提供される保護を利用する。
【0100】同様に、図8に示された実施態様は、図1
−図6に関して説明したように、各プロセッサ専用のラ
イトアヘッド待ち行列(WAQ)に影響を与えるのでは
なく、メモリ140の両サイド144、146にある重
複されたライトアヘッド待ち行列レコード152、15
4を提供する。本発明によるチェックポイント機構の残
りの特徴、すなわち故障検出器、状態ハンドラ、及び構
成制御装置の機能は、各プロセッサ12−1、12−4
専用であり、前述のように動作する。
【0101】しかし、すべてのプロセッサに接続された
共用メモリを使用するので、パケット・メモリ内にある
回復点の確立は、メモリ・サイド144、146が専用
であるために多少特殊である。
【0102】最低レベルでは、あるタスクに対する回復
点は、2重アドレス空間内に位置するデータ・レコード
148、150の集合である。回復点の更新が両サイド
144、146内で並行して行なわれるなら、PUT動
作中にプロセッサがクラッシュした場合、同じ偽の値が
両サイド内に記憶されるはずである。たとえば、回復点
が8ビットで定義される場合、PUT動作中にクラッシ
ュが起こると、新しい回復点として偽の値nnnnn0
00がパケット・メモリの両サイド内に残るはずである
(ここで、nは新しい回復点値のビットを表し、0は古
い回復点値のビットを表す)。
【0103】したがって、共用メモリを使ってチェック
ポイント機構を実施するとき、この問題を解決するには
、メモリ・サイド144、146の少なくとも一方のサ
イド内に一貫した回復点を常にもつように、共用メモリ
の2つのサイドの更新を同期化解除することが必要にな
る。
【0104】上に説明したように共用メモリを使用する
環境では、2つの回復点間で作成されたデータ状態を一
種のキャッシュ内にセーブすることからなるコミット(
入力ないしは記憶)・フェーズ、またはライトアヘッド
待ち行列によって実施されるコミット・リストは、次の
ステップを含む。
【0105】1.コミット・リストを共用メモリ140
のレコード内に位置するライトアヘッド待ち行列内にセ
ーブするステップ。
【0106】2.共用メモリ140のサイドA144を
最新の回復点で更新するステップ。
【0107】3.共用メモリのサイドB146を最新の
回復点で更新するステップ。
【0108】最新回復点が共用メモリの両サイドにセー
ブされていない限り、プロセッサによるタスクの実行で
、このプロセッサの外部のデータ状態が変更されてはな
らないことに留意されたい。したがって、そのタスク実
行によって生成されるすべての外部アクションは、すで
に説明したようにコミット・リスト内にセーブされるか
、あるいはただちに実行されるが、共用メモリ内にセー
ブされたアンドゥー・リストにログされる。したがって
、すべての外部動作及びその結果は、そのタスクがその
プロセッサ内で実行中に故障が発生した場合、無効にな
ることがある。このような状況では、タスクの作業を消
去するためにアンドゥー・リストを実行する後に、パケ
ット・メモリから前の回復点を得るステップ、及び図1
−図6に関して説明したチェックポイント機構に従って
前記の前の回復点によって提供されたデータを使用して
タスクを再開するステップが続くことになる。共用メモ
リの2つのサイド内に前の回復点を2重にセーブするた
め、回復手順は、コミット・フェーズのステップに関す
る、プロセッサ故障発生の瞬間に応じて僅かに変わるこ
とに留意されたい。
【0109】したがって、前に定義したようにフェーズ
1または2で故障が発生した場合、新しい回復点はまだ
パケット・メモリのサイドAにはないので、回復手順は
古い回復点から出発しなければならず、次のステップを
実行することになる。
【0110】a)サイドBに記憶された古い回復点をサ
イドAにコピーするステップ。
【0111】b)アンドゥー・リストを実行して、新し
い回復点を使って先に実行された外部セクションを消去
するステップ。
【0112】そして、前に定義したようにフェーズ3で
故障が発生した場合は、新しい回復点はすでにパケット
・メモリのサイドAにセーブされているので、回復手順
はこの新しい回復点から出発しなければならず、次のス
テップを実行することになる。
【0113】a)サイドAにある新しい回復点をサイド
Bにコピーするステップ。
【0114】b)コミット・リストを実行するステップ
【0115】回復手順がバックアップ・プロセッサによ
って実行されるので、主プロセッサが故障したときにそ
のプロセッサがあったフェーズに対応する情報を、共用
メモリ内にセーブすることが不可欠であることに留意さ
れたい。
【0116】
【発明の効果】以上説明したように、本発明によれば、
活動装置の性能を低下させることなく、活動装置で実行
されるタスクによってトランスペアレントであり、しか
もシステム・ソフトウェアの複雑さを増加させないフォ
ールト・トレラント・システム用のチェック・ポイント
機構を提供することができる。
【図面の簡単な説明】
【図1】2つの装置を含むシステム内で実施されたとき
の本発明によるチェックポイント機構のブロック図であ
る。
【図2】メモリ変化検出回路の図である。
【図3】ミラーリング制御回路の図である。
【図4】ミラーリング制御回路内の有限状態マシンの状
態図である。
【図5】ミラーリング制御回路内の有限状態マシンの状
態図である。
【図6】構成制御装置の状態図である。
【図7】相互接続ネットワークを介して互いに接続され
たプロセッサ対を有するマルチプロセッサ・システム内
で実施されたときのチェックポイント機構を表す図であ
る。
【図8】いくつかの単一プロセッサが共用インテリジェ
ント・メモリを介して相互接続された場合のチェックポ
イント機構の別の実施態様を表す図である。
【符号の説明】
10  データ処理装置 12  プロセッサ 14  メモリ 18  故障検出器 22  構成制御装置 26  状態ハンドラ 28  メモリ変化検出器 30  ミラーリング制御回路 32  ライトアヘッド待ち行列

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】第1及び第2の情報処理装置を含む少なく
    とも1対の情報処理装置と連動し、上記の各情報処理装
    置がデータ線、アドレス線、及び制御線を含むメモリ・
    バスを介してプロセッサに接続されたメモリ内に記憶さ
    れたプログラムを実行するプロセッサを含み、上記各プ
    ロセッサが、関連するプロセッサが故障しているか否か
    を検出する、各プロセッサに関連する故障検出手段に応
    答する構成制御装置の制御下で、活動状態、バックアッ
    プ状態、または故障状態にセットすることができるとい
    う、活動プロセッサが故障したとき、その活動プロセッ
    サの作業プロセスがバックアップ・プロセッサによって
    再開されるようにするフォールト・トレラント・システ
    ムのためのチェックポイント機構であって、メモリ・バ
    ス上でアドレスと、メモリ内容を変化させるデータとを
    受け取って、それからメモリ変化レコードを生成するよ
    うに、構成制御装置によって情報処理装置が最初に活動
    状態にセットされるプロセッサを有する情報処理装置と
    少なくとも連動する第1のメモリ変化検出手段と、構成
    制御装置によって最初に活動状態にセットされるプロセ
    ッサを有する前記情報処理装置内の、プログラムの選択
    された点で前記プロセッサから提供される信号に応答し
    て回復点確立信号を発生するための第1の信号手段と、
    通信制御装置によって最初にバックアップ状態にセット
    されるプロセッサを有する情報処理装置と少なくとも連
    動する前記第1メモリ変化検出手段に結合された、前記
    第1メモリ変化検出手段から受け取ったメモリ変化レコ
    ードを記憶するための第1記憶手段と、分離レコードが
    第1記憶手段内に記憶されている限り、第1信号手段か
    ら受け取った回復点確立信号に応答して、分離レコード
    を第1記憶手段内に記憶させ、メモリ変化レコードを第
    1記憶手段から読み出させて、最初にバックアップ状態
    にセットされたプロセッサを有する情報処理装置のメモ
    リ内に書き込ませ、それによってバックアップ・プロセ
    ッサが活動状態にセットされ、活動プロセッサの状態が
    活動状態から故障状態に切り換えられたときに、バック
    アップ・プロセッサが活動状態プロセッサの作業プロセ
    スを再開できるようにする、前記第1記憶手段に関連す
    る第1制御手段とを含むことを特徴とする前記チェック
    ポイント機構。
  2. 【請求項2】構成制御装置によって最初にバックアップ
    状態にセットされ、メモリ・バス上でアドレスとメモリ
    内容を変化させるデータとを受け取って、それからメモ
    リ変化レコードを生成することができるプロセッサを有
    する、情報処理装置と連動する第2のメモリ変化検出手
    段と、構成制御装置によって最初にバックアップ状態に
    セットされ、前記構成制御装置がプログラムの選択され
    た点で前記プロセッサから提供される信号に応答して回
    復点確立信号を発生することができるプロセッサを有す
    る、前記情報処理装置内の第2信号手段と、通信制御装
    置によって最初に活動状態にセットされたプロセッサを
    有する情報処理装置と連動する前記第2メモリ変化検出
    手段に結合された、前記第2メモリ変化検出手段から受
    け取ったメモリ変化レコードを記憶するための第2記憶
    手段と、第2信号手段から受け取った回復点確立信号に
    応答して、分離レコードを第2記憶手段内に記憶させ、
    メモリ変化レコードを第2記憶手段から読み出させて、
    最初に活動状態にセットされたプロセッサを有する情報
    処理装置のメモリ内に書き込ませ、それによって第1及
    び第2情報処理装置内の前記プロセッサのいずれか1つ
    が構成制御装置によって最初に活動状態またはバックア
    ップ状態にセットできるようにする、前記第2記憶手段
    と関連する第2制御手段とを含むことを特徴とする、請
    求項1に記載のチェックポイント機構。
  3. 【請求項3】前記メモリならびに前記の第1及び第2記
    憶手段が、前記の活動プロセッサとバックアップ・プロ
    セッサによって共用されるメモリの2つのサイドで重複
    された2重共用レコードによって構成されることを特徴
    とする、請求項2に記載のチェックポイント機構。
  4. 【請求項4】関連するプロセッサが構成制御装置によっ
    て活動状態にセットされたとき、第1または第2メモリ
    変化検出手段及び第1または第2信号手段が動作中にセ
    ットされること、及び関連するプロセッサが構成制御装
    置によってバックアップ状態にセットされたとき、第1
    または第2記憶手段及び第1または第2制御手段が動作
    中にセットされることを特徴とする、請求項2に記載の
    チェックポイント機構。
  5. 【請求項5】第1記憶手段が2重ポート先入れ先出しメ
    モリを含み、第1メモリ変化検出手段から受け取ったメ
    モリ変化レコードが待ち行列に入れられることを特徴と
    する、請求項1に記載のチェックポイント機構。
  6. 【請求項6】第1記憶手段が2重ポート先入れ先出しメ
    モリを含み、第1メモリ変化検出手段から受け取ったメ
    モリ変化レコードが待ち行列に入れられること、及び第
    2記憶手段が2重ポート先入れ先出しメモリを含み、第
    2メモリ変化検出手段から受け取ったメモリ変化レコー
    ドが待ち行列に入れられることを特徴とする、請求項4
    または5に記載のチェックポイント機構。
  7. 【請求項7】第1制御手段が、カウント手段と、回復点
    確立信号に応答して、カウント手段を初期値から第1の
    固定値だけ変化させ、第1記憶手段に書き込まれる分離
    レコードを生成し、カウンタの値に応答して、カウンタ
    の値が初期値と異なる場合に第1記憶手段を読み取らせ
    、読み取ったレコードをテストして、このレコードがメ
    モリ変化レコードである場合は情報処理装置のメモリに
    送らせ、またこのレコードが分離レコードである場合は
    カウンタ値を第1固定値の反対である第2固定値だけ変
    化させる、論理回路手段とを含むことを特徴とする、請
    求項1または5に記載のチェックポイント機構。
  8. 【請求項8】第1及び第2制御手段が、カウント手段と
    、回復点確立信号に応答して、カウント手段を初期値か
    ら第1固定値だけ変化させ、第1記憶手段に書き込まれ
    る分離レコードを生成し、カウンタの値に応答して、カ
    ウンタの値が初期値と異なる場合に関連する記憶手段を
    読み取らせ、読み取ったレコードをテストして、このレ
    コードがメモリ変化レコードである場合は関連する情報
    処理装置のメモリに送らせ、またこのレコードが分離レ
    コードである場合はカウンタ値を第1固定値の反対であ
    る第2固定値だけ変化させる、論理回路手段とを含むこ
    とを特徴とする、請求項2、4、または6に記載のチェ
    ックポイント機構。
  9. 【請求項9】活動プロセッサが、バックアップ・プロセ
    ッサがそこで作業プロセスを再開しなければならないプ
    ログラム命令のアドレスをメモリ・バスを介して送り、
    このアドレスが、バックアップ状態にセットされたバッ
    クアップ・プロセッサのメモリの固定アドレスに書き込
    まれるメモリ変化レコードを構成するようにすることを
    特徴とする、請求項1ないし7のいずれか一つに記載の
    チェックポイント機構。
JP3021470A 1990-02-08 1991-01-23 フォ―ルト・トレラント・システムのためのチェックポイント機構 Expired - Lifetime JP2505928B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR90480021.6 1990-02-08
EP90480021A EP0441087B1 (en) 1990-02-08 1990-02-08 Checkpointing mechanism for fault-tolerant systems

Publications (2)

Publication Number Publication Date
JPH04213736A true JPH04213736A (ja) 1992-08-04
JP2505928B2 JP2505928B2 (ja) 1996-06-12

Family

ID=8205827

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3021470A Expired - Lifetime JP2505928B2 (ja) 1990-02-08 1991-01-23 フォ―ルト・トレラント・システムのためのチェックポイント機構

Country Status (4)

Country Link
US (1) US5235700A (ja)
EP (1) EP0441087B1 (ja)
JP (1) JP2505928B2 (ja)
DE (1) DE69021712T2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009211517A (ja) * 2008-03-05 2009-09-17 Nec Corp 仮想計算機冗長化システム
JP2010160660A (ja) * 2009-01-07 2010-07-22 Nec Corp ネットワークインタフェース、計算機システム、それらの動作方法、及びプログラム
US9195548B2 (en) 2012-07-02 2015-11-24 Fujitsu Limited Information processing method and apparatus for recovering state of system

Families Citing this family (90)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0410041A (ja) * 1990-04-27 1992-01-14 Toshiba Corp データ退避方式
US5157663A (en) * 1990-09-24 1992-10-20 Novell, Inc. Fault tolerant computer system
EP0529303A3 (en) * 1991-08-29 1993-09-22 International Business Machines Corporation Checkpoint synchronization with instruction overlap enabled
US5815651A (en) * 1991-10-17 1998-09-29 Digital Equipment Corporation Method and apparatus for CPU failure recovery in symmetric multi-processing systems
WO1993009494A1 (en) * 1991-10-28 1993-05-13 Digital Equipment Corporation Fault-tolerant computer processing using a shadow virtual processor
US5363503A (en) * 1992-01-22 1994-11-08 Unisys Corporation Fault tolerant computer system with provision for handling external events
US5394542A (en) * 1992-03-30 1995-02-28 International Business Machines Corporation Clearing data objects used to maintain state information for shared data at a local complex when at least one message path to the local complex cannot be recovered
US5485585A (en) * 1992-09-18 1996-01-16 International Business Machines Corporation Personal computer with alternate system controller and register for identifying active system controller
US6237108B1 (en) * 1992-10-09 2001-05-22 Fujitsu Limited Multiprocessor system having redundant shared memory configuration
US5838894A (en) * 1992-12-17 1998-11-17 Tandem Computers Incorporated Logical, fail-functional, dual central processor units formed from three processor units
US5664195A (en) * 1993-04-07 1997-09-02 Sequoia Systems, Inc. Method and apparatus for dynamic installation of a driver on a computer system
JPH0713838A (ja) * 1993-06-14 1995-01-17 Internatl Business Mach Corp <Ibm> エラーの回復方法及び装置
WO1995003580A1 (en) * 1993-07-20 1995-02-02 Vinca Corporation Method for rapid recovery from a network file server failure
JPH07262034A (ja) * 1994-03-18 1995-10-13 Fujitsu Ltd データ引き継ぎシステム
JPH10506483A (ja) * 1994-06-10 1998-06-23 テキサス・マイクロ・インコーポレーテッド フォールト・トレラントなコンピュータ・システムのためのメイン・メモリ・システム及びチェックポイント用プロトコル
US5566297A (en) * 1994-06-16 1996-10-15 International Business Machines Corporation Non-disruptive recovery from file server failure in a highly available file system for clustered computing environments
GB2290891B (en) * 1994-06-29 1999-02-17 Mitsubishi Electric Corp Multiprocessor system
US5557735A (en) * 1994-07-21 1996-09-17 Motorola, Inc. Communication system for a network and method for configuring a controller in a communication network
US5692120A (en) * 1994-08-08 1997-11-25 International Business Machines Corporation Failure recovery apparatus and method for distributed processing shared resource control
US5649152A (en) 1994-10-13 1997-07-15 Vinca Corporation Method and system for providing a static snapshot of data stored on a mass storage system
US5835953A (en) 1994-10-13 1998-11-10 Vinca Corporation Backup system that takes a snapshot of the locations in a mass storage device that has been identified for updating prior to updating
US5530946A (en) * 1994-10-28 1996-06-25 Dell Usa, L.P. Processor failure detection and recovery circuit in a dual processor computer system and method of operation thereof
CA2167633A1 (en) * 1995-01-23 1996-07-24 Leonard R. Fishler Apparatus and method for efficient modularity in a parallel, fault tolerant, message based operating system
US5673426A (en) * 1995-02-14 1997-09-30 Hal Computer Systems, Inc. Processor structure and method for tracking floating-point exceptions
US6044475A (en) * 1995-06-16 2000-03-28 Lucent Technologies, Inc. Checkpoint and restoration systems for execution control
WO1997000477A1 (en) * 1995-06-16 1997-01-03 Lucent Technologies Checkpoint and restoration systems for execution control
US6105148A (en) * 1995-06-16 2000-08-15 Lucent Technologies Inc. Persistent state checkpoint and restoration systems
JP3481737B2 (ja) * 1995-08-07 2003-12-22 富士通株式会社 ダンプ採取装置およびダンプ採取方法
US5867642A (en) * 1995-08-10 1999-02-02 Dell Usa, L.P. System and method to coherently and dynamically remap an at-risk memory area by simultaneously writing two memory areas
US5630047A (en) * 1995-09-12 1997-05-13 Lucent Technologies Inc. Method for software error recovery using consistent global checkpoints
US5708771A (en) * 1995-11-21 1998-01-13 Emc Corporation Fault tolerant controller system and method
US5864657A (en) * 1995-11-29 1999-01-26 Texas Micro, Inc. Main memory system and checkpointing protocol for fault-tolerant computer system
US5737514A (en) * 1995-11-29 1998-04-07 Texas Micro, Inc. Remote checkpoint memory system and protocol for fault-tolerant computer system
GB2308040A (en) * 1995-12-09 1997-06-11 Northern Telecom Ltd Telecommunications system
US5978933A (en) * 1996-01-11 1999-11-02 Hewlett-Packard Company Generic fault tolerant platform
GB9601584D0 (en) * 1996-01-26 1996-03-27 Hewlett Packard Co Fault-tolerant processing method
GB9601585D0 (en) * 1996-01-26 1996-03-27 Hewlett Packard Co Fault-tolerant processing method
US5870537A (en) * 1996-03-13 1999-02-09 International Business Machines Corporation Concurrent switch to shadowed device for storage controller and device errors
JPH09251443A (ja) * 1996-03-18 1997-09-22 Hitachi Ltd 情報処理システムのプロセッサ障害回復処理方法
US5724501A (en) * 1996-03-29 1998-03-03 Emc Corporation Quick recovery of write cache in a fault tolerant I/O system
US5828889A (en) * 1996-05-31 1998-10-27 Sun Microsystems, Inc. Quorum mechanism in a two-node distributed computer system
US6393581B1 (en) 1996-08-29 2002-05-21 Cornell Research Foundation, Inc. Reliable time delay-constrained cluster computing
US5883939A (en) * 1996-08-29 1999-03-16 Cornell Research Foundation, Inc. Distributed architecture for an intelligent networking coprocessor
KR19980024086A (ko) * 1996-09-03 1998-07-06 니시무로 타이조 컴퓨터 시스템 및 화일 관리 방법
TW379298B (en) * 1996-09-30 2000-01-11 Toshiba Corp Memory updating history saving device and memory updating history saving method
US5933474A (en) * 1996-12-24 1999-08-03 Lucent Technologies Inc. Telecommunications call preservation in the presence of control failure and high processing load
JPH10326220A (ja) * 1997-05-27 1998-12-08 Toshiba Corp ファイルシステムおよびファイル管理方法
US5948108A (en) * 1997-06-12 1999-09-07 Tandem Computers, Incorporated Method and system for providing fault tolerant access between clients and a server
US5995960A (en) * 1998-04-08 1999-11-30 International Business Machines Corporaiton Method and system for improving efficiency of programs utilizing databases by exeuting scenarios based on recalled processed information
US6223304B1 (en) 1998-06-18 2001-04-24 Telefonaktiebolaget Lm Ericsson (Publ) Synchronization of processors in a fault tolerant multi-processor system
DE19836347C2 (de) 1998-08-11 2001-11-15 Ericsson Telefon Ab L M Fehlertolerantes Computersystem
US6338147B1 (en) * 1998-10-29 2002-01-08 International Business Machines Corporation Program products for performing checkpoint/restart of a parallel program
US6401216B1 (en) 1998-10-29 2002-06-04 International Business Machines Corporation System of performing checkpoint/restart of a parallel program
US6393583B1 (en) 1998-10-29 2002-05-21 International Business Machines Corporation Method of performing checkpoint/restart of a parallel program
US6460133B1 (en) * 1999-05-20 2002-10-01 International Business Machines Corporation Queue resource tracking in a multiprocessor system
US6622263B1 (en) 1999-06-30 2003-09-16 Jack Justin Stiffler Method and apparatus for achieving system-directed checkpointing without specialized hardware assistance
US6766381B1 (en) 1999-08-27 2004-07-20 International Business Machines Corporation VLSI network processor and methods
US6687849B1 (en) * 2000-06-30 2004-02-03 Cisco Technology, Inc. Method and apparatus for implementing fault-tolerant processing without duplicating working process
US7065098B2 (en) 2001-01-19 2006-06-20 Raze Technologies, Inc. Redundant telecommunication system using memory equalization apparatus and method of operation
JP4394298B2 (ja) * 2001-02-20 2010-01-06 日本電気株式会社 マルチプロセッサシステムとその共有メモリ制御方法、及び共有メモリ制御プログラム
JP4258986B2 (ja) * 2001-03-16 2009-04-30 沖電気工業株式会社 通信制御装置の制御方法およびネットワーク管理システムの制御プログラム
US7055056B2 (en) * 2001-11-21 2006-05-30 Hewlett-Packard Development Company, L.P. System and method for ensuring the availability of a storage system
KR100441712B1 (ko) * 2001-12-29 2004-07-27 엘지전자 주식회사 확장 가능형 다중 처리 시스템 및 그의 메모리 복제 방법
JP4165747B2 (ja) * 2003-03-20 2008-10-15 株式会社日立製作所 記憶システム、制御装置及び制御装置のプログラム
CN1292346C (zh) * 2003-09-12 2006-12-27 国际商业机器公司 用于在分布式计算体系结构中执行作业的系统和方法
US7315951B2 (en) * 2003-10-27 2008-01-01 Nortel Networks Corporation High speed non-volatile electronic memory configuration
US7440553B2 (en) * 2004-02-04 2008-10-21 Samsung Electronics Co., Ltd. Apparatus and method for checkpointing a half-call model in redundant call application nodes
JP4555713B2 (ja) 2005-03-17 2010-10-06 富士通株式会社 エラー通知方法及び情報処理装置
US7478278B2 (en) * 2005-04-14 2009-01-13 International Business Machines Corporation Template based parallel checkpointing in a massively parallel computer system
JP4831599B2 (ja) 2005-06-28 2011-12-07 ルネサスエレクトロニクス株式会社 処理装置
US20070028144A1 (en) * 2005-07-29 2007-02-01 Stratus Technologies Bermuda Ltd. Systems and methods for checkpointing
US7761426B2 (en) 2005-12-07 2010-07-20 International Business Machines Corporation Apparatus, system, and method for continuously protecting data
US20070180312A1 (en) * 2006-02-01 2007-08-02 Avaya Technology Llc Software duplication
CN101193092A (zh) * 2006-11-29 2008-06-04 鸿富锦精密工业(深圳)有限公司 网络设备及其数据同步传输方法
US20080148095A1 (en) * 2006-12-14 2008-06-19 Motorola, Inc. Automated memory recovery in a zero copy messaging system
US8296768B2 (en) * 2007-06-30 2012-10-23 Intel Corporation Method and apparatus to enable runtime processor migration with operating system assistance
US8799213B2 (en) * 2007-07-31 2014-08-05 Oracle International Corporation Combining capture and apply in a distributed information sharing system
US7801852B2 (en) * 2007-07-31 2010-09-21 Oracle International Corporation Checkpoint-free in log mining for distributed information sharing
US9230002B2 (en) 2009-01-30 2016-01-05 Oracle International Corporation High performant information sharing and replication for single-publisher and multiple-subscriber configuration
US20100229029A1 (en) * 2009-03-06 2010-09-09 Frazier Ii Robert Claude Independent and dynamic checkpointing system and method
US20110154133A1 (en) * 2009-12-22 2011-06-23 International Business Machines Corporation Techniques for enhancing firmware-assisted system dump in a virtualized computer system employing active memory sharing
US8799710B2 (en) * 2012-06-28 2014-08-05 International Business Machines Corporation 3-D stacked multiprocessor structures and methods to enable reliable operation of processors at speeds above specified limits
KR101638437B1 (ko) 2012-09-25 2016-07-12 한국전자통신연구원 고장감내처리 시스템의 동작방법
US9069701B2 (en) 2012-12-11 2015-06-30 International Business Machines Corporation Virtual machine failover
US9251002B2 (en) 2013-01-15 2016-02-02 Stratus Technologies Bermuda Ltd. System and method for writing checkpointing data
US9563452B2 (en) 2013-06-28 2017-02-07 Sap Se Cloud-enabled, distributed and high-availability system with virtual machine checkpointing
US9652338B2 (en) 2013-12-30 2017-05-16 Stratus Technologies Bermuda Ltd. Dynamic checkpointing systems and methods
EP3090336A1 (en) 2013-12-30 2016-11-09 Paul A. Leveille Checkpointing systems and methods of using data forwarding
US9760442B2 (en) 2013-12-30 2017-09-12 Stratus Technologies Bermuda Ltd. Method of delaying checkpoints by inspecting network packets
WO2018233820A1 (en) * 2017-06-21 2018-12-27 Huawei Technologies Co., Ltd. SYSTEMS AND METHODS FOR MANAGING JOURNAL STRUCTURE

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57137949A (en) * 1981-02-18 1982-08-25 Nec Corp Error recovery system of logical device
JPS5860359A (ja) * 1981-10-06 1983-04-09 Toshiba Corp 複合計算機システム
JPS62105247A (ja) * 1985-10-29 1987-05-15 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション デ−タ・ベ−ス・システムの管理方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4590554A (en) * 1982-11-23 1986-05-20 Parallel Computers Systems, Inc. Backup fault tolerant computer system
SE454730B (sv) * 1986-09-19 1988-05-24 Asea Ab Forfarande och datorutrustning for stotfri omkoppling av funktionen fran aktiva enheter till beredskapsenheter i en centralenhet
JP2514208B2 (ja) * 1987-07-15 1996-07-10 富士通株式会社 ホットスタンドバイメモリ−コピ−方式

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57137949A (en) * 1981-02-18 1982-08-25 Nec Corp Error recovery system of logical device
JPS5860359A (ja) * 1981-10-06 1983-04-09 Toshiba Corp 複合計算機システム
JPS62105247A (ja) * 1985-10-29 1987-05-15 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション デ−タ・ベ−ス・システムの管理方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009211517A (ja) * 2008-03-05 2009-09-17 Nec Corp 仮想計算機冗長化システム
JP2010160660A (ja) * 2009-01-07 2010-07-22 Nec Corp ネットワークインタフェース、計算機システム、それらの動作方法、及びプログラム
US9195548B2 (en) 2012-07-02 2015-11-24 Fujitsu Limited Information processing method and apparatus for recovering state of system

Also Published As

Publication number Publication date
EP0441087B1 (en) 1995-08-16
DE69021712D1 (de) 1995-09-21
DE69021712T2 (de) 1996-04-18
JP2505928B2 (ja) 1996-06-12
EP0441087A1 (en) 1991-08-14
US5235700A (en) 1993-08-10

Similar Documents

Publication Publication Date Title
JPH04213736A (ja) フォールト・トレラント・システムのためのチェックポイント機構
US5958070A (en) Remote checkpoint memory system and protocol for fault-tolerant computer system
US4823256A (en) Reconfigurable dual processor system
US4941087A (en) System for bumpless changeover between active units and backup units by establishing rollback points and logging write and read operations
KR920003497B1 (ko) 억세스 손실 처리용 시스템 및 그 보호방법
US6622263B1 (en) Method and apparatus for achieving system-directed checkpointing without specialized hardware assistance
EP0900420B1 (en) Main memory system and checkpointing protocol for fault-tolerant computer system using a read buffer
CA2292603A1 (en) Loosely-coupled, synchronized execution
JPH079626B2 (ja) 多重プロセッサを備えたフォールトトレラントなコンピュータシステム
JPS638835A (ja) 障害回復方法
JP3301992B2 (ja) 電源故障対策を備えたコンピュータシステム及びその動作方法
JPH0950424A (ja) ダンプ採取装置およびダンプ採取方法
CN1269040C (zh) 信息处理设备
JPH09251443A (ja) 情報処理システムのプロセッサ障害回復処理方法
JPH07234808A (ja) システムダンプ採取方式
JPH02266457A (ja) 処理の継続実行方法
JPH083807B2 (ja) 2重化磁気デイスク装置の自動切換装置
US20070038849A1 (en) Computing system and method
JP3679412B6 (ja) 故障から立直りが速い/故障に対する耐性がある計算処理
JP3679412B2 (ja) 故障から立直りが速い/故障に対する耐性がある計算処理
Di Giovanni et al. H/W and S/W redundancy techniques for 90's rotorcraft computers
JPS62296264A (ja) デ−タ処理システムの構成制御方式
JPH0395634A (ja) 計算機システム再起動制御方式
JPH07109592B2 (ja) Cpu―io並列動作シミュレーション方法
JPS62212865A (ja) マルチプロセツサ制御方式