JP2743860B2 - User program debug processing system - Google Patents

User program debug processing system

Info

Publication number
JP2743860B2
JP2743860B2 JP7078787A JP7878795A JP2743860B2 JP 2743860 B2 JP2743860 B2 JP 2743860B2 JP 7078787 A JP7078787 A JP 7078787A JP 7878795 A JP7878795 A JP 7878795A JP 2743860 B2 JP2743860 B2 JP 2743860B2
Authority
JP
Japan
Prior art keywords
command
information
saving
user program
input
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.)
Expired - Fee Related
Application number
JP7078787A
Other languages
Japanese (ja)
Other versions
JPH0816431A (en
Inventor
均 井内
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 JP7078787A priority Critical patent/JP2743860B2/en
Publication of JPH0816431A publication Critical patent/JPH0816431A/en
Application granted granted Critical
Publication of JP2743860B2 publication Critical patent/JP2743860B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【産業上の利用分野】本発明はオペレーティングシステ
ムの機能として実現される利用者プログラムのデバッグ
処理システムに関し、特にデバッグの際に区切り点の設
定を行う利用者プログラムのデバッグ処理システムに関
する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a debugging system for a user program implemented as a function of an operating system, and more particularly to a debugging system for a user program for setting a breakpoint at the time of debugging.

【0002】[0002]

【従来の技術】従来、利用者プログラムのデバッグが行
われる際には、利用者プログラム中に区切り点(以下、
ブレークポイントとする)が設定されてから該利用者プ
ログラムが実行されていた。
2. Description of the Related Art Conventionally, when a user program is debugged, a break point (hereinafter, referred to as a break point) is included in the user program.
The user program has been executed since the breakpoint was set.

【0003】この従来のデバッグ方式によれば、利用者
プログラムの実行をブレークポイントで中断させ、ブレ
ークポイントにおいて利用者プログラムで宣言された変
数の値の表示、該変数の値の変更、および別のブレーク
ポイントへの制御の移動を行うことができ、利用者プロ
グラムの動作の確認を行うことができた。
According to this conventional debugging method, the execution of a user program is interrupted at a breakpoint, the value of a variable declared in the user program at the breakpoint is displayed, the value of the variable is changed, and another Control could be moved to a breakpoint, and the operation of the user program could be confirmed.

【0004】[0004]

【発明が解決しようとする課題】この従来のデバッグ方
式においては、あるブレークポイントにおいて変数の値
を変更したこと等によって、利用者プログラムが利用者
の意図しない動作をした場合に、その利用者プログラム
のデバッグをそのブレークポイントからやり直したいと
いう要請が生じることがある。
In this conventional debugging method, when a user program performs an operation unintended by a user due to a change of a variable value at a certain breakpoint, the user program is executed. You may want to start debugging from the breakpoint again.

【0005】しかしながら、この従来のデバッグ処理方
式においては、ブレークポイントにおける出力ファイル
の内容、入力ファイルのカレンシ情報(現在指示子)、
変数情報、およびスタック情報等がブレークポイントに
おいて退避されなかったので、デバッグの再開時のそれ
らの情報を復旧できなかった。そのため、上述のような
要請があってもブレークポイントからデバッグを再開す
ることができず、利用者プログラムのデバッグを最初か
らやり直さなければならず、デバッグ処理の効率を低下
させるという問題点があった。
However, in this conventional debugging method, the contents of the output file at the breakpoint, the currency information (current indicator) of the input file,
Since the variable information, stack information, and the like were not saved at the breakpoint, the information could not be restored when debugging was restarted. Therefore, even if there is a request as described above, debugging cannot be resumed from a breakpoint, and debugging of the user program must be restarted from the beginning, resulting in a problem that the efficiency of debugging processing is reduced. .

【0006】なお、入力ファイルのカレンシ情報とは、
次のアクセスすべき入力ファイル内のレコードを指示す
る情報をいう。また、変数情報とは、利用者プログラム
によって使用されるメモリ上の変数の内容を示す情報を
いう。さらに、スタック情報とは、利用者プログラムの
実行の順序を管理するための情報であり、プログラムカ
ウンタをはじめとするレジスタの内容やメモリ内のスタ
ック領域の内容等を示す情報をいう。
The currency information of the input file is
Information indicating the record in the input file to be accessed next. The variable information refers to information indicating the contents of a variable on a memory used by a user program. Further, the stack information is information for managing the execution order of the user program, and refers to information indicating the contents of a register such as a program counter, the contents of a stack area in a memory, and the like.

【0007】本発明の目的は、ブレークポイントから利
用者プログラムのデバッグを再開することができるよう
にすることにあり、デバッグ処理の効率を向上させるこ
とにある。
An object of the present invention is to enable debugging of a user program to be resumed from a breakpoint, and to improve the efficiency of debugging processing.

【0008】[0008]

【課題を解決するための手段】本発明の第1の利用者プ
ログラムのデバッグ処理システムは、利用者プログラム
にブレークポイントを設定してデバッグする利用者プロ
グラムのデバッグ処理システムであって、前記ブレーク
ポイントにおいて、端末から入力されたコマンドが退避
コマンドであることを認識するコマンド解析手段と、前
記コマンド解析手段により退避コマンドの入力が認識さ
れた場合に、ブレークポイントにおいて利用者プログラ
ムがアクセスしている出力ファイルの内容を確定(以
下、コミットとする)するコミット手段と、前記コマン
ド解析手段により退避コマンドの入力が認識された場合
に、利用者プログラムがアクセスしている入力ファイル
のブレークポイントにおけるレコードを指示するカレン
シ情報をカレンシ情報退避領域に退避するカレンシ情報
退避手段と、前記コマンド解析手段により退避コマンド
の入力が認識された場合に、ブレークポイントにおいて
利用者プログラムが使用しているメモリ上の変数の内容
である変数情報を変数情報退避領域に退避する変数情報
退避手段と、前記コマンド解析手段により退避コマンド
の入力が認識された場合に、前記コミット手段、前記カ
レンシ情報退避手段、および前記変数情報退避手段の処
理の終了後に呼び出され、ブレークポイントにおける利
用者プログラムの実行順序を管理するためのスタック情
報をスタック情報退避領域に退避するスタック情報退避
手段とから構成されている。
A first user program debug processing system according to the present invention is a user program debug processing system for setting a breakpoint in a user program and debugging the user program. A command analysis means for recognizing that a command input from a terminal is a save command, and an output which is accessed by a user program at a breakpoint when the command analysis means recognizes the input of the save command. Commit means for determining the contents of the file (hereinafter referred to as a commit), and when the input of the save command is recognized by the command analysis means, indicates the record at the break point of the input file accessed by the user program. Currency information to be exchanged A currency information evacuation unit for evacuation in the evacuation area, and, when the input of the evacuation command is recognized by the command analysis unit, the variable information that is the content of the variable on the memory used by the user program at the break point The variable information saving means for saving in the information saving area, and when the command analysis means recognizes the input of the saving command, the variable information saving means is called after the processing of the commit means, the currency information saving means, and the variable information saving means. And stack information saving means for saving stack information for managing the execution order of the user program at the break point in the stack information saving area.

【0009】本発明の第2の利用者プログラムのデバッ
グ処理システムは、利用者プログラムにブレークポイン
トを設定してデバッグする利用者プログラムのデバッグ
処理システムであって、前記ブレークポイントにおい
て、端末から入力されたコマンドが退避コマンドである
ことを認識するコマンド解析手段と、前記コマンド解析
手段により退避コマンドの入力が認識された場合に、ブ
レークポイントにおいて利用者プログラムがアクセスし
ている出力ファイルをコミットするとともに、該コミッ
ト情報に前記ブレークポイントの識別子を付すコミット
手段と、前記コマンド解析手段により退避コマンドの入
力が認識された場合に、利用者プログラムがアクセスし
ている入力ファイルのブレークポイントにおけるレコー
ドを指示するカレンシ情報に前記ブレークポイントの識
別子を付してカレンシ情報退避領域に退避するカレンシ
情報退避手段と、前記コマンド解析手段により退避コマ
ンドの入力が認識された場合に、ブレークポイントにお
いて利用者プログラムが使用しているメモリ上の変数の
内容である変数情報に前記ブレークポイントの識別子を
付して変数情報退避領域に退避する変数情報退避手段
と、前記コマンド解析手段により退避コマンドの入力が
認識された場合に、前記コミット手段、前記カレンシ情
報退避手段、および前記変数情報退避手段の処理の終了
後に呼び出され、ブレークポイントにおける利用者プロ
グラムの実行順序を管理するためのスタック情報に前記
ブレークポイントの識別子を付してスタック情報退避領
域に退避するスタック情報退避手段とから構成されてい
る。
A second user program debug processing system according to the present invention is a user program debug processing system for setting a breakpoint in a user program and debugging the program, wherein the breakpoint is input from a terminal. Command analysis means for recognizing that the saved command is a save command, and when the input of the save command is recognized by the command analysis means, commits the output file accessed by the user program at the breakpoint, A commit unit for assigning the breakpoint identifier to the commit information; and a calendar for designating a record at a breakpoint of an input file accessed by the user program when the command analysis unit recognizes the input of the save command. A currency information saving means for saving the information in the currency information saving area by attaching the break point identifier to the information, and a user program used at the break point when the input of the saving command is recognized by the command analyzing means. A variable information saving unit that attaches the breakpoint identifier to the variable information that is the content of the variable on the memory and saves the variable information in the variable information saving area, and when the command analysis unit recognizes the input of the saving command, Called after the processing of the commit unit, the currency information saving unit, and the variable information saving unit, the stack information for managing the execution order of the user program at the break point is added with the break point identifier. Stack information saving means to save in the stack information saving area It is configured.

【0010】本発明の第3の利用者プログラムのデバッ
グ処理システムは、第1または第2の利用者プログラム
のデバッグ処理システムにおいて、前記カレンシ情報退
避領域、前記変数情報退避領域、および前記スタック情
報退避領域を前記利用者プログラムのデバッグの開始時
に確保する領域確保手段を備えている。
A third user program debug processing system according to the present invention, in the first or second user program debug processing system, comprises the currency information save area, the variable information save area, and the stack information save area. An area securing means for securing an area at the start of debugging of the user program is provided.

【0011】本発明の第4の利用者プログラムのデバッ
グ処理システムは、第1または第2の利用者プログラム
のデバッグ処理システムにおいて、前記カレンシ情報退
避領域、前記変数情報退避領域、および前記スタック情
報退避領域を退避コマンドの入力時に確保する領域確保
手段を備えている。
According to a fourth user program debug processing system of the present invention, in the first or second user program debug processing system, the currency information save area, the variable information save area, and the stack information save An area securing means for securing an area when a save command is input is provided.

【0012】本発明の第5の利用者プログラムのデバッ
グ処理システムは、利用者プログラムにブレークポイン
トを設定してデバッグする利用者プログラムのデバッグ
処理システムであって、ブレークポイントにおいて、端
末から入力されたコマンドが退避コマンドであること、
または端末から入力されたコマンドがブレークポイント
を付した復旧コマンドであることを認識するコマンド解
析手段と、前記コマンド解析手段により退避コマンドの
入力が認識された場合に、ブレークポイントにおいて利
用者プログラムがアクセスしている出力ファイルをコミ
ットするコミット手段と、前記コマンド解析手段により
退避コマンドの入力が認識された場合に、利用者プログ
ラムがアクセスしている入力ファイルのブレークポイン
トにおけるレコードを指示するカレンシ情報をカレンシ
情報退避領域に退避するカレンシ情報退避手段と、前記
コマンド解析手段により退避コマンドの入力が認識され
た場合に、ブレークポイントにおいて利用者プログラム
が使用しているメモリ上の変数の内容である変数情報を
変数情報退避領域に退避する変数情報退避手段と、前記
コマンド解析手段により退避コマンドの入力が認識され
た場合に、前記コミット手段、前記カレンシ情報退避手
段、および前記変数情報退避手段の処理の終了後に呼び
出され、ブレークポイントにおける利用者プログラムの
実行順序を管理するためのスタック情報をスタック情報
退避領域に退避するスタック情報退避手段と、前記コマ
ンド解析手段により復旧コマンドの入力が認識された場
合に、前記コミット手段によりコミットされた出力ファ
イルをブレークポイントに後退復帰(以下、ロールバッ
クとする)するロールバック手段と、前記コマンド解析
手段により復旧コマンドの入力が認識された場合に、前
記カレンシ情報退避手段により前記カレンシ情報退避領
域に退避されたカレンシ情報を復旧するカレンシ情報復
旧手段と、前記コマンド解析手段により復旧コマンドの
入力が認識された場合に、前記変数情報退避領域に退避
された変数情報を復旧する変数情報復旧手段と、前記コ
マンド解析手段により復旧コマンドの入力が認識された
場合に、前記ロールバック手段、前記カレンシ情報復旧
手段、および前記変数情報復旧手段の処理の終了後に呼
び出され、前記スタック情報退避手段により前記スタッ
ク情報退避領域に退避されたスタック情報を復旧するス
タック情報復旧手段とから構成されている。
A fifth user program debug processing system according to the present invention is a user program debug processing system for setting a breakpoint in a user program and debugging the program, wherein the breakpoint is inputted from a terminal. The command is a save command,
Alternatively, a command analyzing means for recognizing that the command input from the terminal is a restoration command with a breakpoint, and when the input of the evacuation command is recognized by the command analyzing means, the user program accesses at the breakpoint. A commit unit for committing the output file being accessed, and currency information indicating a record at a breakpoint of the input file accessed by the user program when the input of the save command is recognized by the command analysis unit. A currency information saving means for saving in an information saving area, and variable information which is a content of a variable on a memory used by a user program at a break point when an input of a saving command is recognized by the command analyzing means. Variable information save area When the input of the save command is recognized by the variable information saving means to be saved and the command analysis means, the variable information saving means is called after the processing of the commit means, the currency information saving means, and the variable information saving means, and Stack information saving means for saving stack information for managing the execution order of the user program in the stack information saving area, and committing by the commit means when the input of the restoration command is recognized by the command analysis means. A roll-back unit for back-returning the output file to a breakpoint (hereinafter referred to as roll-back), and the currency information saving area when the command analysis unit recognizes the input of the restoration command. Recovery of currency information saved to A currency information restoring means, a variable information restoring means for restoring the variable information saved in the variable information save area when an input of the restoration command is recognized by the command analyzing means, and a restoration command by the command analyzing means. When the input of the stack information is recognized, the stack is called after the processing of the rollback unit, the currency information restoring unit, and the variable information restoring unit, and the stack saved in the stack information saving area by the stack information saving unit. And stack information restoring means for restoring information.

【0013】本発明の第6の利用者プログラムのデバッ
グ処理システムは、利用者プログラムにブレークポイン
トを設定してデバッグする利用者プログラムのデバッグ
処理システムであって、ブレークポイントにおいて、端
末から入力されたコマンドが退避コマンドであること、
または端末から入力されたコマンドがブレークポイント
を付した復旧コマンドであることを認識するコマンド解
析手段と、前記コマンド解析手段により退避コマンドの
入力が認識された場合に、ブレークポイントにおいて利
用者プログラムがアクセスしている出力ファイルをコミ
ットするとともに、該コミット情報に前記ブレークポイ
ントの識別子を付すコミット手段と、前記コマンド解析
手段により退避コマンドの入力が認識された場合に、利
用者プログラムがアクセスしている入力ファイルのブレ
ークポイントにおけるレコードを指示するカレンシ情報
に前記ブレークポイントの識別子を付してカレンシ情報
退避領域に退避するカレンシ情報退避手段と、前記コマ
ンド解析手段により退避コマンドの入力が認識された場
合に、ブレークポイントにおいて利用者プログラムが使
用しているメモリ上の変数の内容である変数情報に前記
ブレークポイントの識別子を付して変数情報退避領域に
退避する変数情報退避手段と、前記コマンド解析手段に
より退避コマンドの入力が認識された場合に、前記コミ
ット手段、前記カレンシ情報退避手段、および前記変数
情報退避手段の処理の終了後に呼び出され、ブレークポ
イントにおける利用者プログラムの実行順序を管理する
ためのスタック情報に前記ブレークポイントの識別子を
付してスタック情報退避領域に退避するスタック情報退
避手段と、前記コマンド解析手段により復旧コマンドの
入力が認識された場合に、前記コミット手段によりコミ
ットされた出力ファイルを前記復旧コマンドが示すブレ
ークポイントにロールバックするロールバック手段と、
前記コマンド解析手段により復旧コマンドの入力が認識
された場合に、前記カレンシ情報退避手段により前記カ
レンシ情報退避領域に退避されたカレンシ情報を前記復
旧コマンドが示すブレークポイントの状態にまで復旧す
るカレンシ情報復旧手段と、前記コマンド解析手段によ
り復旧コマンドの入力が認識された場合に、前記変数情
報退避領域に退避された変数情報を前記復旧コマンドが
示すブレークポイントの状態にまで復旧する変数情報復
旧手段と、前記コマンド解析手段により復旧コマンドの
入力が認識された場合に、前記ロールバック手段、前記
カレンシ情報復旧手段、および前記変数情報復旧手段の
処理の終了後に呼び出され、前記スタック情報退避手段
により前記スタック情報退避領域に退避されたスタック
情報を前記復旧コマンドが示すブレークポイントの状態
にまで復旧するスタック情報復旧手段とから構成されて
いる。
A sixth user program debug processing system according to the present invention is a user program debug processing system for setting a breakpoint in a user program and debugging the user program. The command is a save command,
Alternatively, a command analyzing means for recognizing that the command input from the terminal is a restoration command with a breakpoint, and when the input of the evacuation command is recognized by the command analyzing means, the user program accesses at the breakpoint. Committing means for committing the output file which is being executed and adding the identifier of the breakpoint to the commit information; and inputting which is accessed by the user program when the input of the save command is recognized by the command analyzing means. A currency information saving unit that attaches the breakpoint identifier to the currency information indicating the record at the breakpoint of the file and saves the currency information in the currency information save area; and when the input of the save command is recognized by the command analyzing unit, Breakpoint Variable information saving means for assigning the breakpoint identifier to variable information, which is the contents of the variables in the memory used by the user program in the user program, and saving the variable information in a variable information saving area; Is recognized after the completion of the processing of the commit unit, the currency information saving unit, and the variable information saving unit, the stack information for managing the execution order of the user program at the breakpoint is stored. Stack information saving means for saving the stack information in the stack information saving area with the identifier of the break point; and when the input of the restoration command is recognized by the command analysis means, the output file committed by the commit means is restored. Log to roll back to the breakpoint indicated by the command And callback means,
When the input of the restoration command is recognized by the command analysis unit, the currency information recovery unit restores the currency information saved in the currency information saving area by the currency information saving unit to the state of the break point indicated by the restoration command. Means, and when the input of the restoration command is recognized by the command analysis means, variable information restoration means for restoring the variable information saved in the variable information save area to the state of the breakpoint indicated by the restoration command, When the input of the restoration command is recognized by the command analysis unit, the command is called after the processing of the rollback unit, the currency information restoration unit, and the variable information restoration unit is completed, and the stack information is saved by the stack information saving unit. The stack information saved in the save area is Is composed of a stack information recovery means for recovering to the state of the breakpoint indicated command.

【0014】本発明の第7の利用者プログラムのデバッ
グ処理システムは、第5または第6の利用者プログラム
のデバッグ処理システムにおいて、前記カレンシ情報退
避領域、前記変数情報退避領域、および前記スタック情
報退避領域を前記利用者プログラムのデバッグの開始時
に確保する領域確保手段と、前記カレンシ情報退避領
域、前記変数情報退避領域、および前記スタック情報退
避領域を前記利用者プログラムのデバッグの終了時に解
放する領域解放手段を備えている。
According to a seventh user program debug processing system of the present invention, in the fifth or sixth user program debug processing system, the currency information save area, the variable information save area, and the stack information save area are provided. An area securing means for securing an area at the start of debugging of the user program, and an area release for releasing the currency information saving area, the variable information saving area, and the stack information saving area at the end of debugging of the user program Means.

【0015】本発明の第8の利用者プログラムのデバッ
グ処理システムは、第5または第6の利用者プログラム
のデバッグ処理システムにおいて、前記カレンシ情報退
避領域、前記変数情報退避領域、および前記スタック情
報退避領域を退避コマンドの入力時に確保する領域確保
手段と、前記カレンシ情報退避領域、前記変数情報退避
領域、および前記スタック情報退避領域を復旧コマンド
に基づく復旧処理の終了時に解放する領域解放手段を備
えている。
An eighth user program debug processing system according to the present invention, in the fifth or sixth user program debug processing system, wherein the currency information save area, the variable information save area, and the stack information save area. An area securing unit that secures an area when a save command is input; and an area releasing unit that releases the currency information save area, the variable information save area, and the stack information save area at the end of a restore process based on a restore command. I have.

【0016】[0016]

【実施例】以下、本発明の一実施例について、図を参照
しながら詳細に説明する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS One embodiment of the present invention will be described below in detail with reference to the drawings.

【0017】図1を参照すると、本発明の一実施例であ
る利用者プログラムのデバッグ処理システムは、入力フ
ァイルからデータを入力し、出力ファイルにデータを出
力する処理を行う利用者プログラム1と、端末2と、端
末2から入力されたコマンドを解析するコマンド解析手
段3と、ブレークポイント時点で出力ファイルをコミッ
トするコミット手段4と、出力ファイルをブレークポイ
ント時点の状態にロールバックするロールバック手段5
と、ブレークポイント時点の利用者プログラムがアクセ
スしている入力ファイルのカレンシ情報を退避するカレ
ンシ情報退避手段6と、カレンシ情報退避手段6によっ
て退避された入力ファイルのカレンシ情報を復旧するカ
レンシ情報復旧手段7と、ブレークポイント時点の利用
者プログラムの変数情報を退避する変数情報退避手段8
と、変数情報退避手段8によって退避された利用者プロ
グラムの変数情報を復旧する変数情報復旧手段9と、ブ
レークポイント時点の利用者プログラムのスタック情報
を退避するスタック情報退避手段10と、スタック情報
退避手段10によって退避された利用者プログラムのス
タック情報を復旧するスタック情報復旧手段11と、利
用者プログラムがアクセスしている入力ファイルのカレ
ンシ情報を退避するカレンシ情報退避領域12と、利用
者プログラムの変数情報を退避する変数情報退避領域1
3と、利用者プログラムのスタック情報を退避するスタ
ック情報退避領域14と、カレンシ情報退避領域12、
変数情報退避領域13、およびスタック情報退避領域1
4を確保する領域確保手段15と、カレンシ情報退避領
域12、変数情報退避領域13、およびスタック情報退
避領域14を解放する領域解放手段16とから構成され
ている。
Referring to FIG. 1, a user program debug processing system according to one embodiment of the present invention includes a user program 1 for inputting data from an input file and outputting data to an output file. A terminal 2, a command analysis unit 3 for analyzing a command input from the terminal 2, a commit unit 4 for committing an output file at a breakpoint, and a rollback unit 5 for rolling back the output file to the state at the breakpoint
And currency information saving means 6 for saving currency information of the input file accessed by the user program at the time of the breakpoint, and currency information restoring means for restoring currency information of the input file saved by the currency information saving means 6 7 and variable information saving means 8 for saving variable information of the user program at the time of the break point.
A variable information restoring unit 9 for restoring the variable information of the user program saved by the variable information saving unit 8; a stack information saving unit 10 for saving the stack information of the user program at the time of the breakpoint; A stack information restoring unit 11 for restoring the stack information of the user program saved by the unit 10; a currency information saving area 12 for saving currency information of an input file accessed by the user program; Variable information save area 1 for saving information
3, a stack information save area 14 for saving stack information of the user program, a currency information save area 12,
Variable information save area 13 and stack information save area 1
4 is provided, and an area release unit 16 is configured to release the currency information save area 12, the variable information save area 13, and the stack information save area 14.

【0018】なお、コマンド解析手段3、コミット手段
4、ロールバック手段5、カレンシ情報退避手段6、カ
レンシ情報復旧手段7、変数情報退避手段8、変数情報
復旧手段9、スタック情報退避手段10、スタック情報
復旧手段11、領域確保手段15および領域解放手段1
6は、オペレーティングシステムの一機能であるデバッ
ガ上に実現される。また、カレンシ情報退避領域12、
変数情報退避領域13およびスタック情報退避領域14
は、オペレーティングシステムによって管理されている
利用者プログラム1のためのメモリ内の領域に実現され
る。
The command analyzing means 3, the commit means 4, the rollback means 5, the currency information saving means 6, the currency information restoring means 7, the variable information saving means 8, the variable information restoring means 9, the stack information saving means 10, the stack information Information recovery means 11, area securing means 15, and area releasing means 1
6 is realized on a debugger which is a function of the operating system. In addition, the currency information save area 12,
Variable information save area 13 and stack information save area 14
Is realized in an area in the memory for the user program 1 managed by the operating system.

【0019】図2は、利用者プログラム1の一例を示す
図である。この利用者プログラム1は、入力ファイルか
らデータを入力し、出力ファイルにデータを出力する処
理を行う。本発明の利用者プログラムのデバッグ処理シ
ステムのデバッグ対象となる利用者プログラムは、この
利用者プログラム1のように、出力ファイルおよび入力
ファイルにアクセスするプログラムであることを前提と
している。ただし、出力ファイルもしくは入力ファイル
またはその両方にアクセスしない利用者プログラムであ
っても、本発明を適用することは可能である。
FIG. 2 is a diagram showing an example of the user program 1. The user program 1 performs a process of inputting data from an input file and outputting data to an output file. It is assumed that the user program to be debugged by the user program debug processing system of the present invention is a program that accesses an output file and an input file like the user program 1. However, the present invention can be applied to a user program that does not access the output file, the input file, or both.

【0020】また、本実施例においては、この利用者プ
ログラム1の第70行目の直前にブレークポイントが1
箇所設定されているものとする。
In this embodiment, a breakpoint is set immediately before the 70th line of the user program 1.
It is assumed that the location has been set.

【0021】次に本発明の一実施例である利用者プログ
ラムのデバッグ処理システムについて、図1〜図4を参
照して説明する。
Next, a user program debug processing system according to an embodiment of the present invention will be described with reference to FIGS.

【0022】まず、利用者プログラム1のデバッグ開始
時において、デバッガ内の領域確保手段15は、カレン
シ情報退避領域12、変数情報退避領域13およびスタ
ック情報退避領域14をメモリ上に確保する。
First, at the start of debugging of the user program 1, the area securing means 15 in the debugger secures a currency information save area 12, a variable information save area 13, and a stack information save area 14 in the memory.

【0023】次に、利用者プログラム1のデバッグ中
に、図2においては第70行目のブレークポイントにお
いて「ブレークポイントにおける情報の退避」を示すコ
マンド(以下、退避コマンドという)が端末2から入力
された時の動作について説明する。
Next, during debugging of the user program 1, a command indicating “save information at a breakpoint” (hereinafter referred to as a save command) is input from the terminal 2 at the breakpoint on the 70th line in FIG. The operation when this is performed will be described.

【0024】コマンド解析手段3は、コマンドの解析処
理によって、端末2から入力されたコマンドが退避コマ
ンドであることを認識する(ステップ31)。
The command analyzing means 3 recognizes that the command input from the terminal 2 is a save command by analyzing the command (step 31).

【0025】コマンド解析手段3は、退避コマンドの入
力の認識に基づいて、まずコミット手段4を呼び出す
(ステップ32)。
The command analysis means 3 first calls the commit means 4 based on the recognition of the input of the save command (step 32).

【0026】コマンド解析手段3によって呼び出された
コミット手段4は、ブレークポイントにおいて利用者プ
ログラム1がアクセスしている出力ファイルをコミット
する(ステップ33)。なお、図1および図2におい
て、コミット/ロールバックのために使用されるログフ
ァイルについては図示を省略している。
The commit unit 4 called by the command analysis unit 3 commits the output file accessed by the user program 1 at the break point (step 33). Note that, in FIGS. 1 and 2, a log file used for commit / rollback is not shown.

【0027】コミット手段4は、ステップ33終了後、
コマンド解析手段3に制御を戻す。
After the end of step 33, the commit means 4
Control is returned to the command analysis means 3.

【0028】次にコマンド解析手段3は、カレンシ情報
退避手段6を呼び出す(ステップ34)。
Next, the command analysis means 3 calls the currency information saving means 6 (step 34).

【0029】コマンド解析手段3によって呼び出された
カレンシ情報退避手段6は、利用者プログラム1がアク
セスしている入力ファイルのブレークポイントにおける
カレンシ情報(ここでは、入力ファイル内の「CCCC
C」というレコードを示す情報とする)をオペレーティ
ングシステムが管理しているメモリ内の領域からカレン
シ情報退避領域12に退避する(ステップ35)。
The currency information saving means 6 called by the command analyzing means 3 stores the currency information at the breakpoint of the input file accessed by the user program 1 (here, the "CCCC" in the input file).
C) is saved from the area in the memory managed by the operating system to the currency information saving area 12 (step 35).

【0030】カレンシ情報退避手段6は、ステップ35
終了後、コマンド解析手段3に制御を戻す。
The currency information saving means 6 executes step 35
After completion, the control is returned to the command analysis means 3.

【0031】次にコマンド解析手段3は、変数情報退避
手段8を呼び出す(ステップ36)。
Next, the command analysis means 3 calls the variable information saving means 8 (step 36).

【0032】コマンド解析手段3によって呼び出された
変数情報退避手段8は、ブレークポイントにおける利用
者プログラム1の変数情報(ここでは、変数「X」が
「2」であることを示す情報)を利用者プログラム1の
メモリ内の領域から変数情報退避領域13に退避する
(ステップ37)。
The variable information saving means 8 called by the command analysis means 3 stores the variable information of the user program 1 at the break point (here, information indicating that the variable "X" is "2"). The program 1 is saved from the area in the memory to the variable information saving area 13 (step 37).

【0033】変数情報退避手段8は、ステップ37終了
後、コマンド解析手段3に制御を戻す。
The variable information saving means 8 returns the control to the command analyzing means 3 after the end of step 37.

【0034】次にコマンド解析手段3は、スタック情報
退避手段10を呼び出す(ステップ38)。
Next, the command analysis means 3 calls the stack information saving means 10 (step 38).

【0035】コマンド解析手段3によって呼び出された
スタック情報退避手段10は、ブレークポイントにおけ
る利用者プログラム1のスタック情報(ここでは、第7
0行目を示すプログラムカウンタの情報等)をプログラ
ムカウンタ等のレジスタやメモリ内のスタック領域から
スタック情報退避領域14に退避する(ステップ3
9)。
The stack information saving means 10 called by the command analysis means 3 stores the stack information of the user program 1 at the break point (here, the seventh
The information of the program counter indicating the 0th line is saved from the register of the program counter and the stack area in the memory to the stack information saving area 14 (step 3).
9).

【0036】スタック情報退避手段10は、ステップ3
9終了後、コマンド解析手段3に制御を戻す。以上によ
り、コマンド解析手段3は、退避コマンド入力に対する
処理を終了する。
The stack information saving means 10 executes step 3
After the completion of step 9, control is returned to the command analysis means 3. As described above, the command analysis unit 3 ends the processing for the input of the save command.

【0037】なお、コマンド解析手段3によるコミット
手段4、カレンシ情報退避手段6および変数情報退避手
段8の呼出し順序は、図3に示す順序に限られるもので
はなく任意である。ただし、スタック情報退避手段10
によるスタック情報の退避処理は、コミット手段4、カ
レンシ情報退避手段6および変数情報退避手段8による
処理の終了後に行われる必要がある。これは、ブレーク
ポイントからのデバッグの再開後における利用者プログ
ラム1の適正な実行を保証するためである。
The calling sequence of the commit unit 4, the currency information saving unit 6 and the variable information saving unit 8 by the command analysis unit 3 is not limited to the order shown in FIG. However, the stack information saving means 10
The stack information saving process by the above needs to be performed after the processing by the commit unit 4, the currency information saving unit 6 and the variable information saving unit 8 is completed. This is to ensure proper execution of the user program 1 after restarting debugging from a breakpoint.

【0038】次に、利用者プログラム1のデバッグ中
に、デバッグを図2の第70行目からやり直すために、
「ブレークポイントにおける情報の復旧」を示すコマン
ド(以下、復旧コマンドという)が端末2から入力され
た時の動作について説明する。
Next, during debugging of the user program 1, in order to restart debugging from the 70th line in FIG.
An operation when a command indicating “restoration of information at a breakpoint” (hereinafter, referred to as a restoration command) is input from the terminal 2 will be described.

【0039】コマンド解析手段3は、コマンドの解析処
理によって、端末2から入力されたコマンドが復旧コマ
ンドであることを認識する(ステップ41)。
The command analysis means 3 recognizes that the command input from the terminal 2 is a recovery command by analyzing the command (step 41).

【0040】コマンド解析手段3は、復旧コマンドの入
力の認識に基づいて、まずロールバック手段5を呼び出
す(ステップ42)。
The command analysis means 3 first calls the rollback means 5 based on the recognition of the input of the restoration command (step 42).

【0041】コマンド解析手段3によって呼び出された
ロールバック手段5は、コミット手段4によりコミット
された出力ファイルをブレークポイント(退避コマンド
が入力された時点)にロールバックする(ステップ4
3)。
The rollback means 5 called by the command analysis means 3 rolls back the output file committed by the commit means 4 to a breakpoint (at the time the save command is input) (step 4).
3).

【0042】ロールバック手段5は、ステップ43終了
後、コマンド解析手段3に制御を戻す。
After the end of step 43, the rollback means 5 returns control to the command analysis means 3.

【0043】次にコマンド解析手段3は、カレンシ情報
復旧手段7を呼び出す(ステップ44)。
Next, the command analyzing means 3 calls the currency information restoring means 7 (step 44).

【0044】コマンド解析手段3によって呼び出された
カレンシ情報復旧手段7は、カレンシ情報退避領域12
に退避されているカレンシ情報(入力ファイル内の「C
CCCC」というレコードを示す情報)をオペレーティ
ングシステムが管理しているメモリ内の領域に復旧する
(ステップ45)。
The currency information restoring means 7 called by the command analyzing means 3 is a currency information saving area 12
Information saved in the file ("C" in the input file
The information indicating the record “CCCC” is restored to the area in the memory managed by the operating system (step 45).

【0045】カレンシ情報復旧手段7は、ステップ45
終了後、コマンド解析手段3に制御を戻す。
The currency information restoring means 7 executes step 45
After completion, the control is returned to the command analysis means 3.

【0046】次にコマンド解析手段3は、変数情報復旧
手段9を呼び出す(ステップ46)。
Next, the command analyzing means 3 calls the variable information restoring means 9 (step 46).

【0047】コマンド解析手段3によって呼び出された
変数情報復旧手段9は、変数情報退避領域13に退避さ
れている変数情報(変数「X]が「2」であることを示
す情報)を利用者プログラム1のメモリ内の領域に復旧
する(ステップ47)。
The variable information restoring means 9 called by the command analyzing means 3 stores the variable information (information indicating that the variable “X” is “2”) saved in the variable information saving area 13 into the user program. 1 is restored to the area in the memory (step 47).

【0048】変数情報復旧手段9は、ステップ47終了
後、コマンド解析手段3に制御を戻す。
After the end of step 47, the variable information restoring means 9 returns the control to the command analyzing means 3.

【0049】次にコマンド解析手段3は、スタック情報
復旧手段11を呼び出す(ステップ48)。
Next, the command analyzing means 3 calls the stack information restoring means 11 (step 48).

【0050】コマンド解析手段3によって呼び出された
スタック情報復旧手段11は、スタック情報退避領域1
4に退避されているスタック情報(第70行目を示すプ
ログラムカウンタの情報等)をプログラムカウンタ等の
レジスタやメモリ内のスタック領域に復旧する(ステッ
プ49)。
The stack information restoring means 11 called by the command analyzing means 3 stores the stack information save area 1
The stack information saved in step 4 (eg, information on the program counter indicating the 70th line) is restored to a register such as the program counter and a stack area in the memory (step 49).

【0051】スタック情報復旧手段11は、ステップ4
9終了後、コマンド解析手段3に制御を戻す。以上によ
り、コマンド解析手段3は、復旧コマンド入力に対する
処理を終了する。
The stack information restoring means 11 executes step 4
After the completion of step 9, control is returned to the command analysis means 3. As described above, the command analysis unit 3 ends the processing for the input of the restoration command.

【0052】なお、コマンド解析手段3によるロールバ
ック手段5、カレンシ情報復旧手段7および変数情報復
旧手段9の呼出し順序は、図4に示す順序に限られるも
のではなく任意である。ただし、スタック情報復旧手段
11によるスタック情報の復旧処理は、ロールバック手
段5、カレンシ情報復旧手段7および変数情報復旧手段
9による処理の終了後に行われる必要がある。これは、
ブレークポイントからのデバッグの再開後における利用
者プログラム1の適正な実行を保証するためである。
The order in which the command analysis means 3 calls the rollback means 5, currency information restoration means 7 and variable information restoration means 9 is not limited to the order shown in FIG. However, the stack information restoration process by the stack information restoration unit 11 needs to be performed after the processing by the rollback unit 5, the currency information restoration unit 7, and the variable information restoration unit 9 ends. this is,
This is to ensure proper execution of the user program 1 after restarting debugging from a breakpoint.

【0053】利用者プログラム1のデバッグの終了時に
は、デバッガ内の領域解放手段16は、メモリ上のカレ
ンシ情報退避領域12、変数情報退避領域13およびス
タック情報退避領域14を解放する。
When the debugging of the user program 1 is completed, the area releasing means 16 in the debugger releases the currency information saving area 12, the variable information saving area 13 and the stack information saving area 14 in the memory.

【0054】なお、カレンシ情報退避領域12、変数情
報退避領域13およびスタック情報退避領域14の確保
時点は、本実施例のようなデバッグの開始時に限られる
ものではない。ただし、退避処理(カレンシ情報退避手
段6、変数情報退避手段8およびスタック情報退避手段
10による処理)の処理効率の向上という観点からは、
デバッガの開始時に確保することが望ましい。同様に、
カレンシ情報退避領域12、変数情報退避領域13およ
びスタック情報退避領域14の解放時点は、本実施例の
ようなデバッグの終了時に限られるものではない。ただ
し、復旧処理(カレンシ情報復旧手段7、変数情報復旧
手段9およびスタック情報復旧手段11による処理)の
処理効率の向上という観点からは、デバッグの終了時に
解放することが望ましい。
The time at which the currency information save area 12, variable information save area 13, and stack information save area 14 are secured is not limited to the start of debugging as in this embodiment. However, from the viewpoint of improving the processing efficiency of the saving processing (processing by the currency information saving means 6, the variable information saving means 8, and the stack information saving means 10),
It is desirable to secure it when starting the debugger. Similarly,
The release time of the currency information save area 12, the variable information save area 13, and the stack information save area 14 is not limited to the end of debugging as in the present embodiment. However, from the viewpoint of improving the processing efficiency of the recovery processing (the processing by the currency information recovery unit 7, the variable information recovery unit 9, and the stack information recovery unit 11), it is desirable to release at the end of debugging.

【0055】また、領域確保手段15が退避コマンドの
入力時にカレンシ情報退避領域12、変数情報退避領域
13およびスタック情報退避領域14を確保し、領域解
放手段16が復旧コマンドに基づく復旧処理の終了時に
カレンシ情報退避領域12、変数情報退避領域13およ
びスタック情報退避領域14を解放してもよい。この手
順によれば、メモリ上の領域の効率的な使用を実現でき
るという利点がある。
The area securing means 15 secures the currency information saving area 12, the variable information saving area 13 and the stack information saving area 14 at the time of inputting the save command, and the area releasing means 16 at the end of the recovery processing based on the recovery command. The currency information save area 12, the variable information save area 13, and the stack information save area 14 may be released. According to this procedure, there is an advantage that efficient use of the area on the memory can be realized.

【0056】ところで、本実施例においては、退避処理
および復元処理(コミット手段4およびロールバック手
段5による処理を含む)の対象となるブレークポイント
が1箇所である場合について述べた。しかし、退避処理
および復元処理の対象となるブレークポイントが複数で
ある場合にも本発明の利用者プログラムのデバッグ処理
方式を適用することは可能である。この場合には、以下
の(1)〜(4)に示すような処理の態様が採用される
こととなる。 (1)コミット手段4、カレンシ情報退避手段6、変数
情報退避手段8およびスタック情報退避手段10は、退
避コマンドが入力された時点のブレークポイントを示す
識別情報を認識し、その識別情報が含まれるように出力
ファイルのコミット、入力ファイルのカレンシ情報の退
避、変数情報の退避およびスタック情報の退避を行う。 (2)端末2から入力される復旧コマンドにはデバッグ
を再開する起点となるブレークポイントの識別情報が付
加され、コマンド解析手段3はその復旧コマンドに基づ
いてどのブレークポイントに対する復旧処理を行うべき
であるかを認識する。 (3)ロールバック手段5、カレンシ情報復旧手段7、
変数情報復旧手段9およびスタック情報復旧手段11
は、コマンド解析手段3から復旧コマンドに付加された
ブレークポイントの識別情報を受け取り、そのブレーク
ポイントに関する出力ファイルのロールバック、入力フ
ァイルのカレンシ情報の復旧、変数情報の復旧およびス
タック情報の復旧を行う。 (4)カレンシ情報退避領域12、変数情報退避領域1
3およびスタック情報退避領域14は、複数のブレーク
ポイントに対応して複数のカレンシ情報、変数情報およ
びスタック情報の設定が可能なように構築される。
In this embodiment, a case has been described in which only one breakpoint is subjected to the save processing and the restoration processing (including the processing by the commit unit 4 and the rollback unit 5). However, the debug processing method of the user program of the present invention can be applied to a case where there are a plurality of breakpoints to be saved and restored. In this case, the following processing modes (1) to (4) are adopted. (1) The commit unit 4, the currency information save unit 6, the variable information save unit 8, and the stack information save unit 10 recognize the identification information indicating the break point at the time when the save command is input, and include the identification information. Thus, the output file is committed, the currency information of the input file is saved, the variable information is saved, and the stack information is saved. (2) The recovery command input from the terminal 2 is added with identification information of a breakpoint serving as a starting point for restarting debugging, and the command analysis means 3 should perform recovery processing for any breakpoint based on the recovery command. Recognize if there is. (3) Rollback means 5, currency information recovery means 7,
Variable information restoring means 9 and stack information restoring means 11
Receives the breakpoint identification information added to the restoration command from the command analysis unit 3 and performs rollback of the output file related to the breakpoint, restoration of currency information of the input file, restoration of variable information, and restoration of stack information. . (4) Currency information save area 12, variable information save area 1
3 and the stack information save area 14 are constructed so that a plurality of currency information, variable information and stack information can be set corresponding to a plurality of break points.

【0057】以上により、本発明の一実施例である利用
者プログラムのデバッグ処理システムの処理が完了す
る。
Thus, the processing of the user program debug processing system according to one embodiment of the present invention is completed.

【0058】本発明の一実施例である利用者プログラム
のデバッグ処理システムは、退避コマンドの入力に対し
て出力ファイルのコミット、入力ファイルのカレンシ情
報の退避、変数情報の退避およびスタック情報の退避を
行い、復旧コマンドの入力に対して出力ファイルのロー
ルバック、入力ファイルのカレンシ情報の復旧、変数情
報の復旧およびスタック情報の復旧を行うことにより、
ブレークポイントから利用者プログラムのデバッグを再
開することができるという効果を有している。
The user program debug processing system according to one embodiment of the present invention performs commit of an output file, save of currency information of an input file, save of variable information, and save of stack information in response to a save command input. In response to the input of the recovery command, the output file is rolled back, the currency information of the input file is restored, the variable information is restored, and the stack information is restored.
This has the effect that the debugging of the user program can be resumed from the breakpoint.

【0059】また、デバッグの開始時に各退避領域を確
保し、デバッグの終了時に各退避領域を解放することに
より、退避処理および復旧処理の処理効率を向上させる
ことができる効果を有している。
Also, by securing each save area at the start of debugging and releasing each save area at the end of debugging, there is an effect that the processing efficiency of save processing and restoration processing can be improved.

【0060】さらに、退避コマンドの入力時に各退避領
域を確保し、復旧コマンドに基づく復旧処理の終了時に
各退避領域を解放することにより、メモリ上の領域の使
用効率を向上させることができる効果を有している。
Furthermore, by saving each save area when a save command is input and releasing each save area at the end of the recovery processing based on the restore command, the use efficiency of the area on the memory can be improved. Have.

【0061】[0061]

【発明の効果】以上説明したように、本発明の利用者プ
ログラムのデバッグ処理システムは、ブレークポイント
から利用者プログラムのデバッグを再開することがで
き、デバッグ処理の効率を向上させることができる効果
を有している。
As described above, the system for debugging a user program according to the present invention can resume debugging of a user program from a breakpoint, and can improve the efficiency of debugging. Have.

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

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

【図2】本発明の一実施例における利用者プログラム1
の例を示す図である。
FIG. 2 is a user program 1 according to an embodiment of the present invention.
It is a figure showing the example of.

【図3】本発明の一実施例におけるコマンド解析手段
3、コミット手段4、カレンシ情報退避手段6、変数情
報退避手段8、およびスタック情報退避手段10の処理
を示す流れ図である。
FIG. 3 is a flowchart showing processing of a command analysis unit 3, a commit unit 4, a currency information save unit 6, a variable information save unit 8, and a stack information save unit 10 in one embodiment of the present invention.

【図4】本発明の一実施例におけるコマンド解析手段
3、ロールバック手段5、カレンシ情報復旧手段7、変
数情報復旧手段9、およびスタック情報復旧手段11の
処理を示す流れ図である。
FIG. 4 is a flowchart showing processing of a command analysis unit 3, a rollback unit 5, a currency information recovery unit 7, a variable information recovery unit 9, and a stack information recovery unit 11 in one embodiment of the present invention.

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

1 利用者プログラム 2 端末 3 コマンド解析手段 4 コミット手段 5 ローカルバック手段 6 カレンシ情報退避手段 7 カレンシ情報復旧手段 8 変数情報退避手段 9 変数情報復旧手段 10 スタック情報退避手段 11 スタック情報復旧手段 12 カレンシ情報退避領域 13 変数情報退避領域 14 スタック情報退避領域 15 領域確保手段 16 領域解放手段 DESCRIPTION OF SYMBOLS 1 User program 2 Terminal 3 Command analysis means 4 Commit means 5 Local back means 6 Currency information saving means 7 Currency information restoring means 8 Variable information saving means 9 Variable information restoring means 10 Stack information saving means 11 Stack information restoring means 12 Currency information Save area 13 Variable information save area 14 Stack information save area 15 Area securing means 16 Area releasing means

───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平6−44119(JP,A) 特開 平5−81043(JP,A) 特開 平4−213150(JP,A) 特開 平5−151013(JP,A) 特開 平6−301526(JP,A) H.クロフォード著、岩谷 宏訳 「80386プログラミング」、(昭63−7 −25)、株式会社工学社、P573− 582、”第8章 デバッグのサポート" ──────────────────────────────────────────────────続 き Continuation of the front page (56) References JP-A-6-44119 (JP, A) JP-A-5-81043 (JP, A) JP-A-4-213150 (JP, A) 151013 (JP, A) JP-A-6-301526 (JP, A) Written by Crawford, translated by Hiroshi Iwatani, "80386 Programming", (63-7-25), Kogakusha Co., Ltd., P573-582, "Chapter 8 Debugging Support"

Claims (8)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 利用者プログラムに区切り点を設定して
デバッグする利用者プログラムのデバッグ処理システム
であって、 前記区切り点において、端末から入力されたコマンドが
退避コマンドであることを認識するコマンド解析手段
と、 前記コマンド解析手段により退避コマンドの入力が認識
された場合に、区切り点において利用者プログラムがア
クセスしている出力ファイルの内容を確定するコミット
手段と、 前記コマンド解析手段により退避コマンドの入力が認識
された場合に、利用者プログラムがアクセスしている入
力ファイルの区切り点におけるレコードを指示するカレ
ンシ情報をカレンシ情報退避領域に退避するカレンシ情
報退避手段と、 前記コマンド解析手段により退避コマンドの入力が認識
された場合に、区切り点において利用者プログラムが使
用しているメモリ上の変数の内容である変数情報を変数
情報退避領域に退避する変数情報退避手段と、 前記コマンド解析手段により退避コマンドの入力が認識
された場合に、前記コミット手段、前記カレンシ情報退
避手段、および前記変数情報退避手段の処理の終了後に
呼び出され、区切り点における利用者プログラムの実行
順序を管理するためのスタック情報をスタック情報退避
領域に退避するスタック情報退避手段とを備えたことを
特徴とする利用者プログラムのデバッグ処理システム。
1. A user program debug processing system for setting a breakpoint in a user program and debugging the command, wherein at the breakpoint, a command analysis for recognizing that a command input from a terminal is a save command. Means, commit means for determining the contents of an output file accessed by a user program at a breakpoint when the input of a save command is recognized by the command analysis means, and input of the save command by the command analysis means Is recognized, the currency information saving means for saving the currency information indicating the record at the break point of the input file being accessed by the user program in the currency information saving area, and the saving command input by the command analyzing means. Is recognized at the break point A variable information saving means for saving variable information, which is the contents of a variable on a memory used by the user program, in a variable information saving area; and the commit is performed when an input of a saving command is recognized by the command analyzing means. Stack information saving means which is called after the processing of the means, the currency information saving means, and the variable information saving means, and saves stack information for managing the execution order of the user program at the break point in a stack information saving area. And a debugging system for a user program.
【請求項2】 利用者プログラムに区切り点を設定して
デバッグする利用者プログラムのデバッグ処理システム
であって、 前記区切り点において、端末から入力されたコマンドが
退避コマンドであることを認識するコマンド解析手段
と、 前記コマンド解析手段により退避コマンドの入力が認識
された場合に、区切り点において利用者プログラムがア
クセスしている出力ファイルの内容を確定するととも
に、確定した情報に前記区切り点の識別子を付すコミッ
ト手段と、 前記コマンド解析手段により退避コマンドの入力が認識
された場合に、利用者プログラムがアクセスしている入
力ファイルの区切り点におけるレコードを指示するカレ
ンシ情報に前記区切り点の識別子を付してカレンシ情報
退避領域に退避するカレンシ情報退避手段と、 前記コマンド解析手段により退避コマンドの入力が認識
された場合に、区切り点において利用者プログラムが使
用しているメモリ上の変数の内容である変数情報に前記
区切り点の識別子を付して変数情報退避領域に退避する
変数情報退避手段と、 前記コマンド解析手段により退避コマンドの入力が認識
された場合に、前記コミット手段、前記カレンシ情報退
避手段、および前記変数情報退避手段の処理の終了後に
呼び出され、区切り点における利用者プログラムの実行
順序を管理するためのスタック情報に前記区切り点の識
別子を付してスタック情報退避領域に退避するスタック
情報退避手段とを備えたことを特徴とする利用者プログ
ラムのデバッグ処理システム。
2. A user program debug processing system for setting a breakpoint in a user program and debugging the command, wherein at the breakpoint, a command analysis for recognizing that a command input from a terminal is a save command. Means for determining the content of the output file accessed by the user program at the breakpoint when the input of the save command is recognized by the command analysis means, and adding the identifier of the breakpoint to the determined information. Commit means, and when the input of the save command is recognized by the command analysis means, attaches the identifier of the break point to the currency information indicating the record at the break point of the input file accessed by the user program. A currency information saving means for saving in a currency information saving area; When the input of the save command is recognized by the command analysis means, the identifier of the break point is added to the variable information which is the content of the variable on the memory used by the user program at the break point, and the variable information save area is added. When the input of the save command is recognized by the command analyzing unit, the variable information saving unit is called after completion of the processing of the commit unit, the currency information saving unit, and the variable information saving unit. A stack information saving means for attaching stacking information for managing the execution order of the user program at the point to the identifier of the breakpoint and saving the stack information in a stack information saving area. Processing system.
【請求項3】 前記カレンシ情報退避領域、前記変数情
報退避領域、および前記スタック情報退避領域を前記利
用者プログラムのデバッグの開始時に確保する領域確保
手段を備えたことを特徴とする請求項1、または請求項
2記載の利用者プログラムのデバッグ処理システム。
3. The apparatus according to claim 1, further comprising an area securing unit that secures the currency information save area, the variable information save area, and the stack information save area at the start of debugging of the user program. Or a user program debug processing system according to claim 2.
【請求項4】 前記カレンシ情報退避領域、前記変数情
報退避領域、および前記スタック情報退避領域を退避コ
マンドの入力時に確保する領域確保手段を備えたことを
特徴とする請求項1、または請求項2記載の利用者プロ
グラムのデバッグ処理システム。
4. The apparatus according to claim 1, further comprising an area securing unit that secures the currency information save area, the variable information save area, and the stack information save area when a save command is input. Debug processing system for the user program described.
【請求項5】 利用者プログラムに区切り点を設定して
デバッグする利用者プログラムのデバッグ処理システム
であって、 区切り点において、端末から入力されたコマンドが退避
コマンドであること、または端末から入力されたコマン
ドが区切り点を付した復旧コマンドであることを認識す
るコマンド解析手段と、 前記コマンド解析手段により退避コマンドの入力が認識
された場合に、区切り点において利用者プログラムがア
クセスしている出力ファイルの内容を確定するコミット
手段と、 前記コマンド解析手段により退避コマンドの入力が認識
された場合に、利用者プログラムがアクセスしている入
力ファイルの区切り点におけるレコードを指示するカレ
ンシ情報をカレンシ情報退避領域に退避するカレンシ情
報退避手段と、 前記コマンド解析手段により退避コマンドの入力が認識
された場合に、区切り点において利用者プログラムが使
用しているメモリ上の変数の内容である変数情報を変数
情報退避領域に退避する変数情報退避手段と、 前記コマンド解析手段により退避コマンドの入力が認識
された場合に、前記コミット手段、前記カレンシ情報退
避手段、および前記変数情報退避手段の処理の終了後に
呼び出され、区切り点における利用者プログラムの実行
順序を管理するためのスタック情報をスタック情報退避
領域に退避するスタック情報退避手段と、 前記コマンド解析手段により復旧コマンドの入力が認識
された場合に、前記コミット手段により内容が確定され
た出力ファイルを区切り点に後退復帰するロールバック
手段と、 前記コマンド解析手段により復旧コマンドの入力が認識
された場合に、前記カレンシ情報退避手段により前記カ
レンシ情報退避領域に退避されたカレンシ情報を復旧す
るカレンシ情報復旧手段と、 前記コマンド解析手段により復旧コマンドの入力が認識
された場合に、前記変数情報退避領域に退避された変数
情報を復旧する変数情報復旧手段と、 前記コマンド解析手段により復旧コマンドの入力が認識
された場合に、前記ロールバック手段、前記カレンシ情
報復旧手段、および前記変数情報復旧手段の処理の終了
後に呼び出され、前記スタック情報退避手段により前記
スタック情報退避領域に退避されたスタック情報を復旧
するスタック情報復旧手段とを備えたことを特徴とする
利用者プログラムのデバッグ処理システム。
5. A user program debug processing system for setting a breakpoint in a user program and debugging the program, wherein at the breakpoint, a command input from the terminal is a save command or a command input from the terminal. Command analysis means for recognizing that the restored command is a restoration command with a breakpoint, and an output file accessed by the user program at the breakpoint when the input of the save command is recognized by the command analysis means. Commit means for determining the contents of the command, and when the command analysis means recognizes the input of the save command, the currency information indicating the record at the break point of the input file accessed by the user program is stored in the currency information save area. Means for saving currency information to be saved to the Variable information saving means for saving variable information, which is the content of a variable on a memory used by the user program at a break point, in a variable information saving area when the input of the saving command is recognized by the analyzing means; When the input of the save command is recognized by the command analysis unit, the command is called after the processing of the commit unit, the currency information save unit, and the variable information save unit is completed, and manages the execution order of the user program at the break point. Stack information saving means for saving stack information for stacking in a stack information saving area, and when the input of a restoration command is recognized by the command analysis means, the output file whose contents are determined by the commit means is set as a breakpoint. Rollback means for reversing and returning, and a restoration command by the command analysis means When the input of the currency information is recognized, the currency information saving means recovers the currency information saved in the currency information saving area by the currency information saving means, and when the input of the recovery command is recognized by the command analyzing means, A variable information restoring means for restoring the variable information saved in the variable information save area; and a rollback means, the currency information restoring means, when the input of a restoration command is recognized by the command analyzing means, and A stack information restoring unit that is called after completion of the processing of the variable information restoring unit and restores the stack information saved in the stack information saving area by the stack information saving unit. Processing system.
【請求項6】 利用者プログラムに区切り点を設定して
デバッグする利用者プログラムのデバッグ処理システム
であって、 区切り点において、端末から入力されたコマンドが退避
コマンドであること、または端末から入力されたコマン
ドが区切り点を付した復旧コマンドであることを認識す
るコマンド解析手段と、 前記コマンド解析手段により退避コマンドの入力が認識
された場合に、区切り点において利用者プログラムがア
クセスしている出力ファイルの内容を確定するととも
に、確定した情報に前記区切り点の識別子を付すコミッ
ト手段と、 前記コマンド解析手段により退避コマンドの入力が認識
された場合に、利用者プログラムがアクセスしている入
力ファイルの区切り点におけるレコードを指示するカレ
ンシ情報に前記区切り点の識別子を付してカレンシ情報
退避領域に退避するカレンシ情報退避手段と、 前記コマンド解析手段により退避コマンドの入力が認識
された場合に、区切り点において利用者プログラムが使
用しているメモリ上の変数の内容である変数情報に前記
区切り点の識別子を付して変数情報退避領域に退避する
変数情報退避手段と、 前記コマンド解析手段により退避コマンドの入力が認識
された場合に、前記コミット手段、前記カレンシ情報退
避手段、および前記変数情報退避手段の処理の終了後に
呼び出され、区切り点における利用者プログラムの実行
順序を管理するためのスタック情報に前記区切り点の識
別子を付してスタック情報退避領域に退避するスタック
情報退避手段と、 前記コマンド解析手段により復旧コマンドの入力が認識
された場合に、前記コミット手段により内容が確定され
た出力ファイルを前記復旧コマンドが示す区切り点に後
退復帰するロールバック手段と、 前記コマンド解析手段により復旧コマンドの入力が認識
された場合に、前記カレンシ情報退避手段により前記カ
レンシ情報退避領域に退避されたカレンシ情報を前記復
旧コマンドが示す区切り点の状態にまで復旧するカレン
シ情報復旧手段と、 前記コマンド解析手段により復旧コマンドの入力が認識
された場合に、前記変数情報退避領域に退避された変数
情報を前記復旧コマンドが示す区切り点の状態にまで復
旧する変数情報復旧手段と、 前記コマンド解析手段により復旧コマンドの入力が認識
された場合に、前記ロールバック手段、前記カレンシ情
報復旧手段、および前記変数情報復旧手段の処理の終了
後に呼び出され、前記スタック情報退避手段により前記
スタック情報退避領域に退避されたスタック情報を前記
復旧コマンドが示す区切り点の状態にまで復旧するスタ
ック情報復旧手段とを備えたことを特徴とする利用者プ
ログラムのデバッグ処理システム。
6. A user program debug processing system for setting a breakpoint in a user program and debugging the program, wherein at the breakpoint, a command input from the terminal is a save command or a command input from the terminal. Command analysis means for recognizing that the restored command is a restoration command with a breakpoint, and an output file accessed by the user program at the breakpoint when the input of the save command is recognized by the command analysis means. Committing means for determining the content of the file, and adding the identifier of the delimiting point to the determined information; and delimiting the input file accessed by the user program when the input of the evacuation command is recognized by the command analyzing means. The currency information indicating the record at the point is used to identify the breakpoint. A currency information saving means for attaching to the currency information saving area with a differentiator, and a variable on a memory used by the user program at the breakpoint when the input of the saving command is recognized by the command analyzing means. Variable information saving means for attaching the identifier of the breakpoint to the variable information which is the content of the variable information saving area, and when the command analysis means recognizes the input of the saving command, the commit means, Called after the processing of the currency information saving means and the variable information saving means, the stack information for managing the execution order of the user program at the break point is added with the identifier of the break point and stored in the stack information save area. When the input of the restoration command is recognized by the stack information saving unit to be saved and the command analysis unit; A rollback unit that retreats the output file whose content has been determined by the commit unit to the break point indicated by the restoration command; and, when the input of the restoration command is recognized by the command analysis unit, the currency information saving unit. A currency information restoring unit for restoring the currency information saved in the currency information save area to the state of the break point indicated by the restoration command; and the variable information when the command analysis unit recognizes the input of the restoration command. A variable information restoring unit for restoring the variable information saved in the save area to the state of the break point indicated by the restoration command; and a rollback unit when the command analysis unit recognizes the input of the restoration command. After completion of processing by the currency information restoring means and the variable information restoring means A stack information restoring unit that is called and restores the stack information saved in the stack information save area by the stack information saving unit to a state of a break point indicated by the restoration command. Debug processing system.
【請求項7】 前記カレンシ情報退避領域、前記変数情
報退避領域、および前記スタック情報退避領域を前記利
用者プログラムのデバッグの開始時に確保する領域確保
手段と、 前記カレンシ情報退避領域、前記変数情報退避領域、お
よび前記スタック情報退避領域を前記利用者プログラム
のデバッグの終了時に解放する領域解放手段を備えたこ
とを特徴とする請求項5、または請求項6記載の利用者
プログラムのデバッグ処理システム。
7. An area securing unit that secures the currency information save area, the variable information save area, and the stack information save area at the start of debugging of the user program, the currency information save area, and the variable information save. 7. The user program debug processing system according to claim 5, further comprising: an area release unit that releases the area and the stack information save area at the end of debugging of the user program.
【請求項8】 前記カレンシ情報退避領域、前記変数情
報退避領域、および前記スタック情報退避領域を退避コ
マンドの入力時に確保する領域確保手段と、 前記カレンシ情報退避領域、前記変数情報退避領域、お
よび前記スタック情報退避領域を復旧コマンドに基づく
復旧処理の終了時に解放する領域解放手段を備えたこと
を特徴とする請求項5、または請求項6記載の利用者プ
ログラムのデバッグ処理システム。
8. An area securing unit for securing the currency information save area, the variable information save area, and the stack information save area when a save command is input, and the currency information save area, the variable information save area, 7. The user program debug processing system according to claim 5, further comprising an area release unit that releases the stack information save area at the end of the recovery processing based on the recovery command.
JP7078787A 1994-04-28 1995-04-04 User program debug processing system Expired - Fee Related JP2743860B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7078787A JP2743860B2 (en) 1994-04-28 1995-04-04 User program debug processing system

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP6-113593 1994-04-28
JP11359394 1994-04-28
JP7078787A JP2743860B2 (en) 1994-04-28 1995-04-04 User program debug processing system

Publications (2)

Publication Number Publication Date
JPH0816431A JPH0816431A (en) 1996-01-19
JP2743860B2 true JP2743860B2 (en) 1998-04-22

Family

ID=26419848

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7078787A Expired - Fee Related JP2743860B2 (en) 1994-04-28 1995-04-04 User program debug processing system

Country Status (1)

Country Link
JP (1) JP2743860B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6810523B2 (en) * 2001-07-31 2004-10-26 International Business Machines Corporation Efficient thread programming using a single callback function
CN102197489B (en) * 2008-10-23 2013-08-21 日产化学工业株式会社 Underlayer film for image formation

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0644119A (en) * 1992-04-16 1994-02-18 Nec Corp Rerun processing system for user program

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
H.クロフォード著、岩谷 宏訳「80386プログラミング」、(昭63−7−25)、株式会社工学社、P573−582、"第8章 デバッグのサポート"

Also Published As

Publication number Publication date
JPH0816431A (en) 1996-01-19

Similar Documents

Publication Publication Date Title
US6708288B1 (en) Compiler-based checkpointing for support of error recovery
KR100198805B1 (en) A prevention method of dangling transaction with initializing transaction table
JP2743860B2 (en) User program debug processing system
JP2762816B2 (en) Transaction execution trace information collection method
US5615371A (en) Debug processing system for user programs
JPH0594353A (en) Database management system
JP2715988B2 (en) Program simulator device and program debugging method
JPH07200350A (en) Software debugger
JP2671160B2 (en) Exception handling method
JPH0594356A (en) On-memory table data fault restoration system
JPS63132351A (en) Memory data base processor
JP3516428B2 (en) calculator
JP3039450B2 (en) Stack area switching method and method, and storage medium storing stack area switching program
JPS63228245A (en) Automatic restoration system for data base
JP2972439B2 (en) Portable terminal backup method
CN116302681A (en) File management method, device, equipment and medium of in-vitro diagnosis equipment
JP3509705B2 (en) Automatic restart processing system and restart processing method in switching system
JP3079825B2 (en) Electronic computer equipment
JPS6159538A (en) Queue control system between tasks
JP3021697B2 (en) Exception handling in programming languages
JPH02226344A (en) Computer system
JPH01277943A (en) Recovery system for dead lock
JPH04264625A (en) Register control system
JPS62192826A (en) File writing system
JPS62237533A (en) Data processor

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19980106

LAPS Cancellation because of no payment of annual fees