JPH0816431A - 利用者プログラムのデバッグ処理システム - Google Patents
利用者プログラムのデバッグ処理システムInfo
- Publication number
- JPH0816431A JPH0816431A JP7078787A JP7878795A JPH0816431A JP H0816431 A JPH0816431 A JP H0816431A JP 7078787 A JP7078787 A JP 7078787A JP 7878795 A JP7878795 A JP 7878795A JP H0816431 A JPH0816431 A JP H0816431A
- Authority
- JP
- Japan
- Prior art keywords
- information
- command
- save
- user program
- saving
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims description 14
- 230000008569 process Effects 0.000 title claims description 11
- 238000004458 analytical method Methods 0.000 claims description 81
- 238000011084 recovery Methods 0.000 claims description 70
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000003672 processing method Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
Landscapes
- Debugging And Monitoring (AREA)
Abstract
(57)【要約】
【目的】ブレークポイントから利用者プログラムのデバ
ッグを再開することができるようにする。 【構成】コマンド解析手段3は、退避コマンドを認識す
ると、コミット手段4、カレンシ情報退避手段6および
変数情報退避手段8を呼び出し、その後にスタック情報
退避手段10を呼び出す。呼び出された各手段は、出力
ファイルのコミット、入力ファイルのカレンシ情報の退
避、変数情報の退避およびスタック情報の退避を行う。
また、コマンド解析手段3は、復旧コマンドを認識する
とロールバック手段5、カレンシ情報復旧手段7および
変数情報復旧手段9を呼び出し、その後にスタック情報
復旧手段11を呼び出す。呼び出された各手段は、出力
ファイルのロールバック、入力ファイルのカレンシ情報
の復旧、変数情報の復旧およびスタック情報の復旧を行
う。
ッグを再開することができるようにする。 【構成】コマンド解析手段3は、退避コマンドを認識す
ると、コミット手段4、カレンシ情報退避手段6および
変数情報退避手段8を呼び出し、その後にスタック情報
退避手段10を呼び出す。呼び出された各手段は、出力
ファイルのコミット、入力ファイルのカレンシ情報の退
避、変数情報の退避およびスタック情報の退避を行う。
また、コマンド解析手段3は、復旧コマンドを認識する
とロールバック手段5、カレンシ情報復旧手段7および
変数情報復旧手段9を呼び出し、その後にスタック情報
復旧手段11を呼び出す。呼び出された各手段は、出力
ファイルのロールバック、入力ファイルのカレンシ情報
の復旧、変数情報の復旧およびスタック情報の復旧を行
う。
Description
【0001】
【産業上の利用分野】本発明はオペレーティングシステ
ムの機能として実現される利用者プログラムのデバッグ
処理システムに関し、特にデバッグの際に区切り点の設
定を行う利用者プログラムのデバッグ処理システムに関
する。
ムの機能として実現される利用者プログラムのデバッグ
処理システムに関し、特にデバッグの際に区切り点の設
定を行う利用者プログラムのデバッグ処理システムに関
する。
【0002】
【従来の技術】従来、利用者プログラムのデバッグが行
われる際には、利用者プログラム中に区切り点(以下、
ブレークポイントとする)が設定されてから該利用者プ
ログラムが実行されていた。
われる際には、利用者プログラム中に区切り点(以下、
ブレークポイントとする)が設定されてから該利用者プ
ログラムが実行されていた。
【0003】この従来のデバッグ方式によれば、利用者
プログラムの実行をブレークポイントで中断させ、ブレ
ークポイントにおいて利用者プログラムで宣言された変
数の値の表示、該変数の値の変更、および別のブレーク
ポイントへの制御の移動を行うことができ、利用者プロ
グラムの動作の確認を行うことができた。
プログラムの実行をブレークポイントで中断させ、ブレ
ークポイントにおいて利用者プログラムで宣言された変
数の値の表示、該変数の値の変更、および別のブレーク
ポイントへの制御の移動を行うことができ、利用者プロ
グラムの動作の確認を行うことができた。
【0004】
【発明が解決しようとする課題】この従来のデバッグ方
式においては、あるブレークポイントにおいて変数の値
を変更したこと等によって、利用者プログラムが利用者
の意図しない動作をした場合に、その利用者プログラム
のデバッグをそのブレークポイントからやり直したいと
いう要請が生じることがある。
式においては、あるブレークポイントにおいて変数の値
を変更したこと等によって、利用者プログラムが利用者
の意図しない動作をした場合に、その利用者プログラム
のデバッグをそのブレークポイントからやり直したいと
いう要請が生じることがある。
【0005】しかしながら、この従来のデバッグ処理方
式においては、ブレークポイントにおける出力ファイル
の内容、入力ファイルのカレンシ情報(現在指示子)、
変数情報、およびスタック情報等がブレークポイントに
おいて退避されなかったので、デバッグの再開時のそれ
らの情報を復旧できなかった。そのため、上述のような
要請があってもブレークポイントからデバッグを再開す
ることができず、利用者プログラムのデバッグを最初か
らやり直さなければならず、デバッグ処理の効率を低下
させるという問題点があった。
式においては、ブレークポイントにおける出力ファイル
の内容、入力ファイルのカレンシ情報(現在指示子)、
変数情報、およびスタック情報等がブレークポイントに
おいて退避されなかったので、デバッグの再開時のそれ
らの情報を復旧できなかった。そのため、上述のような
要請があってもブレークポイントからデバッグを再開す
ることができず、利用者プログラムのデバッグを最初か
らやり直さなければならず、デバッグ処理の効率を低下
させるという問題点があった。
【0006】なお、入力ファイルのカレンシ情報とは、
次のアクセスすべき入力ファイル内のレコードを指示す
る情報をいう。また、変数情報とは、利用者プログラム
によって使用されるメモリ上の変数の内容を示す情報を
いう。さらに、スタック情報とは、利用者プログラムの
実行の順序を管理するための情報であり、プログラムカ
ウンタをはじめとするレジスタの内容やメモリ内のスタ
ック領域の内容等を示す情報をいう。
次のアクセスすべき入力ファイル内のレコードを指示す
る情報をいう。また、変数情報とは、利用者プログラム
によって使用されるメモリ上の変数の内容を示す情報を
いう。さらに、スタック情報とは、利用者プログラムの
実行の順序を管理するための情報であり、プログラムカ
ウンタをはじめとするレジスタの内容やメモリ内のスタ
ック領域の内容等を示す情報をいう。
【0007】本発明の目的は、ブレークポイントから利
用者プログラムのデバッグを再開することができるよう
にすることにあり、デバッグ処理の効率を向上させるこ
とにある。
用者プログラムのデバッグを再開することができるよう
にすることにあり、デバッグ処理の効率を向上させるこ
とにある。
【0008】
【課題を解決するための手段】本発明の第1の利用者プ
ログラムのデバッグ処理システムは、利用者プログラム
にブレークポイントを設定してデバッグする利用者プロ
グラムのデバッグ処理システムであって、前記ブレーク
ポイントにおいて、端末から入力されたコマンドが退避
コマンドであることを認識するコマンド解析手段と、前
記コマンド解析手段により退避コマンドの入力が認識さ
れた場合に、ブレークポイントにおいて利用者プログラ
ムがアクセスしている出力ファイルの内容を確定(以
下、コミットとする)するコミット手段と、前記コマン
ド解析手段により退避コマンドの入力が認識された場合
に、利用者プログラムがアクセスしている入力ファイル
のブレークポイントにおけるレコードを指示するカレン
シ情報をカレンシ情報退避領域に退避するカレンシ情報
退避手段と、前記コマンド解析手段により退避コマンド
の入力が認識された場合に、ブレークポイントにおいて
利用者プログラムが使用しているメモリ上の変数の内容
である変数情報を変数情報退避領域に退避する変数情報
退避手段と、前記コマンド解析手段により退避コマンド
の入力が認識された場合に、前記コミット手段、前記カ
レンシ情報退避手段、および前記変数情報退避手段の処
理の終了後に呼び出され、ブレークポイントにおける利
用者プログラムの実行順序を管理するためのスタック情
報をスタック情報退避領域に退避するスタック情報退避
手段とから構成されている。
ログラムのデバッグ処理システムは、利用者プログラム
にブレークポイントを設定してデバッグする利用者プロ
グラムのデバッグ処理システムであって、前記ブレーク
ポイントにおいて、端末から入力されたコマンドが退避
コマンドであることを認識するコマンド解析手段と、前
記コマンド解析手段により退避コマンドの入力が認識さ
れた場合に、ブレークポイントにおいて利用者プログラ
ムがアクセスしている出力ファイルの内容を確定(以
下、コミットとする)するコミット手段と、前記コマン
ド解析手段により退避コマンドの入力が認識された場合
に、利用者プログラムがアクセスしている入力ファイル
のブレークポイントにおけるレコードを指示するカレン
シ情報をカレンシ情報退避領域に退避するカレンシ情報
退避手段と、前記コマンド解析手段により退避コマンド
の入力が認識された場合に、ブレークポイントにおいて
利用者プログラムが使用しているメモリ上の変数の内容
である変数情報を変数情報退避領域に退避する変数情報
退避手段と、前記コマンド解析手段により退避コマンド
の入力が認識された場合に、前記コミット手段、前記カ
レンシ情報退避手段、および前記変数情報退避手段の処
理の終了後に呼び出され、ブレークポイントにおける利
用者プログラムの実行順序を管理するためのスタック情
報をスタック情報退避領域に退避するスタック情報退避
手段とから構成されている。
【0009】本発明の第2の利用者プログラムのデバッ
グ処理システムは、利用者プログラムにブレークポイン
トを設定してデバッグする利用者プログラムのデバッグ
処理システムであって、前記ブレークポイントにおい
て、端末から入力されたコマンドが退避コマンドである
ことを認識するコマンド解析手段と、前記コマンド解析
手段により退避コマンドの入力が認識された場合に、ブ
レークポイントにおいて利用者プログラムがアクセスし
ている出力ファイルをコミットするとともに、該コミッ
ト情報に前記ブレークポイントの識別子を付すコミット
手段と、前記コマンド解析手段により退避コマンドの入
力が認識された場合に、利用者プログラムがアクセスし
ている入力ファイルのブレークポイントにおけるレコー
ドを指示するカレンシ情報に前記ブレークポイントの識
別子を付してカレンシ情報退避領域に退避するカレンシ
情報退避手段と、前記コマンド解析手段により退避コマ
ンドの入力が認識された場合に、ブレークポイントにお
いて利用者プログラムが使用しているメモリ上の変数の
内容である変数情報に前記ブレークポイントの識別子を
付して変数情報退避領域に退避する変数情報退避手段
と、前記コマンド解析手段により退避コマンドの入力が
認識された場合に、前記コミット手段、前記カレンシ情
報退避手段、および前記変数情報退避手段の処理の終了
後に呼び出され、ブレークポイントにおける利用者プロ
グラムの実行順序を管理するためのスタック情報に前記
ブレークポイントの識別子を付してスタック情報退避領
域に退避するスタック情報退避手段とから構成されてい
る。
グ処理システムは、利用者プログラムにブレークポイン
トを設定してデバッグする利用者プログラムのデバッグ
処理システムであって、前記ブレークポイントにおい
て、端末から入力されたコマンドが退避コマンドである
ことを認識するコマンド解析手段と、前記コマンド解析
手段により退避コマンドの入力が認識された場合に、ブ
レークポイントにおいて利用者プログラムがアクセスし
ている出力ファイルをコミットするとともに、該コミッ
ト情報に前記ブレークポイントの識別子を付すコミット
手段と、前記コマンド解析手段により退避コマンドの入
力が認識された場合に、利用者プログラムがアクセスし
ている入力ファイルのブレークポイントにおけるレコー
ドを指示するカレンシ情報に前記ブレークポイントの識
別子を付してカレンシ情報退避領域に退避するカレンシ
情報退避手段と、前記コマンド解析手段により退避コマ
ンドの入力が認識された場合に、ブレークポイントにお
いて利用者プログラムが使用しているメモリ上の変数の
内容である変数情報に前記ブレークポイントの識別子を
付して変数情報退避領域に退避する変数情報退避手段
と、前記コマンド解析手段により退避コマンドの入力が
認識された場合に、前記コミット手段、前記カレンシ情
報退避手段、および前記変数情報退避手段の処理の終了
後に呼び出され、ブレークポイントにおける利用者プロ
グラムの実行順序を管理するためのスタック情報に前記
ブレークポイントの識別子を付してスタック情報退避領
域に退避するスタック情報退避手段とから構成されてい
る。
【0010】本発明の第3の利用者プログラムのデバッ
グ処理システムは、第1または第2の利用者プログラム
のデバッグ処理システムにおいて、前記カレンシ情報退
避領域、前記変数情報退避領域、および前記スタック情
報退避領域を前記利用者プログラムのデバッグの開始時
に確保する領域確保手段を備えている。
グ処理システムは、第1または第2の利用者プログラム
のデバッグ処理システムにおいて、前記カレンシ情報退
避領域、前記変数情報退避領域、および前記スタック情
報退避領域を前記利用者プログラムのデバッグの開始時
に確保する領域確保手段を備えている。
【0011】本発明の第4の利用者プログラムのデバッ
グ処理システムは、第1または第2の利用者プログラム
のデバッグ処理システムにおいて、前記カレンシ情報退
避領域、前記変数情報退避領域、および前記スタック情
報退避領域を退避コマンドの入力時に確保する領域確保
手段を備えている。
グ処理システムは、第1または第2の利用者プログラム
のデバッグ処理システムにおいて、前記カレンシ情報退
避領域、前記変数情報退避領域、および前記スタック情
報退避領域を退避コマンドの入力時に確保する領域確保
手段を備えている。
【0012】本発明の第5の利用者プログラムのデバッ
グ処理システムは、利用者プログラムにブレークポイン
トを設定してデバッグする利用者プログラムのデバッグ
処理システムであって、ブレークポイントにおいて、端
末から入力されたコマンドが退避コマンドであること、
または端末から入力されたコマンドがブレークポイント
を付した復旧コマンドであることを認識するコマンド解
析手段と、前記コマンド解析手段により退避コマンドの
入力が認識された場合に、ブレークポイントにおいて利
用者プログラムがアクセスしている出力ファイルをコミ
ットするコミット手段と、前記コマンド解析手段により
退避コマンドの入力が認識された場合に、利用者プログ
ラムがアクセスしている入力ファイルのブレークポイン
トにおけるレコードを指示するカレンシ情報をカレンシ
情報退避領域に退避するカレンシ情報退避手段と、前記
コマンド解析手段により退避コマンドの入力が認識され
た場合に、ブレークポイントにおいて利用者プログラム
が使用しているメモリ上の変数の内容である変数情報を
変数情報退避領域に退避する変数情報退避手段と、前記
コマンド解析手段により退避コマンドの入力が認識され
た場合に、前記コミット手段、前記カレンシ情報退避手
段、および前記変数情報退避手段の処理の終了後に呼び
出され、ブレークポイントにおける利用者プログラムの
実行順序を管理するためのスタック情報をスタック情報
退避領域に退避するスタック情報退避手段と、前記コマ
ンド解析手段により復旧コマンドの入力が認識された場
合に、前記コミット手段によりコミットされた出力ファ
イルをブレークポイントに後退復帰(以下、ロールバッ
クとする)するロールバック手段と、前記コマンド解析
手段により復旧コマンドの入力が認識された場合に、前
記カレンシ情報退避手段により前記カレンシ情報退避領
域に退避されたカレンシ情報を復旧するカレンシ情報復
旧手段と、前記コマンド解析手段により復旧コマンドの
入力が認識された場合に、前記変数情報退避領域に退避
された変数情報を復旧する変数情報復旧手段と、前記コ
マンド解析手段により復旧コマンドの入力が認識された
場合に、前記ロールバック手段、前記カレンシ情報復旧
手段、および前記変数情報復旧手段の処理の終了後に呼
び出され、前記スタック情報退避手段により前記スタッ
ク情報退避領域に退避されたスタック情報を復旧するス
タック情報復旧手段とから構成されている。
グ処理システムは、利用者プログラムにブレークポイン
トを設定してデバッグする利用者プログラムのデバッグ
処理システムであって、ブレークポイントにおいて、端
末から入力されたコマンドが退避コマンドであること、
または端末から入力されたコマンドがブレークポイント
を付した復旧コマンドであることを認識するコマンド解
析手段と、前記コマンド解析手段により退避コマンドの
入力が認識された場合に、ブレークポイントにおいて利
用者プログラムがアクセスしている出力ファイルをコミ
ットするコミット手段と、前記コマンド解析手段により
退避コマンドの入力が認識された場合に、利用者プログ
ラムがアクセスしている入力ファイルのブレークポイン
トにおけるレコードを指示するカレンシ情報をカレンシ
情報退避領域に退避するカレンシ情報退避手段と、前記
コマンド解析手段により退避コマンドの入力が認識され
た場合に、ブレークポイントにおいて利用者プログラム
が使用しているメモリ上の変数の内容である変数情報を
変数情報退避領域に退避する変数情報退避手段と、前記
コマンド解析手段により退避コマンドの入力が認識され
た場合に、前記コミット手段、前記カレンシ情報退避手
段、および前記変数情報退避手段の処理の終了後に呼び
出され、ブレークポイントにおける利用者プログラムの
実行順序を管理するためのスタック情報をスタック情報
退避領域に退避するスタック情報退避手段と、前記コマ
ンド解析手段により復旧コマンドの入力が認識された場
合に、前記コミット手段によりコミットされた出力ファ
イルをブレークポイントに後退復帰(以下、ロールバッ
クとする)するロールバック手段と、前記コマンド解析
手段により復旧コマンドの入力が認識された場合に、前
記カレンシ情報退避手段により前記カレンシ情報退避領
域に退避されたカレンシ情報を復旧するカレンシ情報復
旧手段と、前記コマンド解析手段により復旧コマンドの
入力が認識された場合に、前記変数情報退避領域に退避
された変数情報を復旧する変数情報復旧手段と、前記コ
マンド解析手段により復旧コマンドの入力が認識された
場合に、前記ロールバック手段、前記カレンシ情報復旧
手段、および前記変数情報復旧手段の処理の終了後に呼
び出され、前記スタック情報退避手段により前記スタッ
ク情報退避領域に退避されたスタック情報を復旧するス
タック情報復旧手段とから構成されている。
【0013】本発明の第6の利用者プログラムのデバッ
グ処理システムは、利用者プログラムにブレークポイン
トを設定してデバッグする利用者プログラムのデバッグ
処理システムであって、ブレークポイントにおいて、端
末から入力されたコマンドが退避コマンドであること、
または端末から入力されたコマンドがブレークポイント
を付した復旧コマンドであることを認識するコマンド解
析手段と、前記コマンド解析手段により退避コマンドの
入力が認識された場合に、ブレークポイントにおいて利
用者プログラムがアクセスしている出力ファイルをコミ
ットするとともに、該コミット情報に前記ブレークポイ
ントの識別子を付すコミット手段と、前記コマンド解析
手段により退避コマンドの入力が認識された場合に、利
用者プログラムがアクセスしている入力ファイルのブレ
ークポイントにおけるレコードを指示するカレンシ情報
に前記ブレークポイントの識別子を付してカレンシ情報
退避領域に退避するカレンシ情報退避手段と、前記コマ
ンド解析手段により退避コマンドの入力が認識された場
合に、ブレークポイントにおいて利用者プログラムが使
用しているメモリ上の変数の内容である変数情報に前記
ブレークポイントの識別子を付して変数情報退避領域に
退避する変数情報退避手段と、前記コマンド解析手段に
より退避コマンドの入力が認識された場合に、前記コミ
ット手段、前記カレンシ情報退避手段、および前記変数
情報退避手段の処理の終了後に呼び出され、ブレークポ
イントにおける利用者プログラムの実行順序を管理する
ためのスタック情報に前記ブレークポイントの識別子を
付してスタック情報退避領域に退避するスタック情報退
避手段と、前記コマンド解析手段により復旧コマンドの
入力が認識された場合に、前記コミット手段によりコミ
ットされた出力ファイルを前記復旧コマンドが示すブレ
ークポイントにロールバックするロールバック手段と、
前記コマンド解析手段により復旧コマンドの入力が認識
された場合に、前記カレンシ情報退避手段により前記カ
レンシ情報退避領域に退避されたカレンシ情報を前記復
旧コマンドが示すブレークポイントの状態にまで復旧す
るカレンシ情報復旧手段と、前記コマンド解析手段によ
り復旧コマンドの入力が認識された場合に、前記変数情
報退避領域に退避された変数情報を前記復旧コマンドが
示すブレークポイントの状態にまで復旧する変数情報復
旧手段と、前記コマンド解析手段により復旧コマンドの
入力が認識された場合に、前記ロールバック手段、前記
カレンシ情報復旧手段、および前記変数情報復旧手段の
処理の終了後に呼び出され、前記スタック情報退避手段
により前記スタック情報退避領域に退避されたスタック
情報を前記復旧コマンドが示すブレークポイントの状態
にまで復旧するスタック情報復旧手段とから構成されて
いる。
グ処理システムは、利用者プログラムにブレークポイン
トを設定してデバッグする利用者プログラムのデバッグ
処理システムであって、ブレークポイントにおいて、端
末から入力されたコマンドが退避コマンドであること、
または端末から入力されたコマンドがブレークポイント
を付した復旧コマンドであることを認識するコマンド解
析手段と、前記コマンド解析手段により退避コマンドの
入力が認識された場合に、ブレークポイントにおいて利
用者プログラムがアクセスしている出力ファイルをコミ
ットするとともに、該コミット情報に前記ブレークポイ
ントの識別子を付すコミット手段と、前記コマンド解析
手段により退避コマンドの入力が認識された場合に、利
用者プログラムがアクセスしている入力ファイルのブレ
ークポイントにおけるレコードを指示するカレンシ情報
に前記ブレークポイントの識別子を付してカレンシ情報
退避領域に退避するカレンシ情報退避手段と、前記コマ
ンド解析手段により退避コマンドの入力が認識された場
合に、ブレークポイントにおいて利用者プログラムが使
用しているメモリ上の変数の内容である変数情報に前記
ブレークポイントの識別子を付して変数情報退避領域に
退避する変数情報退避手段と、前記コマンド解析手段に
より退避コマンドの入力が認識された場合に、前記コミ
ット手段、前記カレンシ情報退避手段、および前記変数
情報退避手段の処理の終了後に呼び出され、ブレークポ
イントにおける利用者プログラムの実行順序を管理する
ためのスタック情報に前記ブレークポイントの識別子を
付してスタック情報退避領域に退避するスタック情報退
避手段と、前記コマンド解析手段により復旧コマンドの
入力が認識された場合に、前記コミット手段によりコミ
ットされた出力ファイルを前記復旧コマンドが示すブレ
ークポイントにロールバックするロールバック手段と、
前記コマンド解析手段により復旧コマンドの入力が認識
された場合に、前記カレンシ情報退避手段により前記カ
レンシ情報退避領域に退避されたカレンシ情報を前記復
旧コマンドが示すブレークポイントの状態にまで復旧す
るカレンシ情報復旧手段と、前記コマンド解析手段によ
り復旧コマンドの入力が認識された場合に、前記変数情
報退避領域に退避された変数情報を前記復旧コマンドが
示すブレークポイントの状態にまで復旧する変数情報復
旧手段と、前記コマンド解析手段により復旧コマンドの
入力が認識された場合に、前記ロールバック手段、前記
カレンシ情報復旧手段、および前記変数情報復旧手段の
処理の終了後に呼び出され、前記スタック情報退避手段
により前記スタック情報退避領域に退避されたスタック
情報を前記復旧コマンドが示すブレークポイントの状態
にまで復旧するスタック情報復旧手段とから構成されて
いる。
【0014】本発明の第7の利用者プログラムのデバッ
グ処理システムは、第5または第6の利用者プログラム
のデバッグ処理システムにおいて、前記カレンシ情報退
避領域、前記変数情報退避領域、および前記スタック情
報退避領域を前記利用者プログラムのデバッグの開始時
に確保する領域確保手段と、前記カレンシ情報退避領
域、前記変数情報退避領域、および前記スタック情報退
避領域を前記利用者プログラムのデバッグの終了時に解
放する領域解放手段を備えている。
グ処理システムは、第5または第6の利用者プログラム
のデバッグ処理システムにおいて、前記カレンシ情報退
避領域、前記変数情報退避領域、および前記スタック情
報退避領域を前記利用者プログラムのデバッグの開始時
に確保する領域確保手段と、前記カレンシ情報退避領
域、前記変数情報退避領域、および前記スタック情報退
避領域を前記利用者プログラムのデバッグの終了時に解
放する領域解放手段を備えている。
【0015】本発明の第8の利用者プログラムのデバッ
グ処理システムは、第5または第6の利用者プログラム
のデバッグ処理システムにおいて、前記カレンシ情報退
避領域、前記変数情報退避領域、および前記スタック情
報退避領域を退避コマンドの入力時に確保する領域確保
手段と、前記カレンシ情報退避領域、前記変数情報退避
領域、および前記スタック情報退避領域を復旧コマンド
に基づく復旧処理の終了時に解放する領域解放手段を備
えている。
グ処理システムは、第5または第6の利用者プログラム
のデバッグ処理システムにおいて、前記カレンシ情報退
避領域、前記変数情報退避領域、および前記スタック情
報退避領域を退避コマンドの入力時に確保する領域確保
手段と、前記カレンシ情報退避領域、前記変数情報退避
領域、および前記スタック情報退避領域を復旧コマンド
に基づく復旧処理の終了時に解放する領域解放手段を備
えている。
【0016】
【実施例】以下、本発明の一実施例について、図を参照
しながら詳細に説明する。
しながら詳細に説明する。
【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とから構成され
ている。
る利用者プログラムのデバッグ処理システムは、入力フ
ァイルからデータを入力し、出力ファイルにデータを出
力する処理を行う利用者プログラム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とから構成され
ている。
【0018】なお、コマンド解析手段3、コミット手段
4、ロールバック手段5、カレンシ情報退避手段6、カ
レンシ情報復旧手段7、変数情報退避手段8、変数情報
復旧手段9、スタック情報退避手段10、スタック情報
復旧手段11、領域確保手段15および領域解放手段1
6は、オペレーティングシステムの一機能であるデバッ
ガ上に実現される。また、カレンシ情報退避領域12、
変数情報退避領域13およびスタック情報退避領域14
は、オペレーティングシステムによって管理されている
利用者プログラム1のためのメモリ内の領域に実現され
る。
4、ロールバック手段5、カレンシ情報退避手段6、カ
レンシ情報復旧手段7、変数情報退避手段8、変数情報
復旧手段9、スタック情報退避手段10、スタック情報
復旧手段11、領域確保手段15および領域解放手段1
6は、オペレーティングシステムの一機能であるデバッ
ガ上に実現される。また、カレンシ情報退避領域12、
変数情報退避領域13およびスタック情報退避領域14
は、オペレーティングシステムによって管理されている
利用者プログラム1のためのメモリ内の領域に実現され
る。
【0019】図2は、利用者プログラム1の一例を示す
図である。この利用者プログラム1は、入力ファイルか
らデータを入力し、出力ファイルにデータを出力する処
理を行う。本発明の利用者プログラムのデバッグ処理シ
ステムのデバッグ対象となる利用者プログラムは、この
利用者プログラム1のように、出力ファイルおよび入力
ファイルにアクセスするプログラムであることを前提と
している。ただし、出力ファイルもしくは入力ファイル
またはその両方にアクセスしない利用者プログラムであ
っても、本発明を適用することは可能である。
図である。この利用者プログラム1は、入力ファイルか
らデータを入力し、出力ファイルにデータを出力する処
理を行う。本発明の利用者プログラムのデバッグ処理シ
ステムのデバッグ対象となる利用者プログラムは、この
利用者プログラム1のように、出力ファイルおよび入力
ファイルにアクセスするプログラムであることを前提と
している。ただし、出力ファイルもしくは入力ファイル
またはその両方にアクセスしない利用者プログラムであ
っても、本発明を適用することは可能である。
【0020】また、本実施例においては、この利用者プ
ログラム1の第70行目の直前にブレークポイントが1
箇所設定されているものとする。
ログラム1の第70行目の直前にブレークポイントが1
箇所設定されているものとする。
【0021】次に本発明の一実施例である利用者プログ
ラムのデバッグ処理システムについて、図1〜図4を参
照して説明する。
ラムのデバッグ処理システムについて、図1〜図4を参
照して説明する。
【0022】まず、利用者プログラム1のデバッグ開始
時において、デバッガ内の領域確保手段15は、カレン
シ情報退避領域12、変数情報退避領域13およびスタ
ック情報退避領域14をメモリ上に確保する。
時において、デバッガ内の領域確保手段15は、カレン
シ情報退避領域12、変数情報退避領域13およびスタ
ック情報退避領域14をメモリ上に確保する。
【0023】次に、利用者プログラム1のデバッグ中
に、図2においては第70行目のブレークポイントにお
いて「ブレークポイントにおける情報の退避」を示すコ
マンド(以下、退避コマンドという)が端末2から入力
された時の動作について説明する。
に、図2においては第70行目のブレークポイントにお
いて「ブレークポイントにおける情報の退避」を示すコ
マンド(以下、退避コマンドという)が端末2から入力
された時の動作について説明する。
【0024】コマンド解析手段3は、コマンドの解析処
理によって、端末2から入力されたコマンドが退避コマ
ンドであることを認識する(ステップ31)。
理によって、端末2から入力されたコマンドが退避コマ
ンドであることを認識する(ステップ31)。
【0025】コマンド解析手段3は、退避コマンドの入
力の認識に基づいて、まずコミット手段4を呼び出す
(ステップ32)。
力の認識に基づいて、まずコミット手段4を呼び出す
(ステップ32)。
【0026】コマンド解析手段3によって呼び出された
コミット手段4は、ブレークポイントにおいて利用者プ
ログラム1がアクセスしている出力ファイルをコミット
する(ステップ33)。なお、図1および図2におい
て、コミット/ロールバックのために使用されるログフ
ァイルについては図示を省略している。
コミット手段4は、ブレークポイントにおいて利用者プ
ログラム1がアクセスしている出力ファイルをコミット
する(ステップ33)。なお、図1および図2におい
て、コミット/ロールバックのために使用されるログフ
ァイルについては図示を省略している。
【0027】コミット手段4は、ステップ33終了後、
コマンド解析手段3に制御を戻す。
コマンド解析手段3に制御を戻す。
【0028】次にコマンド解析手段3は、カレンシ情報
退避手段6を呼び出す(ステップ34)。
退避手段6を呼び出す(ステップ34)。
【0029】コマンド解析手段3によって呼び出された
カレンシ情報退避手段6は、利用者プログラム1がアク
セスしている入力ファイルのブレークポイントにおける
カレンシ情報(ここでは、入力ファイル内の「CCCC
C」というレコードを示す情報とする)をオペレーティ
ングシステムが管理しているメモリ内の領域からカレン
シ情報退避領域12に退避する(ステップ35)。
カレンシ情報退避手段6は、利用者プログラム1がアク
セスしている入力ファイルのブレークポイントにおける
カレンシ情報(ここでは、入力ファイル内の「CCCC
C」というレコードを示す情報とする)をオペレーティ
ングシステムが管理しているメモリ内の領域からカレン
シ情報退避領域12に退避する(ステップ35)。
【0030】カレンシ情報退避手段6は、ステップ35
終了後、コマンド解析手段3に制御を戻す。
終了後、コマンド解析手段3に制御を戻す。
【0031】次にコマンド解析手段3は、変数情報退避
手段8を呼び出す(ステップ36)。
手段8を呼び出す(ステップ36)。
【0032】コマンド解析手段3によって呼び出された
変数情報退避手段8は、ブレークポイントにおける利用
者プログラム1の変数情報(ここでは、変数「X」が
「2」であることを示す情報)を利用者プログラム1の
メモリ内の領域から変数情報退避領域13に退避する
(ステップ37)。
変数情報退避手段8は、ブレークポイントにおける利用
者プログラム1の変数情報(ここでは、変数「X」が
「2」であることを示す情報)を利用者プログラム1の
メモリ内の領域から変数情報退避領域13に退避する
(ステップ37)。
【0033】変数情報退避手段8は、ステップ37終了
後、コマンド解析手段3に制御を戻す。
後、コマンド解析手段3に制御を戻す。
【0034】次にコマンド解析手段3は、スタック情報
退避手段10を呼び出す(ステップ38)。
退避手段10を呼び出す(ステップ38)。
【0035】コマンド解析手段3によって呼び出された
スタック情報退避手段10は、ブレークポイントにおけ
る利用者プログラム1のスタック情報(ここでは、第7
0行目を示すプログラムカウンタの情報等)をプログラ
ムカウンタ等のレジスタやメモリ内のスタック領域から
スタック情報退避領域14に退避する(ステップ3
9)。
スタック情報退避手段10は、ブレークポイントにおけ
る利用者プログラム1のスタック情報(ここでは、第7
0行目を示すプログラムカウンタの情報等)をプログラ
ムカウンタ等のレジスタやメモリ内のスタック領域から
スタック情報退避領域14に退避する(ステップ3
9)。
【0036】スタック情報退避手段10は、ステップ3
9終了後、コマンド解析手段3に制御を戻す。以上によ
り、コマンド解析手段3は、退避コマンド入力に対する
処理を終了する。
9終了後、コマンド解析手段3に制御を戻す。以上によ
り、コマンド解析手段3は、退避コマンド入力に対する
処理を終了する。
【0037】なお、コマンド解析手段3によるコミット
手段4、カレンシ情報退避手段6および変数情報退避手
段8の呼出し順序は、図3に示す順序に限られるもので
はなく任意である。ただし、スタック情報退避手段10
によるスタック情報の退避処理は、コミット手段4、カ
レンシ情報退避手段6および変数情報退避手段8による
処理の終了後に行われる必要がある。これは、ブレーク
ポイントからのデバッグの再開後における利用者プログ
ラム1の適正な実行を保証するためである。
手段4、カレンシ情報退避手段6および変数情報退避手
段8の呼出し順序は、図3に示す順序に限られるもので
はなく任意である。ただし、スタック情報退避手段10
によるスタック情報の退避処理は、コミット手段4、カ
レンシ情報退避手段6および変数情報退避手段8による
処理の終了後に行われる必要がある。これは、ブレーク
ポイントからのデバッグの再開後における利用者プログ
ラム1の適正な実行を保証するためである。
【0038】次に、利用者プログラム1のデバッグ中
に、デバッグを図2の第70行目からやり直すために、
「ブレークポイントにおける情報の復旧」を示すコマン
ド(以下、復旧コマンドという)が端末2から入力され
た時の動作について説明する。
に、デバッグを図2の第70行目からやり直すために、
「ブレークポイントにおける情報の復旧」を示すコマン
ド(以下、復旧コマンドという)が端末2から入力され
た時の動作について説明する。
【0039】コマンド解析手段3は、コマンドの解析処
理によって、端末2から入力されたコマンドが復旧コマ
ンドであることを認識する(ステップ41)。
理によって、端末2から入力されたコマンドが復旧コマ
ンドであることを認識する(ステップ41)。
【0040】コマンド解析手段3は、復旧コマンドの入
力の認識に基づいて、まずロールバック手段5を呼び出
す(ステップ42)。
力の認識に基づいて、まずロールバック手段5を呼び出
す(ステップ42)。
【0041】コマンド解析手段3によって呼び出された
ロールバック手段5は、コミット手段4によりコミット
された出力ファイルをブレークポイント(退避コマンド
が入力された時点)にロールバックする(ステップ4
3)。
ロールバック手段5は、コミット手段4によりコミット
された出力ファイルをブレークポイント(退避コマンド
が入力された時点)にロールバックする(ステップ4
3)。
【0042】ロールバック手段5は、ステップ43終了
後、コマンド解析手段3に制御を戻す。
後、コマンド解析手段3に制御を戻す。
【0043】次にコマンド解析手段3は、カレンシ情報
復旧手段7を呼び出す(ステップ44)。
復旧手段7を呼び出す(ステップ44)。
【0044】コマンド解析手段3によって呼び出された
カレンシ情報復旧手段7は、カレンシ情報退避領域12
に退避されているカレンシ情報(入力ファイル内の「C
CCCC」というレコードを示す情報)をオペレーティ
ングシステムが管理しているメモリ内の領域に復旧する
(ステップ45)。
カレンシ情報復旧手段7は、カレンシ情報退避領域12
に退避されているカレンシ情報(入力ファイル内の「C
CCCC」というレコードを示す情報)をオペレーティ
ングシステムが管理しているメモリ内の領域に復旧する
(ステップ45)。
【0045】カレンシ情報復旧手段7は、ステップ45
終了後、コマンド解析手段3に制御を戻す。
終了後、コマンド解析手段3に制御を戻す。
【0046】次にコマンド解析手段3は、変数情報復旧
手段9を呼び出す(ステップ46)。
手段9を呼び出す(ステップ46)。
【0047】コマンド解析手段3によって呼び出された
変数情報復旧手段9は、変数情報退避領域13に退避さ
れている変数情報(変数「X]が「2」であることを示
す情報)を利用者プログラム1のメモリ内の領域に復旧
する(ステップ47)。
変数情報復旧手段9は、変数情報退避領域13に退避さ
れている変数情報(変数「X]が「2」であることを示
す情報)を利用者プログラム1のメモリ内の領域に復旧
する(ステップ47)。
【0048】変数情報復旧手段9は、ステップ47終了
後、コマンド解析手段3に制御を戻す。
後、コマンド解析手段3に制御を戻す。
【0049】次にコマンド解析手段3は、スタック情報
復旧手段11を呼び出す(ステップ48)。
復旧手段11を呼び出す(ステップ48)。
【0050】コマンド解析手段3によって呼び出された
スタック情報復旧手段11は、スタック情報退避領域1
4に退避されているスタック情報(第70行目を示すプ
ログラムカウンタの情報等)をプログラムカウンタ等の
レジスタやメモリ内のスタック領域に復旧する(ステッ
プ49)。
スタック情報復旧手段11は、スタック情報退避領域1
4に退避されているスタック情報(第70行目を示すプ
ログラムカウンタの情報等)をプログラムカウンタ等の
レジスタやメモリ内のスタック領域に復旧する(ステッ
プ49)。
【0051】スタック情報復旧手段11は、ステップ4
9終了後、コマンド解析手段3に制御を戻す。以上によ
り、コマンド解析手段3は、復旧コマンド入力に対する
処理を終了する。
9終了後、コマンド解析手段3に制御を戻す。以上によ
り、コマンド解析手段3は、復旧コマンド入力に対する
処理を終了する。
【0052】なお、コマンド解析手段3によるロールバ
ック手段5、カレンシ情報復旧手段7および変数情報復
旧手段9の呼出し順序は、図4に示す順序に限られるも
のではなく任意である。ただし、スタック情報復旧手段
11によるスタック情報の復旧処理は、ロールバック手
段5、カレンシ情報復旧手段7および変数情報復旧手段
9による処理の終了後に行われる必要がある。これは、
ブレークポイントからのデバッグの再開後における利用
者プログラム1の適正な実行を保証するためである。
ック手段5、カレンシ情報復旧手段7および変数情報復
旧手段9の呼出し順序は、図4に示す順序に限られるも
のではなく任意である。ただし、スタック情報復旧手段
11によるスタック情報の復旧処理は、ロールバック手
段5、カレンシ情報復旧手段7および変数情報復旧手段
9による処理の終了後に行われる必要がある。これは、
ブレークポイントからのデバッグの再開後における利用
者プログラム1の適正な実行を保証するためである。
【0053】利用者プログラム1のデバッグの終了時に
は、デバッガ内の領域解放手段16は、メモリ上のカレ
ンシ情報退避領域12、変数情報退避領域13およびス
タック情報退避領域14を解放する。
は、デバッガ内の領域解放手段16は、メモリ上のカレ
ンシ情報退避領域12、変数情報退避領域13およびス
タック情報退避領域14を解放する。
【0054】なお、カレンシ情報退避領域12、変数情
報退避領域13およびスタック情報退避領域14の確保
時点は、本実施例のようなデバッグの開始時に限られる
ものではない。ただし、退避処理(カレンシ情報退避手
段6、変数情報退避手段8およびスタック情報退避手段
10による処理)の処理効率の向上という観点からは、
デバッガの開始時に確保することが望ましい。同様に、
カレンシ情報退避領域12、変数情報退避領域13およ
びスタック情報退避領域14の解放時点は、本実施例の
ようなデバッグの終了時に限られるものではない。ただ
し、復旧処理(カレンシ情報復旧手段7、変数情報復旧
手段9およびスタック情報復旧手段11による処理)の
処理効率の向上という観点からは、デバッグの終了時に
解放することが望ましい。
報退避領域13およびスタック情報退避領域14の確保
時点は、本実施例のようなデバッグの開始時に限られる
ものではない。ただし、退避処理(カレンシ情報退避手
段6、変数情報退避手段8およびスタック情報退避手段
10による処理)の処理効率の向上という観点からは、
デバッガの開始時に確保することが望ましい。同様に、
カレンシ情報退避領域12、変数情報退避領域13およ
びスタック情報退避領域14の解放時点は、本実施例の
ようなデバッグの終了時に限られるものではない。ただ
し、復旧処理(カレンシ情報復旧手段7、変数情報復旧
手段9およびスタック情報復旧手段11による処理)の
処理効率の向上という観点からは、デバッグの終了時に
解放することが望ましい。
【0055】また、領域確保手段15が退避コマンドの
入力時にカレンシ情報退避領域12、変数情報退避領域
13およびスタック情報退避領域14を確保し、領域解
放手段16が復旧コマンドに基づく復旧処理の終了時に
カレンシ情報退避領域12、変数情報退避領域13およ
びスタック情報退避領域14を解放してもよい。この手
順によれば、メモリ上の領域の効率的な使用を実現でき
るという利点がある。
入力時にカレンシ情報退避領域12、変数情報退避領域
13およびスタック情報退避領域14を確保し、領域解
放手段16が復旧コマンドに基づく復旧処理の終了時に
カレンシ情報退避領域12、変数情報退避領域13およ
びスタック情報退避領域14を解放してもよい。この手
順によれば、メモリ上の領域の効率的な使用を実現でき
るという利点がある。
【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は、複数のブレーク
ポイントに対応して複数のカレンシ情報、変数情報およ
びスタック情報の設定が可能なように構築される。
および復元処理(コミット手段4およびロールバック手
段5による処理を含む)の対象となるブレークポイント
が1箇所である場合について述べた。しかし、退避処理
および復元処理の対象となるブレークポイントが複数で
ある場合にも本発明の利用者プログラムのデバッグ処理
方式を適用することは可能である。この場合には、以下
の(1)〜(4)に示すような処理の態様が採用される
こととなる。 (1)コミット手段4、カレンシ情報退避手段6、変数
情報退避手段8およびスタック情報退避手段10は、退
避コマンドが入力された時点のブレークポイントを示す
識別情報を認識し、その識別情報が含まれるように出力
ファイルのコミット、入力ファイルのカレンシ情報の退
避、変数情報の退避およびスタック情報の退避を行う。 (2)端末2から入力される復旧コマンドにはデバッグ
を再開する起点となるブレークポイントの識別情報が付
加され、コマンド解析手段3はその復旧コマンドに基づ
いてどのブレークポイントに対する復旧処理を行うべき
であるかを認識する。 (3)ロールバック手段5、カレンシ情報復旧手段7、
変数情報復旧手段9およびスタック情報復旧手段11
は、コマンド解析手段3から復旧コマンドに付加された
ブレークポイントの識別情報を受け取り、そのブレーク
ポイントに関する出力ファイルのロールバック、入力フ
ァイルのカレンシ情報の復旧、変数情報の復旧およびス
タック情報の復旧を行う。 (4)カレンシ情報退避領域12、変数情報退避領域1
3およびスタック情報退避領域14は、複数のブレーク
ポイントに対応して複数のカレンシ情報、変数情報およ
びスタック情報の設定が可能なように構築される。
【0057】以上により、本発明の一実施例である利用
者プログラムのデバッグ処理システムの処理が完了す
る。
者プログラムのデバッグ処理システムの処理が完了す
る。
【0058】本発明の一実施例である利用者プログラム
のデバッグ処理システムは、退避コマンドの入力に対し
て出力ファイルのコミット、入力ファイルのカレンシ情
報の退避、変数情報の退避およびスタック情報の退避を
行い、復旧コマンドの入力に対して出力ファイルのロー
ルバック、入力ファイルのカレンシ情報の復旧、変数情
報の復旧およびスタック情報の復旧を行うことにより、
ブレークポイントから利用者プログラムのデバッグを再
開することができるという効果を有している。
のデバッグ処理システムは、退避コマンドの入力に対し
て出力ファイルのコミット、入力ファイルのカレンシ情
報の退避、変数情報の退避およびスタック情報の退避を
行い、復旧コマンドの入力に対して出力ファイルのロー
ルバック、入力ファイルのカレンシ情報の復旧、変数情
報の復旧およびスタック情報の復旧を行うことにより、
ブレークポイントから利用者プログラムのデバッグを再
開することができるという効果を有している。
【0059】また、デバッグの開始時に各退避領域を確
保し、デバッグの終了時に各退避領域を解放することに
より、退避処理および復旧処理の処理効率を向上させる
ことができる効果を有している。
保し、デバッグの終了時に各退避領域を解放することに
より、退避処理および復旧処理の処理効率を向上させる
ことができる効果を有している。
【0060】さらに、退避コマンドの入力時に各退避領
域を確保し、復旧コマンドに基づく復旧処理の終了時に
各退避領域を解放することにより、メモリ上の領域の使
用効率を向上させることができる効果を有している。
域を確保し、復旧コマンドに基づく復旧処理の終了時に
各退避領域を解放することにより、メモリ上の領域の使
用効率を向上させることができる効果を有している。
【0061】
【発明の効果】以上説明したように、本発明の利用者プ
ログラムのデバッグ処理システムは、ブレークポイント
から利用者プログラムのデバッグを再開することがで
き、デバッグ処理の効率を向上させることができる効果
を有している。
ログラムのデバッグ処理システムは、ブレークポイント
から利用者プログラムのデバッグを再開することがで
き、デバッグ処理の効率を向上させることができる効果
を有している。
【図1】本発明の一実施例を示すブロック図である。
【図2】本発明の一実施例における利用者プログラム1
の例を示す図である。
の例を示す図である。
【図3】本発明の一実施例におけるコマンド解析手段
3、コミット手段4、カレンシ情報退避手段6、変数情
報退避手段8、およびスタック情報退避手段10の処理
を示す流れ図である。
3、コミット手段4、カレンシ情報退避手段6、変数情
報退避手段8、およびスタック情報退避手段10の処理
を示す流れ図である。
【図4】本発明の一実施例におけるコマンド解析手段
3、ロールバック手段5、カレンシ情報復旧手段7、変
数情報復旧手段9、およびスタック情報復旧手段11の
処理を示す流れ図である。
3、ロールバック手段5、カレンシ情報復旧手段7、変
数情報復旧手段9、およびスタック情報復旧手段11の
処理を示す流れ図である。
1 利用者プログラム 2 端末 3 コマンド解析手段 4 コミット手段 5 ローカルバック手段 6 カレンシ情報退避手段 7 カレンシ情報復旧手段 8 変数情報退避手段 9 変数情報復旧手段 10 スタック情報退避手段 11 スタック情報復旧手段 12 カレンシ情報退避領域 13 変数情報退避領域 14 スタック情報退避領域 15 領域確保手段 16 領域解放手段
Claims (8)
- 【請求項1】 利用者プログラムに区切り点を設定して
デバッグする利用者プログラムのデバッグ処理システム
であって、 前記区切り点において、端末から入力されたコマンドが
退避コマンドであることを認識するコマンド解析手段
と、 前記コマンド解析手段により退避コマンドの入力が認識
された場合に、区切り点において利用者プログラムがア
クセスしている出力ファイルの内容を確定するコミット
手段と、 前記コマンド解析手段により退避コマンドの入力が認識
された場合に、利用者プログラムがアクセスしている入
力ファイルの区切り点におけるレコードを指示するカレ
ンシ情報をカレンシ情報退避領域に退避するカレンシ情
報退避手段と、 前記コマンド解析手段により退避コマンドの入力が認識
された場合に、区切り点において利用者プログラムが使
用しているメモリ上の変数の内容である変数情報を変数
情報退避領域に退避する変数情報退避手段と、 前記コマンド解析手段により退避コマンドの入力が認識
された場合に、前記コミット手段、前記カレンシ情報退
避手段、および前記変数情報退避手段の処理の終了後に
呼び出され、区切り点における利用者プログラムの実行
順序を管理するためのスタック情報をスタック情報退避
領域に退避するスタック情報退避手段とを備えたことを
特徴とする利用者プログラムのデバッグ処理システム。 - 【請求項2】 利用者プログラムに区切り点を設定して
デバッグする利用者プログラムのデバッグ処理システム
であって、 前記区切り点において、端末から入力されたコマンドが
退避コマンドであることを認識するコマンド解析手段
と、 前記コマンド解析手段により退避コマンドの入力が認識
された場合に、区切り点において利用者プログラムがア
クセスしている出力ファイルの内容を確定するととも
に、確定した情報に前記区切り点の識別子を付すコミッ
ト手段と、 前記コマンド解析手段により退避コマンドの入力が認識
された場合に、利用者プログラムがアクセスしている入
力ファイルの区切り点におけるレコードを指示するカレ
ンシ情報に前記区切り点の識別子を付してカレンシ情報
退避領域に退避するカレンシ情報退避手段と、 前記コマンド解析手段により退避コマンドの入力が認識
された場合に、区切り点において利用者プログラムが使
用しているメモリ上の変数の内容である変数情報に前記
区切り点の識別子を付して変数情報退避領域に退避する
変数情報退避手段と、 前記コマンド解析手段により退避コマンドの入力が認識
された場合に、前記コミット手段、前記カレンシ情報退
避手段、および前記変数情報退避手段の処理の終了後に
呼び出され、区切り点における利用者プログラムの実行
順序を管理するためのスタック情報に前記区切り点の識
別子を付してスタック情報退避領域に退避するスタック
情報退避手段とを備えたことを特徴とする利用者プログ
ラムのデバッグ処理システム。 - 【請求項3】 前記カレンシ情報退避領域、前記変数情
報退避領域、および前記スタック情報退避領域を前記利
用者プログラムのデバッグの開始時に確保する領域確保
手段を備えたことを特徴とする請求項1、または請求項
2記載の利用者プログラムのデバッグ処理システム。 - 【請求項4】 前記カレンシ情報退避領域、前記変数情
報退避領域、および前記スタック情報退避領域を退避コ
マンドの入力時に確保する領域確保手段を備えたことを
特徴とする請求項1、または請求項2記載の利用者プロ
グラムのデバッグ処理システム。 - 【請求項5】 利用者プログラムに区切り点を設定して
デバッグする利用者プログラムのデバッグ処理システム
であって、 区切り点において、端末から入力されたコマンドが退避
コマンドであること、または端末から入力されたコマン
ドが区切り点を付した復旧コマンドであることを認識す
るコマンド解析手段と、 前記コマンド解析手段により退避コマンドの入力が認識
された場合に、区切り点において利用者プログラムがア
クセスしている出力ファイルの内容を確定するコミット
手段と、 前記コマンド解析手段により退避コマンドの入力が認識
された場合に、利用者プログラムがアクセスしている入
力ファイルの区切り点におけるレコードを指示するカレ
ンシ情報をカレンシ情報退避領域に退避するカレンシ情
報退避手段と、 前記コマンド解析手段により退避コマンドの入力が認識
された場合に、区切り点において利用者プログラムが使
用しているメモリ上の変数の内容である変数情報を変数
情報退避領域に退避する変数情報退避手段と、 前記コマンド解析手段により退避コマンドの入力が認識
された場合に、前記コミット手段、前記カレンシ情報退
避手段、および前記変数情報退避手段の処理の終了後に
呼び出され、区切り点における利用者プログラムの実行
順序を管理するためのスタック情報をスタック情報退避
領域に退避するスタック情報退避手段と、 前記コマンド解析手段により復旧コマンドの入力が認識
された場合に、前記コミット手段により内容が確定され
た出力ファイルを区切り点に後退復帰するロールバック
手段と、 前記コマンド解析手段により復旧コマンドの入力が認識
された場合に、前記カレンシ情報退避手段により前記カ
レンシ情報退避領域に退避されたカレンシ情報を復旧す
るカレンシ情報復旧手段と、 前記コマンド解析手段により復旧コマンドの入力が認識
された場合に、前記変数情報退避領域に退避された変数
情報を復旧する変数情報復旧手段と、 前記コマンド解析手段により復旧コマンドの入力が認識
された場合に、前記ロールバック手段、前記カレンシ情
報復旧手段、および前記変数情報復旧手段の処理の終了
後に呼び出され、前記スタック情報退避手段により前記
スタック情報退避領域に退避されたスタック情報を復旧
するスタック情報復旧手段とを備えたことを特徴とする
利用者プログラムのデバッグ処理システム。 - 【請求項6】 利用者プログラムに区切り点を設定して
デバッグする利用者プログラムのデバッグ処理システム
であって、 区切り点において、端末から入力されたコマンドが退避
コマンドであること、または端末から入力されたコマン
ドが区切り点を付した復旧コマンドであることを認識す
るコマンド解析手段と、 前記コマンド解析手段により退避コマンドの入力が認識
された場合に、区切り点において利用者プログラムがア
クセスしている出力ファイルの内容を確定するととも
に、確定した情報に前記区切り点の識別子を付すコミッ
ト手段と、 前記コマンド解析手段により退避コマンドの入力が認識
された場合に、利用者プログラムがアクセスしている入
力ファイルの区切り点におけるレコードを指示するカレ
ンシ情報に前記区切り点の識別子を付してカレンシ情報
退避領域に退避するカレンシ情報退避手段と、 前記コマンド解析手段により退避コマンドの入力が認識
された場合に、区切り点において利用者プログラムが使
用しているメモリ上の変数の内容である変数情報に前記
区切り点の識別子を付して変数情報退避領域に退避する
変数情報退避手段と、 前記コマンド解析手段により退避コマンドの入力が認識
された場合に、前記コミット手段、前記カレンシ情報退
避手段、および前記変数情報退避手段の処理の終了後に
呼び出され、区切り点における利用者プログラムの実行
順序を管理するためのスタック情報に前記区切り点の識
別子を付してスタック情報退避領域に退避するスタック
情報退避手段と、 前記コマンド解析手段により復旧コマンドの入力が認識
された場合に、前記コミット手段により内容が確定され
た出力ファイルを前記復旧コマンドが示す区切り点に後
退復帰するロールバック手段と、 前記コマンド解析手段により復旧コマンドの入力が認識
された場合に、前記カレンシ情報退避手段により前記カ
レンシ情報退避領域に退避されたカレンシ情報を前記復
旧コマンドが示す区切り点の状態にまで復旧するカレン
シ情報復旧手段と、 前記コマンド解析手段により復旧コマンドの入力が認識
された場合に、前記変数情報退避領域に退避された変数
情報を前記復旧コマンドが示す区切り点の状態にまで復
旧する変数情報復旧手段と、 前記コマンド解析手段により復旧コマンドの入力が認識
された場合に、前記ロールバック手段、前記カレンシ情
報復旧手段、および前記変数情報復旧手段の処理の終了
後に呼び出され、前記スタック情報退避手段により前記
スタック情報退避領域に退避されたスタック情報を前記
復旧コマンドが示す区切り点の状態にまで復旧するスタ
ック情報復旧手段とを備えたことを特徴とする利用者プ
ログラムのデバッグ処理システム。 - 【請求項7】 前記カレンシ情報退避領域、前記変数情
報退避領域、および前記スタック情報退避領域を前記利
用者プログラムのデバッグの開始時に確保する領域確保
手段と、 前記カレンシ情報退避領域、前記変数情報退避領域、お
よび前記スタック情報退避領域を前記利用者プログラム
のデバッグの終了時に解放する領域解放手段を備えたこ
とを特徴とする請求項5、または請求項6記載の利用者
プログラムのデバッグ処理システム。 - 【請求項8】 前記カレンシ情報退避領域、前記変数情
報退避領域、および前記スタック情報退避領域を退避コ
マンドの入力時に確保する領域確保手段と、 前記カレンシ情報退避領域、前記変数情報退避領域、お
よび前記スタック情報退避領域を復旧コマンドに基づく
復旧処理の終了時に解放する領域解放手段を備えたこと
を特徴とする請求項5、または請求項6記載の利用者プ
ログラムのデバッグ処理システム。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP7078787A JP2743860B2 (ja) | 1994-04-28 | 1995-04-04 | 利用者プログラムのデバッグ処理システム |
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP6-113593 | 1994-04-28 | ||
| JP11359394 | 1994-04-28 | ||
| JP7078787A JP2743860B2 (ja) | 1994-04-28 | 1995-04-04 | 利用者プログラムのデバッグ処理システム |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH0816431A true JPH0816431A (ja) | 1996-01-19 |
| JP2743860B2 JP2743860B2 (ja) | 1998-04-22 |
Family
ID=26419848
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP7078787A Expired - Fee Related JP2743860B2 (ja) | 1994-04-28 | 1995-04-04 | 利用者プログラムのデバッグ処理システム |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2743860B2 (ja) |
Cited By (2)
| 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 |
| KR20110082051A (ko) * | 2008-10-23 | 2011-07-15 | 닛산 가가쿠 고교 가부시키 가이샤 | 화상형성용 하층막 |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0644119A (ja) * | 1992-04-16 | 1994-02-18 | Nec Corp | 利用者プログラムのリラン処理方式 |
-
1995
- 1995-04-04 JP JP7078787A patent/JP2743860B2/ja not_active Expired - Fee Related
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0644119A (ja) * | 1992-04-16 | 1994-02-18 | Nec Corp | 利用者プログラムのリラン処理方式 |
Cited By (2)
| 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 |
| KR20110082051A (ko) * | 2008-10-23 | 2011-07-15 | 닛산 가가쿠 고교 가부시키 가이샤 | 화상형성용 하층막 |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2743860B2 (ja) | 1998-04-22 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3675802B2 (ja) | 計算の状態を再構成する方法ならびにシステム | |
| Vouillon | Lwt: a cooperative thread library | |
| JPH06309178A (ja) | 割込処理コードによって割込みを処理するための方法およびコンピュータシステム | |
| JPH0728670A (ja) | 情報処理装置 | |
| US5615371A (en) | Debug processing system for user programs | |
| JPH0816431A (ja) | 利用者プログラムのデバッグ処理システム | |
| JP2715988B2 (ja) | プログラムシミュレータ装置及びプログラムデバッグ方法 | |
| JPH103403A (ja) | 計算機システムおよびデバッグ方法 | |
| JP3039450B2 (ja) | スタック領域の切替方法、方式およびスタック領域切替プログラムを記録した記憶媒体 | |
| JP2001166966A (ja) | デバッガにおける被テストプログラムの実行環境管理方法 | |
| JP2000181748A (ja) | マルチメモリ空間プログラムのデバッグシステムおよびそのデバッグ方法 | |
| JP2003345747A (ja) | 処理実行管理方法、処理実行管理装置、プログラム、及びプログラムを記録した記録媒体 | |
| JPH05113897A (ja) | コンピユータシステム | |
| JP3509705B2 (ja) | 交換システムにおける自動再開処理システム及び再開処理方法 | |
| JPH0546452A (ja) | コミツトメント制御システム | |
| CN119179553A (zh) | 处理器执行上下文的提取方法、装置、电子设备及存储介质 | |
| JPH10275133A (ja) | プロセスの再実行処理方法 | |
| JPH0740231B2 (ja) | 非同期例外捕獲方式 | |
| JPH0231241A (ja) | プログラム逆順復元方式 | |
| JPH06214828A (ja) | 対話型デバッグ制御装置 | |
| JP2002196938A (ja) | 例外処理フロー用の装置及びその処理実行方法 | |
| JPH02226344A (ja) | 計算機システム | |
| JPH1165886A (ja) | 計算機のプログラムデバック方式 | |
| JPH01222329A (ja) | 条件分岐命令を含むプログラムの実行方式 | |
| JPH07334374A (ja) | 割り込み検出処理装置 |
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 |