JPH0193841A - System for evaluating program execution in data processing system - Google Patents
System for evaluating program execution in data processing systemInfo
- Publication number
- JPH0193841A JPH0193841A JP62249807A JP24980787A JPH0193841A JP H0193841 A JPH0193841 A JP H0193841A JP 62249807 A JP62249807 A JP 62249807A JP 24980787 A JP24980787 A JP 24980787A JP H0193841 A JPH0193841 A JP H0193841A
- Authority
- JP
- Japan
- Prior art keywords
- unit
- program module
- execution history
- module
- program
- 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
- 238000011156 evaluation Methods 0.000 claims 1
- 238000012360 testing method Methods 0.000 abstract description 8
- 238000006243 chemical reaction Methods 0.000 abstract description 4
- 230000000694 effects Effects 0.000 description 2
- 239000000470 constituent Substances 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000000034 method Methods 0.000 description 1
Landscapes
- Debugging And Monitoring (AREA)
Abstract
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は、データ処理システムにおいてプログラムテス
トに使用されるソフトウェアデバッガに関するものであ
る。DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a software debugger used for program testing in a data processing system.
データ処理システムは、近年ますます大規模化してきた
ため、ソフトウェア品質の確保に対する要求が増してき
ている。As data processing systems have become increasingly large-scale in recent years, there has been an increasing demand for ensuring software quality.
ソフトウェアの品質を確保する手段として命令レベルで
の実行の有無、及びプログラムモジュールでの実行の有
無を評価するテストカバレジの概念は一般的になってき
ている。又これを実現するため装置、及びデバッガが考
案されている。As a means of ensuring software quality, the concept of test coverage, which evaluates the presence or absence of execution at the instruction level and the presence or absence of execution in program modules, is becoming popular. In order to realize this, devices and debuggers have been devised.
従来の装置、及びデバッガは、命令レベルでの実行履歴
をハードウェアで高速に収集可能としていた。Conventional devices and debuggers have been able to collect execution history at the instruction level at high speed using hardware.
また、グログラムモジュールの先頭にトラップ命令を挿
入し、当該プログラムモジュールの実行の際に割込みを
発生させることでプログラムモジュールの実行履歴の収
集を行っていた。Furthermore, the execution history of a program module is collected by inserting a trap instruction at the beginning of a program module and generating an interrupt when the program module is executed.
上記従来技術は、大規模データ処理システムにオイて、
システム全体のプログラムモジュールレベルでの実行履
歴を採取・編集する点について配慮がされておらず、多
大の命令実行履歴記録装置。The above conventional technology is suitable for large-scale data processing systems.
There is no consideration given to the collection and editing of the execution history at the program module level of the entire system, and a large number of instruction execution history recording devices are used.
を具備して、命令レベルでの゛実行18J歴をとる必要
がある点、全てのプログラムモジュールにトラップ命令
を埋めこまなければならないため、大規模データ処理シ
ステムへの適用が難しいという問題があった。The problem is that it is difficult to apply to large-scale data processing systems because it is necessary to have a 18-J history of execution at the instruction level, and it is necessary to embed trap instructions in every program module. .
本発明では、テスト対象とするデータ処理システムが大
規模な場合にも、少量のハードウェアでかつプログラム
の内容を変更せずにプログラムモジュールレベルでの実
行履歴を高速に収集・編集することを可能にしている。With the present invention, even when the data processing system to be tested is large-scale, it is possible to quickly collect and edit the execution history at the program module level with a small amount of hardware and without changing the program contents. I have to.
上記目的は、プログラムモジュールを一定サイズに分割
した部分集合であるユニットの実行履歴をデータ処理シ
ステム名の命令アドレスレジスタから、ユニットに対応
する下位の部分を除いたアドレスをユニットアドレスと
して、ユニット実行履歴記録装置に格納するユニット実
行履歴記録制御機構、データ処理システム内の主記憶装
置にローディングされるプログラムモジュールの名称。The above purpose is to record the execution history of a unit, which is a subset of a program module divided into a fixed size, by using the instruction address register of the data processing system name, excluding the lower part corresponding to the unit, as the unit address. Unit execution history recording control mechanism stored in a recording device, name of a program module loaded into the main memory in a data processing system.
及び上記プログラムモジュールの主記憶装置上へのロー
ディングアドレスを格納しているモジーールマップファ
イル、テスト開始前に上記モジー−ルマップファイルか
らプログラムモジュール名称。and a module map file storing the loading address of the program module on the main memory, and a program module name from the module map file before the test starts.
及ヒプログラムモジュールローディングアドレスヲ読み
出し、プログラムモジュールローディングアドレスを上
記ユニットアドレスに変換して、プログラムモジエール
名称トトモにモジュールユニットアドレス対応テーブル
に格納する手段を有すルテバッガ内のモジー−ル・ユニ
ットアドレス変換部、及び上記ユニット実行履歴記録装
置のユニット実行履歴情報を読出して、モジュール・ユ
ニットアドレス対応テーブル内のプログラムモジュール
名称に対応する範囲のユニット実行履歴を照合し、この
結果をもとにプログラムモジュールの実行履歴の編集、
及び全プログラムモジュールに対応するプログラムモジ
ュールの実行比率を計算・編集して、出力装置へ出力す
るデバッガ内のモジー−ル実行履歴編集部により、達成
される。Module/unit address conversion within the Lutebugger, which has means for reading the program module loading address, converting the program module loading address into the above unit address, and storing the program module name in the module unit address correspondence table. and the unit execution history information of the unit execution history recording device, collate the unit execution history in the range corresponding to the program module name in the module/unit address correspondence table, and based on this result, read out the unit execution history information of the unit execution history recording device. Edit execution history,
This is accomplished by a module execution history editing section within the debugger that calculates and edits the execution ratio of program modules corresponding to all program modules and outputs the same to an output device.
本発明では、テスト対象プログラムを実行する際に、プ
ログラムモジュールの実行履歴を直接収集せず、プログ
ラムモジュールの構成要素であるユニット実行履歴情報
をユニット実行履歴記録装置に記録する。テスト終了後
、上記ユニット実行履歴記録装置の内容とテスト実行開
始前にプログラムモジュールローディングアドレスをユ
ニットアドレスに変換して作成したモジュール・ユニッ
トアドレス対応テーブルの情報を使用してプログラムモ
ジエールの実行粒層を得る。In the present invention, when a test target program is executed, the execution history of a program module is not directly collected, but unit execution history information, which is a component of a program module, is recorded in a unit execution history recording device. After the test is completed, the program module is executed using the contents of the unit execution history recording device and the information in the module/unit address correspondence table created by converting the program module loading address into a unit address before the start of test execution. get.
本発明では、プログラムの実行履歴を採取するためにハ
ードウェア機構を使っているためグログラムの内容をテ
スト実行のために変更する必要がない。又、命令単位に
実行履歴を記録する必要がないため、プログラムモジュ
ールの実行履歴を記録する記録装置の容量とそれを制御
するハードウェア機構が少くてすむ。In the present invention, since a hardware mechanism is used to collect the program execution history, there is no need to change the contents of the program for test execution. Furthermore, since there is no need to record the execution history for each instruction, the capacity of the recording device for recording the execution history of the program module and the hardware mechanism for controlling it can be reduced.
以下に本発明の一実施例を第1図及び第2図により説明
する。第1図は、実施例構成、及び第2図は、デバッガ
の処理の説明である。An embodiment of the present invention will be described below with reference to FIGS. 1 and 2. FIG. 1 shows the configuration of an embodiment, and FIG. 2 shows an explanation of the processing of the debugger.
第1図中、1はプロセッサ、2はプロセッサ内の命令ア
ドレスレジスタ、3はプロセッサ内のユニット実行記録
履歴制御機構、4はユニット実行履歴記録装置、5はプ
ロセッサ内にロードされるデバッガ、6はデバッガ内の
モジュール実行履歴徊集部、7はデバッガ内のモジュー
ル・ユニットアドレス変換部、8はデバッガ内のモジュ
ールユニットアドレス対応テーブル、9はモジュールマ
ツプファイル、10は出力装置を表わしている。In FIG. 1, 1 is a processor, 2 is an instruction address register in the processor, 3 is a unit execution record history control mechanism in the processor, 4 is a unit execution history recording device, 5 is a debugger loaded in the processor, and 6 is a unit execution record history control mechanism in the processor. Reference numeral 7 represents a module execution history browsing section within the debugger, numeral 7 represents a module/unit address conversion section within the debugger, numeral 8 represents a module unit address correspondence table within the debugger, numeral 9 represents a module map file, and numeral 10 represents an output device.
又、第1図中ユニットは、128バイトの命令の集合で
、プログラムモジュールの構成単位トスる。In addition, the unit in FIG. 1 is a set of 128-byte instructions and tosses the constituent unit of the program module.
以ドに第2図によりデバッガの処理?:説明する。Below is the debugger processing according to Figure 2. :explain.
プロセッサ1においてデバッガ5?:起動するとステッ
プ1に示すごとく、デバッガ5はモジュールマツプファ
イル9からデータ処理システム内で動作するプログラム
モジュールの名称、及びプログラムモジュールの主記憶
装置上へのローディングアドレスを読み出し、次にステ
ップ2に示すごとく、変換部7は、上記モジュールロー
プインクアドレスからユニット単位部分、つまり下7ビ
ツトを除いてユニットアドレスに変換し、プログラムモ
ジュール名称及びユニットアドレスをモジュールユニッ
トアドレス対応テーブルに格納する。次にステップ3に
示すごとくテスト対象プログラムを実行させると、ステ
ップ4に示すごとく、命令が逐次実行されるたびに、プ
ロセッサ1内のユニット履歴記録制御機構5が作動し、
プロセッサ1内の命令アドレスレジスタ2の下7ピツト
ヲ除イたアドレスでポイントされるユニット実行履歴記
録装置の該当ビットをオンにする。次にステップ5に示
すごとく、デバッガ5内のモジー−ル実行履歴編集部6
は、ユニット実行四層記録装置4からユニット実行履歴
情報を読み出し、次にステップ6に示すごと(、モジュ
ール・ユニットアドレス対応テーブル内のプログラムモ
ジュール名称に対応する範囲のユニット実行履歴を照合
し、この結果をもとにプログラムモジュールの実行bi
の編集及び全プログラムモジュールKiするプログラム
モジュールの実行比率を計i−=集する。次にモジュー
ル実行履歴編集部6は、ステップ7に示すごとく、上記
プログラムモジュール実行kjlW。Debugger 5 on processor 1? : Upon startup, as shown in step 1, the debugger 5 reads the name of the program module operating within the data processing system and the loading address of the program module onto the main memory from the module map file 9, and then as shown in step 2. The converting section 7 converts the module rope ink address into a unit address by removing the unit unit part, that is, the lower 7 bits, and stores the program module name and unit address in the module unit address correspondence table. Next, when the test target program is executed as shown in step 3, the unit history recording control mechanism 5 in the processor 1 is activated each time the instructions are sequentially executed, as shown in step 4.
The corresponding bit of the unit execution history recording device pointed to by the address excluding the bottom seven pits of the instruction address register 2 in the processor 1 is turned on. Next, as shown in step 5, the module execution history editing section 6 in the debugger 5
reads the unit execution history information from the unit execution four-layer recording device 4, and then checks the unit execution history in the range corresponding to the program module name in the module/unit address correspondence table as shown in step 6. Execute the program module based on the results
The editing and execution ratios of program modules for all program modules Ki are collected in total i-=. Next, as shown in step 7, the module execution history editing unit 6 executes the program module kjlW.
プログラムモジュール実行比坐を出力装置10へ出力す
る。The program module execution ratio is output to the output device 10.
本実施例によれば、プログラムモジュールの実行履歴を
収集するために命令単位に実行履歴を収集しないため、
実行履歴を格納するためのM(2S装置の容置は、命令
単位に実行履歴を収渫する場合の128分の1の小容鼠
ですむ。According to this embodiment, since the execution history is not collected for each instruction in order to collect the execution history of the program module,
The storage capacity of the M(2S) device for storing the execution history is 1/128th that of storing the execution history on an instruction-by-instruction basis.
本発明によれば、プログラムモジュールの実行履歴を命
令単位に収集した情報乞もとに編集するのではなく、命
令の集合であるユニット単位に収集した実行履歴情報を
もとに編集する方式をとっている。According to the present invention, instead of editing the execution history of a program module based on information collected for each instruction, a method is adopted in which the execution history of a program module is edited based on execution history information collected for each unit, which is a set of instructions. ing.
このため実行履歴を記録するための記憶装置の容量が少
なくてすむ効果がある。Therefore, the capacity of the storage device for recording the execution history can be reduced.
又、プログラムモジュールの実行履歴の収集をハードウ
ェアで行っているため、テスト対象とするプログラムの
内容を変更する必要がない効果がある。Furthermore, since the execution history of program modules is collected by hardware, there is an advantage that there is no need to change the contents of the program to be tested.
第1図は、本発明の一実施例の構成図、第2図は、デバ
ッガ及び装置の処理についての流れ図である。
1・・・プロセッサ、2・・・命令アドレスレジスタ、
5・・・デバッガ、6・・・モジュール実行履歴編集部
、7・・・モジュール・ユニットアドレス変換部、8・
・・モジュールユニットアドレス対応テープh、q・・
・モジュールマツプファイル、1o・・・出力装置。
、I::・j11゛τ。
、−−−−−町(1’ll!:□
第 f 凹FIG. 1 is a block diagram of an embodiment of the present invention, and FIG. 2 is a flowchart of the processing of the debugger and device. 1... Processor, 2... Instruction address register,
5... Debugger, 6... Module execution history editing section, 7... Module/unit address conversion section, 8.
...Module unit address compatible tapes h, q...
・Module map file, 1o...Output device. , I::・j11゛τ. , ------cho (1'll!: □th f concave
Claims (1)
タ処理システムにおいて、上記主記憶装置上にローディ
ングされるプログラムモジュールのローディングアドレ
スとその名称を示す機構、プログラムモジュールを一定
サイズに分割した部分集合であるユニットの実行履歴を
記録するためのユニット実行履歴記録装置、及び上記ユ
ニット実行履歴記録装置へユニット実行履歴情報を格納
する際の制御を行うハードウェア機構、上記ユニット実
行履歴記録装置からユニット実行履歴情報を読み出し、
上記プログラムモジユールの主記憶装置上へのローディ
ングアドレスとプログラムモジュール名称を示す機構か
らプログラムモジュールの実行履歴を編集する手段、並
びにデータ処理システム内で指定された範囲の全てのプ
ログラムモジユールに対するプログラムモジユールの実
行比率を計算する手段を設けたことを特徴とするデータ
処理システムのプログラム実行評価方式。1. In a data processing system that sequentially executes instructions recorded in the main memory, a mechanism that indicates the loading address and name of a program module loaded onto the main memory, and a portion in which the program module is divided into fixed sizes. a unit execution history recording device for recording the execution history of a unit that is a set; a hardware mechanism that controls when unit execution history information is stored in the unit execution history recording device; Read execution history information,
Means for editing the execution history of a program module from a mechanism indicating the loading address of the program module on the main memory and the program module name, and a means for editing the program module execution history for all program modules within a specified range within the data processing system. A program execution evaluation method for a data processing system, characterized by providing a means for calculating a Yule execution ratio.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62249807A JPH0193841A (en) | 1987-10-05 | 1987-10-05 | System for evaluating program execution in data processing system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62249807A JPH0193841A (en) | 1987-10-05 | 1987-10-05 | System for evaluating program execution in data processing system |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0193841A true JPH0193841A (en) | 1989-04-12 |
Family
ID=17198500
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP62249807A Pending JPH0193841A (en) | 1987-10-05 | 1987-10-05 | System for evaluating program execution in data processing system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0193841A (en) |
-
1987
- 1987-10-05 JP JP62249807A patent/JPH0193841A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS648382B2 (en) | ||
JPH0193841A (en) | System for evaluating program execution in data processing system | |
CN113031574B (en) | Equipment operation process reproduction method and system | |
JPH0934754A (en) | Instrument and method for measuring performance of program | |
JPH0326416B2 (en) | ||
CN1138381A (en) | Method and device for supporting production of moving-picture CDROM software | |
JPH03209542A (en) | System and device for automatic production of interlocking test data on communication control program | |
JPH01166143A (en) | Debugging system for firmware program | |
JP2811804B2 (en) | Variable output range specification method | |
JPH0452835A (en) | Program test evaluation system | |
JPS63201841A (en) | Program debugging system | |
JPS6156525B2 (en) | ||
JPS63191247A (en) | Log-out processing system | |
JPS6341950A (en) | Branch instruction execution measurement controlling system | |
JPS5833631B2 (en) | data processing system | |
JP3414988B2 (en) | Semiconductor test equipment | |
JPS6042492B2 (en) | Processing phase execution control method | |
KR890008681A (en) | Processor control unit | |
JPS6211746B2 (en) | ||
JPH0318213B2 (en) | ||
JPS59133645A (en) | Recording method of execution of micro instruction | |
JPS59114650A (en) | Program tracing system | |
JPS59177799A (en) | Checking system of read-only memory | |
JPS6341948A (en) | Symbolic debug system | |
JP2004219073A (en) | Signal recording/analyzing system, signal recorder, and signal analyzer |