JPS6158054A - プログラムの暴走検出方式 - Google Patents

プログラムの暴走検出方式

Info

Publication number
JPS6158054A
JPS6158054A JP59179103A JP17910384A JPS6158054A JP S6158054 A JPS6158054 A JP S6158054A JP 59179103 A JP59179103 A JP 59179103A JP 17910384 A JP17910384 A JP 17910384A JP S6158054 A JPS6158054 A JP S6158054A
Authority
JP
Japan
Prior art keywords
program
range
address
processor
executed
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.)
Pending
Application number
JP59179103A
Other languages
English (en)
Inventor
Hiroyuki Sakakibara
裕之 榊原
Tatsu Takahata
高畑 達
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.)
Fuji Electric Co Ltd
Fuji Facom Corp
Original Assignee
Fuji Electric Co Ltd
Fuji Facom 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 Fuji Electric Co Ltd, Fuji Facom Corp filed Critical Fuji Electric Co Ltd
Priority to JP59179103A priority Critical patent/JPS6158054A/ja
Publication of JPS6158054A publication Critical patent/JPS6158054A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0763Error or fault detection not based on redundancy by bit configuration check, e.g. of formats or tags

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)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 この発明は、プログラムの暴走検出方式に関し、特に、
マイクロプロセッサを用いた清報処理システムにおいて
、簡単なハードウェアにより、プログラムの暴走を早期
に検出できるようなプログラムの暴走検出方式に関する
ものである。
〔従来の技術〕
マイクロプロセッサ等のプロセッサを用いた情報処理シ
ステムにあっては、そのハードウェアの故障とか、プロ
グラム等のソフトウェアのミス等により実行しているプ
ログラムが暴走して、あらかじめ考えられた制御が正し
く実行されないことが生じる。
従来、このようなプログラムの暴走を検知する方法とし
ては、パリティチェック方式とか、プログラムが格納さ
れていないアドレスから命令をフェッチしたことを検出
する方式とか、プログラムで常時リフレッシュし、その
間隔が一定時間以上空いたことを検出するウオッチドグ
タイマ方式などが一般的に用いられ、または併用されて
いる。
しかしながら、プログラムが領域外をアクセスした場合
でも、そこがメモリのデータ領域等であれば、そのプロ
セッサは、その番地の内容をプログラムの命令として読
出し、実行してしまうため、実1際にプログラムの暴走
を検出したときには、プログラムの領域外をアクセスし
た時点から、かなりの時間が経過してしまうこともあっ
て、その間にメモリ上のデータを破壊したり、誤出力を
行ったりする恐れがあり、問題となる。
また、このようなときには、その時の退避情報も暴走の
原因究明には役立たないことになる場合も多いという欠
点がある。
〔発明の目的〕
この発明は、このような問題又は欠点にかんがみてなさ
れたものであって、このような問題又は欠点を解決する
とともに、N単なハードウェアによって、プログラムの
暴走を最小限に食止めることができ、暴走原因を探し出
し易いようなプログラムの暴走検出方式を提供すること
を目的とする。
〔問題点を解決する手段〕
この発明は、プログラムの走行範囲及びデータ領域等の
実際のメモリ使用範囲を各プログラムごとにプログラム
範囲設定レジスタに設定して、その設定領域外をプロセ
ッサがアクセスした際に、マイクロプロセッサ又は外部
装置等に異常を、異常割込等の手段を使用して通知し、
プログラムの暴走を直ちに停止させ、必要に応じて、各
システムにおいてその対応処理を早期に行うというもの
である。
しかして、このような問題又は欠点を解決し、この目的
を達成するために採るこの発明のプログラムの暴走検出
方式における手段は、実行すべき所定のプログラムの使
用アドレス範囲の先頭アドレス位置と最終アドレス位置
とを記憶する記憶部と、プログラムが走行されたときに
、この記憶部に記憶されたアドレスの範囲を越えてアク
セスがなされたか否かを判定する判定部とを備えるとい
うものである。
〔作用〕
このように構成することにより、各プログラムごとの先
頭等において、そのプログラムの実際のメモリ使用範囲
を設定するようにすれば、プロセッサがそのプログラム
の実行において、その設定範囲外をアクセスした時に、
プロセッサ又は外部装置に直ちに異常割込等の手段で異
常を知らせることができる。
その結果、プログラムの暴走を最小限に食止めるととも
に、暴走の原因を探し出し易くし、また、システムの信
頼性の向上とシステム異常時におけるその原因の追求及
びその対応をいっそう容易にすることが可能となる。
〔実施例〕
以下、この発明の一実施例について図面に基づいて詳細
に説明する。
第1図は、この発明を適用して情報処理装置の要部のブ
ロック図である。
1は、プロセッサであって、プロセッサ1は、アドレス
バス7、データバス8を介してプログラム範囲設定レジ
スタ2をアクセスする。そして、メモリ5に記憶された
実行されるべきあるプログラムの先頭位置において、プ
ログラムRF 設定レジスタ2に、そのプログラムが実
行された場合のアドレス範囲のうちの先頭位置のアドレ
スと最終位置のアドレスとをセットする。
プログラム範囲設定レジスタ2は、あるプログラムのア
ドレス範囲が設定されると、これに応・して制御回路3
に対して比較有効信号12を送出して制御回路3を起動
し、さらに比較器4に対して、セットされたこれとのア
ドレスj11 報を送出する。
さて、プログラムが実行されると、プロセッサ1が、メ
モリ5上の命令をフェッチするタイミングで制御回路3
にプロセッサ1から制御信号が発生して、制御回路3か
ら比較器4に比較許可信号9が送出される。
その結果、比較器4でアドレスバス7から現在のアドレ
スが読込まれて、現在のアドレスが、設定された先頭ア
ドレス及び最終アドレスと比較される。ここでの比較の
結果、プロセンサlが設定されたアドレスの範囲外をア
クセスした場合には、比較器4からプロセッサ1に対し
て異常割込み信号10が送出される。
この異常割込み信号10を受けたプロセッサ1は、その
異常割込処理内で、各レジスタの値を退避させる等の処
理を行う。そしてそのプログラムの実行を停止する。
次に、以上のアドレス範囲の設定をタスク処理にて行な
う場合の一例について第2図に従って説明する。
さて、システムのプログラムがモニタプログラム等によ
りタスク管理(プロセス処理単位で管理)されていると
すると、ステップ■で、このモニタプログラムMにより
、プログラム範囲設定レジスタ2をクリアし、比較有効
信号12を停止して、アドレス比較を無効とする。次に
、ステップ■で、各タスクの起動処理を行う。
起動されたタスクプログラムでは、例えば、タスクAで
は、ステップ■aで、タスクプログラムのプログラム範
囲をプログラム範囲設定レジスタ2に設定して、比較有
効信号12を発生し、アドレス比較を有効として、ステ
ップ■bで、対応するタスク対応の処理を実行して、ス
テップ■Cで、プログラム範囲設定レジスタ2の内容を
クリアし、比較有効信号12を停止して、アドレス比較
を無効にする。
同様な処理で所定のタスクとしてのタスクB。
タスクCが順次起動されて、タスク対応の処理が実行さ
れ、これらが終了するとモニタプログラムMのステップ
■へと移行して、モニタプログラムMのプログラム範囲
をプログラム範囲設定レジスタ2に設定し、比較を有効
として、モニタプログラムMの内容を実行する。
このように、そのタスクごとに、そのタスクの先頭で、
プログラムの走行範囲を設定してやることで、第1図の
比較有効信号12が出力され、各タスクの最終で、プロ
グラム範囲設定レジスタ2をクリアしてやることで、比
較有効信号12を落ちるようにすれば、異常を検出した
際には、異常が発生したタスクが明確に検知できること
になる。
また、モニタのプログラムにおいても、タスク起動前に
プログラム範囲設定レジスタ2をクリアし、タスク処理
終了後にモニタのプログラムに戻ってきた時点で、モニ
タのプログラム範囲を設定することで、システムにおけ
るプログラム全体の異常検出が可能となる。
ここで、異常が発生したときに、プログラム範囲設定レ
ジスタ2の値を読込みできるようにすれば、その設定値
によって、異常発生のプログラム範囲が発見できること
になる。
さて、第3図は、入出力制御装置とか、通信制御装置の
ようにインタフェース(又はチャネル)を介して他の計
算機等との間でデータ転送を行う装置にこの発明を適用
した場合の他の実施例である。なお、第1図と同一のも
のは、同一の符号で示す。
制御装置15は、入出力制御装置とか、通信制御装置の
ようにインタフェース(又はチャネル)を介して他の計
X113との間でデータ転送、データ交換を行う装置で
あって、制御装置15と、第1図に見るものとの構成上
の主な相違点は、インクフェース(又はチャネル)6を
介して外部バス11に接続されていて、これを介して、
計算機13との間でデータ交換等を行うことにある。な
お、14は、異常割込信号を外部バス11を介して計算
機13に通知するためのドライバーである。
ここで、プロセッサ1を内蔵する制御装置15は、計算
機13からメモリ5へのプログラムローディングによっ
て処理動作を規定されるものである。
そして、計算機13は、メモリ5ヘプログラムをローデ
ィングし、その後、プログラム範囲設定レジスタ2にロ
ーディングしたプログラムの先頭及び最終アドレスをセ
ットし、プロセッサ1に起動指令を与えて、プログラム
の実行を開始させる制御をする。
さて、この制御装置15において、プログラムが暴走し
、プログラム範囲設定レジスタ2に設定されたアドレス
範囲外でプロセッサ1が命令をチェックした場合、比較
器4より異常割込信号10が送出される。この異常割込
信号10は、プロセッサ1に異常を知らせるとともに、
外部バス11を通して、計算機13に対しても対CP[
J異常割込み信号16を上げる。
一方、制御装置15の異常を通知された計算機13は、
プログラムの再ローディング等の処理によって、制御装
置15を再起動して対応処理を再び実行させるものであ
る。
以上説明してきたが、実施例におけるプログラム範囲設
定レジスタは、アドレス情報を記憶する記憶部であれば
よい。また、比較器、制御回路等は、アドレスが所定の
範囲にあるか否かを判定する判定部であればよく、実施
例に限定されるものではない。
〔発明の効果〕
この発明によれば、あらかじめプログラムのアドレス範
囲を記憶部に設定して、プログラム範囲外をプロセッサ
がアクセスした場合に異常を検出するようにしているの
で、たとえプログラムが実行されてアクセスした箇所が
メモリ上であっても、そこがプログラム範囲外であれば
、直ちに異常を検出できる。その結果、プログラムの暴
走を最小限に食上めることができる。
また、プログラム範囲を設定する場合に、記・Lキ部と
してレジスタを利用すれば、プログラムの先頭等で自由
に自己プログラム範囲を設定でき、システムごとに入れ
るプログラム範囲の設定を指定し直すことも可能となる
。さらに、システムにおいて、現在走行しているプログ
ラム単位で8走検出の設定をすることができ、暴走原因
探索上より有効なものとなる。
したがって、システムの信頼性の向上とシステム異常時
におけるその原因の追求及びその対応をいっそう容易に
することが可能となる。
【図面の簡単な説明】
第1図は、この発明を適用した情報処理装置の要部のブ
ロック図、第2図は、タスク処理においてアドレス範囲
を設定する場合の処理の流れ図、第3図は、他の計算機
等との間でデータ転送を行う制御装置に適用した場合の
実施例のブロック図である。 1・−・プロセッサ、 2・・−プログラム範囲設定レ
ジスタ、 3−制御回路、 4−・−比較器、  5−
・メモリ、  6−インタフェース(チャネル)、7−
・アドレスバス、  8−・・データバス、  9−比
較許可信号、 10−・−異常割込み信号、11−・・
外部バス、 12−比較有効信号、13−計算機、  
14・−ドライバ、  15−制tftl装置、  1
6−・一対CPU異常割込み信号。 特許出願人 富士電機製造株式会社 冨士ファコム制御株式会社

Claims (2)

    【特許請求の範囲】
  1. (1)プロセッサを有する情報処理システムにおいて、
    実行すべき所定のプログラムの使用アドレス範囲の先頭
    アドレス位置と最終アドレス位置とを記憶する記憶部と
    、前記プログラムが走行されたときに、この記憶部に記
    憶されたアドレスの範囲を越えてアクセスがなされたか
    否かを判定する判定部とを備えることを特徴とするプロ
    グラムの暴走検出方式。
  2. (2)使用アドレス範囲は、命令語の記憶されたメモリ
    の範囲であって、記憶部はレジスタであり、判定部は、
    命令がファッチされたときのアドレスを比較することに
    よりなされることを特徴とする特許請求の範囲第1項記
    載のプログラムの暴走検出方式。
JP59179103A 1984-08-28 1984-08-28 プログラムの暴走検出方式 Pending JPS6158054A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP59179103A JPS6158054A (ja) 1984-08-28 1984-08-28 プログラムの暴走検出方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP59179103A JPS6158054A (ja) 1984-08-28 1984-08-28 プログラムの暴走検出方式

Publications (1)

Publication Number Publication Date
JPS6158054A true JPS6158054A (ja) 1986-03-25

Family

ID=16060076

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59179103A Pending JPS6158054A (ja) 1984-08-28 1984-08-28 プログラムの暴走検出方式

Country Status (1)

Country Link
JP (1) JPS6158054A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6441033A (en) * 1987-08-06 1989-02-13 Mitsubishi Electric Corp Data processor
JPS6441034A (en) * 1987-08-06 1989-02-13 Mitsubishi Electric Corp Data processor
JPH01263854A (ja) * 1988-04-15 1989-10-20 Nec Corp メモリパリティエラー判別方式
JPH02148343A (ja) * 1988-11-30 1990-06-07 Nec Corp メモリ・パリティ・エラー判別方式

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6441033A (en) * 1987-08-06 1989-02-13 Mitsubishi Electric Corp Data processor
JPS6441034A (en) * 1987-08-06 1989-02-13 Mitsubishi Electric Corp Data processor
JPH01263854A (ja) * 1988-04-15 1989-10-20 Nec Corp メモリパリティエラー判別方式
JPH02148343A (ja) * 1988-11-30 1990-06-07 Nec Corp メモリ・パリティ・エラー判別方式

Similar Documents

Publication Publication Date Title
US6112320A (en) Computer watchdog timer
JPH05257712A (ja) マイクロプロセッサ装置及び自動化停止状態再始動を実行させる方法
US6321289B1 (en) Apparatus for automatically notifying operating system level applications of the occurrence of system management events
US20060075158A1 (en) Information processing apparatus and data transfer control method
JPS6158054A (ja) プログラムの暴走検出方式
JPH03175537A (ja) デバッグ用マイクロプロセッサのエラー制御装置
JP3317361B2 (ja) メモリのバッテリバックアップ制御方式
WO1995034905A1 (en) Computer system with peripheral control functions integrated into host cpu
JPH0646380B2 (ja) 情報処理装置
JPH0149975B2 (ja)
JPH0430245A (ja) マルチプロセッサ制御方式
KR100238175B1 (ko) 버스 제어논리장치
JPS6111867A (ja) インタフエ−ス制御における異常処理方式
JPS63138437A (ja) プログラム制御システム
JPH0251742A (ja) プログラム暴走防止方式
JPS62209627A (ja) デ−タ処理装置
JPS6118045A (ja) プログラムの暴走検出方式
JP2504515B2 (ja) テスト・チャネル命令の実行制御方式
JP2835896B2 (ja) テストプログラムの実行制御方式
JPH0555905B2 (ja)
JPH0395634A (ja) 計算機システム再起動制御方式
JPS61267137A (ja) 割込み動作制御方式
JPS60205633A (ja) 計算機システム
JPH0664569B2 (ja) マイクロプログラムローディング方法
JPH02297629A (ja) マイクロコンピュータ