JPH0449141B2 - - Google Patents
Info
- Publication number
- JPH0449141B2 JPH0449141B2 JP59072785A JP7278584A JPH0449141B2 JP H0449141 B2 JPH0449141 B2 JP H0449141B2 JP 59072785 A JP59072785 A JP 59072785A JP 7278584 A JP7278584 A JP 7278584A JP H0449141 B2 JPH0449141 B2 JP H0449141B2
- Authority
- JP
- Japan
- Prior art keywords
- check
- program
- memory
- block
- error
- 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.)
- Expired - Lifetime
Links
- 238000000034 method Methods 0.000 claims description 25
- 230000006378 damage Effects 0.000 claims description 18
- 238000001514 detection method Methods 0.000 claims description 9
- 238000012545 processing Methods 0.000 description 18
- 238000010586 diagram Methods 0.000 description 3
- 230000005856 abnormality Effects 0.000 description 2
- 238000003745 diagnosis Methods 0.000 description 2
- 230000007257 malfunction Effects 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Description
【発明の詳細な説明】
〔発明の利用分野〕
本発明は、プログラム破壊検出方式に関し、特
にメモリ上に格納されたプログラムの破壊を検出
する自動診断方式に関するものである。
にメモリ上に格納されたプログラムの破壊を検出
する自動診断方式に関するものである。
従来のプロセツサ・システムにおけるプログラ
ム破壊検出方式は、例えば特開昭57−86956号公
報に示される如き技術が知られている。これによ
ればプロセツサが複数になると、プロセツサ対応
にプログラム破壊検出のためのハードウエア回路
が必要となる。また、その検出方法は、ハードウ
エア回路を用いているため、プログラムの暴走は
検出できるが、プログラム・エリアあるいはテー
ブル・エリアの破壊による誤動作に対しては検出
できないという欠点がある。
ム破壊検出方式は、例えば特開昭57−86956号公
報に示される如き技術が知られている。これによ
ればプロセツサが複数になると、プロセツサ対応
にプログラム破壊検出のためのハードウエア回路
が必要となる。また、その検出方法は、ハードウ
エア回路を用いているため、プログラムの暴走は
検出できるが、プログラム・エリアあるいはテー
ブル・エリアの破壊による誤動作に対しては検出
できないという欠点がある。
本発明の目的は、このような従来の欠点を改善
し、特別なハードウエア回路を備えることなく、
プログラム破壊による暴走あるいは誤動作を自動
的に検出できるプログラム破壊検出方式を提供す
ることにある。
し、特別なハードウエア回路を備えることなく、
プログラム破壊による暴走あるいは誤動作を自動
的に検出できるプログラム破壊検出方式を提供す
ることにある。
上記目的を達成するため、本発明のプログラム
破壊検出方式は、メモリに記憶されたプログラム
を周期的にチエツクする制御手段と、チエツクす
べきメモリ・エリアのアドレス、データ長および
チエツク方式を定義したプログラム破壊チエツク
テーブルと、メモリ内容をチエツクした後、得ら
れたエラー情報を退避する退避テーブルとを有
し、前記プログラム破壊チエツク・テーブルの内
容を参照して前記制御手段にてメモリの内容をチ
エツクし、その結果得られたエラー情報を前記退
避テーブルに退避することに特徴がある。
破壊検出方式は、メモリに記憶されたプログラム
を周期的にチエツクする制御手段と、チエツクす
べきメモリ・エリアのアドレス、データ長および
チエツク方式を定義したプログラム破壊チエツク
テーブルと、メモリ内容をチエツクした後、得ら
れたエラー情報を退避する退避テーブルとを有
し、前記プログラム破壊チエツク・テーブルの内
容を参照して前記制御手段にてメモリの内容をチ
エツクし、その結果得られたエラー情報を前記退
避テーブルに退避することに特徴がある。
次に本発明の実施例につき図面を用いて詳細に
説明する。
説明する。
第1図は、本発明を具体化するための制御シス
テムの論理ブロツク図である。1はクロツク・パ
ルス・ゼネレータ、2はイニシヤライズ・ブロツ
ク、3は制御ブロツク、4はタスク群(0〜Nの
N個)、5はチエツク(診断)・ブロツク、6は外
部格納フアイル(以下格納フアイルと称す)、7
は格納フアイル6内に保持されるプログラム破壊
チエツク・テーブル(以下チエツク・テーブルと
称す)、8は格納フアイル6内に保持されるエラ
ー情報退避テーブル、9はタスク群の各タスクの
メモリ上の位置およびチエツク対象エリアを示
す。
テムの論理ブロツク図である。1はクロツク・パ
ルス・ゼネレータ、2はイニシヤライズ・ブロツ
ク、3は制御ブロツク、4はタスク群(0〜Nの
N個)、5はチエツク(診断)・ブロツク、6は外
部格納フアイル(以下格納フアイルと称す)、7
は格納フアイル6内に保持されるプログラム破壊
チエツク・テーブル(以下チエツク・テーブルと
称す)、8は格納フアイル6内に保持されるエラ
ー情報退避テーブル、9はタスク群の各タスクの
メモリ上の位置およびチエツク対象エリアを示
す。
まず、電源オンにより、立ち上げ処理が行わ
れ、イニシヤライズ・ブロツク2が、チエツク・
テーブル7の初期設定およびエラー情報退避テー
ブル8のゼロクリアを行う。その後は制御ブロツ
ク3に制御が移り、タスク4の起動処理を行う。
CPG(クロツク・パルス・ゼネレータ)1は、制
御ブロツク3に対し、タイミング・パルスを出
し、制御ブロツク3は、これにより周期的に、チ
エツク・ブロツク5に制御を渡すことができる。
制御を渡されたチエツク・ブロツク5は、格納フ
アイル6内に保持されているチエツク・テーブル
7の各情報に従い、プログラム破壊チエツク処理
を行い、タスク4が破壊されているかどうかをチ
エツクする。チエツクによつて異常を検出すれ
ば、格納フアイル6内のエラー情報退避テーブル
8に各種情報を退避させる。この時、チエツク・
テーブル7、エラー情報退避テーブル8を、格納
フアイル6内に保存しておく理由は、タスク4と
同じくメモリ上に置くとプログラムの暴走等によ
つてテーブルが破壊されるおそれがあるので、こ
れを避けるためである。なお、格納フアイル6に
は、第1図には図示されていないが、チエツク方
式を定義するためのチエツク方式定義テーブルも
格納されている。
れ、イニシヤライズ・ブロツク2が、チエツク・
テーブル7の初期設定およびエラー情報退避テー
ブル8のゼロクリアを行う。その後は制御ブロツ
ク3に制御が移り、タスク4の起動処理を行う。
CPG(クロツク・パルス・ゼネレータ)1は、制
御ブロツク3に対し、タイミング・パルスを出
し、制御ブロツク3は、これにより周期的に、チ
エツク・ブロツク5に制御を渡すことができる。
制御を渡されたチエツク・ブロツク5は、格納フ
アイル6内に保持されているチエツク・テーブル
7の各情報に従い、プログラム破壊チエツク処理
を行い、タスク4が破壊されているかどうかをチ
エツクする。チエツクによつて異常を検出すれ
ば、格納フアイル6内のエラー情報退避テーブル
8に各種情報を退避させる。この時、チエツク・
テーブル7、エラー情報退避テーブル8を、格納
フアイル6内に保存しておく理由は、タスク4と
同じくメモリ上に置くとプログラムの暴走等によ
つてテーブルが破壊されるおそれがあるので、こ
れを避けるためである。なお、格納フアイル6に
は、第1図には図示されていないが、チエツク方
式を定義するためのチエツク方式定義テーブルも
格納されている。
チエツク・ブロツク5がチエツク・テーブル7
を参照してチエツクする部分は、メモリ対象エリ
ア9の斜線の部分である。チエツク対象のエリア
の先頭アドレス、ベータ長、チエツク方式等がチ
エツク・テーブル7に示されているので、チエツ
ク・ブロツク5は、その値にしたがつて対象エリ
アをアクセスし、チエツク方式にしたがつてチエ
ツクする。
を参照してチエツクする部分は、メモリ対象エリ
ア9の斜線の部分である。チエツク対象のエリア
の先頭アドレス、ベータ長、チエツク方式等がチ
エツク・テーブル7に示されているので、チエツ
ク・ブロツク5は、その値にしたがつて対象エリ
アをアクセスし、チエツク方式にしたがつてチエ
ツクする。
チエツク・テーブル7の定義されたタスクにつ
いてのチエツク処理が終了し、エラー検出してい
れば、エーラー情報退避テーブル8の内容を
FD(フレキシブル・デイスク)またはDK(デイ
スク)に吸い上げる。ブザー鳴動する。デイ
スプレイにエラーメツセージを表示する等のエラ
ー検出処理を行い、制御ブロツク3に対してエラ
ー検出を報告する。エラー検出の報告を受けた制
御ブロツク3は、エラーを検出したタスク4を制
御下からはずし縮退運用を行うか、業務に支障を
期たす場合はシステム・ダウンする等の処理を行
う。
いてのチエツク処理が終了し、エラー検出してい
れば、エーラー情報退避テーブル8の内容を
FD(フレキシブル・デイスク)またはDK(デイ
スク)に吸い上げる。ブザー鳴動する。デイ
スプレイにエラーメツセージを表示する等のエラ
ー検出処理を行い、制御ブロツク3に対してエラ
ー検出を報告する。エラー検出の報告を受けた制
御ブロツク3は、エラーを検出したタスク4を制
御下からはずし縮退運用を行うか、業務に支障を
期たす場合はシステム・ダウンする等の処理を行
う。
第2図はイニシヤライズ・ブロツク2によつて
セツトされ、チエツク・ブロツク5が、チエツク
処理を行う際に参照し、格納フアイル6内に保持
されるプログラム破壊チエツク・テーブル7およ
びチエツク・ブロツク5が、チエツク処理でエラ
ー検出した時にエラー情報を退避するエラー情報
退避テーブル8およびチエツク方式定義テーブル
の一実施例を示したものである。第2図aのチエ
ツク・テーブル7は、チエツクエリアの先頭アド
レス、チエツクするエリアのデータ長、チエツク
方式の種別およびチエツク方式別の固定値から構
成され、チエツク方式別の固定値は、イニシヤラ
イズ・ブロツク2により、立ち上げ時、算出およ
び設定される。
セツトされ、チエツク・ブロツク5が、チエツク
処理を行う際に参照し、格納フアイル6内に保持
されるプログラム破壊チエツク・テーブル7およ
びチエツク・ブロツク5が、チエツク処理でエラ
ー検出した時にエラー情報を退避するエラー情報
退避テーブル8およびチエツク方式定義テーブル
の一実施例を示したものである。第2図aのチエ
ツク・テーブル7は、チエツクエリアの先頭アド
レス、チエツクするエリアのデータ長、チエツク
方式の種別およびチエツク方式別の固定値から構
成され、チエツク方式別の固定値は、イニシヤラ
イズ・ブロツク2により、立ち上げ時、算出およ
び設定される。
第2図bのエラー情報退避テーブル8は、エラ
ーを検出したタスクNo.、アドレス、方式種別、方
式別固定値および実際のデータ値から構成され、
チエツク・ブロツク5がエラーを検出した時点で
各データを設定する。第2図cのチエツク方式定
義テーブル10は、チエツク方式の種別と方式名
称を定義したものであり、ここに示した実施例で
は、コンペア・チエツク、サム(加算)チエツ
ク、XOR(排他的論理和)チエツクの3種類を定
義した。
ーを検出したタスクNo.、アドレス、方式種別、方
式別固定値および実際のデータ値から構成され、
チエツク・ブロツク5がエラーを検出した時点で
各データを設定する。第2図cのチエツク方式定
義テーブル10は、チエツク方式の種別と方式名
称を定義したものであり、ここに示した実施例で
は、コンペア・チエツク、サム(加算)チエツ
ク、XOR(排他的論理和)チエツクの3種類を定
義した。
第3図は、チエツク・ブロツク5の処理ステツ
プをフローチヤート(流れ図)で示したものであ
り、以下各ステツプの処理を説明する。
プをフローチヤート(流れ図)で示したものであ
り、以下各ステツプの処理を説明する。
ステツプ(0):チエツク・ブロツクの処理スタ
ート。
ート。
ステツプ(1):タスクNo.に初期値セツト。
ステツプ(2):プログラム破壊チエツク・テーブル
から該当タスクNo.の該当アドレスを読み取る。
から該当タスクNo.の該当アドレスを読み取る。
ステツプ(3):同上、データ長を読み取る。
ステツプ(4):同上、方式種別を読み取る。
ステツプ(5):方式種別によりチエツク処理の振り
分けを行う。
分けを行う。
ステツプ(6):指定アドレスから指定データ長分だ
けデータを読み取る。
けデータを読み取る。
ステツプ(7):各チエツク方式別に処理を行う。す
なわち、各ステツプ方式別には、コンペア・チ
エツクは無処理、サムチエツクは、サム(加
算)をとる。XOR(排他的論理和)をとる。
なわち、各ステツプ方式別には、コンペア・チ
エツクは無処理、サムチエツクは、サム(加
算)をとる。XOR(排他的論理和)をとる。
ステツプ(8):ステツプ7で算出した結果(データ
値)と、チエツク・テーブル7内の方式別固定
値とは等しいかどうかの判定。等しいならステ
ツプ(10)へ。等しくないならステツプ(9)へ。
値)と、チエツク・テーブル7内の方式別固定
値とは等しいかどうかの判定。等しいならステ
ツプ(10)へ。等しくないならステツプ(9)へ。
ステツプ(9):エラーを検出した場合の処理ステツ
プ・エラー情報退避テーブル8へデーターをセ
ツトする。
プ・エラー情報退避テーブル8へデーターをセ
ツトする。
ステツプ(10):タスクNo.Jのチエツクは終了かどう
かの判定。未終了ならステツプ(2)へ。終了なら
ステツプ(11)へ。
かの判定。未終了ならステツプ(2)へ。終了なら
ステツプ(11)へ。
ステツプ(11):タスクNo.Jを+1加算し、次のタス
クNo.を設定する。
クNo.を設定する。
ステツプ(12):チエツク・テーブルに定義された全
タスクの処理が終了かどうかの判定。未終了な
らステツプ(2)へ。終了ならステツプ(13)へ。
タスクの処理が終了かどうかの判定。未終了な
らステツプ(2)へ。終了ならステツプ(13)へ。
ステツプ(13):ステツプ(12)迄で、エラーを検出した
かどうかの判定。エラー検出ならステツプ(14)へ。
エラー未検出ならステツプ(15)へ。
かどうかの判定。エラー検出ならステツプ(14)へ。
エラー未検出ならステツプ(15)へ。
ステツプ(14):エラー検出した場合の処理で、エ
ラー情報退避テーブルをFD(フエキシブル・デ
イスク)へ吸い上げる。ブザー鳴動。デイ
スプレイにエラーメツセージ表示等の処置を行
い制御ブロツクへエラー検出を報告する。
ラー情報退避テーブルをFD(フエキシブル・デ
イスク)へ吸い上げる。ブザー鳴動。デイ
スプレイにエラーメツセージ表示等の処置を行
い制御ブロツクへエラー検出を報告する。
ステツプ(15):処理終了。
なお、第3図において、エラー情報退避テーブ
ル8の内容は、フレキシブル・デイスク30また
はハード・デイスク31のいずれかに吸い上げら
れる。
ル8の内容は、フレキシブル・デイスク30また
はハード・デイスク31のいずれかに吸い上げら
れる。
本発明の実施例においては、()システム設
計者またはデバツグ担当者があらかじめプログラ
ム破壊チエツク・テーブル7に、チエツクすべき
アドレス、データ長およびチエツク方式を定義し
ておくことにより、メモリ内容が固定なプログラ
ムや固定データのテーブル・エリアの内容を周期
的にチエツクすることができる。()チエツ
ク・テーブル7を変更することにより、簡単にチ
エツク方法の変更が可能である。()プログラ
ム破壊チエツク・ブロツク(例えばマイクロ・コ
ンピユータで構成される)5によつて、プログラ
ムやテーブル内容の異常を即時検出できるので、
システムの信頼性が確保できる。()エラー情
報退避テーブル8に検出したエラー情報を退避す
ることにより、保守作業を効率よく行うことがで
きる。()プログラム破壊チエツク・テーブル
7およびエラー情報退避テーブル8を格納フアイ
ル6に保持することにより、これらのテーブルが
タスクに破壊されることなく、正確なチエツク情
報を保証できる。()プログラム破壊チエツ
ク・ブロツク5の処理によつて若干処理能力が低
下するが、高速な処理能力もよりも信頼性を必要
とするシステムの検査時に有効である。
計者またはデバツグ担当者があらかじめプログラ
ム破壊チエツク・テーブル7に、チエツクすべき
アドレス、データ長およびチエツク方式を定義し
ておくことにより、メモリ内容が固定なプログラ
ムや固定データのテーブル・エリアの内容を周期
的にチエツクすることができる。()チエツ
ク・テーブル7を変更することにより、簡単にチ
エツク方法の変更が可能である。()プログラ
ム破壊チエツク・ブロツク(例えばマイクロ・コ
ンピユータで構成される)5によつて、プログラ
ムやテーブル内容の異常を即時検出できるので、
システムの信頼性が確保できる。()エラー情
報退避テーブル8に検出したエラー情報を退避す
ることにより、保守作業を効率よく行うことがで
きる。()プログラム破壊チエツク・テーブル
7およびエラー情報退避テーブル8を格納フアイ
ル6に保持することにより、これらのテーブルが
タスクに破壊されることなく、正確なチエツク情
報を保証できる。()プログラム破壊チエツ
ク・ブロツク5の処理によつて若干処理能力が低
下するが、高速な処理能力もよりも信頼性を必要
とするシステムの検査時に有効である。
以上説明したように、本発明によれば、特別な
ハードウエア回路を用いることなくプログラム・
エリアおよびテーブル・エリアの破壊を検出する
ことができるので、高信頼性のシステムを実現す
ることができる。
ハードウエア回路を用いることなくプログラム・
エリアおよびテーブル・エリアの破壊を検出する
ことができるので、高信頼性のシステムを実現す
ることができる。
第1図は本発明の実施例を示す制御システムの
ブロツク図、第2図は第1図におけるプログラム
破壊チエツク・テーブル等の詳細図、第3図は第
1図におけるプログラム破壊チエツク・ブロツク
の処理フローチヤートである。 1:クロツク・パルス・ゼネレータ、2:イニ
シヤライズ・ブロツク、3:制御ブロツク、5:
プログラム破壊チエツク・ブロツク、6:格納フ
アイル、7:プログラム破壊チエツク・テーブ
ル、8:エラー情報退避テーブル。
ブロツク図、第2図は第1図におけるプログラム
破壊チエツク・テーブル等の詳細図、第3図は第
1図におけるプログラム破壊チエツク・ブロツク
の処理フローチヤートである。 1:クロツク・パルス・ゼネレータ、2:イニ
シヤライズ・ブロツク、3:制御ブロツク、5:
プログラム破壊チエツク・ブロツク、6:格納フ
アイル、7:プログラム破壊チエツク・テーブ
ル、8:エラー情報退避テーブル。
Claims (1)
- 1 メモリに記憶されたプログラムを周期的にチ
エツクする制御手段と、チエツクすべきメモリ・
エリアのアドレス、データ長およびチエツク方式
を定義したプログラム破壊チエツク・テーブル
と、メモリ内容をチエツクした後、得られたエラ
ー情報を退避する退避テーブルとを有し、前記プ
ログラム破壊チエツク・テーブルの内容を参照し
て前記制御手段にてメモリの内容をチエツクし、
その結果得られたエラー情報を前記退避テーブル
に退避することを特徴とするプログラム破壊検出
方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP59072785A JPS60218139A (ja) | 1984-04-13 | 1984-04-13 | プログラム破壊検出方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP59072785A JPS60218139A (ja) | 1984-04-13 | 1984-04-13 | プログラム破壊検出方式 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS60218139A JPS60218139A (ja) | 1985-10-31 |
JPH0449141B2 true JPH0449141B2 (ja) | 1992-08-10 |
Family
ID=13499387
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP59072785A Granted JPS60218139A (ja) | 1984-04-13 | 1984-04-13 | プログラム破壊検出方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS60218139A (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002236600A (ja) * | 2001-02-08 | 2002-08-23 | Nagano Fujitsu Component Kk | 演算装置及びその暴走検出方法 |
CN117220833B (zh) * | 2023-11-09 | 2024-01-26 | 新华三网络信息安全软件有限公司 | Crc计算电路、芯片、报文处理方法及网络安全设备 |
-
1984
- 1984-04-13 JP JP59072785A patent/JPS60218139A/ja active Granted
Also Published As
Publication number | Publication date |
---|---|
JPS60218139A (ja) | 1985-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69126498T2 (de) | Wiederherstellungsverfahren und Gerät für eine Pipeline-Verarbeitungseinheit eines Multiprozessor-systems | |
Namjoo et al. | Watchdog processors and capability checking | |
US6728668B1 (en) | Method and apparatus for simulated error injection for processor deconfiguration design verification | |
US5216672A (en) | Parallel diagnostic mode for testing computer memory | |
JPH0449141B2 (ja) | ||
JPS5840772B2 (ja) | デ−タ比較一致表示方式 | |
JPS6113626B2 (ja) | ||
JP2870202B2 (ja) | プロセッサ間相互監視方法及びその装置 | |
JPH05165680A (ja) | メモリ操作トレ−ス装置 | |
JP2702972B2 (ja) | メモリ初期設定方式 | |
JP2705401B2 (ja) | マルチプロセッサ制御方法 | |
JP2695775B2 (ja) | コンピュータシステムの誤動作からの復帰方法 | |
JPS6230656B2 (ja) | ||
JPS6257049A (ja) | 分散型プロセツサシステム | |
JPS6146535A (ja) | 擬似エラ−設定制御方式 | |
JPS59183443A (ja) | デバツグ装置 | |
JPH0149975B2 (ja) | ||
JPS60222944A (ja) | メモリパリテイエラ−処理方式 | |
JPS63284652A (ja) | 共有メモリのパトロ−ル診断方式 | |
JPS62166449A (ja) | 論理装置の履歴記憶装置 | |
JPH05289946A (ja) | メモリ制御方式 | |
JPH01282658A (ja) | 共通バス誤り検出方式 | |
JPS6210737A (ja) | 障害診断支援装置のリセツト回路 | |
JPH0253169A (ja) | マルチマイクロプロセッサシステムの故障検知装置 | |
JPH02235161A (ja) | 初期値設定有無の検出方式 |