JPS6240547A - 誤り回復装置 - Google Patents
誤り回復装置Info
- Publication number
- JPS6240547A JPS6240547A JP61191159A JP19115986A JPS6240547A JP S6240547 A JPS6240547 A JP S6240547A JP 61191159 A JP61191159 A JP 61191159A JP 19115986 A JP19115986 A JP 19115986A JP S6240547 A JPS6240547 A JP S6240547A
- Authority
- JP
- Japan
- Prior art keywords
- event
- error
- executed
- instruction
- instruction point
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operations
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operations
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1405—Saving, restoring, recovering or retrying at machine instruction level
- G06F11/1407—Checkpointing the instruction stream
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Retry When Errors Occur (AREA)
- Debugging And Monitoring (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔発明の技術分野〕
本発明はフォールトートレラント計算システムに関し、
特に、計算装置内で発生した誤りからの回復に関する。
特に、計算装置内で発生した誤りからの回復に関する。
誤りの発生とは、機械命令の実行中に、データまたは以
降の機械命令の実行を正しくないものにするでき事であ
る。計算システムを全く停止して再ブートするのではな
く、最小量の中断で、データおよび以降の機械命令の実
行が確実に正しいものになるように1機械命令の実行を
修復し続行するのが望ましい。
降の機械命令の実行を正しくないものにするでき事であ
る。計算システムを全く停止して再ブートするのではな
く、最小量の中断で、データおよび以降の機械命令の実
行が確実に正しいものになるように1機械命令の実行を
修復し続行するのが望ましい。
計算システムはシステム状態と呼ばれる一組の属性によ
って特徴づけられる。システム状態にはプロセス−コン
トロール・ブロックとプロセスがアクセスできるローカ
ル−データとから成るプロセス−データと、データベー
ス・ファイルのような永久的なデータから成るファイル
拳データとがある。
って特徴づけられる。システム状態にはプロセス−コン
トロール・ブロックとプロセスがアクセスできるローカ
ル−データとから成るプロセス−データと、データベー
ス・ファイルのような永久的なデータから成るファイル
拳データとがある。
従来の修復機構は発生した誤りを部分的に回復するだけ
であった。誤りの発生前に開始されたフ 。
であった。誤りの発生前に開始されたフ 。
アイル・データの修正は完全に終了するかあるいは開始
前の状態に完全に戻されるかのいずれかであった。従来
の修復機構では、チェックポイントにおいて、チェック
ポイントに現存するシステム状態であるチェックポイン
ト・システム状態を完全に回復するのに充分なデータを
定期的に記録していた。
前の状態に完全に戻されるかのいずれかであった。従来
の修復機構では、チェックポイントにおいて、チェック
ポイントに現存するシステム状態であるチェックポイン
ト・システム状態を完全に回復するのに充分なデータを
定期的に記録していた。
誤りが検出されると、以前に行われたファイルの修正は
ファイルの修正を記述しである過去に記録された情報を
後向きにたどることによって1元の状態に戻していた。
ファイルの修正を記述しである過去に記録された情報を
後向きにたどることによって1元の状態に戻していた。
計算7ステムは、最後のチェックポイント・システム状
態として定義されている最も最近に記録されたチェック
ポイント・システム状態にリセットされていた。
態として定義されている最も最近に記録されたチェック
ポイント・システム状態にリセットされていた。
従来の修復機構は一般にファ、イル・データを誤り発生
の直前に存在していたと同じ状態にまでは回復しなかっ
た。誤り発生前にファイル・データの修正を終らないプ
ロセスはアポートされ、再始動されなかった。誤り修復
を完了することによって得られる7ステム状態は、最終
システム状態と定義されるが、一般的には誤り前システ
ム状態ではなかった。誤り前システム状態とは誤り発生
の直前に存在していたシステム状態である。最終システ
ム状態は単に最後のチェックポイント−システム状態で
あるに過ぎないことが多かった。
の直前に存在していたと同じ状態にまでは回復しなかっ
た。誤り発生前にファイル・データの修正を終らないプ
ロセスはアポートされ、再始動されなかった。誤り修復
を完了することによって得られる7ステム状態は、最終
システム状態と定義されるが、一般的には誤り前システ
ム状態ではなかった。誤り前システム状態とは誤り発生
の直前に存在していたシステム状態である。最終システ
ム状態は単に最後のチェックポイント−システム状態で
あるに過ぎないことが多かった。
従来の修復システムはフォールト会トレラントにするた
めモジュール式冗長性を採用していた。
めモジュール式冗長性を採用していた。
二つ以上のプロセラ丈が並列に動作し、同じコードを実
行する。定期的チェックポイントで、並列的な結果を比
較する。結果が相違していることがわかれば、裁定機構
により並列結果のどちらかを選択する。モジュール式冗
長性は極めて高価なものについた。ハードウェアを二重
にすることは余りにも高価だったのである。
行する。定期的チェックポイントで、並列的な結果を比
較する。結果が相違していることがわかれば、裁定機構
により並列結果のどちらかを選択する。モジュール式冗
長性は極めて高価なものについた。ハードウェアを二重
にすることは余りにも高価だったのである。
先行技術においては、ある修復機構は、最終システム状
態を誤り前システム状態にすることができるようにして
いた。チェックポイントが非再現入出力動作を行うべき
各点の前に挿入された。各チェックポイントにおいて、
ユーザはチェックポイント・システム状態を回復するた
めに充分〜な情報を記録するコードを挿入しなければな
らなかった。
態を誤り前システム状態にすることができるようにして
いた。チェックポイントが非再現入出力動作を行うべき
各点の前に挿入された。各チェックポイントにおいて、
ユーザはチェックポイント・システム状態を回復するた
めに充分〜な情報を記録するコードを挿入しなければな
らなかった。
この機構にはいくつかの短所があった。この機構はユー
ザにとってトランスペアレントではな(。
ザにとってトランスペアレントではな(。
エラーを確実に修正するのは部分的にはユーザの責任に
なつくいた。この機構ではユーザは各チェックポイント
でどの情報を記録しなげればならないかを選択する必要
があった。したがってトランスペアレントになっている
機構に比べて人間り)エラーが入り勝ちであった。選択
するt#報が不充分であれば正しい回復は望めなくなり
、反面、あまりにも多くの情報を選択すればシステムの
性能が低下するつ 他の短所はチェックポイントの間隔、すなわち二つの隣
合うチェックポイントの間の間隔がプログラムに無関係
ではなくプログラムで決まることである。各再現性入出
力動作前にチェックポイントメ嘴報を記録するには過大
なオーバーヘッドがかかる。この過大なオーバーヘッド
のためシステムの性能は甚だしく低Fした。チェックポ
イント間隔は非再現性入出力動作の間隔より長くはでき
なかった。チェックポイント間隔を長くしてオーバーヘ
ッドを「薄める」ことによりシステム性能を向上させる
ことはできなかった。平均修復時間はチェックボ、イ/
ト間隔に関係するので、チェックポイント間隔を自由に
設定できないことから。
なつくいた。この機構ではユーザは各チェックポイント
でどの情報を記録しなげればならないかを選択する必要
があった。したがってトランスペアレントになっている
機構に比べて人間り)エラーが入り勝ちであった。選択
するt#報が不充分であれば正しい回復は望めなくなり
、反面、あまりにも多くの情報を選択すればシステムの
性能が低下するつ 他の短所はチェックポイントの間隔、すなわち二つの隣
合うチェックポイントの間の間隔がプログラムに無関係
ではなくプログラムで決まることである。各再現性入出
力動作前にチェックポイントメ嘴報を記録するには過大
なオーバーヘッドがかかる。この過大なオーバーヘッド
のためシステムの性能は甚だしく低Fした。チェックポ
イント間隔は非再現性入出力動作の間隔より長くはでき
なかった。チェックポイント間隔を長くしてオーバーヘ
ッドを「薄める」ことによりシステム性能を向上させる
ことはできなかった。平均修復時間はチェックボ、イ/
ト間隔に関係するので、チェックポイント間隔を自由に
設定できないことから。
システム性能と平均修復時間との間で妥協をはかること
はできなかった。
はできなかった。
本今明はアプリケーションからはトランスペアレントで
また多様な環境下で正確な誤り回復な可能とすることを
目的とする。
また多様な環境下で正確な誤り回復な可能とすることを
目的とする。
本発明の好ましい実施例によれば、機械命令の本来の実
行中に発生する、計算システム内の誤りを回復すること
ができる装置が提供される。計算システムは最後のチェ
ックポイント−システム状態にリセットされ、機械命令
の実行が再開される7本発明は計算システムを指定され
た誤り前システム状態と同一の最終システム状態まで回
復する。
行中に発生する、計算システム内の誤りを回復すること
ができる装置が提供される。計算システムは最後のチェ
ックポイント−システム状態にリセットされ、機械命令
の実行が再開される7本発明は計算システムを指定され
た誤り前システム状態と同一の最終システム状態まで回
復する。
機械命令の再実行が開始されると、計算システムは、計
算システムが機械命令を最初実行する間に行ったと同じ
入力に対し同じ命令点で動作するっ命令点とは各機械命
令の実行あるいは再実行が終了した点のことである。命
令点は実行された機械命令の数により決まる(つまり「
ステップ」で数えられる)ものであって、時間の経過に
よって決まるものではない。
算システムが機械命令を最初実行する間に行ったと同じ
入力に対し同じ命令点で動作するっ命令点とは各機械命
令の実行あるいは再実行が終了した点のことである。命
令点は実行された機械命令の数により決まる(つまり「
ステップ」で数えられる)ものであって、時間の経過に
よって決まるものではない。
本発明では1機械命令の再実行中、機械命令の最初の実
行中に処理された各決定イベントを繰返す。決定イベン
トとはその処理が最終システム状態の決定に影響する非
同期の割込のことである。
行中に処理された各決定イベントを繰返す。決定イベン
トとはその処理が最終システム状態の決定に影響する非
同期の割込のことである。
たとえば、決定イベントは典型的には入力イベント、メ
ツセージの受取り、実時間クロックの読み取り、プロセ
スの生成、またはプロセスのスワツピングである。各決
定イベントは、機械命令の最初の実行時に決定イベント
が始めに処理された命令点と同じ機械命令の再実行時の
命令点で繰返される。決定イベントを繰返すには、決定
イベントを再発生させこれを処理するか、あるいは決定
イベントの再発生および処理をシミュンートするかのい
ずれかによろう 本発明では、機械命令の再実行中には非決定イベントを
必ずしも繰返すことはしないっ非決定イベントとはその
処理が最終システム状態の決定に対してトランスペアレ
ントな非同期割込のことである。たとえば、非決定イベ
ントはキャッシュ・7オルトやページh7オルトである
。非決定イベントは機械命令の再実行中に繰返えされて
もよいが、非決定イベントは計算システムを誤り前シス
テム状態まで回復するのには必らずしも繰返される必要
はない。
ツセージの受取り、実時間クロックの読み取り、プロセ
スの生成、またはプロセスのスワツピングである。各決
定イベントは、機械命令の最初の実行時に決定イベント
が始めに処理された命令点と同じ機械命令の再実行時の
命令点で繰返される。決定イベントを繰返すには、決定
イベントを再発生させこれを処理するか、あるいは決定
イベントの再発生および処理をシミュンートするかのい
ずれかによろう 本発明では、機械命令の再実行中には非決定イベントを
必ずしも繰返すことはしないっ非決定イベントとはその
処理が最終システム状態の決定に対してトランスペアレ
ントな非同期割込のことである。たとえば、非決定イベ
ントはキャッシュ・7オルトやページh7オルトである
。非決定イベントは機械命令の再実行中に繰返えされて
もよいが、非決定イベントは計算システムを誤り前シス
テム状態まで回復するのには必らずしも繰返される必要
はない。
本発明は実行されたあるいは再実行された機械命令を数
え、機械命令の最初の実行時に決定イベントが処理した
命令点と同じ命令点で決定イベントを繰返す。決定イベ
ントの処理中あるいは操ぺし中に実行した機械命令と、
非決定イベントの処理中に実行した機械命令については
通常は数えない。
え、機械命令の最初の実行時に決定イベントが処理した
命令点と同じ命令点で決定イベントを繰返す。決定イベ
ントの処理中あるいは操ぺし中に実行した機械命令と、
非決定イベントの処理中に実行した機械命令については
通常は数えない。
本発明は決定イベントが繰返される時刻の一記録をとっ
ておくことだけにより誤り修復をしようとする計算シス
テムより優れている。機械命令の最初の実行を完了する
までの時間は、同じ機械命令の再実行よりも長くなった
りあるいは短かくなったりする゛かもしれない。たとえ
ば、その実行時間がディスクの最初のヘッド位置に関係
して決まる入出力動作では、再実行時のアクセス時間は
違って来る。
ておくことだけにより誤り修復をしようとする計算シス
テムより優れている。機械命令の最初の実行を完了する
までの時間は、同じ機械命令の再実行よりも長くなった
りあるいは短かくなったりする゛かもしれない。たとえ
ば、その実行時間がディスクの最初のヘッド位置に関係
して決まる入出力動作では、再実行時のアクセス時間は
違って来る。
計算システムが、決定イベントの発生時刻の記録をとっ
てお(だけの場合には、この決定イベントは機械命令の
再実行時においては、決定イベントが最初に処理された
命令点と同じ命令点で繰返されないかもしれない。機械
命令の再実行により得られる最終システム状態は機械命
令の最初0実行によって得られた誤り前システム状態と
は異なることになる。本発明は誤り前クステム状態を確
実に再現できるようにするものである。本発明は機械命
令の再実行時には常に1機械命令の実行時に決定イベン
トが最初に処理された命令点と同じ命令点で決定イベン
トを繰返す。
てお(だけの場合には、この決定イベントは機械命令の
再実行時においては、決定イベントが最初に処理された
命令点と同じ命令点で繰返されないかもしれない。機械
命令の再実行により得られる最終システム状態は機械命
令の最初0実行によって得られた誤り前システム状態と
は異なることになる。本発明は誤り前クステム状態を確
実に再現できるようにするものである。本発明は機械命
令の再実行時には常に1機械命令の実行時に決定イベン
トが最初に処理された命令点と同じ命令点で決定イベン
トを繰返す。
本発明ではチェックポイント間隔をユーザのアプリケー
ション・プログラムと無関係にすることができる。チェ
ックポイント間隔はプログラム可能であシ、これによシ
システム性能と平均回復時間との間で妥協をはかること
ができる。本発明はユーザのアプリケ−7ヨンに対して
トランスペアレントであり、したがってプログラマが不
注意で誤りをおかす危険が少くなる。
ション・プログラムと無関係にすることができる。チェ
ックポイント間隔はプログラム可能であシ、これによシ
システム性能と平均回復時間との間で妥協をはかること
ができる。本発明はユーザのアプリケ−7ヨンに対して
トランスペアレントであり、したがってプログラマが不
注意で誤りをおかす危険が少くなる。
本発明は誤りの検出とは直接関係していない。
人間の介在を必要とする副作用が広がる前に誤りが検出
されるかぎり、誤りはなお修復することができる。従っ
て、誤りを直ちに検出するハードウェアを5誤りを迅速
に検出するハードウェアとソフトウェアとで置きかえる
ことができるので、・・−ドウエアは少くて済む。
されるかぎり、誤りはなお修復することができる。従っ
て、誤りを直ちに検出するハードウェアを5誤りを迅速
に検出するハードウェアとソフトウェアとで置きかえる
ことができるので、・・−ドウエアは少くて済む。
好ましい実施例は最初に実行される機械命令およびエラ
ーが起った場合に再実行される機械命令を数える修復カ
ウンタな使用する。第1図中には修復カウンタ100が
示されており、これは制御しIジスタである。計算シス
テム101はプロセス−コントロール−ブロック103
とローカル−データ105との他に、ディスク109上
にファイル・データ107を備えている。修復カウンタ
100内に記憶しである修復カクンタ値102は、プロ
セッサ104が機械命令を1同案行するごとにlだけ減
らされる。
ーが起った場合に再実行される機械命令を数える修復カ
ウンタな使用する。第1図中には修復カウンタ100が
示されており、これは制御しIジスタである。計算シス
テム101はプロセス−コントロール−ブロック103
とローカル−データ105との他に、ディスク109上
にファイル・データ107を備えている。修復カウンタ
100内に記憶しである修復カクンタ値102は、プロ
セッサ104が機械命令を1同案行するごとにlだけ減
らされる。
P S W (Processor 5tatus W
ord ) 108の中のイネーブル/ディスエーブル
・ビットは修復カクンタ100がカウントを行えるよう
にしあるいは行えないようにするのに使用することがで
きる。修復カウンタ100はバス110を介して読み出
したり書き込んだりすることができる。
ord ) 108の中のイネーブル/ディスエーブル
・ビットは修復カクンタ100がカウントを行えるよう
にしあるいは行えないようにするのに使用することがで
きる。修復カウンタ100はバス110を介して読み出
したり書き込んだりすることができる。
修復力ワンタ@ 102がカウントeダウンされて0を
またぐと、その最上位ビット112がトラップを生ずる
。トラップとは、プログラム制御をトラップを処理する
ソフトウェアであるトラップ・・・ンドラ114に渡す
内部割込みのことである。イベント・ハンドラ122と
イベント・レコーダ123はソフトウェアに入っている
。チェンクポイントーシステム状態レコーダ126、誤
りフィクサ124、チェックポイント・システム状態リ
セッタ118、およびイベント−ノミュレータ120も
ソフトウェアに入っている。情報はディスク116に書
き込むことができる。
またぐと、その最上位ビット112がトラップを生ずる
。トラップとは、プログラム制御をトラップを処理する
ソフトウェアであるトラップ・・・ンドラ114に渡す
内部割込みのことである。イベント・ハンドラ122と
イベント・レコーダ123はソフトウェアに入っている
。チェンクポイントーシステム状態レコーダ126、誤
りフィクサ124、チェックポイント・システム状態リ
セッタ118、およびイベント−ノミュレータ120も
ソフトウェアに入っている。情報はディスク116に書
き込むことができる。
第2図は非同期イベントを分類する階層構造を明らかに
している。非決定イベント200は決定イベント202
、まtこは非決定イベント204として定義される。前
に説明したとうり、決定イベントはその処理が最終シス
テム状態に影響する非同期割込みであり、非決定イベン
トはその処理が最終システム状態の決定には影響しない
非同期割込みである。
している。非決定イベント200は決定イベント202
、まtこは非決定イベント204として定義される。前
に説明したとうり、決定イベントはその処理が最終シス
テム状態に影響する非同期割込みであり、非決定イベン
トはその処理が最終システム状態の決定には影響しない
非同期割込みである。
決定イベント2(+2は再現イベント206か非再現イ
ベント208かのいずれかとして定$iされる。再現イ
ベントは機械命令の再実行の結果発生する決定イベント
である。たとえば、ディスク読み出しする。非再現イベ
ントとは機械命令の再実行では発生しない決定イベント
である。たとえば、−人間のキーボード入力による入力
イベントは、機械命令のRk?)Jの実行中に発生して
も、その機械命令の再実行の結果再度発生することはな
い。
ベント208かのいずれかとして定$iされる。再現イ
ベントは機械命令の再実行の結果発生する決定イベント
である。たとえば、ディスク読み出しする。非再現イベ
ントとは機械命令の再実行では発生しない決定イベント
である。たとえば、−人間のキーボード入力による入力
イベントは、機械命令のRk?)Jの実行中に発生して
も、その機械命令の再実行の結果再度発生することはな
い。
機械命令の再実行時、再現イベント206は早再現イベ
ント21Oかあるいは遅再現イベント212かのいずれ
かに分類される。早再現イベントは機械命令の再実行時
、命令点IP’より前の命令点で発生する。ただし、エ
ビは命令点IPと同じであり、早再現イベントは最初は
機械命令の実行時IPで処理されたものである。遅再現
イベントは機械命令の再実行時、命令点If”以降の命
令点で発生する。ただし、エビは命令点IPと同じであ
り、遅再現イベントは最初機械命令の実行時IPで処理
されたものである。
ント21Oかあるいは遅再現イベント212かのいずれ
かに分類される。早再現イベントは機械命令の再実行時
、命令点IP’より前の命令点で発生する。ただし、エ
ビは命令点IPと同じであり、早再現イベントは最初は
機械命令の実行時IPで処理されたものである。遅再現
イベントは機械命令の再実行時、命令点If”以降の命
令点で発生する。ただし、エビは命令点IPと同じであ
り、遅再現イベントは最初機械命令の実行時IPで処理
されたものである。
第3図は誤りが発生した命令点をつきとめることができ
る構成における好ましい実施例を示す。
る構成における好ましい実施例を示す。
典型的な実行シーケンス300および典型的な再実行シ
ーケンス302で実行される一連の機械命令を示しであ
る。実行シーケンスとは誤り発生前に実行される一連の
機械命令である。再実行シーケンスとは誤り検出後に実
行される、指定された実行シーケンスに対応する一連の
機械命令である。再実行シーケンスは最初に実行した機
械命令と本質的に同一の、実行済み機械命令を含んでい
る。機械命令は機械命令を最初に実行した指定の順序と
同じ順序で再実行される。
ーケンス302で実行される一連の機械命令を示しであ
る。実行シーケンスとは誤り発生前に実行される一連の
機械命令である。再実行シーケンスとは誤り検出後に実
行される、指定された実行シーケンスに対応する一連の
機械命令である。再実行シーケンスは最初に実行した機
械命令と本質的に同一の、実行済み機械命令を含んでい
る。機械命令は機械命令を最初に実行した指定の順序と
同じ順序で再実行される。
命令点304はチェックポイントである。命令点304
1C,チェックポイントークステム状態305が存在す
る。一連の機械命令306はチェックポイント−システ
ム状態レコーダ126が走ることによって実行される。
1C,チェックポイントークステム状態305が存在す
る。一連の機械命令306はチェックポイント−システ
ム状態レコーダ126が走ることによって実行される。
チェックポイント・システム状態レコーダ126は計算
システム101をチェックポイント・システム状態30
5まで完全に回復することができるのに充分な情報なデ
・イスク116に記録する。一連の機械命令306を実
行したところで、計算システム101はまたチェツクボ
イノト番システム状態305に置かれている。
システム101をチェックポイント・システム状態30
5まで完全に回復することができるのに充分な情報なデ
・イスク116に記録する。一連の機械命令306を実
行したところで、計算システム101はまたチェツクボ
イノト番システム状態305に置かれている。
実行う−ケノス300には一連の機械命令308゜30
9、310.311,312、および313が含まれて
いる。先に実行した一連の機械命令308.309.3
10.311.312、および313は再実行シーケン
ス302で再実行される。
9、310.311,312、および313が含まれて
いる。先に実行した一連の機械命令308.309.3
10.311.312、および313は再実行シーケン
ス302で再実行される。
一連の機械命令314.315、および316は命令点
320で発生する再現イベント318を処理するために
実行される。イベント・ハンドラ122を走行させるこ
とにより一連の機械詰合314と316が実行される。
320で発生する再現イベント318を処理するために
実行される。イベント・ハンドラ122を走行させるこ
とにより一連の機械詰合314と316が実行される。
またイベント・レコーダ123を走行させることにより
、一連の機械命令315が実行される。イベント拳しコ
ーダ123ヲ走行させることによシ、決定イベント情報
を記録する。決定イベント情報とは、ある決定イベント
の発生を他の決定イベントの発生から区別するのに必要
な情報である。決定イベント情報には、最後のチェック
ポイント以降実行された機械命令で、非決定イベントの
処理のため実行した機械命令以外σ)ものを数えた結果
が人っている。
、一連の機械命令315が実行される。イベント拳しコ
ーダ123ヲ走行させることによシ、決定イベント情報
を記録する。決定イベント情報とは、ある決定イベント
の発生を他の決定イベントの発生から区別するのに必要
な情報である。決定イベント情報には、最後のチェック
ポイント以降実行された機械命令で、非決定イベントの
処理のため実行した機械命令以外σ)ものを数えた結果
が人っている。
一連の機械命令323は、命令点328で発生する非決
足イベント326を処理するために実行される。
足イベント326を処理するために実行される。
イベント参ノ・ンドラ122が走行することにより。
一連の機械命令323が実行される。
一連の機械命令330,331.332および333は
命令点336で発生する非再現イベ71−334を処理
するために実行される。イベント番/・ンドラ122が
走行することにより、一連の機械命令330と333が
実行される。またイベント・レコーダ123が走行する
ことにより、一連の機械命令331と332が実行され
る。一連の機械命令331の実行により決定イベント情
報が記録され、一連の機械命令332の実行により、非
再現入力が記録される。非再現入力とは非再現イベント
の処理の一部として受取られる入力である。
命令点336で発生する非再現イベ71−334を処理
するために実行される。イベント番/・ンドラ122が
走行することにより、一連の機械命令330と333が
実行される。またイベント・レコーダ123が走行する
ことにより、一連の機械命令331と332が実行され
る。一連の機械命令331の実行により決定イベント情
報が記録され、一連の機械命令332の実行により、非
再現入力が記録される。非再現入力とは非再現イベント
の処理の一部として受取られる入力である。
一連の機械命令338.339、および340は命令点
344で発生する再現イベント342を処理するために
実行される。イベント番・・ンドラ122が走行するこ
とで、一連の機械命令338と340が実行され、イベ
ント・レコーダ123が走行することにより、一連の機
械命令339が実行される。イベント・レコーダ123
を走行させることにより、決定イベント情報を記録する
。
344で発生する再現イベント342を処理するために
実行される。イベント番・・ンドラ122が走行するこ
とで、一連の機械命令338と340が実行され、イベ
ント・レコーダ123が走行することにより、一連の機
械命令339が実行される。イベント・レコーダ123
を走行させることにより、決定イベント情報を記録する
。
誤り発生347は命令点346で起るとしているので、
誤り前ンステム状態345は命令点346の状態である
。この誤りの検出は命令点348で起る。一連の機械命
令350は命令点346と命令点348との間で実行さ
れる。誤り発生347により一連の機械命令350゛の
実行が無効となる。
誤り前ンステム状態345は命令点346の状態である
。この誤りの検出は命令点348で起る。一連の機械命
令350は命令点346と命令点348との間で実行さ
れる。誤り発生347により一連の機械命令350゛の
実行が無効となる。
誤り検出349に続き、計算システム101は概念的に
修復モードに入り、一連の機械命令352が誤りフイク
サ124を走行させることにより実行される。一連の機
械命令352を実行するのは発生した誤り347と同一
または類似の誤りが差し迫って発生しないようにするも
のである。たとえば、誤り発生347が過渡的でなく、
物理的メモリの部分的な故障による場合には、計算シス
テム101の新しい物理的構成を反映するように仮想メ
モリ管理用制御データが更新される。
修復モードに入り、一連の機械命令352が誤りフイク
サ124を走行させることにより実行される。一連の機
械命令352を実行するのは発生した誤り347と同一
または類似の誤りが差し迫って発生しないようにするも
のである。たとえば、誤り発生347が過渡的でなく、
物理的メモリの部分的な故障による場合には、計算シス
テム101の新しい物理的構成を反映するように仮想メ
モリ管理用制御データが更新される。
誤りフイクサ124も再実行シーケンス302の間に、
ある出力が望まれないのに繰返されることがないように
あるステップを踏む。たとえば、誤りフイクt124は
プリンタ用および端末装置用の出力ポートのようなある
出力ポートを一時的にディスエーブルする。誤りフイク
サ124は再実行シーケンス302が計算システム10
1の新しい物理的構成に影響されないようにするステッ
プを踏む。たとえば、ある装置までの新しい物理的径路
が長くなると、装置までのソフト9エア上の径路が長く
なり、装置への各アクセスに対して二つの余分な機械命
令を実行しなければならなくなる。誤りフイクテ124
は、実行7−ケンス300の間に装置がアクセスされた
か否かおよびその時期をigするため、あらかじめ記録
しておいたデータを使用する。誤りフイクサ124は実
行された機械命令のあらかじめ記録しておいたカウント
を修正することにより、その装置へ各アクセスに対する
再実行シーケンス302において実行しなければならな
い二つの余分な機械命令を反映させる。
ある出力が望まれないのに繰返されることがないように
あるステップを踏む。たとえば、誤りフイクt124は
プリンタ用および端末装置用の出力ポートのようなある
出力ポートを一時的にディスエーブルする。誤りフイク
サ124は再実行シーケンス302が計算システム10
1の新しい物理的構成に影響されないようにするステッ
プを踏む。たとえば、ある装置までの新しい物理的径路
が長くなると、装置までのソフト9エア上の径路が長く
なり、装置への各アクセスに対して二つの余分な機械命
令を実行しなければならなくなる。誤りフイクテ124
は、実行7−ケンス300の間に装置がアクセスされた
か否かおよびその時期をigするため、あらかじめ記録
しておいたデータを使用する。誤りフイクサ124は実
行された機械命令のあらかじめ記録しておいたカウント
を修正することにより、その装置へ各アクセスに対する
再実行シーケンス302において実行しなければならな
い二つの余分な機械命令を反映させる。
誤りフイクサ124が計算システム101の内部の損擾
を修理することができない場合には、誤りフイクサ12
4は人間の介在を要求する。人間の介在により計算シス
テム101を停止させなければならなくなった場合でも
、一旦故障が1膠埋されれば完全な誤り回復を可能とす
るに充分な情報が既にディスク116に記録されている
。計算システム101を修理できない場合には、並列計
算システムで完全な誤り回復を可能とするに充分な情報
が既にディスク116に記録されている。
を修理することができない場合には、誤りフイクサ12
4は人間の介在を要求する。人間の介在により計算シス
テム101を停止させなければならなくなった場合でも
、一旦故障が1膠埋されれば完全な誤り回復を可能とす
るに充分な情報が既にディスク116に記録されている
。計算システム101を修理できない場合には、並列計
算システムで完全な誤り回復を可能とするに充分な情報
が既にディスク116に記録されている。
チェックポイント・システム状態リセツタ118が走行
することにより、一連の機械命令354が実行される。
することにより、一連の機械命令354が実行される。
実行シーケンス3000間に、ファイル・データは、フ
ァイル・データになされる変更を後から元に戻すことが
できるような態様で修正される。あらかじめ記録してお
いたログを使用することにより、チェックポイント・シ
ステム状態リセツタ118はファイル・データ107、
プロセス・テム101をチェックポイント・システム状
L1305まで戻す。
ァイル・データになされる変更を後から元に戻すことが
できるような態様で修正される。あらかじめ記録してお
いたログを使用することにより、チェックポイント・シ
ステム状態リセツタ118はファイル・データ107、
プロセス・テム101をチェックポイント・システム状
L1305まで戻す。
トラップ356は最上位ピット112により命令点35
7で発生する。再実行う−ケンス302における命令点
357は実行7−ケンス300における命令点320と
同一である。再現イベント318は命令点357で再び
取扱われるべきである。再現イベント318はこの例で
は遅再現イベントであり、命令点360になるまで発生
しない。プロセッサ104は再現イベント318を待つ
。トラップ滲ハ/ドラ114を走行させることにより、
初期トラップ処理を行う一連の機械命令358を実行す
る。プロセンt101はアイドル・サイクルでループし
て、一連の機械命令359を実行し、再現イベント31
8が再び起るのを待つ。
7で発生する。再実行う−ケンス302における命令点
357は実行7−ケンス300における命令点320と
同一である。再現イベント318は命令点357で再び
取扱われるべきである。再現イベント318はこの例で
は遅再現イベントであり、命令点360になるまで発生
しない。プロセッサ104は再現イベント318を待つ
。トラップ滲ハ/ドラ114を走行させることにより、
初期トラップ処理を行う一連の機械命令358を実行す
る。プロセンt101はアイドル・サイクルでループし
て、一連の機械命令359を実行し、再現イベント31
8が再び起るのを待つ。
再現イベント318が命令点360で再び起ると。
一連の機械命令363と364が再現イベント318を
再処理するために実行される。イベント・ハンドラ12
2を走行させて一連の機械命令363を実行し、トラッ
プ・ハンドラ114を走行させて一連の機械命令364
を実行する。
再処理するために実行される。イベント・ハンドラ12
2を走行させて一連の機械命令363を実行し、トラッ
プ・ハンドラ114を走行させて一連の機械命令364
を実行する。
トラップは非決定イベント326に関しては再実行7−
ケンス302においては発生せず、非決定イベント32
6も再実行シーケンス302においては発生しない。
ケンス302においては発生せず、非決定イベント32
6も再実行シーケンス302においては発生しない。
最上位ピント1120反転により、命令点367でトラ
ップが発生する。再実行シーケンス302における命令
点367は実行シーケンス300における命令点336
と同じである。非再現イベント334は再実行シーケン
ス302においては機械命令が再実行されるからと言っ
て再度起ることはない。非再現イベント334はシミュ
レートされる。一連の機械命令368.369、および
370は非再現イベント334をシミュレートするため
に実行される。トラップ・ハンドラ114を走行させる
ことにより、一連の機械命令368と370を実行する
。またイベント・シミュレータ120を走行させること
により、一連の機械命令369を実行する。イベント・
シミュレータ120は、先に記録しておいた非再現入力
を使用して、非再現イベント334の再現と処理をシミ
ュレートするっ 再実行シーケンス302の命令点373は実行シーケン
ス300における命令点344と同一である。再現イベ
ント342は命令点373で再び処理されるべきである
。この例では再現イベント342は早再現イベントであ
る。再現イベント342は命令点372で再び起るがこ
れは命令点373よりも前である。
ップが発生する。再実行シーケンス302における命令
点367は実行シーケンス300における命令点336
と同じである。非再現イベント334は再実行シーケン
ス302においては機械命令が再実行されるからと言っ
て再度起ることはない。非再現イベント334はシミュ
レートされる。一連の機械命令368.369、および
370は非再現イベント334をシミュレートするため
に実行される。トラップ・ハンドラ114を走行させる
ことにより、一連の機械命令368と370を実行する
。またイベント・シミュレータ120を走行させること
により、一連の機械命令369を実行する。イベント・
シミュレータ120は、先に記録しておいた非再現入力
を使用して、非再現イベント334の再現と処理をシミ
ュレートするっ 再実行シーケンス302の命令点373は実行シーケン
ス300における命令点344と同一である。再現イベ
ント342は命令点373で再び処理されるべきである
。この例では再現イベント342は早再現イベントであ
る。再現イベント342は命令点372で再び起るがこ
れは命令点373よりも前である。
一連の機械命令371.374、および379は再現イ
ベント342が再発生した時点で実行される。イベント
−ハンドラ122を走行させることにより、一連の機械
命令371と379を実行する。またイベント・レコー
ダ123を走行させることにより、一連の機械命令37
4を実行する。イベント・ハンドラ122は命令点37
2では再現イベ7 ) 342を直ちには再処理しない
、イベント・ハンドラ122はイベント−レコーダ12
3を呼び、再現イベント342の再現を記録し識別する
が、再現イベント342は命令点373に来るまでは再
処理されない。再現イベント342に命令点372時点
で直ちに手当をする必要がある場合には、イベント・ハ
ンドラ122は再現イベント342を命令点372で処
理する。しかし命令点373 K来るまでは「報告Jは
行われない。
ベント342が再発生した時点で実行される。イベント
−ハンドラ122を走行させることにより、一連の機械
命令371と379を実行する。またイベント・レコー
ダ123を走行させることにより、一連の機械命令37
4を実行する。イベント・ハンドラ122は命令点37
2では再現イベ7 ) 342を直ちには再処理しない
、イベント・ハンドラ122はイベント−レコーダ12
3を呼び、再現イベント342の再現を記録し識別する
が、再現イベント342は命令点373に来るまでは再
処理されない。再現イベント342に命令点372時点
で直ちに手当をする必要がある場合には、イベント・ハ
ンドラ122は再現イベント342を命令点372で処
理する。しかし命令点373 K来るまでは「報告Jは
行われない。
よって、ユーザ・プログラムから見ると、再現イベント
342は命令点373までは再処理されない。
342は命令点373までは再処理されない。
命令点373に来る前に、一連の(!l!械命令312
が再実行される。最上位ビット1120反転によりトラ
ップ375が命令点373で発生する。再現イベント3
42は、命令点373から始まって再処理される。
が再実行される。最上位ビット1120反転によりトラ
ップ375が命令点373で発生する。再現イベント3
42は、命令点373から始まって再処理される。
一連の機械命令376.377、および378は再現イ
ベント342を再び処理するために実行される。トラッ
プ・ハンドラ114を走行させることにより一連の機械
命令376と378を実行する。またイベント・ハンド
ラ122を走行させることにより、一連の機械命令37
7を実行する。
ベント342を再び処理するために実行される。トラッ
プ・ハンドラ114を走行させることにより一連の機械
命令376と378を実行する。またイベント・ハンド
ラ122を走行させることにより、一連の機械命令37
7を実行する。
最上位ビット1120反転によシ、トラップ382が命
令点380で発生する。命令点380は命令点346と
同一であシ、また誤り発生347は命令点346で起っ
たのである。トラップ・ハンドラ114を走行させるこ
とにより一連の機械命令383を実行する。
令点380で発生する。命令点380は命令点346と
同一であシ、また誤り発生347は命令点346で起っ
たのである。トラップ・ハンドラ114を走行させるこ
とにより一連の機械命令383を実行する。
トラップ・ノ・/ドラ114は修復カウンタの数置を命
令点346時点における直にリセットする。トラップ・
ハンドラ114は計算システム101を修復モードから
抜は出させる。
令点346時点における直にリセットする。トラップ・
ハンドラ114は計算システム101を修復モードから
抜は出させる。
命令点384で最終システム状態になるが、これは誤り
前システム状態345と同一である。命令点384より
後では、一連の機械命令386が実行され正常実行を継
続する。
前システム状態345と同一である。命令点384より
後では、一連の機械命令386が実行され正常実行を継
続する。
第4図は誤り発生からの回復な単偏する際好ましい実施
例が行うステップを示す。チェックポイント・システム
状態を完全に回復するのに充分なデータが、ステップ4
00でチェックポイント−システム状態レコーダ126
を走行させることによりディスク116に定期的に記録
される。修復カウンタ直102はステップ402でバス
110を介して、指定された初期直にリセットされる。
例が行うステップを示す。チェックポイント・システム
状態を完全に回復するのに充分なデータが、ステップ4
00でチェックポイント−システム状態レコーダ126
を走行させることによりディスク116に定期的に記録
される。修復カウンタ直102はステップ402でバス
110を介して、指定された初期直にリセットされる。
機械命令はプロセッサ104により実行され、修復カウ
ンタ直102は機械命令が実行されるごとにステップ4
04でデクリメントされる。
ンタ直102は機械命令が実行されるごとにステップ4
04でデクリメントされる。
ステップ406で誤り発生が検出されれば、ステップ4
08で誤り修復が実行される。誤り修復についてはFで
説明されまた第5人図および第5B図に一層詳細に示し
である。その後ステップ404に戻り、機械命令の実行
が継続する。
08で誤り修復が実行される。誤り修復についてはFで
説明されまた第5人図および第5B図に一層詳細に示し
である。その後ステップ404に戻り、機械命令の実行
が継続する。
ステップ410で非同期イベントが発生しない場合には
、ステップ436が実行される。ステン、ブ436でチ
ェックポイントを取るべきことが晦められれば、プロセ
ラf104はステップ400に戻る。チェックポイント
・システム状態を完全に回復するに充分なデータがディ
スク116に記録される。ステップ436゛でチェック
ポイントに到達していないことが確認されれば、プロセ
ッサ104はステップ404に戻る。他の機械命令が1
つ実行され、修復カウンタ値102がデクリメントされ
る。
、ステップ436が実行される。ステン、ブ436でチ
ェックポイントを取るべきことが晦められれば、プロセ
ラf104はステップ400に戻る。チェックポイント
・システム状態を完全に回復するに充分なデータがディ
スク116に記録される。ステップ436゛でチェック
ポイントに到達していないことが確認されれば、プロセ
ッサ104はステップ404に戻る。他の機械命令が1
つ実行され、修復カウンタ値102がデクリメントされ
る。
ステップ410で非同期イベントが発生すれば、修復カ
ウンタ100は一時的にディスエーブルされる。修復カ
ウンタ100は、ステップ412でイネーブル/ディス
エーブルΦビット106をリセットすることによりハー
ドウェアで自動的にディスエーブルされる。
ウンタ100は一時的にディスエーブルされる。修復カ
ウンタ100は、ステップ412でイネーブル/ディス
エーブルΦビット106をリセットすることによりハー
ドウェアで自動的にディスエーブルされる。
ステップ414で決定イベントが発生したことが1lI
PIIlされれば、ステップ418で修復力クンタ1i
ii 102がバス110を介して読出され記録される
。イベント・ハンドラ122を走行させてステップ42
0で決定イベントを処理する。イベント・レコーダ12
3を走行させステップ422で決定イベント情報をディ
スク116に記録する。
PIIlされれば、ステップ418で修復力クンタ1i
ii 102がバス110を介して読出され記録される
。イベント・ハンドラ122を走行させてステップ42
0で決定イベントを処理する。イベント・レコーダ12
3を走行させステップ422で決定イベント情報をディ
スク116に記録する。
再現イベントが発生していることがステップ424でm
gされると、ステップ430でイネーブル/ディスエー
ブル−ビット106す操作することにより、修復カウン
タ100が再びイネーブルされる。割込み処理からの復
帰が実行されこれによりステップ430でイネーブル/
ディスエーブル・ビット106をリセットするとき、修
復力9ンタ100はノ1−ドウエアで自動的に再びイネ
ーブルされる。チェックポイントに到達したか否かはス
テップ436でチェックされる。
gされると、ステップ430でイネーブル/ディスエー
ブル−ビット106す操作することにより、修復カウン
タ100が再びイネーブルされる。割込み処理からの復
帰が実行されこれによりステップ430でイネーブル/
ディスエーブル・ビット106をリセットするとき、修
復力9ンタ100はノ1−ドウエアで自動的に再びイネ
ーブルされる。チェックポイントに到達したか否かはス
テップ436でチェックされる。
非再現イベントが発生していることがステップ424で
確認されれば、非再現イベントの処理中に受取った入力
である、非再現入力がステップ428でディスク116
に記録される。ステップ430でイネーブル/ディスエ
ーブル・ビット106の操作により修復カウンタ100
は再びイネーブルされる。
確認されれば、非再現イベントの処理中に受取った入力
である、非再現入力がステップ428でディスク116
に記録される。ステップ430でイネーブル/ディスエ
ーブル・ビット106の操作により修復カウンタ100
は再びイネーブルされる。
チェックポイントに到達しているか否かはステップ43
6でチェックされる。
6でチェックされる。
非決定イベントが発生していることがステップ414で
igされれば、ステップ434でイベント・ハンドラ1
22を走行させることによりこの非決定イベントを処理
する。ステップ430でイネーブル/ディスエーブル・
ビットを操作することにより修復カウンタ100は再び
イネーブルされる。チェックポイントに到達しているか
否かはステップ436でチェックされる。
igされれば、ステップ434でイベント・ハンドラ1
22を走行させることによりこの非決定イベントを処理
する。ステップ430でイネーブル/ディスエーブル・
ビットを操作することにより修復カウンタ100は再び
イネーブルされる。チェックポイントに到達しているか
否かはステップ436でチェックされる。
別の好ましい実施例では、非同期イベントが発生すると
、修復カウンタ100は、修復カウンタ直102および
この非同期イベントを識別するのに光分な情報が記録さ
れてから再びイネーブルされる。
、修復カウンタ100は、修復カウンタ直102および
この非同期イベントを識別するのに光分な情報が記録さ
れてから再びイネーブルされる。
非同期イベントを完全に処理する前に修復カウンタ10
0が再びイネーブルされると、優先度の高い第2の非同
期イベントがイネーブルされ優先度の低い第1の非同期
イベントの処理に割込みがかかる。
0が再びイネーブルされると、優先度の高い第2の非同
期イベントがイネーブルされ優先度の低い第1の非同期
イベントの処理に割込みがかかる。
第5A図および第5B図は誤りが検出されたとき計算シ
ステム1月が行なう回復ステップを示す。
ステム1月が行なう回復ステップを示す。
修復モードへはステップ500で入る。ステップ501
でイネーブル/ディスエーブル・ピント106を操る。
でイネーブル/ディスエーブル・ピント106を操る。
誤り検出時点の修復カウンタ呟102はバス110を介
して読出されステップ503で記録される。ステップ5
04で、ファイル・データ107が、チェックポイント
・システム状態リセンタ118を走行させることにより
、リセットされる。このとき、先にディスク116に記
録したイベント・ログを使用する。ステップ506で、
チェックポイント・システム状態リセツタ118を走行
させることにより、7ゝ1 プロセス争コントロール・メロツク103ドローカル・
データ105をリセットするっこれにより計算システム
101を最近のチェックポイント−システム状態までリ
ストアする。
して読出されステップ503で記録される。ステップ5
04で、ファイル・データ107が、チェックポイント
・システム状態リセンタ118を走行させることにより
、リセットされる。このとき、先にディスク116に記
録したイベント・ログを使用する。ステップ506で、
チェックポイント・システム状態リセツタ118を走行
させることにより、7ゝ1 プロセス争コントロール・メロツク103ドローカル・
データ105をリセットするっこれにより計算システム
101を最近のチェックポイント−システム状態までリ
ストアする。
修復カウンタ[102はステップ508でバス110を
介してリセットされる。修復カウンタIl[102は、
リストアされたことにより現在いる命令点から指定され
た決定イベントまたは誤りが発生した命令点と同一の命
令点に達するために実行しなけ、ればならない機械命令
の個数にリセットされる。この機械命令の個数はカウン
トダウン数と呼ばれる。
介してリセットされる。修復カウンタIl[102は、
リストアされたことにより現在いる命令点から指定され
た決定イベントまたは誤りが発生した命令点と同一の命
令点に達するために実行しなけ、ればならない機械命令
の個数にリセットされる。この機械命令の個数はカウン
トダウン数と呼ばれる。
カウントダウン数はあらかじめ記録しておいた修復カウ
ンタ1直から決められる。
ンタ1直から決められる。
ステップ509で、イネーブル/ディスエーブル・ビッ
ト106を操作することにより、修復カウンタ100が
再びイネーブルされる。機械命令はプロセッサ104で
再実行され、修復カウンタ直102は、各機械命令が再
実行される毎にステップ510でデクリメントされる。
ト106を操作することにより、修復カウンタ100が
再びイネーブルされる。機械命令はプロセッサ104で
再実行され、修復カウンタ直102は、各機械命令が再
実行される毎にステップ510でデクリメントされる。
最初に実行された機械命令と同一の機械命令が再実行さ
れる。機械命令はトラップまたは非同期イベントが発生
するまでステップ510で再実行される。
れる。機械命令はトラップまたは非同期イベントが発生
するまでステップ510で再実行される。
ステップ512でトラップまたは非同期イベントが発生
すると、ステップ514でイネーブル、/ディスエーブ
ルービット106を操作することにより、修復カウンタ
100は一時的にディスエーブルされる。修復カウンタ
植102がステップ516でチェックされる。修復カウ
ンタ匝102がOより下にカウントダウンしていなけれ
ば、非同期イベントが発生している。修復カウンタ直1
02がOより下にカウントダウンし一〇いれば、最上位
ビット112ICよりトラップが発生している。
すると、ステップ514でイネーブル、/ディスエーブ
ルービット106を操作することにより、修復カウンタ
100は一時的にディスエーブルされる。修復カウンタ
植102がステップ516でチェックされる。修復カウ
ンタ匝102がOより下にカウントダウンしていなけれ
ば、非同期イベントが発生している。修復カウンタ直1
02がOより下にカウントダウンし一〇いれば、最上位
ビット112ICよりトラップが発生している。
ステップ518で早再現イベントが発生していることが
確認されれば、イベント・Vニーダ123を走行させ、
ステップ520で早再現イベントの再発生を記録する。
確認されれば、イベント・Vニーダ123を走行させ、
ステップ520で早再現イベントの再発生を記録する。
イベント・レコーダ123は、早再現イベントが他の再
現イベントに対して順序が乱れて生じている場合に、こ
の早再現イベントの発生を識別する。イベント・−・ン
ドラ122は直ちにはこの早再現イベ/トを処理しない
。早再現イベントはステップ536で後に処理される。
現イベントに対して順序が乱れて生じている場合に、こ
の早再現イベントの発生を識別する。イベント・−・ン
ドラ122は直ちにはこの早再現イベ/トを処理しない
。早再現イベントはステップ536で後に処理される。
ステップ509に戻り、修復カウンタ100が再びイネ
ーブルされる。
ーブルされる。
非決定イベントが発生していることがステップ518で
ff1idされれば、イベント・ハンドラ122を走行
させることにより、ステップ526で非決定イベントを
処理する。修復カウンタ100はステップ509で再び
イネーブルされる。
ff1idされれば、イベント・ハンドラ122を走行
させることにより、ステップ526で非決定イベントを
処理する。修復カウンタ100はステップ509で再び
イネーブルされる。
ステップ528で非再現イベントの命令点(すなわち最
初の実行シーケンス300で非再現イベントが起った命
令点)に到達していることが確認されれば、トラップ・
ハンドラ114がイベント・シミュレータ120を呼び
出してステップ530で非再現イベントを7ミユレート
する。非再現イベントの最初の処理中に非再現入力を受
取っていた場合にハ、非再現入力はイベント・シミュレ
ータ120ニより筺用される。修復カウンタ値102は
ステップ508で次のカウントダウン数にリセットされ
る。
初の実行シーケンス300で非再現イベントが起った命
令点)に到達していることが確認されれば、トラップ・
ハンドラ114がイベント・シミュレータ120を呼び
出してステップ530で非再現イベントを7ミユレート
する。非再現イベントの最初の処理中に非再現入力を受
取っていた場合にハ、非再現入力はイベント・シミュレ
ータ120ニより筺用される。修復カウンタ値102は
ステップ508で次のカウントダウン数にリセットされ
る。
ステップ534で早再現イベントの命令点(すなわち最
初の実行シーケンス300で対応する再現イベントが起
った命令点)に到達していることが確認されれば、トラ
ップ・・・ンドラ114がイベント・ハンドラ122を
呼出してステップ536で早再現イベントを再処理する
。修復カウンタ直102はステップ508で次のカウン
トダウン数にリセットされる。
初の実行シーケンス300で対応する再現イベントが起
った命令点)に到達していることが確認されれば、トラ
ップ・・・ンドラ114がイベント・ハンドラ122を
呼出してステップ536で早再現イベントを再処理する
。修復カウンタ直102はステップ508で次のカウン
トダウン数にリセットされる。
遅再現イベントの命令点に到達していることが、ステッ
プ538で確認されれば、トラップ・ノーノドラ114
はステップ540でこの遅再現イベントが再発生するの
を待つ。これが発生すると、トラップ・ハンドラ114
はイベントーノ)ンドラ122を呼出してステップ54
2でこの遅再現イベントを再処理する。修復カウンタ値
102はステップ508で次のカウントダウン数にリセ
ットされる。
プ538で確認されれば、トラップ・ノーノドラ114
はステップ540でこの遅再現イベントが再発生するの
を待つ。これが発生すると、トラップ・ハンドラ114
はイベントーノ)ンドラ122を呼出してステップ54
2でこの遅再現イベントを再処理する。修復カウンタ値
102はステップ508で次のカウントダウン数にリセ
ットされる。
トラップは発生しているが、非再現イベント。
早再現イベント、あるいは遅再現イベントの命令点のい
ずれにも到達していない場合には、誤り発生の命令点に
到達している。ステップ544で、修復カウンタ@ 1
02を、先に記録しておいた誤り発生時点の[K、バス
110を介してリセットする。
ずれにも到達していない場合には、誤り発生の命令点に
到達している。ステップ544で、修復カウンタ@ 1
02を、先に記録しておいた誤り発生時点の[K、バス
110を介してリセットする。
ステップ545でイネーブル/ディスエーブル・ビット
106を操作することにより修復カウンタ100を再び
イネーブルする。
106を操作することにより修復カウンタ100を再び
イネーブルする。
別の好ましい実施例においては、誤り検出が適時に行わ
れれば、誤りが発生した命令点を計算システム101が
精密に知る必要はない。第6図は典一連の機械命令を示
している。
れれば、誤りが発生した命令点を計算システム101が
精密に知る必要はない。第6図は典一連の機械命令を示
している。
実行シーケンス602において、チェンクポイント・シ
ステム状態610は命令点612における状態であると
する。誤り発生614は命令点616で起るトスル。プ
ロセラf−104は命令点620でディスク読出し要求
618を開始する。ディスク続出し要求618と同時に
、ディスク読出し要求618を記録するためフラグがセ
ントされる。ディスク読出し要求618に応答する入力
イベントである再現イベント622が命令点624で発
生する。再現イベント626は命令点628で発生する
。誤り検出630は命令点632テ起る。計算システム
101からは誤り発生614の位置を精密につきとめる
ことはできず、命令点612と632との間のどこかで
発生しているというずディスク読出し要求618を開始
させた場合に何が起るかを示す典型的な例である。ディ
スク続出し要求618は、フラグ設定とともに、命令点
636で発生する。再実行シーケンス604の命令点6
36は実行シーケンス602の命令点620と同一であ
る。
ステム状態610は命令点612における状態であると
する。誤り発生614は命令点616で起るトスル。プ
ロセラf−104は命令点620でディスク読出し要求
618を開始する。ディスク続出し要求618と同時に
、ディスク読出し要求618を記録するためフラグがセ
ントされる。ディスク読出し要求618に応答する入力
イベントである再現イベント622が命令点624で発
生する。再現イベント626は命令点628で発生する
。誤り検出630は命令点632テ起る。計算システム
101からは誤り発生614の位置を精密につきとめる
ことはできず、命令点612と632との間のどこかで
発生しているというずディスク読出し要求618を開始
させた場合に何が起るかを示す典型的な例である。ディ
スク続出し要求618は、フラグ設定とともに、命令点
636で発生する。再実行シーケンス604の命令点6
36は実行シーケンス602の命令点620と同一であ
る。
再現イベント622は命令点638で早めに発生する。
再現イベント622はトラップ640が命令点644で
発生するまで処理されない。再実行シーケンス604の
命令点644は実行シーケンス602の命令点624と
同一である。再現イベント626は命令点646で早め
に発生する。再現イベント626はトラップ648が命
令点650で発生するまで処理されない。再実行シーケ
ンス604の命令点650は実行シーケンス602の命
令点628と同一である。再現イベント626を再処理
した後はもはや先に記録しておいた決定イベント情報は
残っていないので、正常実行が継続する。
発生するまで処理されない。再実行シーケンス604の
命令点644は実行シーケンス602の命令点624と
同一である。再現イベント626は命令点646で早め
に発生する。再現イベント626はトラップ648が命
令点650で発生するまで処理されない。再実行シーケ
ンス604の命令点650は実行シーケンス602の命
令点628と同一である。再現イベント626を再処理
した後はもはや先に記録しておいた決定イベント情報は
残っていないので、正常実行が継続する。
再実行シーケンス606は誤り発生614が伝播し。
ディスク読出し要求618を誤って開始させた場合に何
が起るかを示す典型的な例である。ここでは再実行シー
ケンス606の期間中、誤り発生614は繰返されない
。このためディスク読出し要求618が発生されず、フ
ラグはセットされない。トラップ640は命令点644
で発生する。以前記婦しておいた決定イベント情報は再
現イベント622を命令点644で再処理すべきことを
示している。しかし、ディスク読出しを示すフラグがセ
ットされていないので、再現イベント622が実行シー
ケンス602中に誤って発生したことを確認することが
できる。
が起るかを示す典型的な例である。ここでは再実行シー
ケンス606の期間中、誤り発生614は繰返されない
。このためディスク読出し要求618が発生されず、フ
ラグはセットされない。トラップ640は命令点644
で発生する。以前記婦しておいた決定イベント情報は再
現イベント622を命令点644で再処理すべきことを
示している。しかし、ディスク読出しを示すフラグがセ
ットされていないので、再現イベント622が実行シー
ケンス602中に誤って発生したことを確認することが
できる。
再実行が、実行シーケンス602で誤りが本来発生した
命令点と同一の命令点を通り過ぎて進んでしまったこと
を確認することができる。そこで、再現イベント622
および626について以前記録しておいた情報は捨てら
れ、正常な実行が継続する。
命令点と同一の命令点を通り過ぎて進んでしまったこと
を確認することができる。そこで、再現イベント622
および626について以前記録しておいた情報は捨てら
れ、正常な実行が継続する。
再実行7−クンス608は誤り発生614が伝播しディ
スク読出し要求を誤って開始させた場合に伺が起るかの
他の例である。再実行シーケンス6080期間中、誤り
発生614は繰返されない。このためディスク読出し要
求618は発生せず、フラグもセットされない。ディス
ク読出し要求656は命令点658で発生する。ディス
ク読取り要求656と同時に、ディスク読出し!求65
6があったことを記録するためフラグがセットされる。
スク読出し要求を誤って開始させた場合に伺が起るかの
他の例である。再実行シーケンス6080期間中、誤り
発生614は繰返されない。このためディスク読出し要
求618は発生せず、フラグもセットされない。ディス
ク読出し要求656は命令点658で発生する。ディス
ク読取り要求656と同時に、ディスク読出し!求65
6があったことを記録するためフラグがセットされる。
ディスク読出し要求656は命令点662で再現イベン
ト660を発生させる。イベント・ハンドラ123が再
現イベント660を再現イベント622および626
K関して以前記録しておいた情報に対してうまく対応付
けることができないときは、再実行が、実行シーケンス
602で本来誤りが発生した命令点と同一の命令点を通
り過ぎて進んでしまったことをfil認することができ
る。再現イベント622と626に関して以前記録して
おいた情報は捨てられ、正常実行が継続する。
ト660を発生させる。イベント・ハンドラ123が再
現イベント660を再現イベント622および626
K関して以前記録しておいた情報に対してうまく対応付
けることができないときは、再実行が、実行シーケンス
602で本来誤りが発生した命令点と同一の命令点を通
り過ぎて進んでしまったことをfil認することができ
る。再現イベント622と626に関して以前記録して
おいた情報は捨てられ、正常実行が継続する。
発生した誤り614は、誤り検出630が行なわれる以
前に既に計算システム101が処理するにはあまりにも
重大な影響をおよぼすエラーを伝播してしまっているこ
ともある。以前記録しておいた情報がこのようなエラー
が伝播されたことを示している場合には、プロセッサ1
04は実行を停止し。
前に既に計算システム101が処理するにはあまりにも
重大な影響をおよぼすエラーを伝播してしまっているこ
ともある。以前記録しておいた情報がこのようなエラー
が伝播されたことを示している場合には、プロセッサ1
04は実行を停止し。
人間の介在が便求される。
以上説明したように1本発明によれば、命令ステップを
数えまた決定イベントに関する情報を記録することによ
り、入出力を行なったりその他の外部割込みがかかった
りする等のより実際丙な環 ′境下での正確な誤り回復
が可能となる。またアプリケーションからはトランスペ
アレントな誤り修復を行なうことができる。
数えまた決定イベントに関する情報を記録することによ
り、入出力を行なったりその他の外部割込みがかかった
りする等のより実際丙な環 ′境下での正確な誤り回復
が可能となる。またアプリケーションからはトランスペ
アレントな誤り修復を行なうことができる。
第1図は本発明の一実施例のブロック図、第2図は非同
期イベントの分類を示す図、第3図は本発明の一実施例
における誤り回復動作の一例を示す図、第4図は本発明
の一実施例(おける誤り回復のための準備の動作を主に
示すフローチャート、第5A図および第58図は本発明
の一実施例における誤り検出層の動作を示すフローチャ
ート、第5図は第5A図と第5B図の接続関係を示す図
。 第6図は本発明の他の実施例の動作を示す図である。 100 :修復カウンタ、101:計算システム。 103 :プロセスーコントロールーブロック。 104:プロセツテ、105:ローカル・データ。 109、116 :ディスク。 114 : トラップ−ハンドラ。 118:チェックポイント・クステム状態すセンタ。 120:イベント・シミュレータ、 122:イベント・ハンドラ。 123:イベント・レコーダ、 124:誤りフイクサ。 126:チェックポイント・7ステム状態レコーダ。
期イベントの分類を示す図、第3図は本発明の一実施例
における誤り回復動作の一例を示す図、第4図は本発明
の一実施例(おける誤り回復のための準備の動作を主に
示すフローチャート、第5A図および第58図は本発明
の一実施例における誤り検出層の動作を示すフローチャ
ート、第5図は第5A図と第5B図の接続関係を示す図
。 第6図は本発明の他の実施例の動作を示す図である。 100 :修復カウンタ、101:計算システム。 103 :プロセスーコントロールーブロック。 104:プロセツテ、105:ローカル・データ。 109、116 :ディスク。 114 : トラップ−ハンドラ。 118:チェックポイント・クステム状態すセンタ。 120:イベント・シミュレータ、 122:イベント・ハンドラ。 123:イベント・レコーダ、 124:誤りフイクサ。 126:チェックポイント・7ステム状態レコーダ。
Claims (1)
- 【特許請求の範囲】 実行された機械命令を計数する計数手段と、前記計数手
段の値を読出す読出し手段と、 決定イベント情報を記録する記録手段 とを設けて成る誤り回復装置。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US06/766,212 US4703481A (en) | 1985-08-16 | 1985-08-16 | Method and apparatus for fault recovery within a computing system |
| US766212 | 2001-01-19 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS6240547A true JPS6240547A (ja) | 1987-02-21 |
| JPH0738161B2 JPH0738161B2 (ja) | 1995-04-26 |
Family
ID=25075737
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP61191159A Expired - Lifetime JPH0738161B2 (ja) | 1985-08-16 | 1986-08-14 | 誤り回復装置 |
Country Status (8)
| Country | Link |
|---|---|
| US (1) | US4703481A (ja) |
| EP (1) | EP0212791B1 (ja) |
| JP (1) | JPH0738161B2 (ja) |
| KR (1) | KR920001997B1 (ja) |
| CN (1) | CN1008778B (ja) |
| AU (1) | AU591134B2 (ja) |
| CA (1) | CA1260148A (ja) |
| DE (1) | DE3669599D1 (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2000076161A (ja) * | 1998-04-03 | 2000-03-14 | Hewlett Packard Co <Hp> | イベント・ログ方法 |
Families Citing this family (88)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4814971A (en) * | 1985-09-11 | 1989-03-21 | Texas Instruments Incorporated | Virtual memory recovery system using persistent roots for selective garbage collection and sibling page timestamping for defining checkpoint state |
| US4868744A (en) * | 1986-03-03 | 1989-09-19 | International Business Machines Corporation | Method for restarting a long-running, fault-tolerant operation in a transaction-oriented data base system without burdening the system log |
| JPS6375963A (ja) * | 1986-09-19 | 1988-04-06 | Hitachi Ltd | システム回復方式 |
| SE454920B (sv) * | 1986-10-03 | 1988-06-06 | Ellemtel Utvecklings Ab | Sett och anordning for att i en pa forhand avgjord ordningsfoljd exekvera tva instruktionssekvenser medelst separatminnen |
| US5065311A (en) * | 1987-04-20 | 1991-11-12 | Hitachi, Ltd. | Distributed data base system of composite subsystem type, and method fault recovery for the system |
| JP2550063B2 (ja) * | 1987-04-24 | 1996-10-30 | 株式会社日立製作所 | 分散処理システムのシミユレ−シヨン方式 |
| US5043866A (en) * | 1988-04-08 | 1991-08-27 | International Business Machines Corporation | Soft checkpointing system using log sequence numbers derived from stored data pages and log records for database recovery |
| US4924466A (en) * | 1988-06-30 | 1990-05-08 | International Business Machines Corp. | Direct hardware error identification method and apparatus for error recovery in pipelined processing areas of a computer system |
| JPH0752399B2 (ja) * | 1988-06-30 | 1995-06-05 | インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン | 記憶システム |
| US5119483A (en) * | 1988-07-20 | 1992-06-02 | Digital Equipment Corporation | Application of state silos for recovery from memory management exceptions |
| US4912707A (en) * | 1988-08-23 | 1990-03-27 | International Business Machines Corporation | Checkpoint retry mechanism |
| US5253360A (en) * | 1988-12-16 | 1993-10-12 | Kabushiki Kaisha Toshiba | Facsimile device having continuous operating capabilities immediately after recovery from trouble and related method |
| EP0374419A3 (en) * | 1988-12-21 | 1991-04-10 | International Business Machines Corporation | Method and apparatus for efficient loop constructs in hardware and microcode |
| US5832202A (en) * | 1988-12-28 | 1998-11-03 | U.S. Philips Corporation | Exception recovery in a data processing system |
| US5089958A (en) * | 1989-01-23 | 1992-02-18 | Vortex Systems, Inc. | Fault tolerant computer backup system |
| DE69032058T2 (de) * | 1989-03-14 | 1998-07-02 | Canon Kk | Prozesszustandsüberwachungssystem |
| US5261085A (en) * | 1989-06-23 | 1993-11-09 | Digital Equipment Corporation | Fault-tolerant system and method for implementing a distributed state machine |
| CA2025197C (en) * | 1989-10-19 | 1998-04-21 | Michael H. Kelley | Method and system for dynamically controlling the operation of a program |
| US5165031A (en) * | 1990-05-16 | 1992-11-17 | International Business Machines Corporation | Coordinated handling of error codes and information describing errors in a commit procedure |
| JP2691081B2 (ja) * | 1990-05-16 | 1997-12-17 | インターナショナル・ビジネス・マシーンズ・コーポレイション | コンピュータ・ネットワーク |
| US5319774A (en) * | 1990-05-16 | 1994-06-07 | International Business Machines Corporation | Recovery facility for incomplete sync points for distributed application |
| JP3293839B2 (ja) * | 1990-05-16 | 2002-06-17 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 作業ユニットに合わせてコミット範囲を調整するコンピュータ・システム |
| US5319773A (en) * | 1990-05-16 | 1994-06-07 | International Business Machines Corporation | Asynchronous resynchronization of a commit procedure |
| US5327532A (en) * | 1990-05-16 | 1994-07-05 | International Business Machines Corporation | Coordinated sync point management of protected resources |
| US5276876A (en) * | 1990-05-16 | 1994-01-04 | International Business Machines Corporation | Registration of resources for commit procedures |
| US5261089A (en) * | 1990-05-16 | 1993-11-09 | International Business Machines Corporation | Optimization of commit procedures by utilizing a two-phase commit procedure only when necessary |
| US5276862A (en) * | 1991-04-09 | 1994-01-04 | Bull Hn Information Systems Inc. | Safestore frame implementation in a central processor |
| US5293613A (en) * | 1991-08-29 | 1994-03-08 | International Business Machines Corporation | Recovery control register |
| US5269017A (en) * | 1991-08-29 | 1993-12-07 | International Business Machines Corporation | Type 1, 2 and 3 retry and checkpointing |
| JPH0812616B2 (ja) * | 1991-09-11 | 1996-02-07 | インターナショナル・ビジネス・マシーンズ・コーポレイション | オペレーティングシステムカーネル用受動回復方法およびシステム |
| GB9121540D0 (en) * | 1991-10-10 | 1991-11-27 | Smiths Industries Plc | Computing systems and methods |
| GB2263988B (en) * | 1992-02-04 | 1996-05-22 | Digital Equipment Corp | Work flow management system and method |
| GB9214198D0 (en) * | 1992-07-03 | 1992-08-12 | Texas Instruments Ltd | Method of resetting coupled modules and a system using the method |
| US5421003A (en) * | 1992-09-17 | 1995-05-30 | International Business Machines Corporation | Disk storage system with fault tolerant media maintenance |
| JPH0827733B2 (ja) * | 1993-07-06 | 1996-03-21 | 日本電気株式会社 | 障害処理システム |
| US5809525A (en) * | 1993-09-17 | 1998-09-15 | International Business Machines Corporation | Multi-level computer cache system providing plural cache controllers associated with memory address ranges and having cache directories |
| US5539895A (en) * | 1994-05-12 | 1996-07-23 | International Business Machines Corporation | Hierarchical computer cache system |
| DE69506404T2 (de) * | 1994-06-10 | 1999-05-27 | Texas Micro Inc., Houston, Tex. | Hauptspeichervorrichtung und wiederanlaufkennzeichnungsverfahren für ein fehlertolerantes rechnersystem |
| US5682471A (en) * | 1994-10-06 | 1997-10-28 | Billings; Thomas Neal | System for transparently storing inputs to non-volatile storage and automatically re-entering them to reconstruct work if volatile memory is lost |
| 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 |
| 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 |
| US5655115A (en) * | 1995-02-14 | 1997-08-05 | Hal Computer Systems, Inc. | Processor structure and method for watchpoint of plural simultaneous unresolved branch evaluation |
| US5864657A (en) * | 1995-11-29 | 1999-01-26 | Texas Micro, Inc. | Main memory system and checkpointing protocol for fault-tolerant computer system |
| US5712971A (en) * | 1995-12-11 | 1998-01-27 | Ab Initio Software Corporation | Methods and systems for reconstructing the state of a computation |
| US5898815A (en) * | 1996-02-13 | 1999-04-27 | National Semiconductor Corporation | I/O bus interface recovery counter dependent upon minimum bus clocks to prevent overrun and ratio of execution core clock frequency to system bus clock frequency |
| KR100499818B1 (ko) * | 1997-01-06 | 2005-11-22 | 가부시끼가이샤 히다치 세이사꾸쇼 | 반도체집적회로검사점의해석방법,해석장치 |
| US5978912A (en) * | 1997-03-20 | 1999-11-02 | Phoenix Technologies Limited | Network enhanced BIOS enabling remote management of a computer without a functioning operating system |
| JPH11134235A (ja) * | 1997-10-31 | 1999-05-21 | Hitachi Ltd | 外部記憶装置故障時の回復支援方法 |
| US6247118B1 (en) | 1998-06-05 | 2001-06-12 | Mcdonnell Douglas Corporation | Systems and methods for transient error recovery in reduced instruction set computer processors via instruction retry |
| US6269381B1 (en) | 1998-06-30 | 2001-07-31 | Emc Corporation | Method and apparatus for backing up data before updating the data and for restoring from the backups |
| US6366986B1 (en) | 1998-06-30 | 2002-04-02 | Emc Corporation | Method and apparatus for differential backup in a computer storage system |
| US6141773A (en) * | 1998-06-30 | 2000-10-31 | Emc Corporation | Method and apparatus for undoing changes to computer memory |
| US8631066B2 (en) | 1998-09-10 | 2014-01-14 | Vmware, Inc. | Mechanism for providing virtual machines for use by multiple users |
| US7516453B1 (en) * | 1998-10-26 | 2009-04-07 | Vmware, Inc. | Binary translator with precise exception synchronization mechanism |
| US6393583B1 (en) | 1998-10-29 | 2002-05-21 | International Business Machines Corporation | Method of performing checkpoint/restart of a parallel program |
| US6332200B1 (en) | 1998-10-29 | 2001-12-18 | International Business Machines Corporation | Capturing and identifying a complete and consistent set of checkpoint files |
| US6332199B1 (en) | 1998-10-29 | 2001-12-18 | International Business Machines Corporation | Restoring checkpointed processes including adjusting environment variables of the processes |
| US6401216B1 (en) | 1998-10-29 | 2002-06-04 | International Business Machines Corporation | System of performing checkpoint/restart of a parallel program |
| US6338147B1 (en) | 1998-10-29 | 2002-01-08 | International Business Machines Corporation | Program products for performing checkpoint/restart of a parallel program |
| US6256751B1 (en) | 1998-10-29 | 2001-07-03 | International Business Machines Corporation | Restoring checkpointed processes without restoring attributes of external data referenced by the processes |
| US6453430B1 (en) * | 1999-05-06 | 2002-09-17 | Cisco Technology, Inc. | Apparatus and methods for controlling restart conditions of a faulted process |
| GB2372673B (en) * | 2001-02-27 | 2003-05-28 | 3Com Corp | Apparatus and method for processing data relating to events on a network |
| US6883113B2 (en) * | 2002-04-18 | 2005-04-19 | Bae Systems Information And Electronic Systems Integration, Inc. | System and method for temporally isolating environmentally sensitive integrated circuit faults |
| US7318171B2 (en) * | 2003-03-12 | 2008-01-08 | Intel Corporation | Policy-based response to system errors occurring during OS runtime |
| US6962206B2 (en) * | 2003-05-15 | 2005-11-08 | Weatherford/Lamb, Inc. | Packer with metal sealing element |
| US7730222B2 (en) | 2004-08-24 | 2010-06-01 | Symantec Operating System | Processing storage-related I/O requests using binary tree data structures |
| US7725760B2 (en) | 2003-09-23 | 2010-05-25 | Symantec Operating Corporation | Data storage system |
| US7904428B2 (en) | 2003-09-23 | 2011-03-08 | Symantec Corporation | Methods and apparatus for recording write requests directed to a data store |
| US7991748B2 (en) | 2003-09-23 | 2011-08-02 | Symantec Corporation | Virtual data store creation and use |
| US7827362B2 (en) | 2004-08-24 | 2010-11-02 | Symantec Corporation | Systems, apparatus, and methods for processing I/O requests |
| US7296008B2 (en) | 2004-08-24 | 2007-11-13 | Symantec Operating Corporation | Generation and use of a time map for accessing a prior image of a storage device |
| US7409587B2 (en) | 2004-08-24 | 2008-08-05 | Symantec Operating Corporation | Recovering from storage transaction failures using checkpoints |
| US7287133B2 (en) | 2004-08-24 | 2007-10-23 | Symantec Operating Corporation | Systems and methods for providing a modification history for a location within a data store |
| US7577806B2 (en) | 2003-09-23 | 2009-08-18 | Symantec Operating Corporation | Systems and methods for time dependent data storage and recovery |
| US7631120B2 (en) | 2004-08-24 | 2009-12-08 | Symantec Operating Corporation | Methods and apparatus for optimally selecting a storage buffer for the storage of data |
| US7577807B2 (en) | 2003-09-23 | 2009-08-18 | Symantec Operating Corporation | Methods and devices for restoring a portion of a data store |
| US7239581B2 (en) | 2004-08-24 | 2007-07-03 | Symantec Operating Corporation | Systems and methods for synchronizing the internal clocks of a plurality of processor modules |
| US7650606B2 (en) * | 2004-01-30 | 2010-01-19 | International Business Machines Corporation | System recovery |
| US8140348B2 (en) * | 2004-01-30 | 2012-03-20 | International Business Machines Corporation | Method, system, and program for facilitating flow control |
| US7366801B2 (en) * | 2004-01-30 | 2008-04-29 | International Business Machines Corporation | Method for buffering work requests |
| WO2006079623A1 (en) * | 2005-01-28 | 2006-08-03 | International Business Machines Corporation | Method for counting instructions for logging and replay of a deterministic sequence of events |
| CN101313279A (zh) | 2005-10-14 | 2008-11-26 | 塞门铁克操作公司 | 一种在数据存储器中用于时间线压缩的技术 |
| US7721139B2 (en) * | 2007-03-27 | 2010-05-18 | International Business Machines Corporation | Method, apparatus, and computer program product for managing data in a browser-based application |
| WO2008122746A1 (en) * | 2007-04-10 | 2008-10-16 | Cambridge Consultants Limited | Data processing apparatus |
| WO2010004243A2 (en) * | 2008-07-10 | 2010-01-14 | Cambridge Consultants Limited | Interrupt processing |
| US20100153776A1 (en) * | 2008-12-12 | 2010-06-17 | Sun Microsystems, Inc. | Using safepoints to provide precise exception semantics for a virtual machine |
| JP2015081695A (ja) * | 2013-10-21 | 2015-04-27 | 三菱日立パワーシステムズ株式会社 | 炭素含有燃料熱交換器の監視・運転方法 |
| CN110928714A (zh) * | 2018-09-19 | 2020-03-27 | 阿里巴巴集团控股有限公司 | 一种服务异常处理方法、装置和计算设备 |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS58201152A (ja) * | 1982-05-19 | 1983-11-22 | Hitachi Ltd | 情報自動収得方式 |
Family Cites Families (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3564502A (en) * | 1968-01-15 | 1971-02-16 | Ibm | Channel position signaling method and means |
| US3564506A (en) * | 1968-01-17 | 1971-02-16 | Ibm | Instruction retry byte counter |
| US3736566A (en) * | 1971-08-18 | 1973-05-29 | Ibm | Central processing unit with hardware controlled checkpoint and retry facilities |
| IT1014277B (it) * | 1974-06-03 | 1977-04-20 | Cselt Centro Studi Lab Telecom | Sistema di controllo di elaboratori di processo operanti in parallelo |
| US4130240A (en) * | 1977-08-31 | 1978-12-19 | International Business Machines Corporation | Dynamic error location |
| US4524415A (en) * | 1982-12-07 | 1985-06-18 | Motorola, Inc. | Virtual machine data processor |
| US4493035A (en) * | 1982-12-07 | 1985-01-08 | Motorola, Inc. | Data processor version validation |
-
1985
- 1985-08-16 US US06/766,212 patent/US4703481A/en not_active Expired - Lifetime
-
1986
- 1986-06-02 CN CN86103695A patent/CN1008778B/zh not_active Expired
- 1986-06-12 DE DE8686304506T patent/DE3669599D1/de not_active Expired - Lifetime
- 1986-06-12 EP EP86304506A patent/EP0212791B1/en not_active Expired - Lifetime
- 1986-06-24 AU AU59173/86A patent/AU591134B2/en not_active Expired
- 1986-06-27 KR KR1019860005170A patent/KR920001997B1/ko not_active Expired
- 1986-08-08 CA CA000515561A patent/CA1260148A/en not_active Expired
- 1986-08-14 JP JP61191159A patent/JPH0738161B2/ja not_active Expired - Lifetime
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS58201152A (ja) * | 1982-05-19 | 1983-11-22 | Hitachi Ltd | 情報自動収得方式 |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2000076161A (ja) * | 1998-04-03 | 2000-03-14 | Hewlett Packard Co <Hp> | イベント・ログ方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| CA1260148A (en) | 1989-09-26 |
| AU5917386A (en) | 1987-02-19 |
| KR920001997B1 (ko) | 1992-03-09 |
| CN1008778B (zh) | 1990-07-11 |
| AU591134B2 (en) | 1989-11-30 |
| EP0212791B1 (en) | 1990-03-14 |
| JPH0738161B2 (ja) | 1995-04-26 |
| EP0212791A1 (en) | 1987-03-04 |
| US4703481A (en) | 1987-10-27 |
| KR870002504A (ko) | 1987-03-31 |
| CN86103695A (zh) | 1987-02-11 |
| DE3669599D1 (de) | 1990-04-19 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPS6240547A (ja) | 誤り回復装置 | |
| US4740969A (en) | Method and apparatus for recovering from hardware faults | |
| US5241668A (en) | Method and system for automated termination and resumption in a time zero backup copy process | |
| US8276127B2 (en) | Devices, methods and computer program products for reverse execution of a simulation | |
| JP3675802B2 (ja) | 計算の状態を再構成する方法ならびにシステム | |
| KR100304319B1 (ko) | 시간 지연 이중화 기술을 구현하는 장치 및 방법 | |
| US6728668B1 (en) | Method and apparatus for simulated error injection for processor deconfiguration design verification | |
| US7328331B2 (en) | Method and system of aligning execution point of duplicate copies of a user program by copying memory stores | |
| JP2513060B2 (ja) | 故障回復型計算機 | |
| JPS58182775A (ja) | 磁気デイスク装置の自己診断方式 | |
| JPS6255173B2 (ja) | ||
| JPS60142747A (ja) | 命令再実行制御方式 | |
| JP2000207265A (ja) | トランザクション分割・連携装置および記録媒体 | |
| JP2786215B2 (ja) | 再開処理制御方式 | |
| CN119537071A (zh) | 一种内存诊断方法、装置、电子设备及存储介质 | |
| CN119226229A (zh) | 一种数据库数据恢复方法及装置 | |
| JPS6146535A (ja) | 擬似エラ−設定制御方式 | |
| Kopetz | Automatic Error Correction | |
| JPS60142446A (ja) | バツクワ−ド障害復元処理方式 | |
| JPH0362244A (ja) | 半導体外部記憶装置におけるデータ保証制御方式 | |
| JPS64727B2 (ja) | ||
| JPH04365145A (ja) | メモリ障害処理方法 | |
| Williams | An investigation of rollback for self-recovery using the AAMP2 microprocessor | |
| JP2002055846A (ja) | 障害検出システムおよび障害検出方法 | |
| JPS61166636A (ja) | 命令再実行制御方式 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| EXPY | Cancellation because of completion of term |