JPH0320835A - デバッグ方式 - Google Patents
デバッグ方式Info
- Publication number
- JPH0320835A JPH0320835A JP1156096A JP15609689A JPH0320835A JP H0320835 A JPH0320835 A JP H0320835A JP 1156096 A JP1156096 A JP 1156096A JP 15609689 A JP15609689 A JP 15609689A JP H0320835 A JPH0320835 A JP H0320835A
- Authority
- JP
- Japan
- Prior art keywords
- debugging
- debug information
- debug
- list
- information
- 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)
- Devices For Executing Special Programs (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は電子計算機システムにおけるプログラムのデバ
ッグ方式に関するものである。
ッグ方式に関するものである。
第3図は従来のデバッグ方式の例を示したものであり、
テキストエディタ1lによってソースブログラムl2を
作威する際にデバッグ情報作或指示を与えてデバッグ情
報13を作威させ、コンパイラl4によってソースプロ
グラムl2からオブジェクトプログラムl5を作威する
際に同様にデバッグ情報作威指示を与えてデバッグ情報
l6を作威させ、リンカ17によってオブジェクトプロ
グラムl5からロードモジュールl8を作威する際に同
様にデバッグ情報作威指示を与えてデバッグ情報l9を
作威させ、デバッガ20により、キーボード2lからの
デバッグの指示に従い、最終的に作成されたデバッグ情
報l9を用いてロードモジュール18に対してデバッグ
処理を行い、結果をディスプレイ22に表示するように
していた.なお、デバッグ情報とは、デバッグ処理に必
要な情報であり、例えば、プログラム中に現れる所定の
シンボルのアドレス情報等である. 〔発明が解決しようとする課題〕 従来のデバッグ方式は上述したように行われており、デ
バッグ処理に関する基本的な8l能としては問題はなか
ったが、現実問題として次のような欠点があった. ■プログラムの作戒前から予めデバッグ作業を意識し、
テキストエディタ,コンパイラ.リンカ等に対してデバ
ッグ情報作戒指示を与えるようになっているため、デバ
ッグ作業が必要ないと判断してデバッグ情報作威指示を
与えなかった場合にはデバッグ情報は作威されないが、
このような場合でもプログラムのテスト時にバグが発見
され、デバッグの必要が生じる場合もあり、そのような
場合はデバッグ作業が行えない. ■実際のデバッグ作業を行う前段階からデバッグ情報が
作成されているため、その管理および保守が煩雑である
. 本発明は上記の点に鑑み提案されたものであり、その目
的とするところは、デバッグ作業を行う前にデバッグ情
報の作戒を不要とし、上記の欠点を解決することのでき
るデバッグ方式を提供することにある. 〔課題を解決するための手段〕 本発明は上記の目的を達成するため、デバッグ対象プロ
グラムに対し、キーボードの如き入力手段からの操作に
応じてデバッグ処理を実行し、ディスプレイの如き出力
手段に結果を表示するデバッグ方式において、 コンパイラもしくはリンカ等の出力するリストから必要
なデバッグ情報を生成するデバッグ情報生成手段をデバ
ッガ内に設け、生成したデバッグ情報に従ってデバッグ
処理を実行するようにしている. 〔作用〕 本発明のデバッグ方式にあっては、キーボードの如き入
力手段からの操作に応じ、デバンガ内に設けられたデバ
ッグ情報生成手段が、コンパイラもしくはリンカ等の出
力するリストから必要なデバッグ情報を生成し、生成し
たデバッグ情報を用いてデバッガがデバッグ対象プログ
ラムに対しデバッグ処理を実行し、ディスプレイの如き
出力手段に結果を表示する. 〔実施例〕 以下、本発明の実施例につき図面を参照して説明する. 第1図は本発明のデバッグ方式の一実施例を示す構威図
である.第1図において、コンパイラ2およびリンカ5
は従来から存在するものであり、本発明においては特に
デバッグ情報作成指示を与えないでよいという点で使用
方法が異なるのみである.しかして、コンパイラ2はソ
ースプログラムlを入力してオブジェクトプログラム4
およびリスト3を磁気ディスク装置等の外部記憶装置に
出力する.ここで、リスト3はコンパイラ2の通常有す
る機能により出力される情報であり、一般には第2図に
示すようにソースリスト31, シンボルアドレスマ
ップ32,オブジェクトリスト33等を含むものである
.なお、ソースリスト3lとはソースプログラム1の内
容に関する情報を含んだリスト、シンボルアドレスマン
プ32とはプログラム中に含まれるデータ部等のシンボ
ルのアドレスに関する情報を含むリスト、オブジェクト
リスト33とはオブジェクトプログラムのアドレスおよ
びそれに対応するソースプログラムの行に関する情報を
含むリストである. また、リンカ5はコンパイラ2の生威したオブジェクト
プログラム4を入力し、ロードモジュール7およびリス
ト6を出力する.なお、リスト6には複数のオブジェク
トプログラムが結合された後のアドレス等の情報が含ま
れている.一方、デバッガ8は本発明のデバッグ方式を
実現するためのものであり、内部にデバッグ情報生底手
段81を備えており、入力手段としてのキーボード9お
よび出力手段としてのディスプレイ10と接続されてい
る. デバッグ情報生成手段8lは、コンパイラ2の生威した
りスト3およびリンカ5の生威したりスト6から必要に
応じてデバッグ情報を生威する機能を有しており、キー
ボード9からデバ・冫グの指示があるとリスト3.6か
ら必要なデバッグ情報を生威し、デバッガ8はそのデバ
ッグ情報をもとに指示されたデバッグ処理を実行し、結
果をディスプレイlOに出力する. 以下、具体例を用いて説明する. 今、例えばデバッガ8の操作員がキーボード9によりr
display i』 (”i″なるシンボルの内容
をディスプレイ10に表示せよ・・・・・・という意味
)という指示をデバッガ8に与えたとすると、デバッガ
8のデバッグ情報生成手段8lは次のように動作する. (1)コンパイラ2の生威したりスト3を参照し、オブ
ジェクトプログラム4内における“i”なるシンボルの
相対アドレスを求める.(2)リンカ5の生威したりス
ト6を参照し、対応するオブジェクトプログラム4の先
頭アドレスを求める. (3)上記の(1), (2)で求めたアドレスを加え
合わせ、″i″なるシンボルのロードモジュール7にお
けるアドレスを求める. そして、デバッガ8は上記のようにしてデバッグ情報生
成手段81が求めたアドレスを使ってTlt”なるシン
ボルの内容(値)を取得し、ディスプレイ10に表示す
る. 停止点をセットする場合や値の変更をする場合に必要な
デバッグ情報についても、デバッガ8のデバッグ情報生
成手段8lにより同様にして生成される。
テキストエディタ1lによってソースブログラムl2を
作威する際にデバッグ情報作或指示を与えてデバッグ情
報13を作威させ、コンパイラl4によってソースプロ
グラムl2からオブジェクトプログラムl5を作威する
際に同様にデバッグ情報作威指示を与えてデバッグ情報
l6を作威させ、リンカ17によってオブジェクトプロ
グラムl5からロードモジュールl8を作威する際に同
様にデバッグ情報作威指示を与えてデバッグ情報l9を
作威させ、デバッガ20により、キーボード2lからの
デバッグの指示に従い、最終的に作成されたデバッグ情
報l9を用いてロードモジュール18に対してデバッグ
処理を行い、結果をディスプレイ22に表示するように
していた.なお、デバッグ情報とは、デバッグ処理に必
要な情報であり、例えば、プログラム中に現れる所定の
シンボルのアドレス情報等である. 〔発明が解決しようとする課題〕 従来のデバッグ方式は上述したように行われており、デ
バッグ処理に関する基本的な8l能としては問題はなか
ったが、現実問題として次のような欠点があった. ■プログラムの作戒前から予めデバッグ作業を意識し、
テキストエディタ,コンパイラ.リンカ等に対してデバ
ッグ情報作戒指示を与えるようになっているため、デバ
ッグ作業が必要ないと判断してデバッグ情報作威指示を
与えなかった場合にはデバッグ情報は作威されないが、
このような場合でもプログラムのテスト時にバグが発見
され、デバッグの必要が生じる場合もあり、そのような
場合はデバッグ作業が行えない. ■実際のデバッグ作業を行う前段階からデバッグ情報が
作成されているため、その管理および保守が煩雑である
. 本発明は上記の点に鑑み提案されたものであり、その目
的とするところは、デバッグ作業を行う前にデバッグ情
報の作戒を不要とし、上記の欠点を解決することのでき
るデバッグ方式を提供することにある. 〔課題を解決するための手段〕 本発明は上記の目的を達成するため、デバッグ対象プロ
グラムに対し、キーボードの如き入力手段からの操作に
応じてデバッグ処理を実行し、ディスプレイの如き出力
手段に結果を表示するデバッグ方式において、 コンパイラもしくはリンカ等の出力するリストから必要
なデバッグ情報を生成するデバッグ情報生成手段をデバ
ッガ内に設け、生成したデバッグ情報に従ってデバッグ
処理を実行するようにしている. 〔作用〕 本発明のデバッグ方式にあっては、キーボードの如き入
力手段からの操作に応じ、デバンガ内に設けられたデバ
ッグ情報生成手段が、コンパイラもしくはリンカ等の出
力するリストから必要なデバッグ情報を生成し、生成し
たデバッグ情報を用いてデバッガがデバッグ対象プログ
ラムに対しデバッグ処理を実行し、ディスプレイの如き
出力手段に結果を表示する. 〔実施例〕 以下、本発明の実施例につき図面を参照して説明する. 第1図は本発明のデバッグ方式の一実施例を示す構威図
である.第1図において、コンパイラ2およびリンカ5
は従来から存在するものであり、本発明においては特に
デバッグ情報作成指示を与えないでよいという点で使用
方法が異なるのみである.しかして、コンパイラ2はソ
ースプログラムlを入力してオブジェクトプログラム4
およびリスト3を磁気ディスク装置等の外部記憶装置に
出力する.ここで、リスト3はコンパイラ2の通常有す
る機能により出力される情報であり、一般には第2図に
示すようにソースリスト31, シンボルアドレスマ
ップ32,オブジェクトリスト33等を含むものである
.なお、ソースリスト3lとはソースプログラム1の内
容に関する情報を含んだリスト、シンボルアドレスマン
プ32とはプログラム中に含まれるデータ部等のシンボ
ルのアドレスに関する情報を含むリスト、オブジェクト
リスト33とはオブジェクトプログラムのアドレスおよ
びそれに対応するソースプログラムの行に関する情報を
含むリストである. また、リンカ5はコンパイラ2の生威したオブジェクト
プログラム4を入力し、ロードモジュール7およびリス
ト6を出力する.なお、リスト6には複数のオブジェク
トプログラムが結合された後のアドレス等の情報が含ま
れている.一方、デバッガ8は本発明のデバッグ方式を
実現するためのものであり、内部にデバッグ情報生底手
段81を備えており、入力手段としてのキーボード9お
よび出力手段としてのディスプレイ10と接続されてい
る. デバッグ情報生成手段8lは、コンパイラ2の生威した
りスト3およびリンカ5の生威したりスト6から必要に
応じてデバッグ情報を生威する機能を有しており、キー
ボード9からデバ・冫グの指示があるとリスト3.6か
ら必要なデバッグ情報を生威し、デバッガ8はそのデバ
ッグ情報をもとに指示されたデバッグ処理を実行し、結
果をディスプレイlOに出力する. 以下、具体例を用いて説明する. 今、例えばデバッガ8の操作員がキーボード9によりr
display i』 (”i″なるシンボルの内容
をディスプレイ10に表示せよ・・・・・・という意味
)という指示をデバッガ8に与えたとすると、デバッガ
8のデバッグ情報生成手段8lは次のように動作する. (1)コンパイラ2の生威したりスト3を参照し、オブ
ジェクトプログラム4内における“i”なるシンボルの
相対アドレスを求める.(2)リンカ5の生威したりス
ト6を参照し、対応するオブジェクトプログラム4の先
頭アドレスを求める. (3)上記の(1), (2)で求めたアドレスを加え
合わせ、″i″なるシンボルのロードモジュール7にお
けるアドレスを求める. そして、デバッガ8は上記のようにしてデバッグ情報生
成手段81が求めたアドレスを使ってTlt”なるシン
ボルの内容(値)を取得し、ディスプレイ10に表示す
る. 停止点をセットする場合や値の変更をする場合に必要な
デバッグ情報についても、デバッガ8のデバッグ情報生
成手段8lにより同様にして生成される。
以上説明したように、本発明のデバッグ方式にあっては
、デバッガ内に設けられたデバッグ情報生成手段が、コ
ンパイラもしくはリンカ等の出力するリストから必要に
応じてデバッグ情報を生成し、これによりデバッグ作業
を行うため、■テキストエディタ.コンパイラ8 リン
カ等の実行時にデバッグ作業を意識しなくても、その後
の任意の時点でデバッグ作業が行える.■デバッグ情報
という特別の情報が存在しないので、その管理および保
守が不要となる.等の効果がある.
、デバッガ内に設けられたデバッグ情報生成手段が、コ
ンパイラもしくはリンカ等の出力するリストから必要に
応じてデバッグ情報を生成し、これによりデバッグ作業
を行うため、■テキストエディタ.コンパイラ8 リン
カ等の実行時にデバッグ作業を意識しなくても、その後
の任意の時点でデバッグ作業が行える.■デバッグ情報
という特別の情報が存在しないので、その管理および保
守が不要となる.等の効果がある.
第1図は本発明のデバッグ方式の一実施例を示す構威図
、 第2図はコンパイラの生威するリストの例を示す図およ
び、 第3図は従来のデバッグ方式の構成図である.図におい
て、 1・・・・・・ソースプログラム 2・・・・・・コンパイラ 3・・・・・・リスト 4・・・・・・オブジェクトプログラム5・・・・・・
リンカ 6・・・・・・リスト 7・・・・・・ロードモジュール 8・・・・・・デバッガ 8l・・・デバッグ情報生成手段 9・・・・・・キーボード 10・・・ディスプレイ
、 第2図はコンパイラの生威するリストの例を示す図およ
び、 第3図は従来のデバッグ方式の構成図である.図におい
て、 1・・・・・・ソースプログラム 2・・・・・・コンパイラ 3・・・・・・リスト 4・・・・・・オブジェクトプログラム5・・・・・・
リンカ 6・・・・・・リスト 7・・・・・・ロードモジュール 8・・・・・・デバッガ 8l・・・デバッグ情報生成手段 9・・・・・・キーボード 10・・・ディスプレイ
Claims (1)
- 【特許請求の範囲】 デバッグ対象プログラムに対し、キーボードの如き入力
手段からの操作に応じてデバッグ処理を実行し、ディス
プレイの如き出力手段に結果を表示するデバッグ方式に
おいて、 コンパイラもしくはリンカ等の出力するリストから必要
なデバッグ情報を生成するデバッグ情報生成手段をデバ
ッガ内に設け、生成したデバッグ情報に従ってデバッグ
処理を実行することを特徴とするデバッグ方式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1156096A JPH0320835A (ja) | 1989-06-19 | 1989-06-19 | デバッグ方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1156096A JPH0320835A (ja) | 1989-06-19 | 1989-06-19 | デバッグ方式 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0320835A true JPH0320835A (ja) | 1991-01-29 |
Family
ID=15620224
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP1156096A Pending JPH0320835A (ja) | 1989-06-19 | 1989-06-19 | デバッグ方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0320835A (ja) |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS63184846A (ja) * | 1987-01-27 | 1988-07-30 | Mitsubishi Electric Corp | シンボリツクデバツガ |
-
1989
- 1989-06-19 JP JP1156096A patent/JPH0320835A/ja active Pending
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS63184846A (ja) * | 1987-01-27 | 1988-07-30 | Mitsubishi Electric Corp | シンボリツクデバツガ |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6003143A (en) | Tool and method for diagnosing and correcting errors in a computer program | |
| CN106020823A (zh) | 一种前端Web表现与数据分离以及页面快速响应的方式 | |
| JP2000122886A (ja) | 半導体試験装置のプログラム作成方式 | |
| WO2000002106A1 (en) | Method and apparatus for assisting development of program for vehicle | |
| US20070150867A1 (en) | Apparatus and method for grouping threads in a debugger display | |
| JPS6116100B2 (ja) | ||
| Savidis et al. | Complete block-level visual debugger for blockly | |
| JPH0320835A (ja) | デバッグ方式 | |
| Caromel et al. | Reactive programming in Eiffel | |
| Biddle et al. | Reuse of debuggers for visualization of reuse | |
| JPH07295612A (ja) | 高級言語シーケンス命令プログラム生成装置および汎用シーケンサ | |
| Cox et al. | Advanced programming aids in PROGRAPH | |
| JPH0272407A (ja) | ラダー・プログラム変換装置 | |
| JPH05108404A (ja) | デバツガシステム | |
| JPH02118733A (ja) | タスクの実行制御方式 | |
| Gyén et al. | Toward a Fine-Grained Code Comprehension of C++ Move Semantics | |
| JPH0546434A (ja) | プログラムデバツグ方式 | |
| KR100423742B1 (ko) | 순차기능챠트에 의한 전용 제어 시스템 | |
| US20110209122A1 (en) | Filtered presentation of structured data at debug time | |
| JPH0350640A (ja) | 実行用プログラムのトレース情報編集方式 | |
| JPS62147534A (ja) | プログラムテスト方式 | |
| JPH02115951A (ja) | 高級言語プログラム保守デバッグ方式 | |
| JPH03225532A (ja) | デバッガの変数トレースのためのコンパイラのコード生成方式 | |
| JPH0833846B2 (ja) | 関数トレース・ステップトレース切り替え制御方式 | |
| Nakamura et al. | Feature Interactions in Object-Oriented Effect Systems from a Viewpoint of Program Comprehension ((W) work-in-progress paper) |