JPH02201553A - System for analyzing program by row number designation - Google Patents

System for analyzing program by row number designation

Info

Publication number
JPH02201553A
JPH02201553A JP1019909A JP1990989A JPH02201553A JP H02201553 A JPH02201553 A JP H02201553A JP 1019909 A JP1019909 A JP 1019909A JP 1990989 A JP1990989 A JP 1990989A JP H02201553 A JPH02201553 A JP H02201553A
Authority
JP
Japan
Prior art keywords
statement
program
sentence
analysis
information
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
JP1019909A
Other languages
Japanese (ja)
Inventor
Mika Amano
天野 美花
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 JP1019909A priority Critical patent/JPH02201553A/en
Publication of JPH02201553A publication Critical patent/JPH02201553A/en
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

PURPOSE:To concisely obtain analysis results by adding an analytic information instrumentation statement to only a part to be analyzed at the time of designating this part with a row number by a user. CONSTITUTION:This system consists of an analysis object row determining means 1, a range designating table 2, a source program 3, a statement discriminating means 4, a statement processing means 5, attribute information 6, a source program 7 for instrumentation, a program executing means 8, execution information 9, an analysis result editing means 10, and analysis results 11. When the user designates the range of the program to be analyzed with a row number, the analytic information instrumentation statement is added to only this range. Thus, minimum analytic information required for the user is gathered.

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明は、原始プログラムの解析方式に関し、特に原始
プログラムの部分的解析を行う解析方式%式% [従来の技術] 原始プログラムの各プログラム単位の実行時間、各文の
実行回数、各手続きの呼び出し回数等を集計する従来の
プログラム解析方式では、原始プログラムのすべての行
について解析を行う全体解析と、ある特定のプログラム
単位の解析を行う部分解析があるが、どちらの場合にも
、次のようにして解析情報を集計していた。すなわち、
まず、原始プログラム全体あるいは特定のプログラム単
位に、解析情報計測文を付加し、測定用原始プログラム
を得る。次に、このD1定用原始プログラムを実際に実
行して、解析情報計測文が実行されることによって得ら
れる実行情報をプログラム解析結果とする。
[Detailed Description of the Invention] [Industrial Application Field] The present invention relates to a method for analyzing a source program, and in particular, an analysis method for partially analyzing a source program.[Prior Art] Each program unit of a source program In the conventional program analysis method, which totals the execution time of , the number of times each statement is executed, the number of times each procedure is called, etc., there are two types of analysis: an overall analysis that analyzes all lines of the source program, and a part that analyzes a specific program unit. In both cases, the analysis information was compiled as follows. That is,
First, an analysis information measurement statement is added to the entire source program or a specific program unit to obtain a measurement source program. Next, this D1 standard source program is actually executed, and the execution information obtained by executing the analysis information measurement statement is taken as the program analysis result.

[発明が解決しようとする課題] 上述した従来のプログラム解析方式では、原始プログラ
ムの全体規模や、解析を行いたい特定のプログラム単位
の規模が大きい場合には、4pj定用原始プログラムを
生成したり、測定用原始プログラムを実行するのに多大
な時間を必要とする。また、解析結果も大量となるため
、利用者が必要としている部分の解析結果を捜すのはあ
まり容易ではなく、リスト出力の際にも多くの時間と用
紙を特徴とする特に、あるプログラム単位中のある部分
のみの解析を行いたい場合でも、そのプログラム単位全
体が解析情報計aJ文の付加の対象となるため、余分な
プログラム解析が含まれている。
[Problem to be solved by the invention] In the conventional program analysis method described above, when the overall size of the source program or the size of a specific program unit to be analyzed is large, a 4pj standard source program is generated or , it takes a lot of time to execute the measurement source program. In addition, since there are a large amount of analysis results, it is not easy for the user to search for the part of the analysis results that he or she needs, and it takes a lot of time and paper to output the list. Even if it is desired to analyze only a certain part of the program, the entire program unit is subject to the addition of the analysis information meter aJ statement, so extra program analysis is included.

本発明の目的は、上述の点に鑑み、利用者にとって最低
限必要な解析情報を収集することができるプログラム解
析方式を提供することにある。
In view of the above-mentioned points, an object of the present invention is to provide a program analysis method that can collect the minimum necessary analysis information for the user.

[課題を解決するための手段] 本発明による行番号指定によるプログラム解析方式は、
原始プログラムに解析情報計aj用の文、すなわち解析
情報計測文を付加してできた測定用原始プログラムを実
際に実行し、各プログラム単位の実行時間、各文の実行
回数、各手続きの呼び出し回数等を集計するプログラム
解析方式において、 11川者が解析したいプログラムの範囲を行訃号によっ
て指定した場合には、原始プログラムの解析すべき行の
行番号情報を範囲指定テーブルに格納し、また、利用者
による範囲の指定がない場合には前記範囲指定テーブル
は作成しない解析対象行決定手段と、 原始プログラムファイルから原始プログラムの文を人力
し、その文がプログラムの開始文であるか、終了文であ
るか、その他の文であるかを判定する文判定手段と、 この文判定手段によってプログラムの開始文であると判
定された場合には、そのプログラムの開始文と解析情報
計apI用の開始処理ルーチンを呼び出す文とを測定用
原始プログラムに出力し、プログラムの開始文としての
属性情報を出力し、前記文判定手段によってプログラム
の終了文であると判定された場合には、そのプログラム
の終了文と解析情報計測用の終了処理ルーチンを呼び出
す文とを測定用原始プログラムに出力し、プログラムの
終了文としての属性情報を出力し、前記文判定手段によ
ってその他の文であると判定された場合には、前記範囲
指定テーブルが存在し、かつ、その他の文と判定された
文の行番号が前記範囲指定テーブルに格納されている開
始行番号と終了行番号の範囲に該当しない場合にのみ、
その他の文と判定された文だけを4pj定用原始プログ
ラムに出力し、前記範囲指定テーブルが存在し、かつ、
その他の文と判定された文の行番号が前記範囲指定テー
ブルに格納されている開始行番号と終了行番号の範囲に
該当する場合、あるいは、前記範囲指定テーブルが存在
しない場合には、その他の文と判定された文としての属
性情報を出力すると共に、その他の文と判定された文と
その文に対して付加すべき解析情報計測用とを測定用原
始プログラムに出力する文処理手段と、 前記測定用原始プログラムを実行して実行情報を1!)
るプログラム実行手段と、 前記属性情報に含まれる行番号情報と原始プログラムお
よび実行情報を対応させ、各プログラム単位の実行時間
、各文の実行回数、凸子続きの呼び出し回数等を編集し
て解析結果として出力する解析結果手段と、を有する。
[Means for solving the problem] The program analysis method using line number specification according to the present invention is as follows:
The measurement source program created by adding the analysis information measurement aj statement, that is, the analysis information measurement statement, to the source program is actually executed, and the execution time of each program unit, the number of executions of each statement, and the number of calls of each procedure are calculated. In the program analysis method that totals the number of lines, etc., if the user specifies the range of the program to be analyzed using the line number, the line number information of the line to be analyzed in the source program is stored in the range specification table, and an analysis target line determination means that does not create the range specification table if the range is not specified by the user; and a means for determining lines to be analyzed that manually reads a source program statement from a source program file and determines whether the statement is the start statement of the program or the end statement. or any other statement, and if the statement is determined to be the start statement of a program by this sentence determination means, the start statement of the program and the start statement for the analysis information meter apI. A statement that calls a processing routine is output to the measurement source program, attribute information as a program start statement is output, and if the statement determining means determines that it is a program end statement, the program is terminated. A statement and a statement that calls a termination processing routine for analysis information measurement are output to a measurement source program, attribute information as a program termination statement is output, and the statement is determined to be another sentence by the sentence determination means. only when the range specification table exists and the line number of the statement determined to be another sentence does not fall within the range of the start line number and end line number stored in the range specification table,
Only the sentences determined to be other sentences are output to the 4pj regular source program, and the range specification table exists, and
If the line number of the statement determined to be another statement falls within the range of the start line number and end line number stored in the range specification table, or if the range specification table does not exist, then a sentence processing means that outputs attribute information as a sentence determined to be a sentence, and outputs a sentence determined to be another sentence and analysis information measurement to be added to the sentence to a measurement source program; Execute the measurement source program and set the execution information to 1! )
A program execution means that associates the line number information included in the attribute information with the source program and execution information, and edits and analyzes the execution time of each program unit, the number of times each statement is executed, the number of times convex continuation is called, etc. and analysis result means for outputting the results.

「実施例」 次に、本発明について図面を参照して詳細に説明する。"Example" Next, the present invention will be explained in detail with reference to the drawings.

第1図は、本発明の一実施例の構成を示すブロック図で
ある。
FIG. 1 is a block diagram showing the configuration of an embodiment of the present invention.

本実施例の行番号指定によるプログラム解析方式は、解
析対象行決定手段1と、範囲指定テーブル2と、原始プ
ログラム3と、文判定手段4と、文処理手段5と、属性
情報6と、測定用原始プログラム7と、プログラム実行
手段8と、実行情報9と、解析結果編集手段10と、解
析結果11とから構成されている。
The program analysis method based on line number specification in this embodiment includes an analysis target line determination means 1, a range specification table 2, a source program 3, a statement judgment means 4, a statement processing means 5, attribute information 6, and a measurement It is composed of a source program 7, program execution means 8, execution information 9, analysis result editing means 10, and analysis results 11.

解析対象行決定手段1は、原始プログラム3に対して解
析すべき行の開始行番号と終了行番号が利用者によって
指定されている場合には、メモリ上に範囲指定テーブル
2の領域を確保し、指定された開始行番号と終了行番号
を範囲指定テーブル2に格納する。
When the user specifies the starting line number and ending line number of the line to be analyzed for the source program 3, the analysis target line determining means 1 secures an area for the range specification table 2 in the memory. , stores the specified start line number and end line number in the range specification table 2.

文判定手段4は、原始プログラム3から1文を入力し、
その文が主プログラム単位内の最初の実行文である場合
には「プログラムの開始文」であると判定し、また、そ
の文がプログラムの終了文となり得る場合には「プログ
ラムの終了文」であると判定し、プログラムの開始文で
も終了文でもない場合には「その他の文」であると判定
し、その判定結果とその文の開始行の行番号を文処理手
段5に情報として渡す。文判定手段4は人力する原始プ
ログラム3の文がなくなったら処理を終了する。
The sentence determining means 4 inputs one sentence from the source program 3,
If the statement is the first executable statement in the main program unit, it is determined to be a "program start statement"; if the statement can be a program end statement, it is determined to be a "program end statement". If it is determined that there is, and it is neither the start sentence nor the end sentence of the program, it is determined that it is an "other sentence", and the determination result and the line number of the start line of the sentence are passed to the statement processing means 5 as information. The sentence determining means 4 terminates the process when there are no more sentences in the manually generated source program 3.

文処理手段5は、文判定手段4の判定結果が「プログラ
ムの開始文」である場合には、その文と、解析情報計測
用の開始処理ルーチンを呼び出す文とを測定用原始プロ
グラム7に出力し、文判定手段4から渡された行番号を
含む属性情報6を出力し、文判定手段4の判定結果が「
プログラムの終了文」である場合には、その文と解析情
報計測用の終了ルーチンを呼び出す文とをM1定用原始
プログラム7に出力し、文判定手段4から渡された行番
号を含む属性情報6を出力し、文判定手段4の判定結果
が「その他の文」である場合には、範囲指定テーブル2
が存在するかどうかを検査し、存在する場合には、文判
定手段4から渡された行番号が、範囲指定テーブル2に
格納されている開始行番号より小さいかまたは終了行番
号より大きい場合は「その他の文」を測定用原始プログ
ラム7に出力し、文判定手段4に制御を移す。
If the judgment result of the sentence judgment means 4 is a "program start statement," the statement processing means 5 outputs that statement and a statement that calls a start processing routine for measuring analysis information to the measurement source program 7. Then, the attribute information 6 including the line number passed from the sentence judgment means 4 is output, and the judgment result of the sentence judgment means 4 is "
If the statement is a program termination statement, the statement and a statement that calls the termination routine for measuring analysis information are output to the M1 standard source program 7, and the attribute information including the line number passed from the statement determination means 4 is output. 6, and if the judgment result of the sentence judgment means 4 is "other sentences", the range specification table 2
If it exists, the line number passed from the statement judgment means 4 is smaller than the start line number stored in the range specification table 2 or larger than the end line number stored in the range specification table 2. The "other sentences" are output to the measurement source program 7, and control is transferred to the sentence determining means 4.

一方、文処理手段5は、範囲指定テーブル2が存在し、
かつ、文判定手段4から渡された行番号が、範囲指定テ
ーブル2に格納されている開始行番号から終了行番号の
間に該当するか、または開始行番号、終了行番号のいず
れかに等しい場合、あるいは範囲指定テーブル2が存在
しない場合には、「その他の文」とその文に付加すべき
解析情報計測用の文とを測定用原始プログラム7に出力
し、文判定手段4から渡された行番号を含む属性情報6
を出力し、文判定手段4に制御を移す。
On the other hand, the sentence processing means 5 has the range specification table 2,
And, the line number passed from the sentence determination means 4 falls between the start line number and the end line number stored in the range specification table 2, or is equal to either the start line number or the end line number. or when the range specification table 2 does not exist, the "other sentences" and the sentence for measuring the analysis information to be added to the sentence are output to the measurement source program 7 and passed from the sentence judgment means 4. Attribute information 6 including the line number
is output, and control is transferred to the sentence determining means 4.

プログラム実行手段8は、測定用原始プログラム7を翻
訳、結合し、実行可能形式にし、実際に実行することに
よって各プログラム単位の実行時間、各文の実行回数、
6手続きの呼び出し回数等を含む実行情報9を出力する
The program execution means 8 translates and combines the measurement source programs 7 into an executable format, and actually executes them to determine the execution time of each program unit, the number of executions of each statement, etc.
Execution information 9 including the number of calls of the 6 procedure is output.

解析結果編集手段10は原始プログラム3と属性情報6
および実行情報9を人力し、属性情報6の各記録中に含
まれる行番号に対応する原始プログラム3の文および実
行情報9の解析情報を解析結果11に出力する。解析結
果編集手段10は属性情報6のすべての記録に対して処
理を終了したならばその動作を終了する。
Analysis result editing means 10 includes source program 3 and attribute information 6
and the execution information 9 are input manually, and the statements of the source program 3 corresponding to the line numbers included in each record of the attribute information 6 and the analysis information of the execution information 9 are output as the analysis result 11. When the analysis result editing means 10 finishes processing all the records of the attribute information 6, it ends its operation.

[発明の効果] 以上説明したように本発明の行番号指定によるプログラ
ム解析方式では、利用者が解析を行いたい部分を行番号
で指定した場合にはその部分に対してのみ解析情報計測
文の付加を行うことにより、プログラムの解析処理の時
間を短縮し、性能を向上させることができるとともに、
解析結果を簡潔に得ることができる。また、解析情報計
測のために生成される測定用原始プログラムあるいは属
性情報が全体を解析する場合より少なくてすみ、メモリ
あるいはディスクを効率よく使用できる。
[Effects of the Invention] As explained above, in the program analysis method using line number specification of the present invention, when the user specifies the part to be analyzed by the line number, the analysis information measurement statement is applied only to that part. By adding this, you can shorten the time for program analysis processing and improve performance.
Analysis results can be obtained concisely. Furthermore, the number of measurement primitive programs or attribute information generated for analysis information measurement is smaller than when analyzing the entire system, and memory or disk can be used efficiently.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は本発明の一実施例を示すブロック図である。 1・・・解析対象行決定手段、2・・・範囲指定テーブ
ル、3・・・原始プログラム、4・・・文判定手段、5
・・・文処理手段、6・・・属性情報、7・・・測定用
原始プログラム、8・・・プログラム実行手段、9・・
・実行情報、10・・・解析結果編集手段、11・・・
解析結果。
FIG. 1 is a block diagram showing one embodiment of the present invention. DESCRIPTION OF SYMBOLS 1... Analysis target line determination means, 2... Range specification table, 3... Source program, 4... Statement determination means, 5
...Sentence processing means, 6.Attribute information, 7.Measurement source program, 8.Program execution means, 9..
- Execution information, 10...Analysis result editing means, 11...
Analysis result.

Claims (1)

【特許請求の範囲】 1、原始プログラムに、プログラム解析処理内で生成す
る解析情報計測文を付加してできた測定用原始プログラ
ムを実際に実行し、各プログラム単位の実行時間、各文
の実行回数、各手続きの呼び出し回数等を集計するプロ
グラム解析方式において、 利用者が解析したいプログラムの範囲を行番号によって
指定した場合には、原始プログラムの解析すべき行の行
番号情報を範囲指定テーブルに格納し、また、利用者に
よる範囲の指定がない場合には前記範囲指定テーブルは
作成しない解析対象行決定手段と、 原始プログラムファイルから原始プログラムの文を入力
し、その文がプログラムの開始文であるか、終了文であ
るか、その他の文であるかを判定する文判定手段と、 該文判定手段によってプログラムの開始文であると判定
された場合には、そのプログラムの開始文と解析情報計
測用の開始処理ルーチンを呼び出す文とを測定用原始プ
ログラムに出力し、プログラムの開始文として属性情報
を出力し、前記文判定手段によってプログラムの終了文
であると判定された場合には、そのプログラムの終了文
と解析情報計測用の終了処理ルーチンを呼び出す文とを
測定原始プログラムに出力し、プログラムの終了文とし
ての属性情報を出力し、前記文判定手段によってその他
の文であると判定された場合には、前記範囲指定テーブ
ルが存在し、かつ、その他の文と判定された文の行番号
が前記範囲指定テーブルに格納されている開始行番号と
終了行番号の範囲に該当しない場合にのみ、その他の文
と判定された文だけを測定用原始プログラムに出力し、
前記範囲指定テーブルが存在し、かつ、その他の文と判
定された文の行番号が前記範囲指定テーブルに格納され
ている開始行番号と終了行番号の範囲に該当する場合、
あるいは、前記範囲指定テーブルが存在しない場合には
、その他の文と判定された文としての属性情報を出力化
し、その他の文と判定された文とその文に対して付加す
べき解析情報計測文とを測定用原始プログラムに出力す
る文処理手段と、 前記測定用原始プログラムを実行して実行情報を得るプ
ログラム実行手段と、 前記属性情報に含まれる行番号情報と原始プログラムお
よび実行情報を対応させ、各プログラム単位の実行時間
、各文の実行回数、各手続きの呼び出し回数等を編集し
て解析結果として出力する解析結果編集手段と、 を有することを特徴とする行番号指定によるプログラム
解析方式。
[Claims] 1. A measurement source program created by adding analysis information measurement statements generated during program analysis processing to the source program is actually executed, and the execution time of each program unit and the execution of each statement are determined. In a program analysis method that totals the number of times each procedure is called, etc., if the user specifies the range of the program to be analyzed using line numbers, the line number information of the lines to be analyzed in the source program is stored in the range specification table. and an analysis target line determining means that stores the range and does not create the range specification table if the range is not specified by the user; a statement determining means for determining whether the statement is a program start statement, an end statement, or some other statement; and if the sentence determination means determines that the statement is the start statement of a program, the start statement of the program and analysis information; A statement that calls a start processing routine for measurement is output to the measurement source program, attribute information is output as the start statement of the program, and if the sentence determination means determines that it is the end statement of the program, A program termination statement and a statement that calls the termination processing routine for analysis information measurement are output to the measurement source program, attribute information as the program termination statement is output, and the statement is determined to be another statement by the statement determination means. In this case, if the range specification table exists and the line number of the statement determined to be another sentence does not fall within the range of the start line number and end line number stored in the range specification table. Outputs only the sentences that are judged as other sentences to the measurement source program,
If the range specification table exists and the line number of the sentence determined to be another sentence falls within the range of the start line number and end line number stored in the range specification table,
Alternatively, if the range specification table does not exist, output the attribute information as a sentence determined to be another sentence, and output the analysis information measurement statement that should be added to the sentence determined to be other sentences and that sentence. statement processing means for outputting the measurement source program to the measurement source program; program execution means for executing the measurement source program to obtain execution information; and associating the line number information included in the attribute information with the source program and execution information. , an analysis result editing means for editing the execution time of each program unit, the number of executions of each statement, the number of calls of each procedure, etc. and outputting it as an analysis result; and a program analysis method using line number specification.
JP1019909A 1989-01-31 1989-01-31 System for analyzing program by row number designation Pending JPH02201553A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1019909A JPH02201553A (en) 1989-01-31 1989-01-31 System for analyzing program by row number designation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1019909A JPH02201553A (en) 1989-01-31 1989-01-31 System for analyzing program by row number designation

Publications (1)

Publication Number Publication Date
JPH02201553A true JPH02201553A (en) 1990-08-09

Family

ID=12012343

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1019909A Pending JPH02201553A (en) 1989-01-31 1989-01-31 System for analyzing program by row number designation

Country Status (1)

Country Link
JP (1) JPH02201553A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0962538A (en) * 1995-08-29 1997-03-07 Nec Corp Efficiency supporting device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0962538A (en) * 1995-08-29 1997-03-07 Nec Corp Efficiency supporting device

Similar Documents

Publication Publication Date Title
JP3380390B2 (en) Debug information display device
JPH02201553A (en) System for analyzing program by row number designation
JP4055197B2 (en) Device for analyzing procedures included in the program
JP3011115B2 (en) Debug system
JPS6254337A (en) Specification displaying system for program hierarchy
JPH0635752A (en) Analysis program generation system
JP2001142688A (en) Program analyzer and recording medium
JPH03129535A (en) Collecting volume optimizing system for debugging information
JP2731572B2 (en) Logic simulation method
JPH03185531A (en) Method for displaying scale conversion for task time
JPH04229343A (en) Memory contents display system in interactive debugger
JPH05324402A (en) Test state measuring system for program
JPH064299A (en) Optimized object program generating system
JPH0218617A (en) Optimization system for program source
JPS63233441A (en) Edition and outputting system for advice information
JPH0553871A (en) Execution information sampling system
JPH02195448A (en) Device for tracing instruction
JPS6386029A (en) Data processing method
JPH04333931A (en) Acceleration processing system for input/output sentence with format
JP2000293410A (en) Profiler
JPH044429A (en) Automatic rearrangement linking system for virtual storing system
JPH064348A (en) Program debugging system
JPH11224185A (en) Device and method for analyzing variable influence
JPS62200440A (en) Analyzing system for instruction execution frequency of program
JPH04312130A (en) Language processing program