JPH0784786A - プログラム実行制御方法 - Google Patents
プログラム実行制御方法Info
- Publication number
- JPH0784786A JPH0784786A JP24999293A JP24999293A JPH0784786A JP H0784786 A JPH0784786 A JP H0784786A JP 24999293 A JP24999293 A JP 24999293A JP 24999293 A JP24999293 A JP 24999293A JP H0784786 A JPH0784786 A JP H0784786A
- Authority
- JP
- Japan
- Prior art keywords
- subroutine
- routine
- sub
- processing
- program execution
- 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
Links
Landscapes
- Executing Machine-Instructions (AREA)
Abstract
(57)【要約】
【目的】 ノイズ・静電気等による暴走等の異常処理を
防止させることが可能なプログラム実行制御方法を実現
する。 【構成】 制御装置は、装置全体の制御並びにプログラ
ム実行処理を含む各種のデータ処理を行なうCPU11
と、メインルーチンプログラム、サブルーチンI、サブ
ルーチンII及びサブルーチンIIIからなるプログラムメ
モリ12と、演算処理中のデータを一時的に記憶するワ
ークメモリ13と、サブルーチンI、サブルーチンII及
びサブルーチンIIIからの全ての戻り番地を記憶するサ
ブルーチン別テーブル14とを備え、サブルーチン別テ
ーブル14に予めサブルーチンI、サブルーチンII及び
サブルーチンIIIからの戻り番地を全て記憶しておくと
ともに、サブルーチン処理を行なう前に、戻り番地がサ
ブルーチン別テーブル14に記憶されているかをチェッ
クし、戻り番地がサブルーチン別テーブル14に記憶さ
れていないときは異常動作によるサブルーチン呼出しと
してリセット等の処理を行なう。
防止させることが可能なプログラム実行制御方法を実現
する。 【構成】 制御装置は、装置全体の制御並びにプログラ
ム実行処理を含む各種のデータ処理を行なうCPU11
と、メインルーチンプログラム、サブルーチンI、サブ
ルーチンII及びサブルーチンIIIからなるプログラムメ
モリ12と、演算処理中のデータを一時的に記憶するワ
ークメモリ13と、サブルーチンI、サブルーチンII及
びサブルーチンIIIからの全ての戻り番地を記憶するサ
ブルーチン別テーブル14とを備え、サブルーチン別テ
ーブル14に予めサブルーチンI、サブルーチンII及び
サブルーチンIIIからの戻り番地を全て記憶しておくと
ともに、サブルーチン処理を行なう前に、戻り番地がサ
ブルーチン別テーブル14に記憶されているかをチェッ
クし、戻り番地がサブルーチン別テーブル14に記憶さ
れていないときは異常動作によるサブルーチン呼出しと
してリセット等の処理を行なう。
Description
【0001】
【産業上の利用分野】本発明は、プログラム実行制御方
法に係り、詳細には、プログラムの異常処理を防止可能
なプログラム実行制御方法に関する。
法に係り、詳細には、プログラムの異常処理を防止可能
なプログラム実行制御方法に関する。
【0002】
【従来の技術】割込みとは、計算機がプログラム実行中
に発生した非同期的な、または例外的な事象に応答する
ため、実行中のプログラムを強制的に一時中断し、指定
されたルーチンに自動的に制御を移すことである。その
際、割込み時点で実行中のプログラムを後に再起動でき
るようにCPU状態を自動的に保存する。割込みの原因
は、ハードウェア要因かソフトウェア要因かによって分
類することができる。入出力動作の終了通知や各種装置
の故障の通知などはハードウェア要因によるものであ
り、制御プログラムの呼び出しや演算によるオーバーフ
ローなどはソフトウェア要因によるものである。また、
割込み発生の要因が割込み発生時点で実行中のプログラ
ムと関連があるか否かによって分類することもできる。
に発生した非同期的な、または例外的な事象に応答する
ため、実行中のプログラムを強制的に一時中断し、指定
されたルーチンに自動的に制御を移すことである。その
際、割込み時点で実行中のプログラムを後に再起動でき
るようにCPU状態を自動的に保存する。割込みの原因
は、ハードウェア要因かソフトウェア要因かによって分
類することができる。入出力動作の終了通知や各種装置
の故障の通知などはハードウェア要因によるものであ
り、制御プログラムの呼び出しや演算によるオーバーフ
ローなどはソフトウェア要因によるものである。また、
割込み発生の要因が割込み発生時点で実行中のプログラ
ムと関連があるか否かによって分類することもできる。
【0003】
【発明が解決しようとする課題】上記割込みの場合と同
様に、メインルーチン実行時に、特定の処理を実行可能
なサブルーチンを呼び出して実行し、サブルーチン処理
終了後、メインルーチンに戻ってメインルーチン処理を
継続する。ところが、ノイズ・静電気等による異常動作
によってサブルーチン呼び出しが行なわれるようなこと
があると、復帰先が特定できないこと等により暴走によ
る異常処理が発生してしまうことがある。すなわち、従
来のサブルーチン処理では、ノイズ・静電気等による異
常動作によってサブルーチン呼び出しが行なわれてしま
うことまでは考慮されておらず異常処理を防止すること
はできなかった。
様に、メインルーチン実行時に、特定の処理を実行可能
なサブルーチンを呼び出して実行し、サブルーチン処理
終了後、メインルーチンに戻ってメインルーチン処理を
継続する。ところが、ノイズ・静電気等による異常動作
によってサブルーチン呼び出しが行なわれるようなこと
があると、復帰先が特定できないこと等により暴走によ
る異常処理が発生してしまうことがある。すなわち、従
来のサブルーチン処理では、ノイズ・静電気等による異
常動作によってサブルーチン呼び出しが行なわれてしま
うことまでは考慮されておらず異常処理を防止すること
はできなかった。
【0004】そこで本発明は、ノイズ・静電気等による
暴走等の異常処理を防止させることが可能なプログラム
実行制御方法を提供することを目的としている。
暴走等の異常処理を防止させることが可能なプログラム
実行制御方法を提供することを目的としている。
【0005】
【課題を解決するための手段】本発明は、上記目的達成
のため、予め記憶されているルーチンに従って一連のプ
ログラムを実行する際のプログラム実行制御方法であっ
て、サブルーチンからメインルーチンに戻る際に、メイ
ンルーチン上におけるその戻り番地をチェックし、この
チェックした番地を、上記サブルーチンに対応して所定
のテーブルメモリ内に記憶されていた全ての戻り番地と
比較し、一致がない場合には、サブルーチンの異常実行
とみなして処理を終了するようにしている。
のため、予め記憶されているルーチンに従って一連のプ
ログラムを実行する際のプログラム実行制御方法であっ
て、サブルーチンからメインルーチンに戻る際に、メイ
ンルーチン上におけるその戻り番地をチェックし、この
チェックした番地を、上記サブルーチンに対応して所定
のテーブルメモリ内に記憶されていた全ての戻り番地と
比較し、一致がない場合には、サブルーチンの異常実行
とみなして処理を終了するようにしている。
【0006】
【作用】本発明では、まず、テーブルメモリには予めサ
ブルーチンからの戻り番地を全て記憶されているものと
する。
ブルーチンからの戻り番地を全て記憶されているものと
する。
【0007】サブルーチン処理を行なうとき、サブルー
チンからメインルーチンに戻る際に、メインルーチン上
におけるその戻り番地がチェックされ、テーブルメモリ
内に記憶されていた全ての戻り番地と比較される。そし
て、その戻り番地がテーブルメモリ内に記憶されていた
戻り番地と一致すると通常にサブルーチンからメインル
ーチンに復帰させ、一致がない場合には、サブルーチン
の異常実行とみなして処理を終了(例えば、リセット)
させる。
チンからメインルーチンに戻る際に、メインルーチン上
におけるその戻り番地がチェックされ、テーブルメモリ
内に記憶されていた全ての戻り番地と比較される。そし
て、その戻り番地がテーブルメモリ内に記憶されていた
戻り番地と一致すると通常にサブルーチンからメインル
ーチンに復帰させ、一致がない場合には、サブルーチン
の異常実行とみなして処理を終了(例えば、リセット)
させる。
【0008】したがって、ノイズ・静電気等による暴走
による異常処理を防止することができる。
による異常処理を防止することができる。
【0009】
【実施例】以下、図1〜図3を参照して実施例を説明す
る。
る。
【0010】図1〜図3はプログラム実行制御方法の一
実施例を示す図であり、本実施例はプログラム実行制御
方法を制御装置に適用した例である。
実施例を示す図であり、本実施例はプログラム実行制御
方法を制御装置に適用した例である。
【0011】先ず、構成を説明する。図1は制御装置の
ブロック図である。この図において、11は装置全体の
制御、並びに後述するプログラム実行処理を含む各種の
データ処理を行うCPU(Central Processing Unit)で
あり、CPU11は図示しないROMに格納されている
マイクロプログラムに従って制御装置の各種の動作を制
御する。CPU11には、メインルーチンプログラム、
サブルーチンI、サブルーチンII及びサブルーチンIIIか
らなるプログラムメモリ12と、演算処理中のデータを
一時的に記憶するワークメモリ13と、サブルーチン
I、サブルーチンII及びサブルーチンIIIからの全ての戻
り番地を記憶するサブルーチン別テーブル14とがそれ
ぞれ接続されている。
ブロック図である。この図において、11は装置全体の
制御、並びに後述するプログラム実行処理を含む各種の
データ処理を行うCPU(Central Processing Unit)で
あり、CPU11は図示しないROMに格納されている
マイクロプログラムに従って制御装置の各種の動作を制
御する。CPU11には、メインルーチンプログラム、
サブルーチンI、サブルーチンII及びサブルーチンIIIか
らなるプログラムメモリ12と、演算処理中のデータを
一時的に記憶するワークメモリ13と、サブルーチン
I、サブルーチンII及びサブルーチンIIIからの全ての戻
り番地を記憶するサブルーチン別テーブル14とがそれ
ぞれ接続されている。
【0012】サブルーチン別テーブル14は、予めサブ
ルーチンI、サブルーチンII及びサブルーチンIIIからの
戻り番地を全て記憶したテーブルである。
ルーチンI、サブルーチンII及びサブルーチンIIIからの
戻り番地を全て記憶したテーブルである。
【0013】次に、本実施例の動作を説明する。
【0014】まず、本実施例のプログラム実行制御方法
のルーチンの基本的な流れを図2に示すフローチャート
に基づいて述べる。
のルーチンの基本的な流れを図2に示すフローチャート
に基づいて述べる。
【0015】いま、メインルーチン実行中にサブルーチ
ンコールがあると(ステップS1)、コールされたサブ
ルーチンに移行してそのサブルーチンを実行し(ステッ
プS2)、そのサブルーチン処理が終了するとサブルー
チンコールがあった時点のメインルーチンに復帰する
(ステップS3)。
ンコールがあると(ステップS1)、コールされたサブ
ルーチンに移行してそのサブルーチンを実行し(ステッ
プS2)、そのサブルーチン処理が終了するとサブルー
チンコールがあった時点のメインルーチンに復帰する
(ステップS3)。
【0016】図3は上記サブルーチン処理を実行する際
のサブルーチンチェック処理のフローチャートである。
のサブルーチンチェック処理のフローチャートである。
【0017】まずステップS11で現在における戻り番
地をチェックし、ステップS12で現在のサブルーチン
番号に対応したテーブル情報(戻り番地)を読み出す。
次いで、ステップS13でチェックした戻り番地と検出
したテーブル情報との一致をチェックし、ステップS1
4で戻り番地と検出したテーブル情報との一致があるか
否かを判別する。戻り番地と検出したテーブル情報との
一致があるときは正常なサブルーチン実行であると判断
してステップS15でサブルーチン処理を実行し、サブ
ルーチン処理終了後メインルーチンに復帰する。
地をチェックし、ステップS12で現在のサブルーチン
番号に対応したテーブル情報(戻り番地)を読み出す。
次いで、ステップS13でチェックした戻り番地と検出
したテーブル情報との一致をチェックし、ステップS1
4で戻り番地と検出したテーブル情報との一致があるか
否かを判別する。戻り番地と検出したテーブル情報との
一致があるときは正常なサブルーチン実行であると判断
してステップS15でサブルーチン処理を実行し、サブ
ルーチン処理終了後メインルーチンに復帰する。
【0018】一方、戻り番地と検出したテーブル情報と
の一致がないときは異常動作によるサブルーチン呼び出
しであると判断してステップS16でリセット処理を行
なってメインルーチンの先頭へ復帰する。
の一致がないときは異常動作によるサブルーチン呼び出
しであると判断してステップS16でリセット処理を行
なってメインルーチンの先頭へ復帰する。
【0019】以上説明したように、本実施例の制御装置
は、装置全体の制御並びにプログラム実行処理を含む各
種のデータ処理を行なうCPU11と、メインルーチン
プログラム、サブルーチンI、サブルーチンII及びサブ
ルーチンIIIからなるプログラムメモリ12と、演算処
理中のデータを一時的に記憶するワークメモリ13と、
サブルーチンI、サブルーチンII及びサブルーチンIIIか
らの全ての戻り番地を記憶するサブルーチン別テーブル
14とを備え、サブルーチン別テーブル14に予めサブ
ルーチンI、サブルーチンII及びサブルーチンIIIからの
戻り番地を全て記憶しておくとともに、サブルーチン処
理を行なう前に、戻り番地がサブルーチン別テーブル1
4に記憶されているかをチェックし、戻り番地がサブル
ーチン別テーブル14に記憶されていないときは異常動
作によるサブルーチン呼出しとしてリセット等の処理を
行なっているので、ノイズ・静電気等による暴走による
異常処理を防止することができる。
は、装置全体の制御並びにプログラム実行処理を含む各
種のデータ処理を行なうCPU11と、メインルーチン
プログラム、サブルーチンI、サブルーチンII及びサブ
ルーチンIIIからなるプログラムメモリ12と、演算処
理中のデータを一時的に記憶するワークメモリ13と、
サブルーチンI、サブルーチンII及びサブルーチンIIIか
らの全ての戻り番地を記憶するサブルーチン別テーブル
14とを備え、サブルーチン別テーブル14に予めサブ
ルーチンI、サブルーチンII及びサブルーチンIIIからの
戻り番地を全て記憶しておくとともに、サブルーチン処
理を行なう前に、戻り番地がサブルーチン別テーブル1
4に記憶されているかをチェックし、戻り番地がサブル
ーチン別テーブル14に記憶されていないときは異常動
作によるサブルーチン呼出しとしてリセット等の処理を
行なっているので、ノイズ・静電気等による暴走による
異常処理を防止することができる。
【0020】なお、本実施例では、上記チェックルーチ
ンをサブルーチン処理の前に行なっているが、これに限
らず、サブルーチン処理の最後に行なってもよく、更に
はサブルーチン処理の前後で行なうようにしてもよい。
ンをサブルーチン処理の前に行なっているが、これに限
らず、サブルーチン処理の最後に行なってもよく、更に
はサブルーチン処理の前後で行なうようにしてもよい。
【0021】また、本実施例では、プログラム実行制御
方法を制御装置に適用した例であるが、これには限定さ
れず、予め記憶されているルーチンに従って一連のプロ
グラムを実行する際のプログラム実行制御方法であれば
どのような制御方法にも適用できることは言うまでもな
い。
方法を制御装置に適用した例であるが、これには限定さ
れず、予め記憶されているルーチンに従って一連のプロ
グラムを実行する際のプログラム実行制御方法であれば
どのような制御方法にも適用できることは言うまでもな
い。
【0022】また、制御装置を構成する回路や素子、そ
の種類などは前述した実施例に限られないことは言うま
でもない。
の種類などは前述した実施例に限られないことは言うま
でもない。
【0023】
【発明の効果】本発明によれば、サブルーチンからメイ
ンルーチンに戻る際に、メインルーチン上におけるその
戻り番地をチェックし、このチェックした番地を、上記
サブルーチンに対応して所定のテーブルメモリ内に記憶
されていた全ての戻り番地と比較し、一致がない場合に
は、サブルーチンの異常実行とみなして処理を終了する
ようにしているので、ノイズ・静電気等による暴走等の
異常処理を防止することができる。
ンルーチンに戻る際に、メインルーチン上におけるその
戻り番地をチェックし、このチェックした番地を、上記
サブルーチンに対応して所定のテーブルメモリ内に記憶
されていた全ての戻り番地と比較し、一致がない場合に
は、サブルーチンの異常実行とみなして処理を終了する
ようにしているので、ノイズ・静電気等による暴走等の
異常処理を防止することができる。
【図1】本発明に係るプログラム実行制御方法の一実施
例の制御装置のブロック構成図である。
例の制御装置のブロック構成図である。
【図2】同実施例のルーチンの基本的な流れを示すフロ
ーチャートである。
ーチャートである。
【図3】同実施例のサブルーチン処理を実行する際のサ
ブルーチンチェック処理のフローチャートである。
ブルーチンチェック処理のフローチャートである。
11 CPU 12 プログラムメモリ 13 ワークメモリ 14 サブルーチン別テーブル
Claims (1)
- 【請求項1】 予め記憶されているルーチンに従って一
連のプログラムを実行する際のプログラム実行制御方法
であって、 サブルーチンからメインルーチンに戻る際に、メインル
ーチン上におけるその戻り番地をチェックし、 このチェックした番地を、上記サブルーチンに対応して
所定のテーブルメモリ内に記憶されていた全ての戻り番
地と比較し、 一致がない場合には、サブルーチンの異常実行とみなし
て処理を終了するようにしたことを特徴とするプログラ
ム実行制御方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP24999293A JPH0784786A (ja) | 1993-09-09 | 1993-09-09 | プログラム実行制御方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP24999293A JPH0784786A (ja) | 1993-09-09 | 1993-09-09 | プログラム実行制御方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0784786A true JPH0784786A (ja) | 1995-03-31 |
Family
ID=17201232
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP24999293A Pending JPH0784786A (ja) | 1993-09-09 | 1993-09-09 | プログラム実行制御方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0784786A (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2003510684A (ja) * | 1999-09-20 | 2003-03-18 | ギーゼッケ ウント デフリエント ゲーエムベーハー | プログラム実行を保護するための方法 |
| KR100917370B1 (ko) * | 2005-11-30 | 2009-09-16 | 후지제롯쿠스 가부시끼가이샤 | 프로그램을 저장한 컴퓨터 판독 가능 매체, 프로그램을실행하는 정보 처리 장치, 및 프로그램을 실행하기 위한프로그램 제어 방법 |
-
1993
- 1993-09-09 JP JP24999293A patent/JPH0784786A/ja active Pending
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2003510684A (ja) * | 1999-09-20 | 2003-03-18 | ギーゼッケ ウント デフリエント ゲーエムベーハー | プログラム実行を保護するための方法 |
| KR100917370B1 (ko) * | 2005-11-30 | 2009-09-16 | 후지제롯쿠스 가부시끼가이샤 | 프로그램을 저장한 컴퓨터 판독 가능 매체, 프로그램을실행하는 정보 처리 장치, 및 프로그램을 실행하기 위한프로그램 제어 방법 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP1189137A1 (en) | Interruption managing device and interruption managing method | |
| US7752507B2 (en) | Circuit arrangement and method for supporting and monitoring a microcontroller | |
| JPH0784786A (ja) | プログラム実行制御方法 | |
| EP0417916A2 (en) | Procedure state descriptor system for digital data processors | |
| JPS6136665B2 (ja) | ||
| GB2030331A (en) | Real-time Data Processing System for Processing Time Period Commands | |
| JP2757768B2 (ja) | 会話処理におけるデータベース条件検索結果引継ぎ方式 | |
| JP3185780B2 (ja) | システム監視装置及びその方法 | |
| JPH06282353A (ja) | 時間短縮機能を有するタイマ装置 | |
| JP3008890B2 (ja) | 処理制御装置 | |
| JPS6118045A (ja) | プログラムの暴走検出方式 | |
| JPH05313916A (ja) | 電子計算機における割込み処理方法及び電子計算機 | |
| JPS58142451A (ja) | 割込制御方式 | |
| JPS63109545A (ja) | ハ−ドウエアの自己診断方式 | |
| JPS59144955A (ja) | 情報処理装置 | |
| JP2683274B2 (ja) | 関数トレース出力方式 | |
| JPH064356A (ja) | ソフトウエアの異常動作検出方式 | |
| JPH03208132A (ja) | シングルチツプマイクロコンピユータ | |
| JPH0564933U (ja) | 電子計算機 | |
| JPS60101646A (ja) | 割込み処理方法 | |
| JPH0573325A (ja) | プログラムロード方式 | |
| JPH02170239A (ja) | 入出力エラー処理方式 | |
| JPH07334376A (ja) | マイクロプロセッサ及びマルチタスク管理方法 | |
| JPS5935241A (ja) | 割込み制御方式 | |
| JPH0527963A (ja) | 異種の浮動小数点演算命令の同時サポート方法 |