JPH05189255A - プログラム暴走検知方法 - Google Patents

プログラム暴走検知方法

Info

Publication number
JPH05189255A
JPH05189255A JP4004506A JP450692A JPH05189255A JP H05189255 A JPH05189255 A JP H05189255A JP 4004506 A JP4004506 A JP 4004506A JP 450692 A JP450692 A JP 450692A JP H05189255 A JPH05189255 A JP H05189255A
Authority
JP
Japan
Prior art keywords
module
program
module number
address
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
JP4004506A
Other languages
English (en)
Inventor
Takuro Tokuyama
琢郎 徳山
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP4004506A priority Critical patent/JPH05189255A/ja
Publication of JPH05189255A publication Critical patent/JPH05189255A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 【目的】 計算機システムにおいて、プログラムが暴走
状態にあることを検知して、計算機システムの状態を回
復できる。 【構成】 あるモジュールが呼び出された時に、そのモ
ジュール番号を現在実行中のモジュール番号として保存
し、一定時間毎に、現在実行中のアドレスが保存したモ
ジュール番号のモジュールのアドレスとして正当である
か否かをチェックし、プログラムが暴走していることを
検知する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、計算機システム等に使
用するプログラム暴走の検知方法に関する。
【0002】
【従来の技術】従来の計算機システムでは、プログラム
の暴走を検知する機構を持たない。
【0003】
【発明が解決しようとする課題】上記従来の計算機シス
テムでは、プログラムの暴走を検知する機構を持たない
ため、異常なアドレスの実行によりシステムが停止した
り、システムが応答不能になるといった、致命的かつ回
復不可能な状態に陥るまでプログラムの暴走を検知する
ことができない。
【0004】本発明は、このような従来の問題を解決す
るものであり、システムが致命的かつ回復不可能な状態
に陥る前にプログラムの暴走を検知し、システムの状態
を回復できるような優れたプログラム暴走検知方法を提
供することである。
【0005】
【課題を解決するための手段】本発明は、上記目的を達
成するために、各モジュールに固有のモジュール番号を
付加し、現在実行中のモジュールのモジュール番号を記
憶する部分と、モジュール番号とモジュールがメモリ上
で占める領域の開始アドレスと領域の大きさの対応を検
索するための対応表をもち、一定時間毎に現在実行中の
アドレスが現在実行中のモジュールのモジュール番号と
上記対応表より求めたメモリ領域に含まれているかどう
かの判定を行ない、プログラムが暴走しているか否かを
検知するようにしたものである。
【0006】
【作用】したがって、本発明によれば、一定時間毎にプ
ログラムが暴走状態に陥っているか否かを検知すること
ができるので、プログラムが致命的な状態に陥る前に障
害復旧処理を行なうことができるという効果を有する。
【0007】
【実施例】図2は本発明の第1の実施例に適用される計
算機システムの構成図である。図2において、21は中
央処理装置(以下、CPUという)であり、22はCP
U21中の汎用レジスタ(以下、R1 ,R2 ,R3 と呼
ぶ)であり、23はCPU21中のプログラムカウンタ
であり、24はスタック領域であり、25はメモリ領域
である。26はメモリ領域25に含まれるモジュール群
27のモジュール番号とモジュールの格納されているメ
モリ領域の開始アドレスと領域の大きさとの対応表であ
る。
【0008】図3の12は図2における対応の具体例を
示した図であり、モジュール番号、モジュール開始アド
レス、モジュールサイズ対応表を示している。また、図
4の13は実行中モジュール番号保存領域を示してい
る。
【0009】図5および図6は本発明の第1の実施例に
おけるプログラムのフローチャートである。図5におい
て、31は暴走中であるか否かを判定されるモジュール
であり、図6の32はモジュール31が暴走中であるか
否かを判定するモジュールである。
【0010】次に、上記第1の実施例の動作について説
明する。上記第1の実施例において、図1はこの第1の
実施例の動作原理を説明するためのフローチャートであ
り、まず、図1におけるステップS1で実行中のアドレ
スの読み出しを行い、ステップS2で図4に示す実行中
のモジュール番号13の読み出しを行い、ステップS3
で図3に示すモジュール番号、モジュール開始アドレ
ス、モジュールサイズ対応表12より実行開始アドレス
とモジュールのサイズを検索する。
【0011】このサイズの検索の結果、ステップS4で
実行中アドレスが範囲内にあるか否かの判断を行う。こ
の判断の結果、実行中アドレスが範囲内にある場合に
は、ステップS4のYES側からステップS5に進み、
正常とする。また、ステップS4で実行中アドレスが範
囲内になければ、ステップS4のNO側からステップS
6に進み、計算機システムのプログラムが異常であると
判定する。
【0012】次に、図5,図6により第1の実施例をさ
らに具体的に説明する。図5において、ステップS11
で他のモジュールより呼び出されたモジュールは、実行
中モジュール番号格納域中の呼び出し元のモジュール番
号をスタック24に保存し、ステップS12で自分のモ
ジュール番号を実行中モジュール番号格納域に格納し、
その後ステップS13で本来の処理を行なう。
【0013】本来の処理を行なっている部分の全般にわ
たって、ステップS14で一定時間毎に暴走検知のため
の割り込み処理を行ない、本来の処理が終了した後、ス
タックに保存した呼び出し元のモジュールのモジュール
番号を実行中モジュール番号格納域に格納してステップ
S15で呼び出し元のモジュールに制御を戻す。
【0014】また、図6に示す暴走検知のための割り込
み処理では、ステップS21で現在実行中のアドレスを
求め、汎用レジスタR1 に読み出し、ステップS22で
実行中モジュール番号格納域の値と上記対応表26より
求めたプログラム開始番地をレジスタR2 に代入し、プ
ログラム領域の大きさをR3 に代入する。
【0015】その後、ステップS23でレジスタR1
値からレジスタR2 の値を減算したものが負の値である
か、レジスタR3 以上である場合にはプログラムが暴走
していると判断し、ステップS23のNO側から分岐し
て、障害復帰処理を行ない、それ以外の場合はステップ
S23のYES側から抜けて割り込み処理を終了する。
このように、上記実施例によれば、プログラムが暴走
し、不正なアドレスを実行していることを、一定時間毎
に検知できるため、プログラムが致命的な状態に陥る前
にプログラムの暴走を検知することができ、障害復旧処
理等を実行することができるという利点を有する。
【0016】
【発明の効果】本発明は、上記実施例よりも明らかなよ
うに、モジュール番号とモジュールがメモリ上で占める
領域の開始アドレスと、領域の大きさの対応を検索する
ための対応表より求めたメモリ領域に、一定時間毎に現
在実行中のアドレスが現在実行中のモジュールのモジュ
ール番号に含まれているか否かの判定を行うようにし
て、プログラムが暴走し、異常なアドレスを実行してい
ることを検知できるようにして、プログラムが致命的な
状態に陥る前にプログラムの暴走を検知することができ
るため、障害復旧処理を実行することができるという効
果を有する。
【図面の簡単な説明】
【図1】本発明の第1の実施例におけるプログラム暴走
検知方法の動作原理を説明するためのフローチャート
【図2】本発明の第1の実施例が適用される計算機シス
テムの構成図
【図3】本発明の第1の実施例に適用されるモジュール
番号、モジュール開始アドレス、モジュールサイズ対応
表を示す説明図
【図4】本発明の第1の実施例に適用される実行中モジ
ュール番号保存領域を示す説明図
【図5】本発明の第1の実施例を説明するための被暴走
判定モジュールのためのフローチャート
【図6】本発明の第1の実施例を説明するための暴走判
定モジュールのためのフローチャート
【符号の説明】
11 暴走判定ルーチン 12 モジュール番号、モジュール開始アドレス、モジ
ュールサイズ対応表 13 実行中モジュール番号保存領域 21 CPU 22 汎用レジスタ 23 プログラムカウンタ 24 スタック 25 メモリ 26 モジュール番号、モジュール開始アドレス、モジ
ュールサイズ対応図 27 実行中モジュール番号格納領域 28 モジュール群 31 被暴走判定モジュールのフローチャート 32 暴走判定モジュールのフローチャート

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 プログラム中の各モジュールに一意に決
    まるモジュール番号を付加し、現在実行中のモジュール
    のモジュール番号を記憶し、モジュール番号に対応する
    各モジュールが占めるメモリ上の領域の開始アドレスと
    領域の大きさを対応表で記憶しておき、一定時間毎に現
    在実行中のアドレスが現在実行中のモジュール番号と上
    記対応表より求めたアドレスの範囲内に入っていない場
    合は、プログラムが暴走中であると判断することを特徴
    としたプログラム暴走検知方法。
JP4004506A 1992-01-14 1992-01-14 プログラム暴走検知方法 Pending JPH05189255A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4004506A JPH05189255A (ja) 1992-01-14 1992-01-14 プログラム暴走検知方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4004506A JPH05189255A (ja) 1992-01-14 1992-01-14 プログラム暴走検知方法

Publications (1)

Publication Number Publication Date
JPH05189255A true JPH05189255A (ja) 1993-07-30

Family

ID=11585943

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4004506A Pending JPH05189255A (ja) 1992-01-14 1992-01-14 プログラム暴走検知方法

Country Status (1)

Country Link
JP (1) JPH05189255A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008033890A (ja) * 2006-06-30 2008-02-14 Denso Corp マイクロコンピュータシステム
WO2010055562A1 (ja) * 2008-11-13 2010-05-20 富士通マイクロエレクトロニクス株式会社 マイクロコンピュータ
JP2012194786A (ja) * 2011-03-16 2012-10-11 Denso Corp プログラム実行状況監視装置、および実行状況監視プログラム

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008033890A (ja) * 2006-06-30 2008-02-14 Denso Corp マイクロコンピュータシステム
US8127183B2 (en) 2006-06-30 2012-02-28 Denso Corporation Microcomputer system
WO2010055562A1 (ja) * 2008-11-13 2010-05-20 富士通マイクロエレクトロニクス株式会社 マイクロコンピュータ
JP5115628B2 (ja) * 2008-11-13 2013-01-09 富士通セミコンダクター株式会社 マイクロコンピュータ
US8522081B2 (en) 2008-11-13 2013-08-27 Fujitsu Semiconductor Limited Microcomputer outputting failure detection result
JP2012194786A (ja) * 2011-03-16 2012-10-11 Denso Corp プログラム実行状況監視装置、および実行状況監視プログラム

Similar Documents

Publication Publication Date Title
KR970002637A (ko) 멀티프로세서 시스템
CN116382958B (zh) 一种内存错误的处理方法及计算设备
JPH0423160A (ja) 計算機システム
US4839895A (en) Early failure detection system for multiprocessor system
JPH05189255A (ja) プログラム暴走検知方法
JPH0594353A (ja) データベース管理方式
JPH04332055A (ja) プログラム暴走検知方法
JPH01286029A (ja) マイクロプログラムのパッチ方式
JP2001005693A (ja) 障害自動復旧システム、障害自動復旧方法および障害自動復旧用プログラムを記録した記録媒体
JPH05158804A (ja) Ramチェック方法
JPH08235075A (ja) 演算処理装置
JP3312494B2 (ja) データ処理装置
JPH04242832A (ja) 情報処理装置
JPH0564933U (ja) 電子計算機
JPS6143739B2 (ja)
JPH04178843A (ja) プログラムアボート自動対処方式
JPS6130296B2 (ja)
JPH01286028A (ja) マイクロプログラムのパッチ方式
JPH02280235A (ja) コンピュータシステムの中断方法
JPH02165352A (ja) ダンプ処理方式
JPH02310753A (ja) マイクロプログラム制御装置
JPH01161547A (ja) 動作状態記憶方法
JPH03263230A (ja) 保守装置
JPS62202237A (ja) 割込み制御方式
JPH04365145A (ja) メモリ障害処理方法