JPS6214241A - 例外条件検出時のデバツグ処理方式 - Google Patents
例外条件検出時のデバツグ処理方式Info
- Publication number
- JPS6214241A JPS6214241A JP60153304A JP15330485A JPS6214241A JP S6214241 A JPS6214241 A JP S6214241A JP 60153304 A JP60153304 A JP 60153304A JP 15330485 A JP15330485 A JP 15330485A JP S6214241 A JPS6214241 A JP S6214241A
- Authority
- JP
- Japan
- Prior art keywords
- program
- exception
- debugging
- user
- processing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Debugging And Monitoring (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は、会話型デバッガにおいて、例外条件が発生し
た場合のデバッグ処理方式に関するものである。
た場合のデバッグ処理方式に関するものである。
演算例外及びオペレーション例外が発生した場合にもデ
バッグ処理を継続出来ると共に、処理継続箇所を例外検
出ステートメントの先頭からとした例外条件検出時のデ
バッグ処理方式である。
バッグ処理を継続出来ると共に、処理継続箇所を例外検
出ステートメントの先頭からとした例外条件検出時のデ
バッグ処理方式である。
例外条件の種類には、演算例外、オペレーション例外、
仮パラメータ・エラー、配列要素などの範囲のエラーな
どがある。演算例外とは、固定小数点オーバフローや除
算チェック、10進オーバフローなどを意味しており、
オペレーション例外とは、アドレス変換不能や命令不当
などを意味しており、仮パラメータ・エラーとは、実パ
ラメータと仮パラメータの型や個数の不当などを意味し
ている。演算例外やオペレーション例外はハード的に検
出され、この種の例外条件が検出されると、オンルーチ
ンへ制御が移行する。仮パラメータ・エラーや配列要素
などの範囲のエラーの検出は、コンパイル時にチェック
用ロジックを埋め込むことによってなされる。
仮パラメータ・エラー、配列要素などの範囲のエラーな
どがある。演算例外とは、固定小数点オーバフローや除
算チェック、10進オーバフローなどを意味しており、
オペレーション例外とは、アドレス変換不能や命令不当
などを意味しており、仮パラメータ・エラーとは、実パ
ラメータと仮パラメータの型や個数の不当などを意味し
ている。演算例外やオペレーション例外はハード的に検
出され、この種の例外条件が検出されると、オンルーチ
ンへ制御が移行する。仮パラメータ・エラーや配列要素
などの範囲のエラーの検出は、コンパイル時にチェック
用ロジックを埋め込むことによってなされる。
従来の会話型デバッグにおいては、演算例外やオペレー
ション例外を検出すると、メツセージや解析用情報を出
力するくらいで、デバッグ対象プログラムの走行を停止
している。特にオペレーション例外検出時にはそのまま
の形では続行不可であり、演算例外検出時にはそのまま
の形で続行すると数値がブタラメとなる。仮パラメータ
・エラーや配列要素などの範囲のエラーなどが検出され
た場合は、同じようにメソセージや解析用情報を出力し
て、デバッグ対象プログラムの走行を停止している。但
し、会話型デバッガの中には仮パラメータ・エラーや配
列要素などの範囲のエラー検出時に静止モードになり、
ユーザの指定によってはデバッグ対象プログラムの実行
を続けることが出来るものも存在する。
ション例外を検出すると、メツセージや解析用情報を出
力するくらいで、デバッグ対象プログラムの走行を停止
している。特にオペレーション例外検出時にはそのまま
の形では続行不可であり、演算例外検出時にはそのまま
の形で続行すると数値がブタラメとなる。仮パラメータ
・エラーや配列要素などの範囲のエラーなどが検出され
た場合は、同じようにメソセージや解析用情報を出力し
て、デバッグ対象プログラムの走行を停止している。但
し、会話型デバッガの中には仮パラメータ・エラーや配
列要素などの範囲のエラー検出時に静止モードになり、
ユーザの指定によってはデバッグ対象プログラムの実行
を続けることが出来るものも存在する。
本発明は、上記の考察に基づくものであって、演算例外
やオペレージロン例外検出時においてもユーザの指示に
よりデバッグ対象プログラムを続けて実行できるように
した会話型デバッガにおける例外条件検出時のデバッグ
処理方式を桿供することを目的としている。
やオペレージロン例外検出時においてもユーザの指示に
よりデバッグ対象プログラムを続けて実行できるように
した会話型デバッガにおける例外条件検出時のデバッグ
処理方式を桿供することを目的としている。
そしてそのため本発明の例外条件検出時のデバッグ処理
方式は、デバック対象プロゲラJいと、該デバック対象
プログラム実行中に例外条件が発生した時に起動される
会話型のデバッガとを具備し、該デバッガは、起動され
ると、ユーザに対し−でデバッキング要求を通知し、ユ
ーザからのデータ値修正に応じて上記デバック対象プロ
グラムの修正を行い、上記ユーザからの処理続行指示を
受け取った時、例外検出ステートメントの先頭から上記
デバック対象プログラムの処理を再開させるための処理
を行うように構成されていることを特徴とするものであ
る。
方式は、デバック対象プロゲラJいと、該デバック対象
プログラム実行中に例外条件が発生した時に起動される
会話型のデバッガとを具備し、該デバッガは、起動され
ると、ユーザに対し−でデバッキング要求を通知し、ユ
ーザからのデータ値修正に応じて上記デバック対象プロ
グラムの修正を行い、上記ユーザからの処理続行指示を
受け取った時、例外検出ステートメントの先頭から上記
デバック対象プログラムの処理を再開させるための処理
を行うように構成されていることを特徴とするものであ
る。
以下、本発明を図面を参照しつつ説明する。図は本発明
の例外条件検出時のデバッグ処理方式を説明するための
図である。図において、1はデバッグ対象プログラム、
2はデバッガ、3はオンルーチンをそれぞれ示している
。また、丸打数字は処理の順序を示している。
の例外条件検出時のデバッグ処理方式を説明するための
図である。図において、1はデバッグ対象プログラム、
2はデバッガ、3はオンルーチンをそれぞれ示している
。また、丸打数字は処理の順序を示している。
デバッグ対象プログラムは、デバッキング・モードによ
りコンパイルされる。即ち、特定の保証レジスタ(Us
ing Ba5e)を除き文の間でのレジスタの引き継
ぎはない。また、保証レジスタの値は、コンパイラ生成
のプロローグ処理により、コンパイラ−デバッガのイン
タフェース領域に設定されている。例外条件検出時には
下記のような処理が行われる。
りコンパイルされる。即ち、特定の保証レジスタ(Us
ing Ba5e)を除き文の間でのレジスタの引き継
ぎはない。また、保証レジスタの値は、コンパイラ生成
のプロローグ処理により、コンパイラ−デバッガのイン
タフェース領域に設定されている。例外条件検出時には
下記のような処理が行われる。
■ 例外検出位置(ステートメント番号)を求めて、デ
バッガ2に通知する。演算例外やオペレーション例外検
出の場合は、オンルーチン3が例外検出時のPSWの実
行アドレスにより例外検出位置を求め、仮パラメータ・
エラーや配列要素などの範囲のエラー検出の場合は、コ
ンパイル時に作成されたチェック用ロジックが例外検出
位置を求め■ デバッガ2は該通知を受けて静止モード
になり、ユーザよりのデバッキング要求を待つ。この時
、デバッガ2は、例外検出メソセージ及び解析用として
の小量の情報をもユーザに通知する。
バッガ2に通知する。演算例外やオペレーション例外検
出の場合は、オンルーチン3が例外検出時のPSWの実
行アドレスにより例外検出位置を求め、仮パラメータ・
エラーや配列要素などの範囲のエラー検出の場合は、コ
ンパイル時に作成されたチェック用ロジックが例外検出
位置を求め■ デバッガ2は該通知を受けて静止モード
になり、ユーザよりのデバッキング要求を待つ。この時
、デバッガ2は、例外検出メソセージ及び解析用として
の小量の情報をもユーザに通知する。
■ ユーザはデバッキング処理を行い、例外の要因を修
正する。例外の要因の修正には、特定変数値の変更、プ
ログラムの修正(オブジェクト・パッチ等を含めて)な
どがある。
正する。例外の要因の修正には、特定変数値の変更、プ
ログラムの修正(オブジェクト・パッチ等を含めて)な
どがある。
■ ユーザは例外要因を解除し、処理続行できると判断
した時、処理続行を指示する。勿論、その場で処理を打
ち切ることも可能である。
した時、処理続行を指示する。勿論、その場で処理を打
ち切ることも可能である。
■ 処理続行の指示をされた時、デバッガ2は、演算例
外やオペレーション例外のときにはオン処理中の条件を
解除してやり(O3側のオン処理中の意識の解除)、保
証レジスタをコンパイラ−デバッガ・インタフェース域
より復元してやり、例外が起こったステートメントの先
頭より処理を続行させる。
外やオペレーション例外のときにはオン処理中の条件を
解除してやり(O3側のオン処理中の意識の解除)、保
証レジスタをコンパイラ−デバッガ・インタフェース域
より復元してやり、例外が起こったステートメントの先
頭より処理を続行させる。
以上の説明から明らかなように、本発明によれば、下記
のような効果を奏することが出来る。
のような効果を奏することが出来る。
+a+ 例外検出時の処理を統一化できる。即ち、演
算例外及びオペレーション例外検出時においても処理続
行可能となる。
算例外及びオペレーション例外検出時においても処理続
行可能となる。
(bl 処理続行箇所が例外検出ステートメントの先
頭からとなる。即ち、ユーザはどこから処理を再開する
かということを意識する必要がなく、単にプログラムの
処理続行だけを指示すれば良い。これにより、通常のデ
バッグ時の処理続行と同じようにユーザに見える。勿論
、特定ステートメントからの処理再開も可能である。従
来技術においては、たとえ仮パラメータ・エラーや配列
要素などの範囲のエラーの検出時での処理続行であって
も、ユーザが例外発生ステートメントを指定しての処理
続行となる。単なる処理続行では例外発生箇所からその
ままの処理続行となる。
頭からとなる。即ち、ユーザはどこから処理を再開する
かということを意識する必要がなく、単にプログラムの
処理続行だけを指示すれば良い。これにより、通常のデ
バッグ時の処理続行と同じようにユーザに見える。勿論
、特定ステートメントからの処理再開も可能である。従
来技術においては、たとえ仮パラメータ・エラーや配列
要素などの範囲のエラーの検出時での処理続行であって
も、ユーザが例外発生ステートメントを指定しての処理
続行となる。単なる処理続行では例外発生箇所からその
ままの処理続行となる。
図は本発明の例外条件検出時のデバッグ処理方式を説明
するための図である。 1・・・デバッグ対象プログラム、2・・・デバッガ、
3・・・オンルーチン。
するための図である。 1・・・デバッグ対象プログラム、2・・・デバッガ、
3・・・オンルーチン。
Claims (1)
- デバック対象プログラムと、該デバック対象プログラム
実行中に例外条件が発生した時に起動される会話型のデ
バッガとを具備し、該デバッガは、起動されると、ユー
ザに対してデバッギング要求を通知し、ユーザからのデ
ータ値修正に応じて上記デバック対象プログラムの修正
を行い、上記ユーザからの処理続行指示を受け取った時
、例外検出ステートメントの先頭から上記デバック対象
プログラムの処理を再開させるための処理を行うように
構成されていることを特徴とする例外条件検出時のデバ
ッグ処理方式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP60153304A JPS6214241A (ja) | 1985-07-11 | 1985-07-11 | 例外条件検出時のデバツグ処理方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP60153304A JPS6214241A (ja) | 1985-07-11 | 1985-07-11 | 例外条件検出時のデバツグ処理方式 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPS6214241A true JPS6214241A (ja) | 1987-01-22 |
Family
ID=15559552
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP60153304A Pending JPS6214241A (ja) | 1985-07-11 | 1985-07-11 | 例外条件検出時のデバツグ処理方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS6214241A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH01159738A (ja) * | 1987-12-17 | 1989-06-22 | Fujitsu Ltd | 手続き処理による連続実行中のパラメータ修正方式 |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5930145A (ja) * | 1982-08-12 | 1984-02-17 | Fujitsu Ltd | 動的プログラム修正による再実行処理方式 |
-
1985
- 1985-07-11 JP JP60153304A patent/JPS6214241A/ja active Pending
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5930145A (ja) * | 1982-08-12 | 1984-02-17 | Fujitsu Ltd | 動的プログラム修正による再実行処理方式 |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH01159738A (ja) * | 1987-12-17 | 1989-06-22 | Fujitsu Ltd | 手続き処理による連続実行中のパラメータ修正方式 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5621886A (en) | Method and apparatus for providing efficient software debugging | |
| JPH0748182B2 (ja) | プログラム・エラー検出方法 | |
| JPH03113648A (ja) | プログラムデバツグ方式 | |
| KR920003909B1 (ko) | 디버깅지원회로 | |
| JPS60124746A (ja) | デ−タ処理装置 | |
| JPH05313918A (ja) | アプリケーションソフトウエアの異常終了時の解析データ採取システム | |
| JP2786215B2 (ja) | 再開処理制御方式 | |
| JP2023151592A (ja) | 情報処理装置、及び情報処理装置の動作制御方法 | |
| JPH01305438A (ja) | ホストコンピュータ | |
| JPH03225435A (ja) | マイクロプロセッサ | |
| JPH03175539A (ja) | デバッグ用マイクロプロセッサ | |
| JPS63289654A (ja) | プログラム分岐命令モニタ方式 | |
| JPH0340143A (ja) | パイプライン方式計算機におけるデバッグ方式 | |
| JPH03201135A (ja) | マイクロプロセッサ | |
| JPH03246639A (ja) | マイクロプロセッサ | |
| JPH07134665A (ja) | 情報処理装置 | |
| JPH02103638A (ja) | 組込み関数実行時の性能向上方式 | |
| JPH0210442A (ja) | ブレークポイント命令制御方式 | |
| JPH0353335A (ja) | コンパイラの処理方式 | |
| JPH05151021A (ja) | 常駐領域組み込み型デバツガによるデバツグ方式 | |
| JPS61214030A (ja) | 演算処理装置 | |
| JPH03109643A (ja) | データ例外手続き実行方式 | |
| JPS62109138A (ja) | プログラムデバツグ方式 | |
| JPH03242736A (ja) | 異常処理方式 | |
| JPS61210441A (ja) | プログラムのバグ検出方法 |