JPH02115951A - 高級言語プログラム保守デバッグ方式 - Google Patents
高級言語プログラム保守デバッグ方式Info
- Publication number
- JPH02115951A JPH02115951A JP63269943A JP26994388A JPH02115951A JP H02115951 A JPH02115951 A JP H02115951A JP 63269943 A JP63269943 A JP 63269943A JP 26994388 A JP26994388 A JP 26994388A JP H02115951 A JPH02115951 A JP H02115951A
- Authority
- JP
- Japan
- Prior art keywords
- program
- information
- level language
- translation processing
- processing means
- 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
- 238000012423 maintenance Methods 0.000 title description 4
- 238000013519 translation Methods 0.000 claims abstract description 27
- 238000012545 processing Methods 0.000 claims abstract description 24
- 238000000034 method Methods 0.000 claims description 10
- 230000005856 abnormality Effects 0.000 abstract description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
Landscapes
- Debugging And Monitoring (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は電子計算機システムにおける高級言語プログラ
ムの保守デバッグ方式に関する。
ムの保守デバッグ方式に関する。
従来、高級言語プログラムの保守デバッグの為に、その
高級言語プログラムを翻訳して得たプログラムの実行中
に、トレース情報を出力させることが行われている0例
えば、プログラムの実行中に異常が発生した場合、ON
条件の検出によるONユニットの実行によって、または
実行時ルーチンによって、それぞれトレース情報を出力
することが行われている。更に、デバッグのために原始
プログラムにダンプを行う組み込みルーチンを呼び出す
ように記述して、実行時にトレース情報を出力すること
も行われている。そして1、このようにして出力される
トレース情報には、従来、原始プログラムの文番号およ
び入口基や、ロードモジュール中に配置されたアドレス
空間上の番地が含まれていた。
高級言語プログラムを翻訳して得たプログラムの実行中
に、トレース情報を出力させることが行われている0例
えば、プログラムの実行中に異常が発生した場合、ON
条件の検出によるONユニットの実行によって、または
実行時ルーチンによって、それぞれトレース情報を出力
することが行われている。更に、デバッグのために原始
プログラムにダンプを行う組み込みルーチンを呼び出す
ように記述して、実行時にトレース情報を出力すること
も行われている。そして1、このようにして出力される
トレース情報には、従来、原始プログラムの文番号およ
び入口基や、ロードモジュール中に配置されたアドレス
空間上の番地が含まれていた。
ところで、高級言語プログラムの保守デバッグ作業は、
上述のようにして出力されたトレース情報を解析するこ
とにより障害箇所を突き止め、それを修復することを主
たる目的としているが、実際の作業において、従来次の
ような問題点が存在していた。
上述のようにして出力されたトレース情報を解析するこ
とにより障害箇所を突き止め、それを修復することを主
たる目的としているが、実際の作業において、従来次の
ような問題点が存在していた。
現在までの障害状況に応じて原始プログラムの更新を行
った後、再度実行させてその修復状況を調査する際、作
業者の不注意によりロードモジュールの作成を誤り、古
い世代のプログラムを実行してしま・うことがある、こ
のとき不正な結果が生じるが、どの世代の原始プログラ
ムであるかを確認するには従来はトレース情報だけでは
無理で、ダンプを採って比較せねばならず、確認作業が
非常に困難となっていた。
った後、再度実行させてその修復状況を調査する際、作
業者の不注意によりロードモジュールの作成を誤り、古
い世代のプログラムを実行してしま・うことがある、こ
のとき不正な結果が生じるが、どの世代の原始プログラ
ムであるかを確認するには従来はトレース情報だけでは
無理で、ダンプを採って比較せねばならず、確認作業が
非常に困難となっていた。
また、複数の世代の言語翻訳処理プログラムによって開
発されたメンバからなるプログラムに障害が発生し、そ
の障害が言語翻訳処理プログラムに関係する場合に、従
来のトレース情報ではどの世代の言語翻訳処理プログラ
ムおよびメンバが原因か判定するのが難しかった。
発されたメンバからなるプログラムに障害が発生し、そ
の障害が言語翻訳処理プログラムに関係する場合に、従
来のトレース情報ではどの世代の言語翻訳処理プログラ
ムおよびメンバが原因か判定するのが難しかった。
本発明はこのような事情に鑑みて為されたものであり、
その目的は、原始プログラムの世代およびそれを翻訳し
た言語翻訳処理プログラムの世代を簡単に知ることがで
きる高級言語プログラム保守デバッグ方式を提供するこ
とにある。
その目的は、原始プログラムの世代およびそれを翻訳し
た言語翻訳処理プログラムの世代を簡単に知ることがで
きる高級言語プログラム保守デバッグ方式を提供するこ
とにある。
本発明の高級言語プログラム保守デバッグ方式は、上記
の目的を達成するために、高級言語翻訳処理手段とトレ
ース情報表示手段とを備え、前記高級言語翻訳処理手段
によって高級言語プログラムの原始プログラムを翻訳す
る際に出力するトレースバック情報に、前記原始プログ
ラムおよび前記高級言語翻訳処理手段の版管理情報を格
納し、前記高級言語翻訳処理手段によって翻訳されたプ
ログラムの実行時にトレースバック情報を出力する際、
前記トレース情報表示手段によって版管理情報を出力す
るように構成される。
の目的を達成するために、高級言語翻訳処理手段とトレ
ース情報表示手段とを備え、前記高級言語翻訳処理手段
によって高級言語プログラムの原始プログラムを翻訳す
る際に出力するトレースバック情報に、前記原始プログ
ラムおよび前記高級言語翻訳処理手段の版管理情報を格
納し、前記高級言語翻訳処理手段によって翻訳されたプ
ログラムの実行時にトレースバック情報を出力する際、
前記トレース情報表示手段によって版管理情報を出力す
るように構成される。
本発明の高級言語プログラム保守デバッグ方式において
は、高級言語翻訳処理手段が、高級言語プログラムの原
始プログラムを翻訳する際に出力するトレースバック情
報中に、その原始プログラムの世代および自分自身の世
代を示す版管理情報を含ませ、高級言語翻訳処理手段に
よって翻訳されたプログラムの実行時にトレースバック
情報を出力する際、トレース情報表示手段が、版管理情
報を出力する。
は、高級言語翻訳処理手段が、高級言語プログラムの原
始プログラムを翻訳する際に出力するトレースバック情
報中に、その原始プログラムの世代および自分自身の世
代を示す版管理情報を含ませ、高級言語翻訳処理手段に
よって翻訳されたプログラムの実行時にトレースバック
情報を出力する際、トレース情報表示手段が、版管理情
報を出力する。
次に、本発明の実施例について図面を参照して詳細に説
明する。
明する。
第1図は本発明の一実施例の構成図であり、1は高級言
語の1つであるPL/I言語によって記述されたPL/
l原始プログラム、2はPL/1言語原始プログラム1
を翻訳するPL/I言語翻訳処理手段、3はPL/I言
語翻訳処理手段2から出力されたトレースバック情報、
4はその中に含められた版管理情報、5はトレース情報
表示手段、6はPL/Iスタック、7はトレース情報表
示手段5によって出力されたトレース情報である。
語の1つであるPL/I言語によって記述されたPL/
l原始プログラム、2はPL/1言語原始プログラム1
を翻訳するPL/I言語翻訳処理手段、3はPL/I言
語翻訳処理手段2から出力されたトレースバック情報、
4はその中に含められた版管理情報、5はトレース情報
表示手段、6はPL/Iスタック、7はトレース情報表
示手段5によって出力されたトレース情報である。
PL/I言語翻訳処理手段2は、所定の版数のPL/I
言語翻訳プログラムであり、PL/I言語原始プログラ
ム1を人力して翻訳し、オブジェクトモジュールの一部
として版管理情綴4を含むトレースバック情報3を出力
する機能を存する。
言語翻訳プログラムであり、PL/I言語原始プログラ
ム1を人力して翻訳し、オブジェクトモジュールの一部
として版管理情綴4を含むトレースバック情報3を出力
する機能を存する。
第2図はトレースバック情報3の内容例を示している。
同図に示すように、トレースバック情報3には、入口点
+11. +21.・・・毎に入口名9−1. 92、
・・・および版管理情報4−1.4−2.・・・等の情
報が作成され、オブジェクトモジュール毎に原始プログ
ラムの文番号とアドレスとの対応関係を示す文番号テー
ブルBが作成されている。ここで、版管理情報4−1.
4−2.・・・中には、その入口点にかかるプログラム
の原始プログラムおよびそれを翻訳したPL/I言語翻
訳処理手段の版数が含まれている。
+11. +21.・・・毎に入口名9−1. 92、
・・・および版管理情報4−1.4−2.・・・等の情
報が作成され、オブジェクトモジュール毎に原始プログ
ラムの文番号とアドレスとの対応関係を示す文番号テー
ブルBが作成されている。ここで、版管理情報4−1.
4−2.・・・中には、その入口点にかかるプログラム
の原始プログラムおよびそれを翻訳したPL/I言語翻
訳処理手段の版数が含まれている。
PL/Iスタック6は、プログラムの実行過程において
成る入口点が呼び出される毎に作成されるものであり、
その入口点にかかるトレースバック情報へのポインタ(
入口点ポインタ)および呼び出し側のプログラムに対応
するスタックへのボインク(呼び出し側スタック戻り番
地)を格納する。
成る入口点が呼び出される毎に作成されるものであり、
その入口点にかかるトレースバック情報へのポインタ(
入口点ポインタ)および呼び出し側のプログラムに対応
するスタックへのボインク(呼び出し側スタック戻り番
地)を格納する。
トレース情報表示手段5はトレース情報の出力手段であ
り、トレースバック情報3およびPL/Iスタック6を
用いて版管理情報を含むトレース情報7を出力する機能
を有する。
り、トレースバック情報3およびPL/Iスタック6を
用いて版管理情報を含むトレース情報7を出力する機能
を有する。
次にこのように構成された本実施例の動作を説明する。
PL/I言語翻訳処理手段2は起動されると、PL/[
言語原始プログラム1を入力して翻訳し、オブジェクト
モジエールを生成する。このときPL/I言語翻訳処理
手段2は、第2図に示したように入口点毎にPL/I言
語原始プログラム1の版数および自分自身の版数を示す
版管理情輻41.4−2.・・・および入口名9−1.
9−2.・・・を含み、オブジェクトモジュール毎に文
番号テーブル8を含むトレースバック情報3を出力する
。
言語原始プログラム1を入力して翻訳し、オブジェクト
モジエールを生成する。このときPL/I言語翻訳処理
手段2は、第2図に示したように入口点毎にPL/I言
語原始プログラム1の版数および自分自身の版数を示す
版管理情輻41.4−2.・・・および入口名9−1.
9−2.・・・を含み、オブジェクトモジュール毎に文
番号テーブル8を含むトレースバック情報3を出力する
。
上述の如<PL/I言語翻訳処理手段2によって生成さ
れたオブジェクトモジュールからロードモジュールが生
成され、それが計算機システムで実行されると、各入口
点が呼び出される毎にスタック6が作成され、またプロ
グラムに異常等が発生する毎にトレース情報表示手段5
が起動され、トレース情報表示手段5はトレースバック
情報3およびPL/Iスタック6を用いて版管理情報を
含むトレース情報7を出力する。今、成るプログラムA
が呼び出され、そのプログラムAから別のプログラムB
が呼び出される状況を考えると、第3図に示すようにプ
ログラムAにかかるトレースバック情報3−1へのポイ
ンタ(人口点ポインタ)を有するプログラムA対応のP
L/Iスタック61と、プログラムBにかかるトレース
バック情報3−2へのポインタ(入口点ポインタ)およ
びPL/Iスタック6−1へのポインタ(呼び出し側ス
タック戻り番地)を有するプログラムB対応のPL/I
スタック6−2とが作成される。このような状況でプロ
グラムBに異常が発生したとすると、トレース情報表示
手段5は、異常の発生したプログラムBに対応するPL
/Iスタック6−2を介してトレースバック情報3−1
中の入口名9−11および版管理情報4−11を取得し
、また文番号テーブル8−1を異常発生アドレスで検索
して対応する原始プログラムの文番号を取得する。更に
、PL/Iスタック6−2の呼び出し側スタック戻り番
地によりPL/Iスタック6−1を見つけ、その入口点
ポインタで示されるトレースバック情報3−1から入ロ
名9−10等を取得する。そして、これら取得した情報
を含んだトレース情報7を出力する。
れたオブジェクトモジュールからロードモジュールが生
成され、それが計算機システムで実行されると、各入口
点が呼び出される毎にスタック6が作成され、またプロ
グラムに異常等が発生する毎にトレース情報表示手段5
が起動され、トレース情報表示手段5はトレースバック
情報3およびPL/Iスタック6を用いて版管理情報を
含むトレース情報7を出力する。今、成るプログラムA
が呼び出され、そのプログラムAから別のプログラムB
が呼び出される状況を考えると、第3図に示すようにプ
ログラムAにかかるトレースバック情報3−1へのポイ
ンタ(人口点ポインタ)を有するプログラムA対応のP
L/Iスタック61と、プログラムBにかかるトレース
バック情報3−2へのポインタ(入口点ポインタ)およ
びPL/Iスタック6−1へのポインタ(呼び出し側ス
タック戻り番地)を有するプログラムB対応のPL/I
スタック6−2とが作成される。このような状況でプロ
グラムBに異常が発生したとすると、トレース情報表示
手段5は、異常の発生したプログラムBに対応するPL
/Iスタック6−2を介してトレースバック情報3−1
中の入口名9−11および版管理情報4−11を取得し
、また文番号テーブル8−1を異常発生アドレスで検索
して対応する原始プログラムの文番号を取得する。更に
、PL/Iスタック6−2の呼び出し側スタック戻り番
地によりPL/Iスタック6−1を見つけ、その入口点
ポインタで示されるトレースバック情報3−1から入ロ
名9−10等を取得する。そして、これら取得した情報
を含んだトレース情報7を出力する。
〔発明の効果〕
以上説明したように、本発明の高級言語プログラム保守
デバッグ方式においては、原始プログラムの世代および
高級言語翻訳処理手段の世代を示す版管理情報をトレー
ス情報の一部として出力するので、障害の生じたプログ
ラムに対して関係するメンバの版管理悄輻によって容品
にその世代を知ることができ、ロードモジュール作成に
かかる作業者の不注意による選択誤りを即座に発見する
ことが可能となる。また、言語翻訳処理手段すなわち言
語翻訳処理プログラムの世代をも特定することができ、
高級言語で記述されたプログラムの保守デバッグを効率
的に進めることができる効果がある。
デバッグ方式においては、原始プログラムの世代および
高級言語翻訳処理手段の世代を示す版管理情報をトレー
ス情報の一部として出力するので、障害の生じたプログ
ラムに対して関係するメンバの版管理悄輻によって容品
にその世代を知ることができ、ロードモジュール作成に
かかる作業者の不注意による選択誤りを即座に発見する
ことが可能となる。また、言語翻訳処理手段すなわち言
語翻訳処理プログラムの世代をも特定することができ、
高級言語で記述されたプログラムの保守デバッグを効率
的に進めることができる効果がある。
第1図は本発明の一実施例の構成図、
第2図はトレースバック情報の内容例を示す図および、
第3図は本発明の実施例の動作説明図である。
図において、
l・・・PL/I言語原始プログラム
2・・・PL/I言語翻訳処理手段
3・・・トレースバック情報
4・・・版管理情報
5・・・トレース情報表示手段
6・・・PL/lスタック
′I・・・トレース情報
Claims (1)
- 【特許請求の範囲】 電子計算機システムにおける高級言語プログラム保守デ
バッグ方式において、 高級言語翻訳処理手段とトレース情報表示手段とを備え
、 前記高級言語翻訳処理手段によって高級言語プログラム
の原始プログラムを翻訳する際に出力するトレースバッ
ク情報に、前記原始プログラムおよび前記高級言語翻訳
処理手段の版管理情報を格納し、 前記高級言語翻訳処理手段によって翻訳されたプログラ
ムの実行時にトレースバック情報を出力する際、前記ト
レース情報表示手段によって版管理情報を出力すること
を特徴とする高級言語プログラム保守デバッグ方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63269943A JPH02115951A (ja) | 1988-10-26 | 1988-10-26 | 高級言語プログラム保守デバッグ方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63269943A JPH02115951A (ja) | 1988-10-26 | 1988-10-26 | 高級言語プログラム保守デバッグ方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH02115951A true JPH02115951A (ja) | 1990-04-27 |
Family
ID=17479366
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP63269943A Pending JPH02115951A (ja) | 1988-10-26 | 1988-10-26 | 高級言語プログラム保守デバッグ方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH02115951A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100340049B1 (ko) * | 1999-09-16 | 2002-06-12 | 오길록 | 시나리오를 이용한 칠 프로그램 시험 방법 |
JP2008246351A (ja) * | 2007-03-29 | 2008-10-16 | Sumitomo Chemical Co Ltd | ミスト除去装置 |
-
1988
- 1988-10-26 JP JP63269943A patent/JPH02115951A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100340049B1 (ko) * | 1999-09-16 | 2002-06-12 | 오길록 | 시나리오를 이용한 칠 프로그램 시험 방법 |
JP2008246351A (ja) * | 2007-03-29 | 2008-10-16 | Sumitomo Chemical Co Ltd | ミスト除去装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5794043A (en) | Method for testing at least one class of an object-oriented program on a computer | |
US7647584B2 (en) | Automation and isolation of software component testing | |
JP2000122886A (ja) | 半導体試験装置のプログラム作成方式 | |
JP2015011372A (ja) | デバッグ支援システム、方法、プログラム及び記録媒体 | |
US5737521A (en) | Tracer system for analyzing errors in running real-time systems | |
US20050216897A1 (en) | Converter, automation device with a converter, and a development environment having an automation device with converter | |
JPH02115951A (ja) | 高級言語プログラム保守デバッグ方式 | |
JP2005338987A (ja) | 例外テスト支援プログラム及び例外テスト支援装置 | |
Zheng et al. | A lightweight process for change identification and regression test selection in using COTS components | |
US20070168978A1 (en) | Computer program code debugging method and system | |
EP0801348A1 (en) | Method of monitoring the operation of a computer | |
CN111367796A (zh) | 应用程序调试方法及装置 | |
JPH06250889A (ja) | データ処理システムにおける障害処理方式 | |
CN115903644B (zh) | 一种plc工程逻辑调试方法、系统、终端设备及存储介质 | |
JPH04162149A (ja) | 電子計算機 | |
JPH1115695A (ja) | プログラムテストパターン自動生成システム | |
CN115756414A (zh) | 数据库对象的处理方法、存储介质与计算机设备 | |
JPH03294934A (ja) | 高級プログラム言語用デバッガ | |
JPH05151030A (ja) | 利用者プログラム異常終了時の情報表示方式 | |
JP2560545B2 (ja) | インタフェース検査処理装置 | |
Jüttner et al. | Experiences in testing object-oriented software | |
JPH11191072A (ja) | デバッグのブレイク処理方法及びデバッグ処理装置 | |
JPH0431933A (ja) | 原始プログラム解析装置 | |
JPH01205348A (ja) | プログラムデバッグ方式 | |
JPH02219136A (ja) | プログラム改造時のバグ検査方法 |