JPH06274370A - Debugger - Google Patents

Debugger

Info

Publication number
JPH06274370A
JPH06274370A JP5064052A JP6405293A JPH06274370A JP H06274370 A JPH06274370 A JP H06274370A JP 5064052 A JP5064052 A JP 5064052A JP 6405293 A JP6405293 A JP 6405293A JP H06274370 A JPH06274370 A JP H06274370A
Authority
JP
Japan
Prior art keywords
debugger
program
debugged
command
screen
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
JP5064052A
Other languages
Japanese (ja)
Inventor
Masahiro Ito
正裕 伊藤
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP5064052A priority Critical patent/JPH06274370A/en
Publication of JPH06274370A publication Critical patent/JPH06274370A/en
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Abstract

PURPOSE:To provide a means which understandably finds a cause at the time of generating a program checking error by automatically switching a user program picture and a debugger picture at the time of using a debugger. CONSTITUTION:When a user program is broken and control returns to the debugger, the user program picture is saved and then, the debugger picture is displayed. After finishing debugging, the saved user program picture is displayed again. Besides, when the program check error is generated, core analytic information is expressed in a symbolic depending on a language program to attain understandable output. At this point of time, if illegal data is found at the numerical part of input records, all of the input records are checked and illegal data is outputted so as to provide environment where debugging operation can easily and quickly be executed. Thus, environment where operability is improved and debugging operation is easily and quickly executed is provided.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】この発明は、電子計算機における
ソフトウェア開発システムに関するものであり、更に詳
しくは、デバッグ作業の効率化を目的としたユーザプロ
グラムのデバッガ装置に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a software development system for an electronic computer, and more particularly to a user program debugger device for improving the efficiency of debugging work.

【0002】[0002]

【従来の技術】図7は、デバッグ処理実行に際しての動
作環境を示した図であり、図8は、従来のデバッガ装置
におけるフローチャートを図示したものである。図7に
おいて、1はデバッグ対象となるユーザソースプログラ
ム、2はコンパイラ、3は上記デバッグ対象となるユー
ザソースプログラムのコンパイラ2によるコンパイル出
力であるロードモジュール、4は前記ユーザソースプロ
グラムのコンパイル時に、同時に出力されるプログラム
情報ファイル、5はデバッガ、6は前記ユーザプログラ
ムが実行時使用するユーザデータファイル、7はデバッ
ガ起動用画面、8はデバッグ対象ユーザプログラム3が
出力するユーザプログラム画面である。
2. Description of the Related Art FIG. 7 is a diagram showing an operating environment for executing debug processing, and FIG. 8 is a flowchart showing a conventional debugger apparatus. In FIG. 7, 1 is a user source program to be debugged, 2 is a compiler, 3 is a load module which is a compilation output of the user source program to be debugged by the compiler 2, and 4 is at the same time when the user source program is compiled. A program information file to be output, 5 is a debugger, 6 is a user data file used by the user program at the time of execution, 7 is a debugger start screen, and 8 is a user program screen output by the debug target user program 3.

【0003】次にデバッグ制御のフローについて、環境
設定のための処理と、デバッグ制御処理に分けて説明す
る。 A.環境設定のための処理動作 図7において、デバッグ対象となるユーザソースプログ
ラム1を、コンパイラ2によりコンパイルし、ロードモ
ジュール3とプログラム情報ファイル4を出力結果とし
て得る。デバッグ処理の実行に際しては、上記デバッグ
対象となるロードモジュール3、プログラム情報ファイ
ル4に加え、上記デバッグ対象ユーザプログラム3が処
理実行中にアクセスするユーザデータファイル6が必要
となる。
Next, the debug control flow will be described separately for environment setting processing and debug control processing. A. Processing Operation for Environment Setting In FIG. 7, the user source program 1 to be debugged is compiled by the compiler 2, and the load module 3 and the program information file 4 are obtained as output results. When executing the debug processing, in addition to the load module 3 and the program information file 4 to be debugged, a user data file 6 that the debug target user program 3 accesses during processing is required.

【0004】B.デバッグ制御処理動作 デバッグ制御処理の動作について、図8に基づいて説明
する。 (1)デバッガ5を起動すると、該デバッガはUNIX
オペレーティングシステム(UNIXオペレーティング
システムは、UNIX System Laborat
ories,Inc.が開発し、ライセンスしていま
す。)のfork/execコマンドによりデバッグ対
象ロードモジュール3を、デバッガ5の子プロセスとし
て生成した後、Ptraceコマンドを発行することに
よりデバッグ対象ロードモジュール3がデバッグ処理モ
ードにあることを宣言する。 (2)デバッグ対象となる子プロセスがstopするこ
とによって、その制御はデバッガ(親プロセス)に移
り、それまでのデバッガのwait状態が解除され次の
ステップに進む。 (3)デバッガは、デバッグ対象プログラム3のソース
プログラム1と、プログラム情報ファイル4の内容を取
り込む。 (4)操作者は、デバッガ5を使用するために、画面を
デバッガ起動用画面7に切り替える。 (5)上記(1)から(4)の手順により、デバッガが
使用できる状態となる。ここで、操作者は、変数の内容
をチェックしたり、ブレークポイントを設定する等のデ
バッガで提供されているデバッグコマンドを入力する。 (6)上記(5)のステップで、例えば操作者がブレー
クポイントを設定し、デバッグ対象プログラム3を起動
したとする。デバッガ5は、そのままwait状態に入
り、制御は、デバッグ対象プログラム3へ移る。 (7)デバッグ対象プログラムが実行され、先に設定し
たブレークポイントに到達すると、デバッグ対象プログ
ラムは再びwait状態となり、制御はデバッガに移
る。すると、それまでのデバッガのwait状態が解除
され、デバッガからのコマンド入力可能状態となる。
B. Debug Control Processing Operation The operation of debug control processing will be described with reference to FIG. (1) When the debugger 5 is started, the debugger will run UNIX
Operating system (UNIX operating system is UNIX System Labat
ories, Inc. Developed and licensed. After the debug target load module 3 is generated as a child process of the debugger 5 by the fork / exec command of (1), the Prac command is issued to declare that the debug target load module 3 is in the debug processing mode. (2) When the child process to be debugged stops, the control is transferred to the debugger (parent process), the wait state of the debugger up to that point is released, and the process proceeds to the next step. (3) The debugger fetches the source program 1 of the debug target program 3 and the contents of the program information file 4. (4) The operator switches the screen to the debugger starting screen 7 in order to use the debugger 5. (5) The debugger is ready for use by the steps (1) to (4). Here, the operator inputs the debug command provided by the debugger such as checking the contents of the variable and setting a breakpoint. (6) It is assumed that, for example, the operator sets a breakpoint and starts the debug target program 3 in the step (5). The debugger 5 enters the wait state as it is, and the control shifts to the debug target program 3. (7) When the program to be debugged is executed and the breakpoint set earlier is reached, the program to be debugged enters the wait state again, and control is transferred to the debugger. Then, the wait state of the debugger up to that point is released, and the command input from the debugger is ready.

【0005】(8)上記(7)において、デバッガか
ら、ユーザプログラムへ制御が移行した時点では、画面
はデバッガ起動画面7となっているために該ユーザプロ
グラム3は画面へアクセスする手順を記述したステップ
にまで到達すると、処理を実行できず応用プログラム出
力用画面8への切り替えを操作者に要求するためメッセ
ージを出力する。操作者がこれを確認してデバッガ画面
7からユーザプログラム画面8へ切り替えることで上記
アプリケーションプログラムは、その処理が続行され
る。また、ユーザプログラム中に設定されたブレークポ
イントに到達し、制御がデバッガに移った時点において
は、画面にはユーザプログラム用の画面8が表示されて
おり、デバッガ操作を行うためには、再度ユーザプログ
ラム用画面8からデバッガ起動用画面7への切り替え操
作を行う必要がある。 (9)デバッグ中のプログラムは、一般に不具合が存在
している可能性が多い。この場合は上記(7)でユーザ
プログラム実行中にブレークポイントへ到達する以前
に、プログラムチェックが発生する。この時、CORE
という実行時のメモリイメージをファイルに出力して制
御がデバッガへ移るが、これはメモリイメージそのまま
をバイナリ形式で表現したものである。 (10)上記(9)で、プログラムエラー発生時におい
て、そのエラー要因がデータ不正例外エラーである場合
は、ユーザデータファイル6のレコード内容の数値デー
タ領域に、数値以外のデータが混入していることがその
原因であることが多い。従って、この種のエラー発生時
には、ユーザがユーザプログラムで使用しているユーザ
データファイル6に関し、全レコードについて不正デー
タの有無をチェック必要がある。
(8) In the above (7), since the screen is the debugger startup screen 7 when the control is transferred from the debugger to the user program, the user program 3 describes the procedure for accessing the screen. When the number of steps reaches the step, the process cannot be executed and a message is output to request the operator to switch to the application program output screen 8. When the operator confirms this and switches from the debugger screen 7 to the user program screen 8, the processing of the application program is continued. Further, when the breakpoint set in the user program is reached and control is transferred to the debugger, the screen 8 for the user program is displayed on the screen. It is necessary to perform a switching operation from the program screen 8 to the debugger starting screen 7. (9) Generally, a program being debugged may have a defect. In this case, the program check occurs before the breakpoint is reached during the execution of the user program in (7) above. At this time, CORE
The memory image at the time of execution is output to a file and control is transferred to the debugger. This is a representation of the memory image as it is in binary format. (10) In (9) above, when a program error occurs and the error factor is a data invalid exception error, non-numeric data is mixed in the numeric data area of the record contents of the user data file 6. This is often the cause. Therefore, when this kind of error occurs, it is necessary to check the presence / absence of invalid data in all records of the user data file 6 used by the user in the user program.

【0006】[0006]

【発明が解決しようとする課題】従来のデバッガシステ
ムは、以上のように構成されていたのでデバッガとその
デバッグ対象となるユーザプログラム間において、制御
が移行する都度、これに対応して、操作者がマニュアル
操作にて画面を切り替えなければならなかった。また、
デバッグ作業中に、プログラムチェックが発生した場合
においても、プログラムチェックの原因、プログラムの
データ部、分岐トレース等の情報が操作者に理解しやす
いシンボリックな形式で出力されず、COREファイル
というバイナリ形式の一般ユーザには分かりずらい形式
でしか表示出力されていなかった。加えて、プログラム
チェックエラーの要因がデータ不正例外であった場合
に、その原因を追及するためには、全てのユーザデータ
ファイルについて、レコードの全件チェックをしなけれ
ばならずデバッグ処理に非常に手間がかかっていた。
Since the conventional debugger system is constructed as described above, every time the control is transferred between the debugger and the user program to be debugged, the operator is required to respond accordingly. Had to switch screens manually. Also,
Even if a program check occurs during debugging, information such as the cause of the program check, the data part of the program, and the branch trace is not output in a symbolic format that is easy for the operator to understand. It was displayed and output only in a format that was difficult for general users to understand. In addition, if the cause of the program check error is a data invalid exception, in order to investigate the cause, all records of all user data files must be checked, which is extremely difficult for debugging. It took a lot of work.

【0007】この発明は、かかる問題点を解消するため
になされたもので、ユーザプログラム用画面と、デバッ
ガ起動用画面の切り替えをデバッガ自身が自動的に行う
ことで、デバッグ処理における操作の繁雑さを解消し、
操作性を向上させることを目的としたものである。ま
た、デバッグ作業中における不具合発生時において、プ
ログラムチェックエラーの原因、プログラムのデータ
部、分岐トレース等の情報を一般ユーザに理解できる形
式で表示出力するとともに、エラー要因がデータ不正例
外エラーの場合には、ユーザデータファイルの整合性を
自動的にチェックすることにより、デバッグ作業の効率
化を目的としたものである。
The present invention has been made in order to solve such a problem, and the debugger itself automatically switches between the user program screen and the debugger start screen, thereby complicating the operation in the debugging process. To eliminate
The purpose is to improve operability. In addition, when a problem occurs during debugging, information such as the cause of the program check error, the data part of the program, and the branch trace is displayed and output in a format that can be understood by general users. Aims to improve the efficiency of debugging work by automatically checking the consistency of user data files.

【0008】[0008]

【課題を解決するための手段】この発明に係るデバッガ
制御方式は、デバッガとユーザプログラム間の制御の遷
移に対応させて、これに相当した画面情報をセーブ・リ
ストアする手段を設けるようにしたものである。また、
プログラムチェック発生時におけるプログラムデータ部
情報分岐トレース情報を、コンパイル時に生成されたプ
ログラム情報ファイルによりシンボリックな形式で出力
するための手段を設けるようにしたものである。加え
て、データ不正例外時においては、コンパイル時に出力
されるプログラム情報ファイルに基づいて、全てのユー
ザデータファイルのレコードの整合性を自動的にチェッ
クし、その原因となったレコードを特定する為の手段を
設けるようにしたものである。
A debugger control system according to the present invention is provided with means for saving / restoring screen information corresponding to a control transition between a debugger and a user program. Is. Also,
A means for outputting the program data section information branch trace information when the program check occurs in a symbolic format by the program information file generated at the time of compilation is provided. In addition, in the case of a data illegal exception, the consistency of the records of all user data files is automatically checked based on the program information file output at the time of compilation, and the record that caused that is specified. Means are provided.

【0009】[0009]

【作用】この発明におけるデバッグ制御方式では、デバ
ッガ、及びユーザプログラム間において、制御の遷移に
追随して自動的に画面を切り替えるようにしたので、操
作上のわずらわしさを軽減することができる。また、不
具合発生時におけるプログラムデータ部、分岐トレース
等の情報を操作者にも理解しやすいようにシンボリック
で表現すると共に、エラー要因がデータ不正例外の場合
には、ユーザデータファイルの内容を自動的にチェック
するようにしたのでデバッグ作業の効率化を計ることが
できる。
In the debug control system according to the present invention, the screen is automatically switched between the debugger and the user program in accordance with the control transition, so that the troublesome operation can be reduced. In addition, the information such as the program data section and branch trace when a failure occurs is expressed as a symbol so that the operator can easily understand it, and if the error cause is a data invalid exception, the contents of the user data file are automatically Since it has been checked, it is possible to improve the efficiency of debugging work.

【0010】[0010]

【実施例】【Example】

実施例1.この発明の実施例を図1、及び図7について
説明する。本発明によるデバッガの動作環境に関して
は、図7と同じである。以下に、図1のフローチャート
に従って、動作を説明する。 (1)デバッガを起動し、デバッグ対象となるロードモ
ジュール名3を入力するとデバッガ(親プロセス)は、
forkコマンドのSVC(スーパーバイザーコール)
マクロを発生し、子プロセスを生成してwait状態に
入る。 (2)子プロセスは、Ptraceコマンドを発行し、
デバッグモードの宣言を行う。その後、子プロセスは、
デバッグ対象となるロードモジュール3をexecし、
wait状態に入る。以上で、親プロセスとしてデバッ
ガが、子プロセスとしてデバッグ対象モジュールが生成
され、上記デバッグ対象モジュールは、デバッガからの
指令待ち状態でwaitしている。 (3)上記ステップ(2)でデバッグ対象モジュールが
wait状態に入るとデバッガ(親プロセス)のwai
t状態が解除され、次いでデバッグ対象ロードモジュー
ルのコンパイル時に生成されたプログラム情報ファイル
4と、デバッグ対象モジュールのユーザソースプログラ
ムを取り込む。 (4)デバッガ起動用画面を表示し、以降、操作者によ
るデバッガ操作が可能となる。 (5)操作者は、変数の内容を表示したり、ブレークポ
イントを設定する等デバッガ用画面から入力操作を行っ
た後、デバッグ対象プログラムを起動する為のコマンド
を入力する。 (6)デバッガは、デバッガ起動用の画面をセーブし、
それまでセーブされていたユーザプログラム用の画面を
新たにリストアした後、制御をデバッグ対象プログラム
に移行させ、wait状態に入る。 (7)デバッグ対象プログラムの実行中に、先に設定し
たブレークポイントに到達すると、デバッグ対象プログ
ラムは再びwait状態に入り、制御はデバッガに移
り、デバッガのそれまでのwait状態が解除される。 (8)デバッガは、それまで表示されていたユーザプロ
グラム用の画面内容をセーブすると共に、それまでセー
ブされていたデバッガ起動用画面をリストアする。これ
により上記ステップ(5)と同じ状態となり、以降再び
デバッガ操作が可能となる。
Example 1. An embodiment of the present invention will be described with reference to FIGS. The operating environment of the debugger according to the present invention is the same as in FIG. The operation will be described below with reference to the flowchart of FIG. (1) When the debugger is started and the load module name 3 to be debugged is input, the debugger (parent process)
Fork command SVC (Supervisor call)
Generates a macro, creates a child process, and enters the wait state. (2) The child process issues the Prace command,
Declare debug mode. Then the child process
Execute the load module 3 to be debugged,
Enter the wait state. As described above, the debugger as the parent process and the debug target module as the child process are generated, and the debug target module is waiting in the state waiting for the command from the debugger. (3) When the debug target module enters the wait state in step (2) above, the wait of the debugger (parent process)
The t state is released, and then the program information file 4 generated at the time of compiling the debug target load module and the user source program of the debug target module are loaded. (4) The screen for starting the debugger is displayed, and thereafter the operator can operate the debugger. (5) The operator inputs the command for starting the program to be debugged after performing input operations from the debugger screen such as displaying the contents of variables and setting breakpoints. (6) The debugger saves the screen for starting the debugger,
After newly restoring the previously saved screen for the user program, control is transferred to the debug target program and the wait state is entered. (7) When the breakpoint set earlier is reached during execution of the debug target program, the debug target program enters the wait state again, control is transferred to the debugger, and the wait state of the debugger up to that point is released. (8) The debugger saves the contents of the user program screen that have been displayed until then, and restores the previously saved screen for starting the debugger. As a result, the same state as in step (5) above is entered, and the debugger operation can be performed again thereafter.

【0011】実施例2.この発明の実施例を、図2、図
3、図4、及び図7について説明する。本発明によるデ
バッガの動作環境に関しては、図7と同じである。図3
は、プログラム情報ファイルの内部構造を示したもの
で、3aは、変数のメモリ上のアドレスと、ソースプロ
グラム上における行番号との対応定義部であり、3b
は、各変数名と、該変数のメモリ上のアドレス、変数の
データタイプ、及び変数のレングスを定義付けるもので
あり、3cは、レコードバッファの名称と、該レコード
名で規定されるバッファのメモリ上の開始アドレスとレ
ングスの定義部である。図4は、プログラムチェックエ
ラー発生時における解析情報の表示例を示したもので、
4aは不具合発生の要因となったエラー種別、4bは変
数名称、4cは変数内容のアンパック形式による表示、
4dは変数内容のシンボリック形式による表示例を示し
ている。又、4eは、プログラムチェック発生に到るま
での数回分(既定値による)の分岐トレース内容を行番
号にて表現したものである。
Embodiment 2. An embodiment of the present invention will be described with reference to FIGS. 2, 3, 4, and 7. The operating environment of the debugger according to the present invention is the same as in FIG. Figure 3
Shows the internal structure of the program information file, 3a is the definition part of the correspondence between the memory address of the variable and the line number in the source program, and 3b
Defines the name of each variable, the address of the variable on the memory, the data type of the variable, and the length of the variable. 3c is the name of the record buffer and the memory of the buffer specified by the record name. Is the definition part of the start address and length of the. FIG. 4 shows a display example of analysis information when a program check error occurs.
4a is the type of error that caused the failure, 4b is the variable name, 4c is the unpacked display of the variable contents,
4d shows a display example of the variable contents in a symbolic format. Reference numeral 4e represents branch trace contents for several times (by default) until the occurrence of the program check, expressed by line numbers.

【0012】次に動作について図2に従って説明する。 (1)デバッガより起動されたユーザプログラムの実行
中に、プログラムチェックエラーが発生すると、COR
Eなる実行時のメモリイメージファイルを生成し、デバ
ッグ対象のユーザプログラムはwait状態に入る。ま
た、この時、制御はデバッガに戻り、デバッガのwai
t状態が解除される。 (2)waitのリターン値からプログラムチェックエ
ラー種別を判別して出力する(4a)。 (3)COREファイルより、メモリアドレス形式で記
述されているブランチトレース情報を得る。 (4)プログラム情報ファイル(図3)の、行番号と、
メモリアドレスの対応定義部3aからブランチトレース
情報を行番号対応に変換して出力する(図4の4e)。 (5)プログラム情報ファイル中(図3)から変数名と
番地、タイプ、長さの情報をもとに、メモリに貼りつい
ているロードモジュールのデータ部からデータを取り出
し、変数名称、変数内容、及び変数内容のシンボリック
表現にて、これらを表示する(4b、4c、4d)。
Next, the operation will be described with reference to FIG. (1) If a program check error occurs during execution of the user program started by the debugger, COR
A memory image file at the time of execution E is generated, and the user program to be debugged enters the wait state. At this time, the control returns to the debugger, and the debugger wai
The t state is released. (2) The program check error type is discriminated and output from the return value of wait (4a). (3) Obtain the branch trace information described in the memory address format from the CORE file. (4) Line numbers in the program information file (Fig. 3),
The branch trace information is converted from the correspondence definition portion 3a of the memory address into the correspondence to the line number and output (4e in FIG. 4). (5) Based on the variable name, address, type, and length information in the program information file (Fig. 3), the data is extracted from the data section of the load module pasted in the memory, and the variable name, variable content, and These are displayed in a symbolic representation of the variable contents (4b, 4c, 4d).

【0013】実施例3.またこの発明の第3の実施例に
ついて、図2、図3、図5、及び図6、及び図7に基づ
いて説明する。図3、及び図7は実施例1と変わるとこ
ろはない。図5は、ユーザソースプログラム1のデータ
部を記述したもので、実施例ではユーザデータファイル
6としてファイルA、ファイルB、ファイルXを保持
し、各ファイルへアクセスする為のレコード名称がそれ
ぞれレコード名A、レコード名B、レコード名Xと定義
され、さらに各レコードは複数より成る変数名で構成さ
れていることを示している。図6は、プログラムチェッ
クエラー要因がデータ不正例外であった場合の出力表示
例を示したものであり、6aは、エラー要因となったレ
コードを含むユーザデータファイル名を、6bはレコー
ド番号、6cは変数名、6dは変数名に対応した数値の
アンパック形式表現例、6eはアンパック形式で表現さ
れた数値のシンボリック形式による表現を示している。
また、−印は数値データに不正があり、シンボリック表
現できなかったことを示している。
Embodiment 3. A third embodiment of the present invention will be described based on FIGS. 2, 3, 5, 6, and 7. 3 and 7 are the same as those in the first embodiment. FIG. 5 describes the data part of the user source program 1. In the embodiment, the user data file 6 holds files A, B, and X, and the record names for accessing each file are record names. It is defined that A, record name B, and record name X, and that each record is composed of a plurality of variable names. FIG. 6 shows an example of an output display when the program check error factor is a data invalid exception. 6a is the user data file name including the record that caused the error, 6b is the record number, and 6c. Is a variable name, 6d is an example of an unpacked numerical expression corresponding to the variable name, and 6e is a symbolic expression of a numerical value expressed in the unpacked format.
Further, the-mark indicates that the numerical data was incorrect and could not be symbolically expressed.

【0014】次に動作について説明する。図2における
ステップ2aの詳細について以下に順を追って説明して
ゆく。 (1)ソースプログラムファイル1より、図5で構成さ
れるファイル名、及びレコードフォーマット情報を得
る。 (2)レコード名をもとに図3のプログラム情報ファイ
ルから、該レコードバッファのアドレスと長さを得る。 (3)上記アドレス、及び長さの情報をもとにメモリ上
からレコードバッファの内容を得る。 (4)上記ステップ(1)で得たレコードフォーマット
を構成する変数名からプログラム情報ファイル(3b)
を検索し、該変数名のデータが数値タイプの変数かどう
かチェックし、数値タイプの場合には、上記ステップ
(3)で得たレコードバッファ内容に対して数字データ
として不正があるかどうかチェックする。 (5)不正がなければ、図5のソースプログラムファイ
ルで、次のレコードフォーマットが定義されているか否
かチェックし、最終レコードでなければステップ(1)
へ戻る。 (6)上記ステップ(4)にて、数値データに不正が発
見された場合には、ステップ(1)で得たファイル名を
もとに、ユーザデータファイル6をアクセスし、該ファ
イルのレコードを全件チェックする。そして、図3のプ
ログラム情報ファイル構造に従って、変数名に対応した
番地を行番号に変換し、レコード番号、不正データ内
容、及び不正データ内容をシンボリック表現した情報と
共に表示する(図6)。
Next, the operation will be described. Details of step 2a in FIG. 2 will be described below step by step. (1) The file name and record format information configured in FIG. 5 are obtained from the source program file 1. (2) The address and length of the record buffer are obtained from the program information file of FIG. 3 based on the record name. (3) The contents of the record buffer are obtained from the memory based on the above address and length information. (4) Program information file (3b) from the variable names that make up the record format obtained in step (1) above
Is checked to see if the data of the variable name is a numeric type variable, and if it is a numeric type, it is checked whether the record buffer contents obtained in step (3) above are invalid as numeric data. . (5) If there is no injustice, it is checked whether the following record format is defined in the source program file of FIG. 5, and if it is not the final record, step (1)
Return to. (6) In step (4), if an illegality is found in the numerical data, the user data file 6 is accessed based on the file name obtained in step (1), and the record of the file is retrieved. Check all cases. Then, according to the program information file structure of FIG. 3, the address corresponding to the variable name is converted into a line number, and the record number, the illegal data content, and the illegal data content are displayed together with the symbolic information (FIG. 6).

【0015】[0015]

【発明の効果】以上のように、この発明によれば、デバ
ッガ起動画面と、ユーザプログラム画面を、オペレータ
操作により逐次切り換えることなく自動的に画面切り換
えするため、操作の繁雑さを解消できるという効果があ
る。また、プログラムデバッグ中、不具合が発生した場
合においても、エラー発生に到るまでのプログラム実行
履歴や、不具合発生時点でのデータ内容を、ソースプロ
グラムと対比した形式で操作者にとって理解しやすいシ
ンボリック表現にて出力し、加えて、不具合要因がユー
ザデータファイル中のデータに起因する場合には、実行
時にアクセスしていた上記ユーザデータファイル中のレ
コードを自動的に全件チェックするようにしたので、プ
ログラムデバッグ作業に要する時間を大幅に短縮できる
という効果を奏する。
As described above, according to the present invention, the debugger startup screen and the user program screen are automatically switched without being sequentially switched by an operator operation, so that the complexity of the operation can be eliminated. There is. In addition, even if a problem occurs during program debugging, the program execution history up to the occurrence of the error and the data content at the time of the problem occurrence are symbolic expressions that are easy for the operator to understand in a format that compares with the source program. In addition, when the cause of failure is caused by the data in the user data file, all records in the above user data file that were accessed at the time of execution are automatically checked. This has the effect of significantly reducing the time required for program debugging work.

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

【図1】本発明の実施例1を示すデバッガの制御フロー
チャートである。
FIG. 1 is a control flowchart of a debugger showing a first embodiment of the present invention.

【図2】本発明の実施例2を示すデバッガの制御フロー
チャートである。
FIG. 2 is a control flowchart of a debugger showing a second embodiment of the present invention.

【図3】本発明で使用するコンパイル時に出力されるプ
ログラム情報ファイル構造である。
FIG. 3 is a program information file structure output at the time of compilation used in the present invention.

【図4】本発明によるプログラムチェックエラー発生時
におけるエラー情報の画面表示例である。
FIG. 4 is a screen display example of error information when a program check error occurs according to the present invention.

【図5】本発明で使用するレコードフォーマット定義情
報の例を示す図である。
FIG. 5 is a diagram showing an example of record format definition information used in the present invention.

【図6】本発明による、データ不正情報の画面表示例で
ある。
FIG. 6 is a screen display example of data fraud information according to the present invention.

【図7】デバッガの動作環境全体図である。FIG. 7 is an overall operating environment diagram of a debugger.

【図8】従来のデバッガ制御フローチャートである。FIG. 8 is a conventional debugger control flowchart.

【符号の説明】[Explanation of symbols]

4b、4c、4d プログラムチェックエラー発生時に
おけるデータ解析結果表示例 4e プログラムチェックエラー発生時における分岐ト
レース表示例 6b、6c、6d、6e データ不正例外エラー発生時
におけるファイル内容表示例
4b, 4c, 4d Example of data analysis result display when program check error occurs 4e Example of branch trace display when program check error occurs 6b, 6c, 6d, 6e File content display example when data invalid exception error occurs

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】 デバッガ、及び被デバッグプログラム
が、各々親・子関係を有する独立したプロセスとして構
成され、 デバッガは、被デバッグプログラムに対するコマンド送
出、および上記被デバッグプログラムからの実行結果の
受信手段を有し、被デバッグプログラムは、上記コマン
ドの受信、解読、実行、および実行結果の送信手段を有
し、 モニタ部は、デバッガが上記コマンド送出後に、該デバ
ッガを被デバッグプログラムからの実行結果受信待ち状
態に移行させ、被デバッグプログラムをコマンド実行状
態に移行させ、 上記コマンド終了後に、上記実行結果をデバッガに転送
すると共に、被デバッグプログラムを再び、次のコマン
ド待ちの状態に移行させる手段を有するデバッグ装置に
おいて、 実行制御のデバッガ、及び被デバッグプログラム間の遷
移時において、各々上記デバッガ、並びに被デバッグプ
ログラムに対応した画面情報をセーブ、リストアする手
段を備えたことを特徴とするデバッグ装置。
1. A debugger and a debugged program are configured as independent processes each having a parent / child relationship, and the debugger has means for sending a command to the debugged program and receiving an execution result from the debugged program. The debugged program has means for receiving, decoding, executing, and transmitting the execution result of the above command, and the monitor section waits for the execution result to be received from the debugged program after the debugger sends the command. State, the debugged program is shifted to the command execution state, and after the command is finished, the execution result is transferred to the debugger, and the debugged program has a means for shifting the debugged program to the next command waiting state again. In the device, the execution control debugger and the During transition between program, each said debugger, and save the screen information corresponding to the debug target program, the debugging apparatus characterized by comprising means for restoring.
【請求項2】 被デバッグプログラム実行時の不具合発
生に対して、該不具合発生検知手段、及び不具合発生時
の情報を外部ファイルに格納する手段を有するデバッガ
装置において、 上記不具合発生時のメモリ情報、及び制御情報をシンボ
リック形式にて画面表示する手段を備えた事を特徴とす
るデバッガ装置。
2. A debugger device having a defect occurrence detecting means and a means for storing information on the occurrence of the failure in an external file in response to the occurrence of the failure during execution of the program to be debugged. And a debugger device having means for displaying control information on a screen in a symbolic format.
【請求項3】 被デバッグプログラム実行時の不具合発
生において、不具合発生要因がユーザデータに起因する
と判明した場合に、上記不具合発生に係るユーザデータ
ファイルを特定し、該ファイル中のデータをチェック
し、不正データが発見された場合にはシンボリック形式
にて画面表示する手段を備えたことを特徴とするデバッ
ガ装置。
3. When a defect occurs during execution of a program to be debugged, and it is found that the cause of the defect is caused by user data, the user data file relating to the defect occurrence is specified and the data in the file is checked. A debugger device comprising means for displaying a screen in a symbolic format when illegal data is found.
JP5064052A 1993-03-23 1993-03-23 Debugger Pending JPH06274370A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5064052A JPH06274370A (en) 1993-03-23 1993-03-23 Debugger

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5064052A JPH06274370A (en) 1993-03-23 1993-03-23 Debugger

Publications (1)

Publication Number Publication Date
JPH06274370A true JPH06274370A (en) 1994-09-30

Family

ID=13246942

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5064052A Pending JPH06274370A (en) 1993-03-23 1993-03-23 Debugger

Country Status (1)

Country Link
JP (1) JPH06274370A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003048937A1 (en) * 2001-12-07 2003-06-12 Ntt Docomo, Inc. Mobile communication terminal, apparatus and system for delivering application software, method for controlling execution state display, program, and recording medium

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003048937A1 (en) * 2001-12-07 2003-06-12 Ntt Docomo, Inc. Mobile communication terminal, apparatus and system for delivering application software, method for controlling execution state display, program, and recording medium
US7440752B2 (en) 2001-12-07 2008-10-21 Ntt Docomo, Inc. Mobile communication terminal, apparatus and system for delivering application software, method for controlling execution state display, program, and recording medium

Similar Documents

Publication Publication Date Title
JP2753500B2 (en) An improved software debugging system and method for debugging code specifically in a multi-architecture environment
JP2795244B2 (en) Program debugging system
EP0111952B1 (en) Verification of a processor architecture having a partial instruction set
US5740351A (en) Apparatus and method for debugging/modifying ROM-based software systems employing and extensible interpreter
JP2513417B2 (en) Information processing device
JPH06274370A (en) Debugger
JPH0766342B2 (en) Program test equipment
JPH0554277A (en) Plant monitor device
JP4925514B2 (en) Program execution control method, program, execution control apparatus, and recording medium by internal / external event driven system
JPS626260B2 (en)
JP2659366B2 (en) Debugging method and device
WO2024069730A1 (en) Debugging device and debugging method
JPH0695910A (en) Interactive debugging control system for abnormality processing
JPS6214240A (en) Program inspecting system
KR920001103B1 (en) Test software simulation method for electronic exchanger
JPH1165885A (en) Device and method for debugging software
EP1378835B1 (en) Process and system for comfortable debugging of computer programs
JPH11191072A (en) Debug break processing method and debug processor
JPH11272500A (en) Debug method and debug device for the same and program storage medium
JPH1091479A (en) Program debugging system, program debugging method and storage medium storing debugging program
JPH05204698A (en) Debugger processing system
JPS63228341A (en) Program syntax checking system
JPH04289927A (en) Extended command generating system for debugger
JPS604492B2 (en) calculator
JPH0395638A (en) Debugging device