JPH03278243A - Debugging device - Google Patents

Debugging device

Info

Publication number
JPH03278243A
JPH03278243A JP2079865A JP7986590A JPH03278243A JP H03278243 A JPH03278243 A JP H03278243A JP 2079865 A JP2079865 A JP 2079865A JP 7986590 A JP7986590 A JP 7986590A JP H03278243 A JPH03278243 A JP H03278243A
Authority
JP
Japan
Prior art keywords
program
address
monitoring
command
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
Application number
JP2079865A
Other languages
Japanese (ja)
Inventor
Nobuko Tanimoto
谷本 伸子
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2079865A priority Critical patent/JPH03278243A/en
Publication of JPH03278243A publication Critical patent/JPH03278243A/en
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

PURPOSE:To monitor the run-away state of a program in debugging by providing the debugging device with an input means, a command identifying means, plural processing means including an address monitoring means for monitoring an address in each command and a monitoring information editing means, and a display means. CONSTITUTION:When an instruction having a segment value different from a stored segment value appears during the execution of a program, the execution of the program is stopped, the monitoring information editing means 104 executes the editing work of the address of a just preceding instruction, the contents of a register, etc., and sends the edited result to the display means 105. In addition to the segment values, the range of addresses is also stored, and when an instruction included other than the stored address range appears during the execution of the program, the program execution is stopped and the information is sent to the means 105.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はデバッグ装置に関する。[Detailed description of the invention] [Industrial application field] The present invention relates to a debug device.

〔従来の技術〕[Conventional technology]

従来、この種のデパック装置は、 プログラムを デバッグする為に、主に入力手段と、コマンド識別手段
と、処理手段として ■プログラムの実行■プログラム
を1行ずつ実行 ■レジスタの内容を表示 ■レジスタ
・メモリ変数の値をセット■ソースプログラムのリスト
を編集 ■ラインアセンブルを行う ■逆アセンブルを
行う ■ダンプ出力 ■ブレークポイントの設定及び解
除手段等と、表示手段とを有していた。
Conventionally, this type of depacking equipment has been used mainly as an input means, a command identification means, and a processing means in order to debug a program. ■ Execute the program. ■ Execute the program line by line. ■ Display the contents of registers. It had functions such as setting memory variable values, editing the list of source programs, performing line assembly, performing disassembly, outputting dumps, setting and canceling breakpoints, and display means.

〔発明が解決しようとする課題〕[Problem to be solved by the invention]

従来のデバッグ装置は、上述したような手段を有してい
るが、デバッグ中にプログラムが暴走してしまい、応答
が無くなってしまうということか度々起こるという欠点
がある。
Conventional debugging devices have the above-mentioned means, but they have the disadvantage that during debugging, the program often goes out of control and there is no response.

これは、プログラムが作成者の意図した動作以外のこと
をしてし丈っなということなので、防ぐことはなかなか
難しい。このような現象がなぜ起こるかというと、何ら
かの原因でブレークポイントに設定したアドレスもしく
はコマンド行にプログラムが到達しない為、デバッグ装
置は命令を実行しているものの、1ケ所でループしてし
まっているか、全く関係の無いアドレスに飛んてしまい
、その結果いつまでまっても応答が無いという状態にな
るのである。こうなると、再びデバッグ装置をリセット
し立ち上げ直さなければならなくなり、時間がかかって
しまうという問題がある。
This means that the program can do something other than what the creator intended, so it is difficult to prevent it. The reason why this kind of phenomenon occurs is that for some reason the program does not reach the address or command line set as a breakpoint, so the debugging device is executing instructions but is looping at one point. , it jumps to a completely unrelated address, resulting in a state where there is no response no matter how long it takes. In this case, there is a problem in that the debugging device must be reset and restarted again, which takes time.

更に、プログラムが全く関係の無いアドレスに飛んでい
ってしまったという場合、どのコマンドを実行したらそ
のようなことになってしまったがが分からない為、プロ
グラムの解析に時間がかがり、次に再びデバッグを行っ
ても、又暴走してしまい応答が戻ってこないということ
になりやすいという問題がある。
Furthermore, if the program jumps to an unrelated address, it is difficult to know which command was executed to cause this, so it takes time to analyze the program, and then the program jumps to an unrelated address. There is a problem in that even if debugging is performed, it is likely that the program will go out of control again and no response will be returned.

〔課題を解決するための手段〕[Means to solve the problem]

本発明のデバッグ装置は、入力手段と、コマンド識別手
段と、プログラムの実行・レジスタの内容を表示・レジ
スタやメモリや変数の値をセット・ソースプログラムの
リストを編集・ラインアセンブル・逆アセンブル・ダン
プ出力・ブレークポイントの設定及び解除等の手段と、
アドレス監視手段と、監視情報出力手段と、表示手段と
を有している。
The debugging device of the present invention includes input means, command identification means, execution of a program, display of contents of registers, setting of values of registers, memory, and variables, editing of a list of source programs, line assembly, disassembly, and dumping. Means for setting and canceling output/breakpoints, etc.
It has address monitoring means, monitoring information output means, and display means.

〔実施例〕〔Example〕

次に、本発明について図面を参照して説明する。 Next, the present invention will be explained with reference to the drawings.

第1図は本発明の一実施例を示すブロック図である。FIG. 1 is a block diagram showing one embodiment of the present invention.

本発明のデバッグ装置は、入力手段101と、コマンド
識別手段102と、各コマンド別に行う処理手段(アド
レス監視手段103及び監視情報編集手段104を含む
)と、表示手段105から構成される。
The debugging device of the present invention includes input means 101, command identification means 102, processing means for each command (including address monitoring means 103 and monitoring information editing means 104), and display means 105.

入力手段101は、キーボードからデータを取り込み、
それをコマンド識別手段102に送出する。コマンド識
別手段102は送られてきたデータがどのコマンドを表
すものかを識別し、該当するコマンド処理手段に制御を
移し、処理を行う。
The input means 101 takes in data from the keyboard,
It is sent to the command identifying means 102. The command identifying means 102 identifies which command the sent data represents, transfers control to the corresponding command processing means, and performs processing.

入力されたコマンドがアドレス監視を行う為のコマンド
の場合は、アドレス監視手段103及び監視情報編集手
段104によって処理を行う。処理結果は、表示手段1
05によって、画面等に表示する。
If the input command is a command for address monitoring, the address monitoring means 103 and the monitoring information editing means 104 perform processing. The processing results are displayed on display means 1.
05, it is displayed on the screen etc.

第2図は、アドレス監視手段103及び監視情報編集手
段104によって得られたものを、表示手段105によ
り画面に表示を行った時の、−表示例を示す図である。
FIG. 2 is a diagram showing a display example when the display means 105 displays what is obtained by the address monitoring means 103 and the monitoring information editing means 104 on the screen.

以下では、第1図及び第2図を用いて、実施例の動作を
説明する。
The operation of the embodiment will be explained below using FIGS. 1 and 2.

プログラムのデバッグをする際に、先ずキーボードから
実行したいコマンドをキーインする。
When debugging a program, first key in the command you want to execute from the keyboard.

入力手段101によってデータを取り込み、それをコマ
ンド識別手段102に送出する。コマンド識別手段10
2は、送られてきたデータを識別し、該当するコマンド
があれば゛、そのコマンドに対応する処理手段へ制御を
移し、該当するコマンドがなければ、再び入力手段10
1に戻り次のデータ入力を待つ。そして、アドレス監視
のコマンドが入力された場合は、アドレス監視手段10
3に制御が渡る。
Data is taken in by input means 101 and sent to command identification means 102 . Command identification means 10
2 identifies the sent data, and if there is a corresponding command, transfers control to the processing means corresponding to that command, and if there is no corresponding command, transfers control to the input means 10 again.
Return to step 1 and wait for the next data input. When an address monitoring command is input, the address monitoring means 10
Control passes to 3.

アドレス監視手段103の動作について詳細に述べる。The operation of address monitoring means 103 will be described in detail.

アドレス監視手段103に制御が渡ると、コマンドと同
様に入力手段101からキーインされたアドレスを記憶
する。例えば、16ビツトマシンで動くプログラムのデ
バッグの場合、プログラムの命令が存在しているセグメ
ントの値を記憶させる。そして、プログラムが実行され
ている時に、記憶したセグメント値と違う値を持つ命令
になったら、プログラムの実行をストップし、1つ前の
命令のアドレス(記憶したセグメント値と同じ値をもつ
最後の命令のアドレス)や、レジスタの内容などを、監
視情報編集手段104が編集作業を行い、それを表示手
段105に送出する。
When control is passed to the address monitoring means 103, the address keyed in from the input means 101 is stored in the same way as a command. For example, when debugging a program running on a 16-bit machine, the value of the segment in which the program's instructions exist is stored. Then, while the program is being executed, if an instruction with a value different from the memorized segment value is reached, program execution is stopped and the address of the previous instruction (the last instruction with the same value as the memorized segment value) is reached. The monitoring information editing means 104 edits the command address), register contents, etc., and sends it to the display means 105.

又、セグメント値ではなく、アドレスの範囲を記憶させ
、プログラムを実行していて、記憶したアドレスの範囲
以外にある命令になったら、プログラムの実行をストッ
プし、上記と同様にして表示手段105に情報を送出す
る。
Also, when a program is executed by storing an address range instead of a segment value and an instruction outside the stored address range is reached, the program execution is stopped and the display unit 105 is displayed in the same manner as above. Send information.

第2図は、監視情報編集手段104から送出された情報
を、表示手段105によって、画面に表示した場合の一
例である。
FIG. 2 shows an example in which information sent from the monitoring information editing means 104 is displayed on the screen by the display means 105.

設定したセグメント値(又は、アドレスの範囲)、セグ
メント値(又は、アドレスの範囲)が変わってしまう直
前の各セグメント値やレジスタの内容等が表示されてい
る。
The set segment value (or address range), each segment value, register contents, etc. immediately before the segment value (or address range) changes are displayed.

〔発明の効果〕〔Effect of the invention〕

以上説明したように、本発明はデバッグ装置の機能を実
現する手段の1つとして、アドレス監視手段及び監視情
報編集手段を持つことにより、プログラムの実行時に、
設定したアドレス(若しくはアドレスの範囲)以外にあ
る命令に飛んでしまった場合、実行をストップすること
ができ、かつその時の情報を画面に表示することができ
る。
As explained above, the present invention has address monitoring means and monitoring information editing means as one means for realizing the functions of a debugging device, so that when a program is executed,
If the instruction jumps to an address other than the set address (or address range), execution can be stopped and information at that time can be displayed on the screen.

よって、プログラムのバグ等による予測のつかないプロ
グラムの暴走を監視することができる。プログラムの暴
走を防止できる為、デバッグ装置を再立ち上げしなくて
よくなると同時に、どの命令でアドレスが飛んでしまっ
たかがわかるので、プログラムの解析も容易になり、デ
バッグに費やされる時間が短縮されるという効果がある
Therefore, it is possible to monitor unpredictable program runaways due to program bugs or the like. Because it prevents programs from running out of control, there is no need to restart the debugging device. At the same time, since you can see which instruction caused the address to jump, it becomes easier to analyze the program, reducing the time spent debugging. There is an effect.

【図面の簡単な説明】[Brief explanation of drawings]

第1図は本発明の一実施例であるブロック図、第2図は
第1図に示すアドレス監視手段の情報を表示した画面の
一例を示す図である。 101・・・入力手段、102・・・コマンド識別手段
、103・・・アドレス監視手段、104・・・監視情
報編集手段、105・・・表示手段。
FIG. 1 is a block diagram of an embodiment of the present invention, and FIG. 2 is a diagram showing an example of a screen displaying information of the address monitoring means shown in FIG. 1. 101... Input means, 102... Command identification means, 103... Address monitoring means, 104... Monitoring information editing means, 105... Display means.

Claims (1)

【特許請求の範囲】[Claims] 入力手段と、コマンド識別手段と、プログラムの実行・
レジスタの内容を表示・レジスタやメモリや変数の値を
セット・ソースプログラムのリストを編集・ラインアセ
ンブル逆アセンブル・ダンプ出力・ブレークポイントの
設定及び解除等の手段と、アドレス監視手段と、監視情
報出力手段と、表示手段とを有していることを特徴とす
るデバッグ装置。
Input means, command identification means, program execution/
Displaying the contents of registers, setting the values of registers, memory, and variables, editing the source program list, line assembly, disassembling, dump output, setting and canceling breakpoints, address monitoring means, and monitoring information output. A debugging device comprising: means and display means.
JP2079865A 1990-03-28 1990-03-28 Debugging device Pending JPH03278243A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2079865A JPH03278243A (en) 1990-03-28 1990-03-28 Debugging device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2079865A JPH03278243A (en) 1990-03-28 1990-03-28 Debugging device

Publications (1)

Publication Number Publication Date
JPH03278243A true JPH03278243A (en) 1991-12-09

Family

ID=13702099

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2079865A Pending JPH03278243A (en) 1990-03-28 1990-03-28 Debugging device

Country Status (1)

Country Link
JP (1) JPH03278243A (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60231242A (en) * 1984-04-28 1985-11-16 Toshiba Corp Development supporting device of microprocessor
JPS61103251A (en) * 1984-10-26 1986-05-21 Nec Corp Debug device for microprocessor system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60231242A (en) * 1984-04-28 1985-11-16 Toshiba Corp Development supporting device of microprocessor
JPS61103251A (en) * 1984-10-26 1986-05-21 Nec Corp Debug device for microprocessor system

Similar Documents

Publication Publication Date Title
JPH07334211A (en) Data tracing method for programmable controller
JPH03278243A (en) Debugging device
JPH0581070A (en) Programmable controller and user program execution method in programmable controller
JP2800577B2 (en) Debug device
JPH02118733A (en) System for controlling execution of task
JPH07200350A (en) Software debugger
JPH11191072A (en) Debug break processing method and debug processor
JP2659366B2 (en) Debugging method and device
JPS6155749A (en) Information processor
JPS5835648A (en) Program execution controlling system
JPS6292035A (en) Program debugging device
JPH0561717A (en) Program debugging device
JP2003263340A (en) Debug device
JPS6214240A (en) Program inspecting system
JPH03240831A (en) Interruption processing system
JPH0340143A (en) Debugging system for pipeline type computer
JPH0465729A (en) Symbolic debugger
JPS6292033A (en) Program debugging device
JPS638946A (en) Program debug supporting system
JPS63180141A (en) Debugging system by conversational debugger
JPH06214828A (en) Interactive debug controller
JPH0695910A (en) Interactive debugging control system for abnormality processing
JPH04140851A (en) Diagnostic system for information processor
JPH04167032A (en) Program debugging system
JPS63223930A (en) Simulation system for program of exclusive processor