JP2001282573A - デバッガにおける配列データの表示装置 - Google Patents
デバッガにおける配列データの表示装置Info
- Publication number
- JP2001282573A JP2001282573A JP2000091739A JP2000091739A JP2001282573A JP 2001282573 A JP2001282573 A JP 2001282573A JP 2000091739 A JP2000091739 A JP 2000091739A JP 2000091739 A JP2000091739 A JP 2000091739A JP 2001282573 A JP2001282573 A JP 2001282573A
- Authority
- JP
- Japan
- Prior art keywords
- array
- program
- graph
- distributed
- display
- 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
スで処理する分散配列をグラフ表示することにより、デ
バッグ効率の高いデバッガにおける配列データの表示装
置を提供する。 【解決手段】散配列を備えた複数のプロセスを有するプ
ログラム701における分散配列を1つの配列に組み立
ててグラフ表示111することにより、プログラムの誤
りを発見してプログラムの修正作業を支援するデバッガ
における配列データの表示装置において、前記デバッガ
5は、組立前の分散配列の任意の指定部分を含む分散配
列をグラフ表示する表示手段を備えたことを特徴とする
デバッガにおける配列データの表示装置。
Description
列データの表示装置にかかり、特に配列要素を指定して
デバッグ対象となるプロセスで処理した分散配列をグラ
フ表示する配列データの表示装置に関する。
特開平11−249927号公報には、分散された配列
全体をグラフ表示して、複数のプロセスに分散したプロ
グラムをデバッグする方法が示されている。この方法で
は、シングルプロセスのデバッグあるいは複数のプロセ
スに分散したプロセスにより生成される配列全体をグラ
フ表示し、問題のある配列要素要素を更新するプロセス
を探し出し、このプロセスにおける分散配列を別の配列
としてグラフ表示している。
各配列のデータをファイルなどの記憶装置に書き込んだ
後、デバッグプログラムを一旦終了し、その後、記憶装
置に記憶した配列データ同士を比較演算してグラフ表示
する方法が採用される。また、前記比較演算およびグラ
フ表示等の処理はユーザが独自に作成したプログラムに
より実行している。
説明する図であり、図9は従来のデバッガ装置を示す図
である。図において、1はCPUである。2は入出力装
置であり、表示装置201およびキーボード202、マ
ウス203等の入力装置を備える。3は記憶装置であ
り、デバッグ対象プログラム7、デバッグ処理装置5を
形成するプログラムであるデバッガシステム51、配列
データ保存ファイル8、CSV形式ファイル9を備え
る。また、デバッグ対象プログラム7はソースプログラ
ム701、ロードモジュール702、配列変数の形ある
いは属性等からなるデバッグ情報703を備える。4は
入力装置であり、MTデッキ401を備え、磁気テープ
などの媒体に格納されているプログラムあるいはデータ
を入力する。5はデバッグ処理装置であり、ユーザ6の
指示を受け付ける入力コマンド処理部501、前記指示
に従ってデバッグ処理を行うデバッグ処理部502、分
散した配列を分散前の配列に組み立てる配列組立処理部
503、メニュー画面および処理結果を表示する表示制
御部511および配列をグラフ表示するグラフ表示制御
部512からなる。
デバッグ処理装置の処理を説明する。図10はデバッグ
処理装置5におけるデータの流れを示す図、図11はユ
ーザーが入力するデバッグコマンドおよびコマンドの実
行結果の例を示す図である。なお、図において図9に示
される部分と同一部分については同一符号を付してその
説明を省略する。
図11に示す一連のデバッグコマンド10を入力し、以
下の順序でデバッグを実行する。
ド101を受け取る。次いでコマンド101の指示に従
ってデバッグ処理部502はデバッグ対象プログラム7
のソースプログラム701、ロードモジュール702お
よびコンパイラが生成するデバッグ情報703を読み込
んでデバッグの実行準備を行う。
ド102を受け取り、分散処理プロセスが生成され、実
行可能になるまでプログラムを実行する。デバッグ処理
プログラムで分散処理を実行するプロセスが生成される
と、デバッグ対象プログラム701は自動的に中断す
る。
ド103を受け取り、デバッグ処理部502はデバッグ
対象プロセス情報を保存する。これにより全てのプロセ
スがデバッグ対象になり分散された配列の全てが参照可
能になる。
ド104を受け取り、デバッグ処理部502は中断点情
報を保存する。これにより、例えば1つの中断点710
がソースプログラム701の20行目720に設定さ
れ、ソースプログラム701において分散された配列の
内容を参照可能にする。
ド107を受け取り、前記(3)および(4)で保存し
たデバッグ対象プロセス情報および中断点情報を参照し
て、全てのデバッグ対象プロセスを次の中断点710ま
で、すなわちソースプログラム701の20行目720
まで実行する。
ド105を受け取り、前記(1)で入力したロードモジ
ュール702、デバッグ情報703および前記(3)保
存したデバッグ対象プロセス情報をもとに、1つ目のデ
バッグ対象プロセスの配列内容を参照する。参照内容は
表示制御部511により表示装置201に表示する。2
つ目以降のデバッグ対象プロセスについても同様に実行
し、前記(3)指定した全てのデバッグ対象プロセス
(プロセス1ないしプロセスm)について、配列内容を
表示装置201に表示する。図10に示すテキスト表示
例11は、全てのデバッグ対象プロセス内の配列aの内
容を文字列として表示したものであるが、配列データを
配列データ保存ファイル8あるいはCSV形式ファイル
9として保存することも可能である。
てコマンド106を使用することができる。この場合、
入力コマンド処理部501がコマンド106を受け取
り、コマンド103で指定したプロセスのコマンド10
6で指定した分散配列を自動的に組み立ててグラフ表示
例111に示すようにグラフ表示する。
である。もとの配列15は、ユーザプログラムの分散ア
ルゴリズム151を用いて、複数のプロセス(プロセス
1ないしプロセス4)で処理する分散配列152に分散
されている。また、予めユーザ6は組立オプション画面
153から分散アルゴリズム151を入力しておく。組
立オプション画面において組立表示を指示すると、デバ
ッグ処理装置は組立オプション画面153で指定したオ
プションをもとに、前記各プロセスの分散配列152を
自動的に組み立てて、グラフ表示例111に示すような
グラフを表示する。
おいて組み立てた配列に不正な値、例えば極端に大きい
値を持つ要素157がある場合、ユーザ6は、分散アル
ゴリズムをもとに前記要素157がどのプロセスで計算
されたものであるかを予測し、デバッグ対象となるプロ
セスを特定する。
全体をグラフ表示して不正な値を持つ配列要素が存在す
ることを目視して確認している。プログラムに不良があ
る場合の多くは、その配列要素を更新したプロセスに着
目して、該プロセスをデバッグすることが必要である。
しかし、グラフ表示された異常値を持った要素から即座
に該当するプロセスを特定することは困難である。
る場合、一旦配列データをファイルに保存した後、ユー
ザが作成したプログラムを起動し、該プログラムにより
想定される正しい値、あるいは他の配列データ等と比較
演算してグラフ表示する方法は、一旦プログラムを終了
することが必要なため、デバッグ効率が悪い。本発明は
前記問題点に鑑みてなされたもので、配列要素を指定し
てデバッグ対象となるプロセスで処理する分散配列をグ
ラフ表示することにより、デバッグ効率の高いデバッガ
における配列データの表示装置を提供する。
解決するために次のような手段を採用した。
プログラムにおける分散配列を1つの配列に組み立てて
グラフ表示することにより、プログラムの誤りを発見し
てプログラムの修正作業を支援するデバッガにおける配
列データの表示装置において、該表示手段に、組立前の
分散配列の任意の指定部分を含む分散配列をグラフ表示
する。この表示はデバッグ対象となるプロセスの特定に
利用することができる。また、前記表示手段には分散配
列の予測値と分散配列の現在値との比較結果を例えば表
示結果に応じた表示色で表示することができる。さらに
前記表示は、プログラムの予め指定した中断点を通過す
る毎にグラフ表示している配列データを自動更新するこ
とができる。
いし図8を用いて説明する。図1は本発明の実施形態に
かかるデバッグ装置を示す図、図2はデバッグ処理装置
におけるデータの流れを示す図である。これらの図にお
いて、504は分散した各配列を演算する配列演算処理
部、505はグラフの生成、表示を制御する分散配列制
御部である。なお、これらの図において図9ないし図1
0に示される部分と同一部分については同一符号を付し
てその説明を省略する。
ドおよびコマンドの実行結果の例を示す図である。プロ
グラムをデバッグする際、ユーザ6は図3に示す一連の
デバッグコマンド1000を入力してデバッグを実行す
る。図において、1001および1002はデバッグ対
象となるプログラムを起動し、実行可能状態にするコマ
ンドである。1003はマルチプロセスに分散したプロ
セス全てをデバッグ対象にするコマンドである。100
4はソースプログラムの20行目に中断点を設定するコ
マンドである。1005は本実施形態による表示を開始
するためのコマンドである。コマンド1006はデバッ
グ対象プログラムを中断点まで実行するコマンドであ
り、デバッグプログラムはコマンド1004で指定した
中断点である20行目まで実行して中断される。100
7は保存コマンドであり、配列aを配列データ保存ファ
イル8に保存する。保存した配列はコマンド1007で
指定したxxという名称で使用できる。1008はコマ
ンド実行以降、前記20行目を実行する度に配列aと配
列xxを比較し、比較結果を後述するようにグラフとし
て表示するコマンドである。
0を実行することができる。コマンド1010を実行す
ることにより、比較結果のグラフの表示後にコマンド1
007により保存した配列xxを現在の配列aに更新す
る。この場合には、コマンド1008で指定した行を通
過する毎に、前回通過した時点の配列aと今回通過した
時点の配列aを比較し、比較結果をグラフに表示する。
予め保存しておき、この保存した配列の想定値とデバッ
グ対象プログラム中で演算した配列の演算値との比較結
果をグラフに表示する方法を説明する。まず、コマンド
1001ないしコマンド1006を実行し本実施形態に
よる表示を実行可能にする。次いで、コマンド1011
を実行する。コマンド1011はコマンド1011に指
定した「file」ファイルから配列データを読み込
み、配列データ保存ファイル8に保存する。このとき、
デバッグ処理装置で参照する名称はコマンドに指定した
名称xxとなる。次いで、コマンド1008ないしコマ
ンド1009を実行する。これにより、前記配列の想定
値と配列の演算値との比較結果をグラフ表示することが
できる。
ファイル8およびおよびCSV形式ファイル9を指定可
能としているため、別のプログラムをデバッグしている
ときに保存した配列データを格納した配列データ保存フ
ァイル8、あるいは別のプログラムで作成した配列デー
タを格納したCSV形式ファイル9を参照することがで
きる。
ンド1012を実行することができる。コマンド101
2は、配列の演算結果を配列データ保存ファイル8に保
存するとともに、演算結果をグラフ表示する。なお配列
の演算種類には加減乗除などの一般的な演算およびその
組み合わせを選択できる。
対象プログラム中の任意の配列同士の比較演算結果をグ
ラフとして表示する例について説明する。図4はグラフ
表示画面を示す図、図5は配列比較指定画面を示す図、
図6は比較グラフ表示画面を示す図、図7は全体および
分散配列の表示例を示す図である。まず、グラフ表示コ
マンドを入力して、図4に示すグラフ表示画面17を起
動する。次に、コマンドで指定した配列の演算値と配列
の想定値を比較して表示する場合、比較ボタン172を
押下して、図5に示す配列比較指定画面18を表示す
る。配列比較画面18では、比較すべき2つの配列を指
定窓181および183に配列aおよび配列bとして表
示する。比較ボタン182は複数の比較方法に対応して
複数個備えられている。次に、比較ボタン182を押下
して比較方法を選択すると、比較結果を図6の比較グラ
フ表示画面に示すように表示する。
装置の配列演算処理部504は、前記指定された配列a
および配列bを比較し、比較結果をグラフ表示制御部5
12に送信する。グラフ表示制御部512は比較結果を
表示装置201に比較グラフ表示画面19として表示す
る。表示する比較結果のグラフは、比較方法で指定した
条件式(例えば>、<、=等)が成立する要素と成立し
ない要素が識別できるように例えば色を変えて表示す
る。表示するグラフは図に示すように、比較結果のグラ
フの外に比較すべき配列aおよびbのグラフを同時に表
示することができる。また、グラフは3次元表示とする
ことができる。
を生成したプロセスを特定する処理について説明する。
図7は配列データの選択および分散配列データの表示例
を示す図である。本実施形態では、ユーザは不正な値を
持つ要素157をマウス203を操作してマウスポイン
タ156で指定することにより、要素の属する分散配列
およびデバッグ対象プロセスを特定して、分散配列16
0をグラフ表示する。なお、配列の全体グラフ表示が3
次元グラフ表示162の場合であって、マウスポインタ
156による要素の指示が困難な場合には2次元グラフ
表示161に切り替えた後に要素を選択することができ
る。
ンド処理部501がマウスポインタ156からの入力を
取得し、配列組立制御部503により分散配列のプロセ
ス番号および要素番号を特定する。分散配列制御部50
5は前記特定されたプロセス番号から該当する分散配列
を取り出し、グラフ表示制御部512により分散配列の
グラフ160を表示する。また、マウスポインタによる
ことなく、コマンドに不正な値を持つ要素を指定するこ
とによりデバッグ対象となるプロセスを特定し、グラフ
表示することが可能である。
ローチャートである。まず、ステップ81において、ユ
ーザが指定したグラフの種類を判定し、指定したグラフ
の種類3次元グラフであればステップ82に進み、2次
元グラフであればステップ83に進み、それぞれ3次元
グラフおよび2次元グラフを表示する。ステップ84に
おいて、ユーザがマウスをクリックしたときのマウスポ
インタの位置を取得する。ステップ85において、マウ
スポインタの位置がグラフ上であるか否かを判定する。
マウスポインタの位置がグラフ上であればステップ86
に進み、そうでなければステップ84に進む。ステップ
86において、マウスポインタの位置が要素上であるか
否かを判定する。マウスポインタの位置が要素上であれ
ばステップ87に進み、そうでなければステップ88に
進む。ステップ87において、マウスポインタで指定し
た要素の要素の要素番号を取得する。ステップ88にお
いて、マウスポインタで指定した要素の一番近くにある
要素の要素番号を取得する。ステップ89において、取
得した要素番号から要素を計算したプロセス番号を取得
する。ステップ90において、プロセス番号から分散配
列を取得する。ステップ91において、取得した分散配
列のグラフを表示する。
ば、(1)分散された配列を分散前の配列に自動的に組
み立ててグラフ表示したグラフにおいて、任意の要素を
選択して、選択した要素が含まれるプロセスで更新して
いる分散配列をグラフ表示するのでデータの検証時間を
短縮することができる。(2)任意の配列データ同士を
比較して、条件式の成立する要素および成立しない要素
を識別して表示するので問題のある要素を短時間に特定
できる。(3)配列データの予測される値を入力し、演
算した配列データと比較してグラフ表示するので、配列
データの検証が短時間にかつ短時間に実施できる。
(4)任意の配列名および比較演算式を指定して配列デ
ータを比較表示できるのでデータの検証時間を短縮する
ことができる。 (5)予め指定した中断点を通過する毎に、または指定
した配列が更新される毎に、表示している配列のグラフ
を自動的に更新し、配列の変化を時系列的に表示するこ
とにより不正となった時点を把握することができる。
列要素を指定してデバッグ対象となるプロセスで処理す
る分散配列をグラフ表示するので、デバッグ効率の高い
デバッガにおける配列データの表示装置を提供すること
ができる。
図である。
図である。
例を示す図である。
例を示す図である。
ある。
れを示す図である。
る。
Claims (5)
- 【請求項1】 分散配列を備えた複数のプロセスを有す
るプログラムにおける分散配列を1つの配列に組み立て
てグラフ表示することにより、プログラムの誤りを発見
してプログラムの修正作業を支援するデバッガにおける
配列データの表示装置において、 前記デバッガは、組立前の分散配列の任意の指定部分を
含む分散配列をグラフ表示する表示手段を備えたことを
特徴とするデバッガにおける配列データの表示装置。 - 【請求項2】 請求項1の記載において、前記表示手段
は前記分散配列の予測値と分散配列の現在値との比較結
果を表示することを特徴とするデバッガにおける配列デ
ータの表示装置。 - 【請求項3】 請求項2の記載において、前記表示手段
は前記比較結果を比較結果に応じた表示色で表示するこ
とを特徴とするデバッガにおける配列データの表示装
置。 - 【請求項4】 請求項1ないし請求項3の何れか1の記
載において、前記表示手段は前記プログラムの予め指定
した中断点を通過する毎に、グラフ表示している配列デ
ータを自動更新することを特徴とするデバッガにおける
配列データの表示装置。 - 【請求項5】 分散配列を備えた複数のプロセスを有す
るプログラムにおける分散配列を1つの配列に組み立て
てグラフ表示することにより、プログラムの誤りを発見
してプログラムの修正作業を支援するデバッグ処理用プ
ログラムを記録したコンピュータ読み取り可能な記録媒
体において、 前記デバッグ処理用プログラムは、組立前の分散配列の
任意の指定部分を含む分散配列をグラフ表示する表示手
段を備えたことを特徴とするデバッグ処理用プログラム
を記録したコンピュータ読み取り可能な記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000091739A JP2001282573A (ja) | 2000-03-29 | 2000-03-29 | デバッガにおける配列データの表示装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000091739A JP2001282573A (ja) | 2000-03-29 | 2000-03-29 | デバッガにおける配列データの表示装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2001282573A true JP2001282573A (ja) | 2001-10-12 |
Family
ID=18607168
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000091739A Pending JP2001282573A (ja) | 2000-03-29 | 2000-03-29 | デバッガにおける配列データの表示装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2001282573A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009134355A (ja) * | 2007-11-28 | 2009-06-18 | Yokogawa Electric Corp | 開発支援装置及び半導体試験装置 |
-
2000
- 2000-03-29 JP JP2000091739A patent/JP2001282573A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009134355A (ja) * | 2007-11-28 | 2009-06-18 | Yokogawa Electric Corp | 開発支援装置及び半導体試験装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7178135B2 (en) | Scope-based breakpoint selection and operation | |
US7721255B2 (en) | Sequence program editing apparatus | |
JP2000122886A (ja) | 半導体試験装置のプログラム作成方式 | |
JPH05257669A (ja) | データ処理装置 | |
JP2001282573A (ja) | デバッガにおける配列データの表示装置 | |
JP3206096B2 (ja) | 入力データ処理装置 | |
JPH0554277A (ja) | プラント監視装置 | |
JPH07120285B2 (ja) | 構文チェッカーとテキストエディタの連動方法 | |
JP2798015B2 (ja) | プログラムエラー解析支援システム | |
WO2013072977A1 (ja) | 情報処理装置、プログラム及び情報処理方法 | |
JP2003108404A (ja) | デバッグ装置、デバッグ方法およびデバッグプログラム | |
JP5028644B2 (ja) | 電子式計算機および計算機制御プログラム | |
CN118409950A (zh) | 模型与代码的一致性检测方法、装置、设备及存储介质 | |
JPH04155540A (ja) | 対話型デバッガによるプログラム修正方式 | |
JP3139393B2 (ja) | デバッグ装置 | |
JPH07200351A (ja) | プログラムデバッグ方法およびプログラムデバッグ支援装置 | |
JPH0233615A (ja) | 業務処理手順図表示選択型対話処理方式 | |
JPH07114487A (ja) | プログラム試験装置 | |
JPH02284239A (ja) | 言語処理プログラムの実行方式 | |
JP2020077150A (ja) | トレース装置及びプログラマブルコントローラ | |
JPS63640A (ja) | デ−タフロ−の部分ユニツト実行制御方式 | |
JPH0350672A (ja) | 対話型テキストエディタ | |
JPH0664541B2 (ja) | コマンド処理装置 | |
JPS61131124A (ja) | 会話入力処理方式 | |
JPH0991173A (ja) | プログラムの実行履歴表示方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040127 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20061020 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20061114 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070112 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20070320 |