JPH0269837A - プログラムデバック支援装置 - Google Patents

プログラムデバック支援装置

Info

Publication number
JPH0269837A
JPH0269837A JP63223084A JP22308488A JPH0269837A JP H0269837 A JPH0269837 A JP H0269837A JP 63223084 A JP63223084 A JP 63223084A JP 22308488 A JP22308488 A JP 22308488A JP H0269837 A JPH0269837 A JP H0269837A
Authority
JP
Japan
Prior art keywords
execution
program
data
tracing
monitoring
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
Application number
JP63223084A
Other languages
English (en)
Inventor
Tsukasa Matsumoto
松本 宰
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 JP63223084A priority Critical patent/JPH0269837A/ja
Publication of JPH0269837A publication Critical patent/JPH0269837A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明はプログラムのデバッグ支援装置に関し、特にデ
バッグ対象プログラムの実行監視を1旨定された範囲に
ついて行ってプログラムの実行ステップにかかる実行デ
ータをファイルに格納し、この格納した実行データに基
づいて別途指示された追跡開始位置より実行順または逆
方向にプログラムの実行を追跡した結果を出力手段から
出力することにより、プログラムのデバッグを容易にし
たプログラムデバッグ支援装置に関する。
〔従来の技術〕
新規に作成し又は新たな改造を加えたソースプログラム
にバグが存在するか否かを調べそれを修正するプログラ
ムデバッグは、一般に、ソースプログラムを翻訳するこ
とにより得られるオブジェクトプログラムを実行し、プ
ログラム作成者の期待する結果と異なる結果が現れた場
合、その原因を追求し、該当するソースプログラムの箇
所を修正することにより行われる。このようなプログラ
ムのデバッグを支援する装置として、従来、オブジェク
トプログラムの実行過程において、該当するソースプロ
グラムの段落名を記憶媒体や印刷装置に出力する装置が
ある。
〔発明が解決しようとする課題〕
上述した従来のプログラムデバッグ支援装置によれば、
ソースプログラムの段落の実行順等は把握することがで
きるが、各段落内の実行ステップの詳細な実行状況たと
えば実行ステップの入力に対する出力結果等は分からな
い。このため、プログラムの実行結果が期待するもので
ない場合、従来は、原因となる実行ステップを発見する
為に、ソースプログラムのリストを見ながら全実行ステ
ップを人手で演算し直すことにより各実行ステップの流
れを追跡する作業を行っていた。
本発明はこのような面倒な作業を不要とし、プログラム
のデバッグを容易に行うことができるプログラムデバッ
グ支援装置を提供することを目的とする。
〔課題を解決するための手段〕
本発明のプログラムデバッグ支援装置は、上記の目的を
達成するために、デバッグ対象となるプログラムのオブ
ジェクトプログラムを記憶するオブジェクトプログラム
ファイルと、前記デバッグ対象となるプログラムのソー
スプログラムを記憶するソースプログラムファイルと、
実行監視条件および実行追跡条件を入力する入力手段と
、実行追跡結果を出力する出力手段と、前記オブジェク
トプログラムを実行し、前記入力手段から入力された実
行監視条件で示される範囲内の各実行ステップの入出力
データ、対応する前記ソースプログラムの段落名および
行番号を含む実行データをプログラム実行監視データフ
ァイルに記憶するプログラム実行監視手段と、前記実行
監視データファイルに記憶された実行データのうち前記
入力手段から入力された実行追跡条件で示される実行追
跡開始位置から実行の順方向側または逆方向側のうちの
前記実行追跡条件で措定された側の各実行データとそれ
ら実行データに対応する前記ソースプログラムの段落の
内容とを前記出力手段から出力するプログラム実行追跡
手段とを備えている。
〔作用〕
本発明のプログラムデバッグ支援装置においては、オブ
ジェクトプログラムファイルが、デバッグ対象となるプ
ログラムのオブジェクトプログラムを記憶し、ソースプ
ログラムファイルが、前記デバッグ対象となるプログラ
ムのソースプログラムを記憶し、プログラム実行監視手
段が、前記オブジェクトプログラムを実行して入力手段
から入力された実行監視条件で示される範囲内の各実行
ステップの入出力データ、対応する前記ソースプログラ
ムの段落名および行番号を含む実行データをプログラム
実行監視データファイルに記憶し、プログラム実行追跡
手段が、前記実行監視データファイルに記憶された実行
データのうち前記入力手段から入力された実行追跡条件
で示される実行追跡結果位1から実行の順方向側または
逆方向側の各実行データおよびそれら実行データに対応
する前記ソースプログラムの段落の内容とを出力手段か
ら出力する。
〔実施例〕
次に、本発明の実施例について図面を参照して詳細に説
明する。
第1図は本発明のプログラムデバッグ支援装置の一実施
例のブロック図である。この実施例のプログラムデバッ
グ支援装置は、プログラム実行監視装置2およびプログ
ラム実行追跡装置3を含む処理装置1と、デバッグ対象
となるプログラムのオブジェクトプログラムを記憶する
オブジェクトプログラムファイル40が格納されている
記憶媒体4と、プログラムの実行監視により得られた実
行データを記憶するプログラム実行監視データファイル
50が格納されている記憶媒体5と、デバング対象とな
るプログラムのソースプログラムを記憶するソースプロ
グラムファイル60が格納されている記憶媒体6と、実
行監視条件および実行追跡条件を入力する入力装置7と
、実行追跡結果を表示する表示装置8とから構成されて
いる。
プログラム実行監視装置2は、オブジェクトプログラム
ファイル40中のオブジェクトプログラムを実行し、入
力装置7から入力された実行監視条件で示される範囲内
の各実行ステップの入出力データ、対応するソースプロ
グラムの段落名および行番号を含む実行データをプログ
ラム実行監視データファイル50に記憶する装置である
。また、プログラム実行追跡装置3は、実行監視データ
ファイル50に記憶された実行データのうち入力装置7
から入力された実行追跡条件で示される範囲内の各実行
データとそれら実行データに対応するソースプログラム
の段落の内容とを表示装置8に表示する装置である。
第2図はプログラム実行監視データファイル50の内容
の一例を示す図である。このプログラム実行監視データ
ファイル50は、オブジェクトプログラムファイル40
に格納されたオブジェクトプログラムのプログラム名、
その版数等の情報を記録するレコード500と、そのオ
ブジェクトプログラムの実行監視の結果得られた実行デ
ータを記録するレコード群の集まりである複数の実行デ
ータ群501−1〜501−nとで構成される。
各実行データ群はそれぞれデバッグ対象プログラムの一
つの段落に対応している。
第3図は第2図の実行データ群501−1〜501−n
のうちの任意の一つの実行データ群501−iの内容例
を示す図である。実行データ群501−iは、各々が一
つのレコードである実行データ501−i−1〜501
−1−mで構成される。各実行データ501−i−1〜
501−1mは、デバッグ対象プログラムのオブジェク
トプログラムの一つの実行ステップに対応しており、そ
の実行ステップに対応するソースプログラムの段落塩1
行番号、データの入出力ID(例えば0で入力、lで出
力)、データ名(変数名)、データ長、データの属性(
数字1文字等の区別)、入力または出力のデータの値を
含んでいる。
第4図はプログラム実行監視装置2による処理の流れ図
、第5図はプログラム実行追跡装置3による処理の流れ
図であり、以下、各図を参照して本実施例の動作を説明
する。
オブジェクトプログラムファイル40に記憶されたオブ
ジェクトプログラムを実行することにより、ソースプロ
グラムファイル60に記憶された対応するソースプログ
ラムのデバッグを行う場合、先ず利用者は、入力装置7
から、デバッグ対象とするプログラムの名前、どのよう
な条件が成立したときに実行の監視を開始させるかを示
す実行監視開始条件およびどのような条件が成立したと
き実行の監視を終了させるかを示す実行監視終了条件等
を含む実行監視コマンドを入力して、プログラム実行監
視装置2を起動する。
起動されたプログラム実行監視装置2は、第4図に示す
ように、先ず、入力された実行監視コマンドを取り込み
(ステップ41)、その内の実行監視開始条件および実
行監視終了条件をそれぞれ内部の記憶領域にセットしく
ステップ42.43)、次に実行監視コマンドで示され
るデバッグ対象プログラムの名前に従ってオブジェクト
プログラムファイル40から該当するオブジェクトプロ
グラムを読み込んで、これを起動する(ステップ44)
そして、以下のようにしてステップ45〜49を実行す
ることにより、実行監視コマンドで指定された実行監視
条件の範囲に含まれる各実行ステップの入出力データ、
対応するソースプログラムの段落名および行番号等を含
む実行データを一つのレコードとしてプログラム実行監
視データファイル50に順に記憶していく。
先ず、プログラム実行監視装置2は、起動したオブジェ
クトプログラムが一つの実行ステップを実行する毎に、
その実行ステップにかかる実行データを取り込む(ステ
ップ45)。ここで取り込む実行データは、その実行ス
テップで入力または出力されたデータの値、属性、デー
タ長、データ名、入出力ID、当該実行ステップに対応
するソ−スプログラムの段落名および行番号である。次
に、内部の記憶領域に記憶している実行監視開始条件と
上記取り込んだ実行データ中の該当する項目の値とが一
致するか否かを調べることにより実行監視開始条件で指
定された箇所の実行が行われたか否かを判別する(ステ
ップ46)。そして、−敗しなければ即ち実行監視開始
箇所でなければ、ステップ45に戻り、上述した動作を
繰り返す。
また、−敗すれば即ち実行監視開始箇所であれば、今回
取り込んだ実行データをプログラム実行監視データファ
イル50に次のレコードとして記録する(ステップ47
)。そして、今回取り込んだ実行データの該当する項目
の値と内部の記憶領域に記憶している実行監視終了条件
とが一致するか否かを調べることにより実行監視終了条
件で指定された箇所の実行が行われたか否かを判別しく
ステップ49)、一致しなければ即ち実行監視終了箇所
でなければステン148に進み、オブジェクトプログラ
ムが次の実行ステップを実行することにより、その実行
ステップにかかる実行データを取り込み、ステップ47
でその取り込んだ実行データをプログラム実行監視デー
タファイル50へ次のレコードとして記録する。また、
ステップ49で実行監視の終了と判定したときは第4図
の処理を終了する。このとき、プログラム実行監視デー
タファイル50に最後を示す終了レコードを記録する。
以上のような処理が行われることにより、プログラム実
行監視データファイル50に、実行監視コマンドで指定
された実行監視開始条件に合致する箇所から実行監視終
了条件に合致する箇所までの範囲に含まれる各実行ステ
ップにかかる実行データが、その実行順に記録されるこ
とになる。
さて、デバッグ対象となるプログラムの実行が終了した
後、利用者が、実行追跡したいプログラム名、どのよう
な条件が成立したときに実行の追跡を開始させるか即ち
追跡開始点にかかる実行追跡開始位置条件、および追跡
方向はプログラムの実行順か或いは逆方向かを指定する
追跡方向指定等を含む実行追跡コマンドを入力装置7か
ら入力すると、プログラム実行追跡装置3が起動され、
第5図に示す処理が開始される。
先ずプログラム実行追跡装置3は、入力装置7から入力
された実行追跡コマンドを取り込み(ステップ51)、
その実行追跡コマンド中に含まれる追跡対象プログラム
名と同一の名前を先頭レコードに持つプログラム実行監
視データファイル50を探索してその先頭レコード即ち
レコード500を読み込む(ステップ52)、次に、ス
テップ51で取り込んだ実行追跡コマンド中の追跡開始
位置条件および追跡方向を内部の記憶領域にセットしく
ステップ53)、プログラム実行監視データファイル5
0のレコードカウント2に“2゛°をセットする(ステ
ップ54)。そして、プログラム実行監視データファイ
ル50のレコードカウント!が指示するレコードを読み
込み、ステップ53で内部の記憶領域にセットした追跡
開始位置条件とそのレコードに含まれる実行データの該
当する項目とが一致するか否かを調べることにより、追
跡開始位置であるか否かを判定する(ステップ56)。
一致しない場合すなわち追跡開始位置でないときは、レ
コードカウントlを+1してステップ55に戻り、プロ
グラム実行監視データファイル50から次のレコードつ
まり実行データを読み込み、ステップ56で追跡開始位
置か否かを判定する。
ステップ56で追跡開始位置と判定したときは、追跡対
象プログラム名および当該取り込んだ実行データに含ま
れる段落名をもとに、ソースプログラムファイル60か
ら同一名のソースプログラムを見つけると共にそのソー
スプログラム中の上記段落名の段落の内容つまりその段
落に含まれる全てのソース行を読み込み(ステップ58
)、これを表示装置8の画面の例えば左側の部分に表示
する(ステラフ゛59)。なお、ソースプログラム自体
にも版数等の情報が記録されているので、ステップ52
で読み込んだレコード500中に記録された版数との比
較を行い、異なる版数のソースプログラムの場合にはエ
ラーとして処理するものである。次に、今回取り込んだ
実行データを表示装置8の画面の例えば右側の部分に表
示する(ステツブ60)。即ち、追跡開始位置に達する
と、その追跡開始位置にかかる実行データが表示装置8
に表示されると共に、その追跡開始位置に相当するソー
ス行を含む段落の全てのソース行が表示装置8に表示さ
れる。
次に、内部の記憶領域にセットした追跡方向を判定しく
ステップ61)、順方向であればレコードカウントlを
+IL(ステップ62)、逆方向であればレコードカウ
ントlを−lする(ステップ63)。なお、本実施例で
は追跡方向の指定がない場合、処理を終了するようにし
ている。
次に、更新したレコードカウントlに従い、プログラム
実行監視データファイル50から次のレコードを読み込
み(ステップ64)、再び追跡方向を判定しくステップ
65)、順方向であれば今回読み込んだレコードがプロ
グラム実行監視データファイル50の終わりを示す終了
レコードか否かを判定しくステップ66)、終了レコー
ドでなければステップ68に進み、終了レコードであれ
ば処理を終了する。また、追跡方向が逆方向であれば、
今回読み込んだレコードがプログラム実行監視データフ
ァイル50の先頭のレコード即ちレコード500か否か
を判定し、レコード500でなければステップ6日に進
み、レコード500であれば処理を終了する。
追跡方向が順方向或いは逆方向であり且つ今回読み込ん
だレコードが最終レコード或いはレコード500でなく
実行データを含むレコードであるときに制御が移行する
ステップ68では、今回読み込んだレコードの実行デー
タ中に含まれる段落名が、直前に読み込んだ実行データ
中の段落名と等しいか否かを判定しくステップ68)、
等しければソースプログラムの該当する段落の内容は既
に表示装置8に表示済みなので、ステップ60に進んで
今回の実行データを表示装置8に表示し、異なっていれ
ばステップ58に進んでソースプログラムの該当する段
落を読み込み、次のステップ59でその段落を表示装置
8に表示してから、ステップ60で今回の実行データを
表示装置8に表示する。
以上のような処理が行われることにより、実行追跡コマ
ンドで指定した追跡開始位置から実行追跡コマンドで指
定した追跡方向側の実行データと該当するソースプログ
ラムの段落の内容とが表示装置8に表示されることにな
る。
なお、以上の実施例では、プログラム実行追跡装置3は
実行追跡開始位置からプログラム実行監視データファイ
ル50の先頭または最終までの範囲の実行データおよび
関連するソースプログラムの段落を抽出して表示したが
、実行追跡コマンド中に実行追跡終了位置にかかる条件
を含ませ、その条件が成立した時点で追跡処理を終了さ
せるようにしても良い。
〔発明の効果〕
以上説明したように、本発明のプログラムデバング支援
装置は、実行監視条件を与えてプログラム実行監視手段
を働かせ、その後実行追跡条件を与えてプログラム実行
追跡手段を働かせることにより、実行追跡条件で示され
る範囲内に含まれるソースプログラムの段落の内容と、
各実行ステップの入出力データ1段落名および行番号を
含む実行データとが出力手段から出力されるので、デバ
ッグ担当者は、その出力内容を見ることにより、ソース
プログラムのどの段落のどの実行ステップでどのような
入出力データが得られ、どのような順序でステップが実
行されたか等のプログラム実行状況を容易に認識するこ
とが可能となり、効率良くプログラムのデバッグを行う
ことが可能となる。
【図面の簡単な説明】
第1図は本発明の一実施例のブロック図、第2図はプロ
グラム実行監視データファイルの内容の一例を示す図、 第3図は実行データ群の内容の一例を示す図、第4図は
プログラム実行監視装置による処理例の流れ図および、 第5図はプログラム実行追跡装置による処理例の流れ図
である。 図において、 l・・・処理装置 2・・・プログラム実行監視装置 3・・・プログラム実行追跡装置 4.5.6・・・記憶媒体 7・・・入力装置 8・・・表示装置 40・・・オブジェクトプログラムファイル50・・・
プログラム実行監視データファイル60・・・ソースプ
ログラムファイル

Claims (1)

  1. 【特許請求の範囲】 デバッグ対象となるプログラムのオブジェクトプログラ
    ムを記憶するオブジェクトプログラムファイルと、 前記デバッグ対象となるプログラムのソースプログラム
    を記憶するソースプログラムファイルと、実行監視条件
    および実行追跡条件を入力する入力手段と、 実行追跡結果を出力する出力手段と、 前記オブジェクトプログラムを実行し、前記入力手段か
    ら入力された実行監視条件で示される範囲内の各実行ス
    テップの入出力データ、対応する前記ソースプログラム
    の段落名および行番号を含む実行データをプログラム実
    行監視データファイルに記憶するプログラム実行監視手
    段と、 前記実行監視データファイルに記憶された実行データの
    うち前記入力手段から入力された実行追跡条件で示され
    る実行追跡開始位置から実行の順方向側または逆方向側
    のうちの前記実行追跡条件で指定された側の各実行デー
    タとそれら実行データに対応する前記ソースプログラム
    の段落の内容とを前記出力手段から出力するプログラム
    実行追跡手段とを具備したことを特徴とするプログラム
    デバッグ支援装置。
JP63223084A 1988-09-06 1988-09-06 プログラムデバック支援装置 Pending JPH0269837A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63223084A JPH0269837A (ja) 1988-09-06 1988-09-06 プログラムデバック支援装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63223084A JPH0269837A (ja) 1988-09-06 1988-09-06 プログラムデバック支援装置

Publications (1)

Publication Number Publication Date
JPH0269837A true JPH0269837A (ja) 1990-03-08

Family

ID=16792589

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63223084A Pending JPH0269837A (ja) 1988-09-06 1988-09-06 プログラムデバック支援装置

Country Status (1)

Country Link
JP (1) JPH0269837A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009001297A (ja) * 2007-06-20 2009-01-08 Sanko Co Ltd パレット用icタグホルダの取り付け構造
JP2012190219A (ja) * 2011-03-10 2012-10-04 Fujitsu Ltd 情報処理装置、およびトレースログ取得方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009001297A (ja) * 2007-06-20 2009-01-08 Sanko Co Ltd パレット用icタグホルダの取り付け構造
JP2012190219A (ja) * 2011-03-10 2012-10-04 Fujitsu Ltd 情報処理装置、およびトレースログ取得方法

Similar Documents

Publication Publication Date Title
US8028278B2 (en) Method of generating and utilizing debug history
US6658649B1 (en) Method, apparatus and article of manufacture for debugging a user defined region of code
US6961924B2 (en) Displaying variable usage while debugging
US7178135B2 (en) Scope-based breakpoint selection and operation
US6981248B2 (en) Conditional breakpoint encountered indication
US7089535B2 (en) Code coverage with an integrated development environment
JPH07334211A (ja) プログラマブルコントローラのデータトレース方法
JPH0269837A (ja) プログラムデバック支援装置
CN117520155B (zh) 一种rpa流程调试方法、装置、电子设备及存储介质
US20030018957A1 (en) Debugger monitor with anticipatory highlights
CA2492367C (en) Data processing system
JP2000207246A (ja) デバッグ支援装置及び方法並びにデバッグ支援用ソフトウェアを記録した記録媒体
JP3389745B2 (ja) プログラムの性能測定装置と方法
JP2001184235A (ja) ログ情報取得解析装置
JPH04217034A (ja) プログラムトレースの表示方式
JPH05233323A (ja) 並行プログラムのデバッグ支援装置
JPH0468446A (ja) デバッグ支援装置
JPH06250876A (ja) 対話型デバック支援システム
JP2910548B2 (ja) データチェック装置
JPH05151030A (ja) 利用者プログラム異常終了時の情報表示方式
JPS60252959A (ja) オンライン・トレ−ス制御方式
JPS6341948A (ja) シンボリツクデバグシステム
JP2001051872A (ja) プログラムデバッグ装置及びプログラムを記録した記録媒体
JPH0448343A (ja) プログラムデバッグ支援装置
JPS63640A (ja) デ−タフロ−の部分ユニツト実行制御方式