JPH07160531A - プログラム実行経路表示装置 - Google Patents

プログラム実行経路表示装置

Info

Publication number
JPH07160531A
JPH07160531A JP5304373A JP30437393A JPH07160531A JP H07160531 A JPH07160531 A JP H07160531A JP 5304373 A JP5304373 A JP 5304373A JP 30437393 A JP30437393 A JP 30437393A JP H07160531 A JPH07160531 A JP H07160531A
Authority
JP
Japan
Prior art keywords
program
instruction
attribute
execution
display device
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
JP5304373A
Other languages
English (en)
Inventor
Hiroshi Tsujimoto
寛 辻本
Isao Funaki
勇夫 舟木
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP5304373A priority Critical patent/JPH07160531A/ja
Publication of JPH07160531A publication Critical patent/JPH07160531A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 【目的】 本発明の目的は、プログラム上の実行頻度の
高い命令を見極めるための労力を軽減することができる
プログラム実行経路表示装置を提供することである。 【構成】 本発明は、実行手段53により実行されるプ
ログラムの命令毎の実行回数をカウントする計数手段5
4と、計数手段54によりカウントされた実行回数に応
じて属性を付与する属性付与手段55と、原始プログラ
ム51の命令及び属性付与手段55において付与された
属性を出力形態に応じて編集する編集手段56とを有す
る。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、プログラム実行経路表
示装置に係り、特に、プログラムの開発において開発し
たプログラムの性能を向上させるために、実行したプロ
グラムをトレースしてどの命令の実行頻度が高いかを認
識し、当該命令に関連するルーチンを最適化するために
用いるプログラム実行経路表示装置に関する。
【0002】
【従来の技術】実行したプログラムの命令の動作結果を
表示する方法としてデバッガがある。デバッガは、プロ
グラムの実行/停止指示、ブレークポイントによる中
断、記憶装置内容の表示/変更、レジスタ内容の表示/
変更、1命令トレースなどの機能によりプログラムの不
良箇所の摘出を行うための支援プログラムである。この
デバッガには、実行形式(オブジェクト)プログラムの
機械アドレスではなく、原始(ソース)プログラムで使
用している記号での指定などを行うことができるシンボ
リックデバッガや、ハードウェア信号などもブレーク条
件にでき、実時間のCPUの動作結果を表示することが
できるオンラインデバッガ等がある。
【0003】また、シンボリックデバッガのようにソー
スプログラムで使用している命令毎に実行された回数を
表示して動作結果を確認する方法がある。このようなパ
ターンを以下に示す。
【0004】図6は、従来のプログラム実行頻度表示装
置のシステム構成を示す。同図に示すシステムは、翻訳
部20、プログラム実行部40、実行回数カウンタ5
0、編集部60、ディスプレイ装置70又はプリンタ8
0により構成される。
【0005】同図に示すシステムの動作は、ソースプロ
グラム10がコンパイラ20で翻訳され、オブジェクト
プログラム30が生成される。プログラム実行部40
は、オブジェクトプログラム30を実行する。このと
き、実行回数カウンタ50は、プログラム実行部40の
命令実行に同期して命令が実行される度に、実行回数を
インクリメントする。編集部60は、ソースプログラム
10のシーケンス番号及び命令毎に、実行回数カウンタ
50で計数された値を付与してディスプレイ装置70用
または、プリンタ80用の形式に編集する。
【0006】実行中または、実行終了後、編集部60に
より編集されたソースプログラムリスト(命令単位)に
実行回数を付記したデータをディスプレイ装置70に表
示するか、実行後、プリンタ80にソースプログラムの
命令に対応するように実行回数を出力する。
【0007】ディスプレイ装置70上に表示する画面編
集のパターンの例を図7に示す。同図に示す例は、現在
実行中の命令のカウントを表示している。ディスプレイ
装置70に表示されている各命令101が既に何回実行
されているかを示すカウント103が右端に設定されて
いる。また、マーク102は現在実行中の命令を指し示
しており、現在実行している命令は106番目のシーケ
ンスであり、この命令“read(n):write ln”は103回
実行されていることを示す。
【0008】また、図7に示されるディプレイの画面を
編集部60においてプリンタ80の出力用に編集して出
力する方法もある。
【0009】
【発明が解決しようとする課題】上記従来のプログラム
実行頻度表示装置は、実行時の各命令の実行回数をカウ
ントしてその数値を表示したり、実行経路をトレースし
て命令に対応する実行回数をリストに出力することがで
きるが、実行回数が数値で出力されるため、ソースリス
トに付与されている実行回数を目で追っていく必要があ
る。この作業は、数100ステップを越えるようなソー
スプログラムの各命令毎の実行回数を目で確認しながら
実行頻度の高い命令を把握することは、利用者の負担が
増え、しかも、プログラムの最適化を達成するという本
来の目的とは異なる部分で多大な時間を要するという問
題がある。
【0010】本発明は、上記の点に鑑みなされたもの
で、上記従来の問題点を解決し、プログラムを動作させ
た時に当該プログラムの命令の実行頻度に応じて当該プ
ログラム(ソースプログラム)の命令に属性を付与する
ことにより、プログラム上の実行頻度の高い命令を見極
めるための労力を軽減することができるプログラム実行
経路表示装置を提供することを目的とする。
【0011】
【課題を解決するための手段】図1は、本発明の原理構
成図である。
【0012】本発明のプログラム実行経路表示装置は、
原始プログラム51から翻訳された目的プログラム52
を実行する実行手段と、実行された原始プログラム51
の各命令共に命令毎の実行頻度を表示する表示手段57
を有する装置において、実行手段53により実行される
プログラムの命令毎の実行回数をカウントする計数手段
54と、計数手段54によりカウントされた実行回数に
応じて原始プログラム51の命令に属性を付与する属性
付与手段55と、属性付与手段55において属性を付与
された原始プログラム51の命令を出力形態に応じて編
集する編集手段56と、編集手段により編集された情報
を出力する出力手段57とを有する。
【0013】
【作用】本発明は、あるプログラムを実行させたとき
に、当該プログラム内の各命令の実行頻度が所定の回数
より多い場合には、当該命令に属性を付与して表示する
ものである。従って、利用者は、ディスプレイ装置、プ
リンタ等の出力されている命令群より属性が付与されて
いる命令を直観的に見つけることができる。このため、
実行頻度の高い命令を検索し、その命令に最適化の処理
を施すという一連の処理が簡素化される。
【0014】
【実施例】以下、図面とともに本発明の実施例を詳細に
説明する。
【0015】図2は、本発明の一実施例のプログラム実
行経路表示装置の構成を示す。同図中、図6と同一構成
部分には、同一符号を付し、その説明を省略する。
【0016】図2に示すプログラム実行経路表示装置
は、図6の構成に加えて属性付与部90が付加される。
この属性付与部90は、各命令に対応する実行回数カウ
ンタ50の計数値が所定より大きな値になっている命令
に対して種々の属性を付与するものである。
【0017】図3は、本発明の一実施例のプログラム実
行経路表示装置の動作を示すフローチャートである。
【0018】まず、ソースプログラムをコンパイルして
オブジェクトプログラムに変換し、実行する(ステップ
1)。オブジェクトプログラムの1つの命令が実行され
る毎に実行回数カウンタ50をインクリメントする(ス
テップ2)。この処理をオブジェクトプログラムの命令
が全て終了するまで繰り返す(ステップ3)。
【0019】オブジェクトプログラムの実行が終了した
ら、属性付与部90は、実行回数カウンタ50の値を参
照し(ステップ4)、カウンタ値が所定の値(x)より
大きいカウント値を持つ命令を抽出し、ワークエリアに
登録する(ステップ5)。
【0020】ここで、属性付与部90は、種々の属性の
設定を行う。例えば、抽出された命令をカウント値に応
じてランク分けし(ステップ6)、そのランクに応じて
属性の形態を変える等の属性付与処理を行う(詳しくは
後述する)(ステップ7)。
【0021】編集部60は、ソースプログラムを読み込
み(ステップ8)、ソースプログラムの命令のうち、ス
テップ7で属性付与がなされている命令に対して出力編
集を行い(ステップ9)、属性付与がされていない命令
と共にディスプレイ装置70等に出力する(ステップ1
0)。
【0022】以下、属性の付与について説明する。
【0023】図4は、実行回数カウンタを説明するため
の図である。実行回数カウンタ50は、命令に対応する
命令シーケンスを有し、命令が実行される毎に対応する
命令シーケンスのカウンタ値をインクリメントする。全
ての命令の実行が終了するまで行う。
【0024】ここで、属性付与部90は、予め属性を付
与する基準値を“110”と設定している場合、属性付
与部90は、図4に示す実行回数カウンタ50に基準値
“110”より大きい値を持つシーケンス番号“000
102”、“000103”、“000105”、“0
00117”の4個のシーケンスに対応する命令を抽出
する。
【0025】ここで、属性付与部90は、上記の4つの
値に属性を付与する。例えば、ソースプログラムの命令
のうち、この4つのシーケンス番号に対応するソースプ
ログラムの命令の属性を「反転表示」とする。
【0026】図5は、本発明の一実施例の属性を付与し
た例を示す。
【0027】同図に示す例は、図7に示す表示例に対し
て属性を付与した場合であり、実行回数カウンタ50の
命令シーケンスに対応するソースプログラム10の各命
令を読み出し、その命令毎にカウントされた値を付与
し、さらに、『反転表示』という属性を付与されたシー
ケンスを反転表示している例である。
【0028】また、ディスプレイ装置70がカラーディ
スプレイ装置である場合には、「反転表示」の他に、表
示されている命令の表示色を変えるという方法もある。
【0029】例えば、図3のステップ6の処理の例にの
ように、所定値以上のカウンタ値を数値毎にランク分け
する。上記の例において、『青色表示』という属性を付
与する基準が“100〜110”とし、『黄色表示』と
いう属性を付与する基準が“111〜120”とし、
『赤色表示』という属性を付与する基準が“120より
大きい値”とする。
【0030】このようなランク分けされた基準により、
図4に示す実行回数カウンタの値を対応させると、シー
ケンス“000101”、“000102”、“000
103”、“000105”は『黄色表示』という属性
が付与され、ディスプレイ装置70に当該シーケンスの
命令が黄色で表示される。
【0031】また、シーケンス“000106”、“0
00107”、“000109”、“000111”、
“000115”、“000116”は『青色表示』と
いう属性が付与され、ディスプレイ装置70上では青色
で表示される。
【0032】さらに、シーケンス“000117”は、
『赤色表示』という属性が付与され、ディスプレイ装置
70上では赤色で表示される。
【0033】さらに、ディスプレイ装置70上に表示す
る属性を付与して表示するパターンとして、シーケンス
の横にマーク、例えば“*”の数により命令の実行頻度
のグレードを表示する方法等、実行回数カウンタ50に
より計数された数に応じて種々属性を付与することがで
きる。
【0034】なお、上記の“*”等のマークを用いて、
命令の実行頻度(グレード)に応じて“*”の数を増や
し、グレード1の場合には、“*”、グレード2の場合
には“**”、 …、というように付与することも可能
である。この例は、編集部60でプリンタ80用に編集
して、プリンタ80よりリストとして出力する場合にも
用いることができる。
【0035】なお、音声出力の機能を図2の構成に付加
することにより、属性として『音声』を付与することも
可能である。具体的には、ディスプレイ装置70上に、
実行中の命令を指し示すマークを表示しておくととも
に、ある命令の実行頻度が一定値以上になった場合に、
ブザーを発することも可能である。
【0036】なお、上記の実施例の図3のステップ4に
おいて、オブジェクトプログラムの全ての命令の実行が
終了してから属性の付与を行ったが、この例に限定され
ることなく、命令実行中に、属性付与部90が設定した
所定値より実行頻度が大きくなった命令には、その時点
で属性を付与し、表示する方法もある。
【0037】本発明は、上記の実施例に限定されること
なく、付与属性の種類、属性を付与するタイミング、デ
ィスプレイ上に表示する位置等は特許請求の範囲内にお
いて種々変更が可能である。
【0038】上記の本実施例からわかるように、属性が
付与された命令が実行頻度の高い命令であると認識でき
るため、高頻度の命令をソースリストの中より目で確認
しなくとも、容易に抽出できるので、当該命令の最適化
処理やデータ構成条件の設定等の処理に容易に利用する
ことができる。
【0039】
【発明の効果】上述のように本発明によれば、ソースフ
ァイルの各命令の実行頻度に応じて、属性を付与して表
示することにより、直観的に実行頻度の高い部分を抽出
することができる。従って、一般的にプログラムの実行
性能を改善したい場合、どの部分のアルゴリズムを改善
すべきか否かが問題になるが、本発明のプログラム実行
経路表示装置によれば、実行頻度の高い部分を直観的に
知ることができるので、効果的である。
【図面の簡単な説明】
【図1】本発明の原理構成図である。
【図2】本発明の一実施例のプログラム実行経路表示装
置の構成図である。
【図3】本発明の一実施例のプログラム実行経路表示装
置の動作を示すフローチャートである。
【図4】実行回数カウンタを説明するための図である。
【図5】本発明の一実施例の属性を付与した例を示す図
である。
【図6】従来のプログラム実行頻度表示装置のシステム
構成図である。
【図7】従来のプログラム実行頻度表示装置の表示例を
示す図である。
【符号の説明】
10 ソースプログラム 20 翻訳部 30 オブジェクトプログラム 40 プログラム実行部 50 実行回数カウンタ 51 原始プログラム 52 目的プログラム 53 実行手段 54 計数手段 55 属性付与手段 56 編集手段 57 出力手段 60 編集部 70 ディスプレイ装置 80 プリンタ 90 属性付与部 101 命令 102 実行中マーク 103 実行頻度数

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 原始プログラム(51)から翻訳された
    目的プログラム(52)を実行する実行手段と、実行さ
    れた原始プログラム(51)の各命令と共に命令毎の実
    行頻度を出力する出力手段(57)を有する装置におい
    て、 該実行手段(53)により実行されるプログラムの命令
    毎の実行回数をカウントする計数手段(54)と、 該計数手段(54)によりカウントされた該実行回数に
    応じて該原始プログラム(51)の命令に属性を付与す
    る属性付与手段(55)と、 該属性付与手段(55)において属性を付与された該原
    始プログラム(51)の命令を出力形態に応じて編集す
    る編集手段(56)と、 該編集手段(56)により編集された情報に従って出力
    する出力手段(57)を有することを特徴とするプログ
    ラム実行経路表示装置。
JP5304373A 1993-12-03 1993-12-03 プログラム実行経路表示装置 Pending JPH07160531A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5304373A JPH07160531A (ja) 1993-12-03 1993-12-03 プログラム実行経路表示装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5304373A JPH07160531A (ja) 1993-12-03 1993-12-03 プログラム実行経路表示装置

Publications (1)

Publication Number Publication Date
JPH07160531A true JPH07160531A (ja) 1995-06-23

Family

ID=17932244

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5304373A Pending JPH07160531A (ja) 1993-12-03 1993-12-03 プログラム実行経路表示装置

Country Status (1)

Country Link
JP (1) JPH07160531A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007328722A (ja) * 2006-06-09 2007-12-20 Fujitsu Ltd 稼働状況監視プログラム
JP2012027912A (ja) * 2010-07-20 2012-02-09 General Electric Co <Ge> アプリケーションコードの実行通知に用いるシステム及び方法
JP2012027911A (ja) * 2010-07-20 2012-02-09 General Electric Co <Ge> アプリケーション・コードの実行表示用のシステムおよび方法
JP2017167937A (ja) * 2016-03-17 2017-09-21 株式会社東芝 生成装置、プログラム、生成方法および情報処理装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007328722A (ja) * 2006-06-09 2007-12-20 Fujitsu Ltd 稼働状況監視プログラム
US8122435B2 (en) 2006-06-09 2012-02-21 Fujitsu Limited Operating status monitoring program, method and device
JP2012027912A (ja) * 2010-07-20 2012-02-09 General Electric Co <Ge> アプリケーションコードの実行通知に用いるシステム及び方法
JP2012027911A (ja) * 2010-07-20 2012-02-09 General Electric Co <Ge> アプリケーション・コードの実行表示用のシステムおよび方法
JP2017167937A (ja) * 2016-03-17 2017-09-21 株式会社東芝 生成装置、プログラム、生成方法および情報処理装置

Similar Documents

Publication Publication Date Title
US6964036B2 (en) Descriptive variables while debugging
US6961924B2 (en) Displaying variable usage while debugging
US5926638A (en) Program debugging system for debugging a program having graphical user interface
CN109101410B (zh) 一种风险驱动测试方法和装置以及计算机可读存储介质
JP3380390B2 (ja) デバッグ情報表示装置
JP6763153B2 (ja) ハードウェア/ソフトウェア協調検証装置およびハードウェア/ソフトウェア協調検証方法
JPH07160531A (ja) プログラム実行経路表示装置
JPH1165845A (ja) ストール検出表示装置及び方法
CN111309298B (zh) 数控系统中基于自定义格式文件实现加工刀路编制的系统及其处理方法
JPS62113244A (ja) プログラムテスト装置
CA2447163A1 (en) A visual debugging interface
JPH03241439A (ja) テストデータ作成ツール
JP2000207246A (ja) デバッグ支援装置及び方法並びにデバッグ支援用ソフトウェアを記録した記録媒体
US20240070051A1 (en) System and method of analyzing software application performance
JPH02220145A (ja) プログラムトレース方式
JP2894732B2 (ja) 論理回路シミュレーシヨン装置
JPH05158741A (ja) コンピュータプログラムのテスト検証方法
JPH0350640A (ja) 実行用プログラムのトレース情報編集方式
JP2002318712A (ja) プログラム実行履歴解析方法
JPH05108404A (ja) デバツガシステム
JPH0793144A (ja) プログラム解析装置
WO2004097545A2 (en) A method of executing a computer program
JPH06231001A (ja) シンボル名入力装置
JPH04217034A (ja) プログラムトレースの表示方式
JPS6274130A (ja) プログラム構造資料作成処理装置

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20010410