JPH04217034A - プログラムトレースの表示方式 - Google Patents
プログラムトレースの表示方式Info
- Publication number
- JPH04217034A JPH04217034A JP2403454A JP40345490A JPH04217034A JP H04217034 A JPH04217034 A JP H04217034A JP 2403454 A JP2403454 A JP 2403454A JP 40345490 A JP40345490 A JP 40345490A JP H04217034 A JPH04217034 A JP H04217034A
- Authority
- JP
- Japan
- Prior art keywords
- trace
- address
- program
- display
- source
- 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
【0001】
【産業上の利用分野】本発明はプログラムトレースの表
示方式に関する。プログラムの虫取り作業(デバッグ)
はプログラムの実行過程を追うことにより行われるが、
プログラムが実行する命令のアドレスを逐一記録してい
くプログラムトレースという方法が一般に行われ、トレ
ースの結果収集されたアドレスの命令を一ステップづつ
実行結果を確認していくために、トレース範囲が多くな
ればなる程トレースの全体が把握し難いといった欠点が
あった。トレース範囲を指定することにより、プログラ
ム実行結果の軌跡をソースプログラム上に反映してディ
スプレイ装置に表示し、全体の流れを把握出来るように
した効率的なデバッグ手段が要請されている。
示方式に関する。プログラムの虫取り作業(デバッグ)
はプログラムの実行過程を追うことにより行われるが、
プログラムが実行する命令のアドレスを逐一記録してい
くプログラムトレースという方法が一般に行われ、トレ
ースの結果収集されたアドレスの命令を一ステップづつ
実行結果を確認していくために、トレース範囲が多くな
ればなる程トレースの全体が把握し難いといった欠点が
あった。トレース範囲を指定することにより、プログラ
ム実行結果の軌跡をソースプログラム上に反映してディ
スプレイ装置に表示し、全体の流れを把握出来るように
した効率的なデバッグ手段が要請されている。
【0002】
【従来の技術】計算機システムにおけるプログラムのデ
バッグは、デバッグ対象のプログラムの実行命令アドレ
スをトレースプログラムが実行順番に記録しておき、プ
ログラムの異常状態が生じた場合これまで実行されたア
ドレスを一ステップづつ遡って調査するといった方法で
行われた。
バッグは、デバッグ対象のプログラムの実行命令アドレ
スをトレースプログラムが実行順番に記録しておき、プ
ログラムの異常状態が生じた場合これまで実行されたア
ドレスを一ステップづつ遡って調査するといった方法で
行われた。
【0003】図7に従来のシステム構成図を示す。ロー
ドモジュール35は制御プログラム31によって外部記
憶装置34から主記憶装置19の被トレースプログラム
領域33へローディングされる。ロードモジュール35
の実行が開始されると、トレースプログラム32はロー
ドモジュール35が実行したアドレスを順番にトレース
アドレス部36へ格納する。
ドモジュール35は制御プログラム31によって外部記
憶装置34から主記憶装置19の被トレースプログラム
領域33へローディングされる。ロードモジュール35
の実行が開始されると、トレースプログラム32はロー
ドモジュール35が実行したアドレスを順番にトレース
アドレス部36へ格納する。
【0004】トレースプログラム32は、ディスプレイ
装置39からトレース済アドレスの表示指令があると、
トレースの最新アドレス(最後に実行したアドレス)か
ら過去に遡ってアドレスをディスプレイ装置に表示する
。図8に従来のトレースアドレス表示図を示す。表示さ
れたアドレスから該アドレスで実行された命令をディス
プレイ装置39へ読出して実行結果を確認する。
装置39からトレース済アドレスの表示指令があると、
トレースの最新アドレス(最後に実行したアドレス)か
ら過去に遡ってアドレスをディスプレイ装置に表示する
。図8に従来のトレースアドレス表示図を示す。表示さ
れたアドレスから該アドレスで実行された命令をディス
プレイ装置39へ読出して実行結果を確認する。
【0005】
【発明が解決しようとする課題】プログラムのトレース
で収集された実行アドレスをディスプレイ装置に表示し
、表示されたアドレスデータに基づいて該アドレスの命
令を一ステップつづ再実行させて行うデバッグ作業は、
プログラムの流れ全体の把握が困難で、デバッグ効率を
著しく落とすといった欠点があった。
で収集された実行アドレスをディスプレイ装置に表示し
、表示されたアドレスデータに基づいて該アドレスの命
令を一ステップつづ再実行させて行うデバッグ作業は、
プログラムの流れ全体の把握が困難で、デバッグ効率を
著しく落とすといった欠点があった。
【0006】本発明は、ソースプログラム上にトレース
アドレスの識別符号を付加してディスプレイ装置に表示
することにより、トレース結果によるプログラム検証作
業の効率化を図る。
アドレスの識別符号を付加してディスプレイ装置に表示
することにより、トレース結果によるプログラム検証作
業の効率化を図る。
【0007】
【課題を解決するための手段】図1は本発明の原理ブロ
ック図である。ソースプログラム25と、ロードモジュ
ール22と行対応アドレス部23から成るオブジェクト
ファイル21と、トレースアドレス部24と、トレース
表示プログラムファイル5とを有する外部記憶装置20
と、コンパイラ15と、トレースプログラム1を有する
主記憶装置40と、主記憶装置40のプログラムを実行
する中央処理装置10と、ディスプレイ装置30とを有
する計算機システムにおいて、ソースプログラム25は
コンパイラ15によって翻訳されることにより、中央処
理装置10で実行可能となったロードモジュール22と
、ソースプログラムの行番号とロードモジュール22内
の命令アドレスとの対応情報を保持する行対応アドレス
部23とから構成されるオブジェクトファイル21が生
成され、トレースプログラム1は、トレース情報生成部
2と、トレース範囲処理部3と、トレース情報表示部4
とから構成され、トレース情報生成部2は、ロードモジ
ュール22が中央処理装置40で実行されると、該実行
命令アドレスを実行順に収集してトレースアドレス部2
4へ格納し、トレース範囲処理部3は、所定の方法でト
レース処理範囲が指定されると該トレース処理範囲に該
当するトレースアドレス部24内の各命令アドレスにつ
いて、該アドレスと対応するソース行番号を、行対応ア
ドレス部23を検索することにより決定し、該ソース行
番号に対応するソースプログラム25の行に識別マーク
を付加して得られるトレース表示プログラムファイル5
を作成し、トレース情報表示部4は、トレース表示プロ
グラムファイル5を読出してディスプレイ装置30に表
示するように構成する。
ック図である。ソースプログラム25と、ロードモジュ
ール22と行対応アドレス部23から成るオブジェクト
ファイル21と、トレースアドレス部24と、トレース
表示プログラムファイル5とを有する外部記憶装置20
と、コンパイラ15と、トレースプログラム1を有する
主記憶装置40と、主記憶装置40のプログラムを実行
する中央処理装置10と、ディスプレイ装置30とを有
する計算機システムにおいて、ソースプログラム25は
コンパイラ15によって翻訳されることにより、中央処
理装置10で実行可能となったロードモジュール22と
、ソースプログラムの行番号とロードモジュール22内
の命令アドレスとの対応情報を保持する行対応アドレス
部23とから構成されるオブジェクトファイル21が生
成され、トレースプログラム1は、トレース情報生成部
2と、トレース範囲処理部3と、トレース情報表示部4
とから構成され、トレース情報生成部2は、ロードモジ
ュール22が中央処理装置40で実行されると、該実行
命令アドレスを実行順に収集してトレースアドレス部2
4へ格納し、トレース範囲処理部3は、所定の方法でト
レース処理範囲が指定されると該トレース処理範囲に該
当するトレースアドレス部24内の各命令アドレスにつ
いて、該アドレスと対応するソース行番号を、行対応ア
ドレス部23を検索することにより決定し、該ソース行
番号に対応するソースプログラム25の行に識別マーク
を付加して得られるトレース表示プログラムファイル5
を作成し、トレース情報表示部4は、トレース表示プロ
グラムファイル5を読出してディスプレイ装置30に表
示するように構成する。
【0008】
【作用】トレース範囲を指定することにより、トレース
範囲に含まれるソースプログラム25全体の表示が可能
となるとともに、ソースプログラム中の実行された命令
(手続き部)を含むソース行にトレース識別符号を付加
したトレース表示プログラムファイル5が作成され、プ
ログラムの実行軌跡をソースプログラム全体の流れの中
で把握することが出来る。
範囲に含まれるソースプログラム25全体の表示が可能
となるとともに、ソースプログラム中の実行された命令
(手続き部)を含むソース行にトレース識別符号を付加
したトレース表示プログラムファイル5が作成され、プ
ログラムの実行軌跡をソースプログラム全体の流れの中
で把握することが出来る。
【0009】
【実施例】図1において、コンパイラ15は外部記憶装
置20に格納されているソースプログラム25を読出し
て翻訳し、翻訳結果をオブジェクトファイル21へ格納
する。
置20に格納されているソースプログラム25を読出し
て翻訳し、翻訳結果をオブジェクトファイル21へ格納
する。
【0010】オブジェクトファイル21は、ロードモジ
ュール22と行対応アドレス部23から構成される。図
2にロードモジュールの説明図を示す。図2(a)に示
すソースプログラムが翻訳され、中央処理装置20で実
行するためのアドレスが決められると、オブジェクト命
令(手続き部が変換された命令語)にアドレスが割当ら
れた図2(b)に示すようなロードモジュールが生成さ
れる。例えばソース行番号4の手続き部(文)はロード
モジュール内で10番地から15番地のアドレス領域が
割当てられている。このようにソースプログラム上の行
番号に記述された文がロードモジュールに変換されてア
ドレスが割当られると、その文が占める領域の先頭アド
レス(例えば図2(a)のソース行番号が4の文に対し
ては図2(b)の番地10)がソースプログラム上の行
番号ごとに対応付けられて、図3の行対応アドレス部の
説明図に示すように行対応アドレス部23に該対応情報
が格納される。
ュール22と行対応アドレス部23から構成される。図
2にロードモジュールの説明図を示す。図2(a)に示
すソースプログラムが翻訳され、中央処理装置20で実
行するためのアドレスが決められると、オブジェクト命
令(手続き部が変換された命令語)にアドレスが割当ら
れた図2(b)に示すようなロードモジュールが生成さ
れる。例えばソース行番号4の手続き部(文)はロード
モジュール内で10番地から15番地のアドレス領域が
割当てられている。このようにソースプログラム上の行
番号に記述された文がロードモジュールに変換されてア
ドレスが割当られると、その文が占める領域の先頭アド
レス(例えば図2(a)のソース行番号が4の文に対し
ては図2(b)の番地10)がソースプログラム上の行
番号ごとに対応付けられて、図3の行対応アドレス部の
説明図に示すように行対応アドレス部23に該対応情報
が格納される。
【0011】ロードモジュール22は、主記憶装置10
へ外部記憶装置20からローディングされ中央処理装置
40でプログラム命令が実行されるが、トレースプログ
ラム1のトレース情報生成部2は、ロードモジュール2
2が実行した命令アドレスを逐一収集して、トレースア
ドレス部24に格納する。図5にトレースアドレス部の
説明図を示す。本図において実行されたアドレスがt1
〜te迄格納されている。
へ外部記憶装置20からローディングされ中央処理装置
40でプログラム命令が実行されるが、トレースプログ
ラム1のトレース情報生成部2は、ロードモジュール2
2が実行した命令アドレスを逐一収集して、トレースア
ドレス部24に格納する。図5にトレースアドレス部の
説明図を示す。本図において実行されたアドレスがt1
〜te迄格納されている。
【0012】図4に実施例の処理手順図を示す。プログ
ラムのトレース結果をディスプレイ装置30に表示させ
るために、操作員が処理ステップ81でトレース範囲(
R1,R2)をディスプレイ装置30から指定する。ト
レース範囲は、トレース済の最後のアドレスから過去に
遡った実行アドレスの数、例えば 100ステップ(R
1=te−99, R2=te)等と指定される。トレ
ース範囲処理部3は、トレースアドレス部24が保持す
るトレース範囲内のアドレスについて、ソースプログラ
ム25のソース行に対応してソースプログラム上に識別
符号を生成するために、処理ステップ82でトレースア
ドレス部24からトレースアドレス(ti)を抽出する
。
ラムのトレース結果をディスプレイ装置30に表示させ
るために、操作員が処理ステップ81でトレース範囲(
R1,R2)をディスプレイ装置30から指定する。ト
レース範囲は、トレース済の最後のアドレスから過去に
遡った実行アドレスの数、例えば 100ステップ(R
1=te−99, R2=te)等と指定される。トレ
ース範囲処理部3は、トレースアドレス部24が保持す
るトレース範囲内のアドレスについて、ソースプログラ
ム25のソース行に対応してソースプログラム上に識別
符号を生成するために、処理ステップ82でトレースア
ドレス部24からトレースアドレス(ti)を抽出する
。
【0013】トレース範囲処理部3は処理ステップ83
で、行対応アドレス部23を検索してトレースアドレス
(ti)に対応したソースプログラム25の行番号(L
i)を求める。処理ステップ84でトレース範囲の全て
のアドレスについて行番号が求まると処理ステップ85
で、該行番号の最小値から最大値までのソースプログラ
ムをソースプログラム25から抽出し、行番号のソース
行にトレース識別符号を付加したトレース表示プログラ
ムファイル5を生成する。
で、行対応アドレス部23を検索してトレースアドレス
(ti)に対応したソースプログラム25の行番号(L
i)を求める。処理ステップ84でトレース範囲の全て
のアドレスについて行番号が求まると処理ステップ85
で、該行番号の最小値から最大値までのソースプログラ
ムをソースプログラム25から抽出し、行番号のソース
行にトレース識別符号を付加したトレース表示プログラ
ムファイル5を生成する。
【0014】処理ステップ86でトレース情報表示部4
は、トレース表示プログラムファイル5を読出してディ
スプレイ装置30へ表示する。図6にソースプログラム
のトレース表示図を示す。
は、トレース表示プログラムファイル5を読出してディ
スプレイ装置30へ表示する。図6にソースプログラム
のトレース表示図を示す。
【0015】
【発明の効果】デバッグ作業において、トレース範囲を
指定することにより、プログラム実行結果の軌跡をソー
スプログラム上に反映してディスプレイ装置に表示して
、デバッグ対象プログラムを全体的な流れを把握するこ
とが可能となり、デバッグ作業の効率化が達成出来る。
指定することにより、プログラム実行結果の軌跡をソー
スプログラム上に反映してディスプレイ装置に表示して
、デバッグ対象プログラムを全体的な流れを把握するこ
とが可能となり、デバッグ作業の効率化が達成出来る。
【図1】 本発明の原理ブロック図
【図2】 ロードモジュールの説明図
【図3】 行
対応アドレス部の説明図
対応アドレス部の説明図
【図4】 実施例の処理手順
図
図
【図5】 トレースアドレス部の説明図
【図6】
トレースプログラムのトレース表示図
トレースプログラムのトレース表示図
【図7】 従来
のシステム構成図
のシステム構成図
【図8】 従来のトレースアドレス表示図
1,32はトレースプログラム、
10, 19は主記憶装置、15はコンパイラ、
2は
トレース情報生成部、20, 34は外部記憶装置、
21はオブジェク
トファイル、22, 35はロードモジュール、
23は行対応アドレス部、24
, 36はトレースアドレス部、
3はトレース範囲処理部、30, 39はディスプ
レイ装置、 31は制御プ
ログラム、33は被トレースプログラム領域、4はトレ
ース情報表示部、40,49 は中央処理装置、5はト
レース表示プログラムファイルを示し、81〜86は処
理ステップを表す。
10, 19は主記憶装置、15はコンパイラ、
2は
トレース情報生成部、20, 34は外部記憶装置、
21はオブジェク
トファイル、22, 35はロードモジュール、
23は行対応アドレス部、24
, 36はトレースアドレス部、
3はトレース範囲処理部、30, 39はディスプ
レイ装置、 31は制御プ
ログラム、33は被トレースプログラム領域、4はトレ
ース情報表示部、40,49 は中央処理装置、5はト
レース表示プログラムファイルを示し、81〜86は処
理ステップを表す。
Claims (4)
- 【請求項1】 ソースプログラム(25)と、ロード
モジュール(22)と行対応アドレス部(23)から成
るオブジェクトファイル(21)と、トレースアドレス
部(24)と、トレース表示プログラムファイル(5)
とを有する外部記憶装置(20)と、コンパイラ(15
)と、トレースプログラム(1)を有する主記憶装置(
40)と、主記憶装置(40)のプログラムを実行する
中央処理装置(10)と、ディスプレイ装置(30)と
を有する計算機システムにおいて、ソースプログラム(
25)はコンパイラ(15)によって翻訳されることに
より、中央処理装置(10)で実行可能となったロード
モジュール(22)と、ソースプログラムの行番号とロ
ードモジュール(22)内の命令アドレスとの対応情報
を保持する行対応アドレス部(23)とから構成される
オブジェクトファイル(21)が生成され、トレースプ
ログラム(1)は、トレース情報生成部(2)と、トレ
ース範囲処理部(3)と、トレース情報表示部(4)と
から構成され、トレース情報生成部(2)は、ロードモ
ジュール(22)が中央処理装置(40)で実行される
と、該実行命令アドレスを実行順に収集してトレースア
ドレス部(24)へ格納し、トレース範囲処理部(3)
は、所定の方法でトレース処理範囲が指定されると該ト
レース処理範囲に該当するトレースアドレス部(24)
内の各命令アドレスについて、該アドレスと対応するソ
ース行番号を、行対応アドレス部(23)を検索するこ
とにより決定し、該ソース行番号に対応するソースプロ
グラム(25)の行に識別マークを付加して得られるト
レース表示プログラムファイル(5)を作成し、トレー
ス情報表示部(4)は、トレース表示プログラムファイ
ル(5)を読出してディスプレイ装置(30)に表示す
ることを特徴とするプログラムトレースの表示方式。 - 【請求項2】 中央処理装置(40)はロードモジュ
ール22を一命令実行する毎に割込みを発生し、該割込
みによって起動されるトレース情報生成部2が実行され
た命令アドレスをトレースアドレス部24へ格納するこ
とを特徴とする請求項1記載のプログラムトレースの表
示方式。 - 【請求項3】 トレース範囲処理部3は、ソースプロ
グラム上の各行に対応するロードモジュール内命令列の
先頭命令アドレスを行と対応して記録した行対応アドレ
ス部23のアドレスデータと、トレースアドレス部24
の保持するトレースアドレスから、該トレースアドレス
を含むソースプログラム25上の行番号を求めることを
特徴とする請求項1記載のプログラムトレースの表示方
式。 - 【請求項4】 トレース範囲処理部3は、所定の方法
でトレース処理範囲が指定されると、該トレース処理範
囲に該当するトレースアドレス部24内の各命令アドレ
スについて、該アドレスと対応するソース行番号を決定
し、該ソース行番号をトレース表示プログラムファイル
5へ出力し、トレース情報表示部(4)は、トレース表
示プログラムファイル5とソースプログラム25を読出
し、行番号を照合することによりトレース表示プログラ
ムファイル5に存在する行番号に対応するソースプログ
ラム25上の行に識別マークを付加してディスプレイ装
置30に表示することを特徴とする請求項1乃至3記載
のプログラムトレースの表示方式。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2403454A JPH04217034A (ja) | 1990-12-19 | 1990-12-19 | プログラムトレースの表示方式 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2403454A JPH04217034A (ja) | 1990-12-19 | 1990-12-19 | プログラムトレースの表示方式 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH04217034A true JPH04217034A (ja) | 1992-08-07 |
Family
ID=18513188
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2403454A Pending JPH04217034A (ja) | 1990-12-19 | 1990-12-19 | プログラムトレースの表示方式 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH04217034A (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2003241998A (ja) * | 2002-02-14 | 2003-08-29 | Toshiba Corp | 制御構造抽出方法、ログ整形方法とそのためのプログラム |
| JP2010055180A (ja) * | 2008-08-26 | 2010-03-11 | Fujitsu Ltd | ソフトウェアデバッグ支援プログラム、ソフトウェアデバッグ支援装置およびソフトウェアデバッグ支援方法 |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS63223931A (ja) * | 1987-03-13 | 1988-09-19 | Fujitsu Ltd | 論理図実行ル−ト出力処理方式 |
| JPH0262639A (ja) * | 1988-08-30 | 1990-03-02 | Fujitsu Ltd | 言語デバッガの中断方式 |
-
1990
- 1990-12-19 JP JP2403454A patent/JPH04217034A/ja active Pending
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS63223931A (ja) * | 1987-03-13 | 1988-09-19 | Fujitsu Ltd | 論理図実行ル−ト出力処理方式 |
| JPH0262639A (ja) * | 1988-08-30 | 1990-03-02 | Fujitsu Ltd | 言語デバッガの中断方式 |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2003241998A (ja) * | 2002-02-14 | 2003-08-29 | Toshiba Corp | 制御構造抽出方法、ログ整形方法とそのためのプログラム |
| JP2010055180A (ja) * | 2008-08-26 | 2010-03-11 | Fujitsu Ltd | ソフトウェアデバッグ支援プログラム、ソフトウェアデバッグ支援装置およびソフトウェアデバッグ支援方法 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US7178135B2 (en) | Scope-based breakpoint selection and operation | |
| US20080127113A1 (en) | Method and system for implementing watchpoints | |
| JP3358759B2 (ja) | プログラマブルコントローラのデータトレース方法 | |
| US6983454B2 (en) | Extended “run to” function | |
| JPH04217034A (ja) | プログラムトレースの表示方式 | |
| JPH0581070A (ja) | プログラマブルコントローラ、およびプログラマブルコントローラにおけるユーザプログラム実行方法 | |
| JPS60262251A (ja) | マイクロプロセツサ開発支援装置 | |
| JPH0510692B2 (ja) | ||
| JPH02220145A (ja) | プログラムトレース方式 | |
| JPH0269837A (ja) | プログラムデバック支援装置 | |
| JP2000222243A (ja) | デバッグ装置及びデバッグ方法 | |
| JP2001344128A (ja) | 逆アセンブル表示アドレスの設定方法および記録媒体 | |
| KR0175469B1 (ko) | 칠프로그램 변수의 가시성 제어방법 | |
| JPS6011944A (ja) | プログラム・アナライザ | |
| JPS61160154A (ja) | プログラム開発支援装置 | |
| JPH0262639A (ja) | 言語デバッガの中断方式 | |
| JPH05233317A (ja) | ソフトウェア・シミュレータ | |
| JPH04358232A (ja) | 情報処理装置の機能試験方法 | |
| JP2500385B2 (ja) | 入力デ―タ管理方式 | |
| KR20010027916A (ko) | 시나리오를 이용한 칠 프로그램 시험 방법 | |
| JPH05127945A (ja) | プログラム実行状況解析方式 | |
| JPS6292033A (ja) | プログラムデバツグ装置 | |
| JPS6292034A (ja) | プログラムデバツグ装置 | |
| JPH0611039U (ja) | プログラム言語ディバック装置 | |
| JPH01304559A (ja) | 入出力機能試験方式 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 19971202 |