JPS6261127A - Method for preventing program from runaway - Google Patents
Method for preventing program from runawayInfo
- Publication number
- JPS6261127A JPS6261127A JP60199546A JP19954685A JPS6261127A JP S6261127 A JPS6261127 A JP S6261127A JP 60199546 A JP60199546 A JP 60199546A JP 19954685 A JP19954685 A JP 19954685A JP S6261127 A JPS6261127 A JP S6261127A
- Authority
- JP
- Japan
- Prior art keywords
- program
- processing
- runaway
- address
- processing routine
- 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
- 238000000034 method Methods 0.000 title claims description 11
- 230000009191 jumping Effects 0.000 abstract description 2
- 230000009545 invasion Effects 0.000 abstract 1
- 230000005856 abnormality Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
Landscapes
- Debugging And Monitoring (AREA)
Abstract
Description
【発明の詳細な説明】
(産業上の利用分野)
本発明は、計算機のプログラムの暴走回避方法に関する
。DETAILED DESCRIPTION OF THE INVENTION (Field of Industrial Application) The present invention relates to a method for avoiding runaway of a computer program.
(従来の技術)
計算機のプログラムカウンタがエラーを起こし命令格納
エリア外を指す命令が与えられた場合、或いは、この命
令が未定義命令である場合、計算機は暴走を起こしてし
まう。この暴走を防くために、プログラムカウンタがエ
ラーを起こし上記現象を生じた場合には、プログラムカ
ウンタがある指定されたアドレス内容へと更新されるよ
うに構成したものがある。(Prior Art) If the program counter of a computer causes an error and an instruction pointing outside the instruction storage area is given, or if this instruction is an undefined instruction, the computer will run out of control. In order to prevent this runaway, some devices are configured so that when the program counter causes an error and the above phenomenon occurs, the program counter is updated to the contents of a specified address.
(本発明が解決しようとする問題点)
上記従来例におけるプログラムの暴走回避方法において
は、プログラムカウンタがある指定されたアドレス内容
へと更新され、例えばプログラムのスター1〜アドレス
に戻れたとしても、暴走を開始したときのプログラムの
実行状態には復にisできず、接続された他の外部装置
又は本体制御装置に異常を発生させてしまう。(Problems to be Solved by the Present Invention) In the method for avoiding program runaway in the conventional example described above, even if the program counter is updated to the contents of a specified address and returns to the star 1 address of the program, for example, It is not possible to return to the state in which the program was running when the runaway started, and an abnormality occurs in other connected external devices or the main body control device.
本発明の目的は、ノイズ等を受けてプログラムが暴走し
かけても、暴走を開始したときのプログラムの実行状態
に復帰し、いままでの処理を実行し続けることができる
ようにすることである。An object of the present invention is to enable, even if a program starts to run out of control due to noise or the like, the program can return to the state in which the program was running when it started running out of control, and continue executing the previous processing.
(問題点を解決するだめの手段)
本発明のプログラムの暴走回避方法は、あらかじめ処理
ルーチンの先頭アドレスを記tαしてから該処理ルーチ
ンの処理を実行するようになし、プログラムが暴走しか
けた時には、上記記憶した先頭アドレスにジャンプして
プログラムの処理を継続するようにしたものである。(Means to Solve the Problem) The method of avoiding a program runaway according to the present invention is to write the start address of a processing routine in advance tα and then execute the processing of the processing routine, so that when the program is about to run away, , the program jumps to the first address stored above and continues processing the program.
(作用)
プログラムが暴走しかけても、あらかじめ記憶した先頭
アドレスをプログラムカウンタに再セットしてプログラ
ムの処理を継続することにより、暴走を開始したときの
処理ルーチンに復帰し、いままでの処理を実行し続ける
ことができる。(Function) Even if the program starts to run out of control, by resetting the pre-memorized start address to the program counter and continuing program processing, the program returns to the processing routine at which the runaway started and continues the previous processing. can continue to do so.
(実施例)
図は、本発明におけるプログラムの暴走回避方法を示す
フローチャートである。(Example) The figure is a flowchart showing a method for avoiding program runaway according to the present invention.
本発明に使用される計算機は、ROMから命令をフェッ
チする時、オペコードとして存在しない命令コードが読
み込まれると、TRAP割り込みを発生し、プログラム
カウンタをある指定されたアドレス内容に更新する機能
を有している。またプログラムは、複数の処理ルーチン
を連続して処理することにより所定の処理がなされるよ
うに構成されており、このうちの一部のプログラムを図
に示す。The computer used in the present invention has a function of generating a TRAP interrupt and updating the program counter to the contents of a specified address when a non-existing instruction code is read as an operation code when fetching an instruction from the ROM. ing. Further, the program is configured to perform a predetermined process by successively processing a plurality of processing routines, and some of these programs are shown in the figure.
図においては、一つの処理プログラムを抽象化して表わ
した、一つの処理ルーチンが示され、この処理が終了す
ると、次の処理ルーチンの先頭アドレスが一旦記憶され
、処理ルーチンの処理が開始される。この処理ルーチン
には、図に示すようにループが形成される場合もある。In the figure, one processing routine is shown as an abstract representation of one processing program. When this processing is completed, the start address of the next processing routine is temporarily stored, and the processing of the processing routine is started. In this processing routine, a loop may be formed as shown in the figure.
この処理ルーチンの終了後は、再び次の処理ルーチンの
先頭アドレスが記憶され、その処理ルーチンの処理が開
始される。そしてこれが次々と繰り返されて一つの処理
プログラムが処理されるものである。After this processing routine ends, the start address of the next processing routine is stored again, and the processing of that processing routine is started. This process is repeated one after another to process one processing program.
いま、ノイズ等の侵入によりプログラムが暴走しかける
と、このプログラムを実行している計算機内でTRAP
割り込みが発生し、ある指定されたプログラムアドレス
へと処理を移す。そこで、まず記憶しておいた処理ルー
チンの先頭アドレスがプログラムカウンタに再セントさ
れるように一度レジスタを呼び出し、次にスタックポイ
ンタを復帰し、上記レジスタ内容が示すアドレスにジャ
ンプする。従って、プログラムが魚走しかける前に実行
していた処理ルーチンの処理が、再び開始されることに
なり、プログラムの暴走を回避することができる。Now, if a program starts to run out of control due to intrusion of noise etc., TRAP will be executed in the computer running this program.
An interrupt occurs and processing moves to a specified program address. Therefore, first, the register is called once so that the start address of the stored processing routine is re-centred to the program counter, then the stack pointer is restored, and a jump is made to the address indicated by the contents of the register. Therefore, the processing routine that was being executed before the program started running is restarted, and runaway of the program can be avoided.
(発明の効果)
本発明によれば、プログラムが暴走しかけたとしても、
あらかじめ記憶しである先頭アドレスにジャンプするこ
とにより、プログラムの処理を継続することができるの
で、いままでの処理を実行し続けることができる。(Effects of the Invention) According to the present invention, even if the program is about to run out of control,
By jumping to the pre-stored start address, program processing can be continued, so the current processing can be continued.
図は本発明におけるプログラムの暴走回避方法を示すフ
ローチャートである。The figure is a flowchart showing a method for avoiding program runaway according to the present invention.
Claims (1)
によって更新しながら複数の処理ルーチンを連続して処
理することにより所定の処理がなされるように構成され
たプログラムの処理方法において、上記処理ルーチンの
先頭アドレスを記憶してから、該処理ルーチンの処理を
実行するようになし、プログラムが暴走した時には、上
記記憶した先頭アドレスへジャンプしてプログラムの処
理を継続するようにしたことを特徴とするプログラムの
暴走回避方法In a program processing method configured such that a predetermined process is performed by successively processing a plurality of processing routines while updating the program address currently being processed by a program counter, the start address of the processing routine is stored. A method for avoiding a runaway of a program, characterized in that the program executes the processing of the processing routine after the runaway, and when the program runs out of control, jumps to the above-mentioned stored start address and continues the program processing.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP60199546A JPS6261127A (en) | 1985-09-11 | 1985-09-11 | Method for preventing program from runaway |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP60199546A JPS6261127A (en) | 1985-09-11 | 1985-09-11 | Method for preventing program from runaway |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS6261127A true JPS6261127A (en) | 1987-03-17 |
Family
ID=16409623
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP60199546A Pending JPS6261127A (en) | 1985-09-11 | 1985-09-11 | Method for preventing program from runaway |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS6261127A (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS58149547A (en) * | 1982-03-01 | 1983-09-05 | Hitachi Constr Mach Co Ltd | Safety device for controller |
JPS6048545A (en) * | 1983-08-26 | 1985-03-16 | Nec Corp | Microcomputer |
-
1985
- 1985-09-11 JP JP60199546A patent/JPS6261127A/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS58149547A (en) * | 1982-03-01 | 1983-09-05 | Hitachi Constr Mach Co Ltd | Safety device for controller |
JPS6048545A (en) * | 1983-08-26 | 1985-03-16 | Nec Corp | Microcomputer |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4763296A (en) | Watchdog timer | |
JP2526688B2 (en) | Programmable controller and partial execution method of sequence program | |
EP2548115A1 (en) | Apparatus and method for handling exception events | |
US4652997A (en) | Method and apparatus for minimizing overhead when executing nested do loops | |
JPS6261127A (en) | Method for preventing program from runaway | |
JP2003507815A (en) | Interrupt service with save and return flags | |
JPH01286029A (en) | Microprogram patching system | |
JPS62262146A (en) | Processor | |
JPS5826043B2 (en) | Processor reset method | |
JPS60124746A (en) | Data processing unit | |
JPH0683652A (en) | Microcomputer system | |
KR100329780B1 (en) | Interrupt processing apparatus reducing interrupt response time | |
JPH04205144A (en) | Microprocessor | |
KR0160681B1 (en) | Robot control method | |
JPS61264444A (en) | Data processing system for central processing unit | |
JPS62107338A (en) | Error correction and control system for control memory | |
JPS6353649A (en) | Interrupt control system | |
JPH02304624A (en) | Information processor | |
JPH0251742A (en) | Preventing system for program runaway | |
JPS63120340A (en) | Data processor | |
JPS60214046A (en) | Control system for abnormal end processing | |
JPH01214934A (en) | System for detecting indirect recursive calling of program | |
JPS638841A (en) | Interruption accepting system | |
JPH02263243A (en) | Runaway processor for computer | |
JPH01116833A (en) | Interruption processing system |