JPH11312104A - プロファイラ用プログラム生成装置 - Google Patents
プロファイラ用プログラム生成装置Info
- Publication number
- JPH11312104A JPH11312104A JP10117441A JP11744198A JPH11312104A JP H11312104 A JPH11312104 A JP H11312104A JP 10117441 A JP10117441 A JP 10117441A JP 11744198 A JP11744198 A JP 11744198A JP H11312104 A JPH11312104 A JP H11312104A
- Authority
- JP
- Japan
- Prior art keywords
- profiler
- program
- executable program
- instruction code
- library
- 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.)
- Granted
Links
Landscapes
- Debugging And Monitoring (AREA)
Abstract
(57)【要約】
【課題】 オブジェクト属性をもった実行可能プログラ
ムについてプロファイラ用実行可能プログラムを自動生
成する。 【解決手段】 プログラムのファイルヘッダからオブ
ジェクト属性を判定し、オブジェクト属性に基づいてプ
ログラムの性能解析に必要な関数群の呼ばれ回数の計数
結果をメモリに格納可能とさせるプロファイラ用スター
トアップ命令コードのライブラリを選択し、該ライブラ
リをプロファイラ起動時の引数として指定し、引数に基
づいてプロファイラを再帰的に起動し、呼ばれ回数を計
数するプロファイラ用命令をプログラムに追加してプロ
ファイラ用命令コードを作成し、これに選択されたライ
ブラリのプロファイラ用スタートアップ命令コードを付
加して総合してプロファイラ用プログラムを生成する。
ムについてプロファイラ用実行可能プログラムを自動生
成する。 【解決手段】 プログラムのファイルヘッダからオブ
ジェクト属性を判定し、オブジェクト属性に基づいてプ
ログラムの性能解析に必要な関数群の呼ばれ回数の計数
結果をメモリに格納可能とさせるプロファイラ用スター
トアップ命令コードのライブラリを選択し、該ライブラ
リをプロファイラ起動時の引数として指定し、引数に基
づいてプロファイラを再帰的に起動し、呼ばれ回数を計
数するプロファイラ用命令をプログラムに追加してプロ
ファイラ用命令コードを作成し、これに選択されたライ
ブラリのプロファイラ用スタートアップ命令コードを付
加して総合してプロファイラ用プログラムを生成する。
Description
【0001】
【発明の属する技術分野】本発明は、プロファイラ用の
プログラムを自動生成するプロファイラ用プログラム生
成装置に関する。
プログラムを自動生成するプロファイラ用プログラム生
成装置に関する。
【0002】
【従来の技術】周知のように、Cコンパイラなどで生成
した実行可能プログラムの性能を解析するためのプログ
ラムにプロファイラがある。従来、このプロファイラ
は、計算機システムなどで作成した実行可能プログラム
の性能を解析するために用いられている。特開平5−1
50975号公報「プログラム自動評価方法」には、従
来のプロファイラの一例が記載されている。この公報に
記載されたプロファイラは、ソースコードから構文解析
処理を用いて構文木を生成し、繰返構造抽出処理を用い
て繰り返し構造を抽出し、計算時間評価処理を用いて計
算時間評価値を求め、計算時間評価値表示処理を用いて
表示する。
した実行可能プログラムの性能を解析するためのプログ
ラムにプロファイラがある。従来、このプロファイラ
は、計算機システムなどで作成した実行可能プログラム
の性能を解析するために用いられている。特開平5−1
50975号公報「プログラム自動評価方法」には、従
来のプロファイラの一例が記載されている。この公報に
記載されたプロファイラは、ソースコードから構文解析
処理を用いて構文木を生成し、繰返構造抽出処理を用い
て繰り返し構造を抽出し、計算時間評価処理を用いて計
算時間評価値を求め、計算時間評価値表示処理を用いて
表示する。
【0003】
【発明が解決しようとする課題】しかし、上記従来技術
には、次のような問題点があった。第1の問題点は、実
行可能プログラムのもとになるソースコードが提供され
ていない場合、その実行可能プログラムに対する計算時
間が予測できないことである。その理由は、従来のプロ
ファイラでは、ソースコードが提供されない実行可能プ
ログラムについては何ら考慮されていないためである。
には、次のような問題点があった。第1の問題点は、実
行可能プログラムのもとになるソースコードが提供され
ていない場合、その実行可能プログラムに対する計算時
間が予測できないことである。その理由は、従来のプロ
ファイラでは、ソースコードが提供されない実行可能プ
ログラムについては何ら考慮されていないためである。
【0004】第2の問題点は、ある計算機システムが複
数のオブジェクト属性を利用可能である場合、あらゆる
オブジェクト属性をもった実行可能プログラムに対する
プロファイラができないことである。その理由は、オブ
ジェクトの属性について何ら考慮されていないためであ
る。
数のオブジェクト属性を利用可能である場合、あらゆる
オブジェクト属性をもった実行可能プログラムに対する
プロファイラができないことである。その理由は、オブ
ジェクトの属性について何ら考慮されていないためであ
る。
【0005】本発明は、上述する問題点に鑑みてなされ
たもので、オブジェクト属性をもった実行可能プログラ
ムについてプロファイラ用実行可能プログラムを自動生
成することを目的とする。
たもので、オブジェクト属性をもった実行可能プログラ
ムについてプロファイラ用実行可能プログラムを自動生
成することを目的とする。
【0006】
【課題を解決するための手段】上記目的を達成するため
に、本発明では、第1の手段として、解析しようとする
プログラムからプロファイラで解析可能なプロファイラ
用プログラムを生成する装置において、プログラムのフ
ァイルヘッダを読み込むプログラム読み込み手段と、プ
ログラムのファイルヘッダからオブジェクト情報を抽出
し、プログラムのオブジェクト属性を判定するオブジェ
クト判定手段と、オブジェクト属性に基づいてプログラ
ムの性能解析に必要な関数群の呼ばれ回数の計数結果を
メモリに格納可能とさせるプロファイラ用スタートアッ
プ命令コードを含むライブラリを選択し、該ライブラリ
をプロファイラ起動時の引数として指定するプロファイ
ラ用スタートアップ命令選択手段と、前記引数に基づい
てプロファイラを再帰的に起動することによりプログラ
ムに含まれる命令を1つずつ解析して前記呼ばれ回数を
計数するプロファイラ用命令をプログラムに追加してプ
ロファイラ用命令コードを作成し、該プロファイラ用命
令コードにプロファイラ用スタートアップ命令選択手段
によって選択されたライブラリのプロファイラ用スター
トアップ命令コードを付加してプロファイラ用プログラ
ムを生成するプロファイラ用プログラム生成手段とを具
備する手段を採用する。
に、本発明では、第1の手段として、解析しようとする
プログラムからプロファイラで解析可能なプロファイラ
用プログラムを生成する装置において、プログラムのフ
ァイルヘッダを読み込むプログラム読み込み手段と、プ
ログラムのファイルヘッダからオブジェクト情報を抽出
し、プログラムのオブジェクト属性を判定するオブジェ
クト判定手段と、オブジェクト属性に基づいてプログラ
ムの性能解析に必要な関数群の呼ばれ回数の計数結果を
メモリに格納可能とさせるプロファイラ用スタートアッ
プ命令コードを含むライブラリを選択し、該ライブラリ
をプロファイラ起動時の引数として指定するプロファイ
ラ用スタートアップ命令選択手段と、前記引数に基づい
てプロファイラを再帰的に起動することによりプログラ
ムに含まれる命令を1つずつ解析して前記呼ばれ回数を
計数するプロファイラ用命令をプログラムに追加してプ
ロファイラ用命令コードを作成し、該プロファイラ用命
令コードにプロファイラ用スタートアップ命令選択手段
によって選択されたライブラリのプロファイラ用スター
トアップ命令コードを付加してプロファイラ用プログラ
ムを生成するプロファイラ用プログラム生成手段とを具
備する手段を採用する。
【0007】また、第2の手段として、上記第1の手段
において、オブジェクト情報に基づいてプログラムが実
行可能プログラムであるか否かを判定し、実行可能プロ
グラムについてのみオブジェクト属性を判定するように
オブジェクト判定手段を構成するという手段を採用す
る。
において、オブジェクト情報に基づいてプログラムが実
行可能プログラムであるか否かを判定し、実行可能プロ
グラムについてのみオブジェクト属性を判定するように
オブジェクト判定手段を構成するという手段を採用す
る。
【0008】
【発明の実施の形態】以下、本発明に係わるプロファイ
ラ用プログラム生成装置の一実施形態について、図面を
参照して説明する。
ラ用プログラム生成装置の一実施形態について、図面を
参照して説明する。
【0009】図1は、本実施形態の機能構成を示すブロ
ック図である。この図に示すように、本プログラム自動
評価装置は、キーボード等の入力装置1と、プログラム
制御により動作するデータ処理装置2と、ハードディス
ク装置等の出力装置3とから構成される。入力装置1へ
の操作情報はデータ処理装置2に入力され、データ処理
装置2の処理結果は、出力装置3に出力されるようにな
っている。
ック図である。この図に示すように、本プログラム自動
評価装置は、キーボード等の入力装置1と、プログラム
制御により動作するデータ処理装置2と、ハードディス
ク装置等の出力装置3とから構成される。入力装置1へ
の操作情報はデータ処理装置2に入力され、データ処理
装置2の処理結果は、出力装置3に出力されるようにな
っている。
【0010】また、上記データ処理装置2は、実行可能
プログラム読み込み手段S1と、オブジェクト形式判定
手段S2と、プロファイラ用スタートアップ命令選択手
段S3と、プロファイラ用実行可能プログラム生成手段
S4とから機能構成される。データ処理装置2における
上記各種機能は、データ処理装置2に搭載されたプロぐ
らむによって実現されるものである。
プログラム読み込み手段S1と、オブジェクト形式判定
手段S2と、プロファイラ用スタートアップ命令選択手
段S3と、プロファイラ用実行可能プログラム生成手段
S4とから機能構成される。データ処理装置2における
上記各種機能は、データ処理装置2に搭載されたプロぐ
らむによって実現されるものである。
【0011】実行可能プログラム読み込み手段S1は、
入力装置1から与えられたファイル名文字列に基づいて
プロファイラの対象となる実行可能プログラムAをオー
プンし、ファイルヘッダ、命令コードの内容を読み込む
ものである。オブジェクト形式判定手段S2は、実行可
能プログラムAに含まれるファイルヘッダからオブジェ
クト情報を抽出し、そのオブジェクト形式が実行可能形
式か否か、また、その属性(オブジェクト属性)が32
ビットであるかあるいは64ビットであるかを判定する
ものである。
入力装置1から与えられたファイル名文字列に基づいて
プロファイラの対象となる実行可能プログラムAをオー
プンし、ファイルヘッダ、命令コードの内容を読み込む
ものである。オブジェクト形式判定手段S2は、実行可
能プログラムAに含まれるファイルヘッダからオブジェ
クト情報を抽出し、そのオブジェクト形式が実行可能形
式か否か、また、その属性(オブジェクト属性)が32
ビットであるかあるいは64ビットであるかを判定する
ものである。
【0012】プロファイラ用スタートアップ命令選択手
段S3は、オブジェクト形式判定手段S2によって判定
されたオブジェクト属性に適合したプロファイラ用スタ
ートアップ命令コードのライブラリを選択するものであ
る。プロファイラ用実行可能プログラム生成手段S4
は、実行可能プログラムAの命令を1つずつ解析し、そ
の性能解析に必要な関数群の呼ばれ回数を計数するプロ
ファイラ用命令の追加を行い、かつ、オブジェクト形式
選択手段S3によって選択されたライブラリのプロファ
イラ用スタートアップ命令コードを付加してプロファイ
ラ用実行可能プログラムBを生成する。
段S3は、オブジェクト形式判定手段S2によって判定
されたオブジェクト属性に適合したプロファイラ用スタ
ートアップ命令コードのライブラリを選択するものであ
る。プロファイラ用実行可能プログラム生成手段S4
は、実行可能プログラムAの命令を1つずつ解析し、そ
の性能解析に必要な関数群の呼ばれ回数を計数するプロ
ファイラ用命令の追加を行い、かつ、オブジェクト形式
選択手段S3によって選択されたライブラリのプロファ
イラ用スタートアップ命令コードを付加してプロファイ
ラ用実行可能プログラムBを生成する。
【0013】次に、上記のように構成された本実施形態
の動作について、図2に示す説明図を参照すると共に、
図3に示すフローチャートに沿って詳細に説明する。
の動作について、図2に示す説明図を参照すると共に、
図3に示すフローチャートに沿って詳細に説明する。
【0014】まず、図2に示すように、データ処理装置
2の各機能手段は、実行可能プログラム読み込み手段S
1→オブジェクト形式判定手段S2→プロファイラ用ス
タートアップ命令選択手段S3→プロファイラ用実行可
能プログラム生成手段S4の順に呼び出され、各々に以
下に説明する処理を実行する。
2の各機能手段は、実行可能プログラム読み込み手段S
1→オブジェクト形式判定手段S2→プロファイラ用ス
タートアップ命令選択手段S3→プロファイラ用実行可
能プログラム生成手段S4の順に呼び出され、各々に以
下に説明する処理を実行する。
【0015】すなわち、最初に呼び出された実行可能プ
ログラム読み込み手段S1は、入力装置1から与えられ
たファイル名文字列に基づいてプロファイラの解析対象
となる実行可能プログラムAをファイルオープンの形で
開き、ファイルヘッダ、命令コードをすべて読み込む。
ログラム読み込み手段S1は、入力装置1から与えられ
たファイル名文字列に基づいてプロファイラの解析対象
となる実行可能プログラムAをファイルオープンの形で
開き、ファイルヘッダ、命令コードをすべて読み込む。
【0016】ここで、通常、プログラムのファイルヘッ
ダには、自らのオブジェクト情報が記録されており、こ
のオブジェクト情報には、実行可能形式か否かを示す
オブジェクト形式と、64ビットの命令コードあるい
はデータを含むか否かを示すオブジェクト属性とが記録
されている。
ダには、自らのオブジェクト情報が記録されており、こ
のオブジェクト情報には、実行可能形式か否かを示す
オブジェクト形式と、64ビットの命令コードあるい
はデータを含むか否かを示すオブジェクト属性とが記録
されている。
【0017】このように読み込まれた実行可能プログラ
ムAのファイルヘッダや命令コードに対して、オブジェ
クト形式判定手段S2は、実行可能プログラムAに含ま
れるファイルヘッダ中のオブジェクト情報Oを抽出する
(ステップA2)。そして、このオブジェクト情報Oに基
づいて実行可能プログラムAのオブジェクト形式が実行
可能形式であるか否かを判定し(ステップA2)、実行可
能形式でない場合は実行可能プログラムAがプロファイ
ラの解析対象でないことを告げるプロファイラ対象不可
メッセージを出力装置3に出力し(ステップA3)、処理
を終了する。
ムAのファイルヘッダや命令コードに対して、オブジェ
クト形式判定手段S2は、実行可能プログラムAに含ま
れるファイルヘッダ中のオブジェクト情報Oを抽出する
(ステップA2)。そして、このオブジェクト情報Oに基
づいて実行可能プログラムAのオブジェクト形式が実行
可能形式であるか否かを判定し(ステップA2)、実行可
能形式でない場合は実行可能プログラムAがプロファイ
ラの解析対象でないことを告げるプロファイラ対象不可
メッセージを出力装置3に出力し(ステップA3)、処理
を終了する。
【0018】一方、オブジェクト形式判定手段S2は、
ステップA2において実行可能プログラムAがプロファ
イラの解析対象であると判断すると、上記オブジェクト
情報Oに基づいて、当該実行可能プログラムAのオブジ
ェクト属性が32ビットであるか否かを判断し(ステッ
プA4)、32ビットであると判断した場合は32ビット
用プロファイラ起動設定を行う(ステップA5)。
ステップA2において実行可能プログラムAがプロファ
イラの解析対象であると判断すると、上記オブジェクト
情報Oに基づいて、当該実行可能プログラムAのオブジ
ェクト属性が32ビットであるか否かを判断し(ステッ
プA4)、32ビットであると判断した場合は32ビット
用プロファイラ起動設定を行う(ステップA5)。
【0019】また、32ビットでないと判断した場合に
は、当該実行可能プログラムAのオブジェクト属性が6
4ビットであるか否かを判断し(ステップA4)、64ビ
ットであると判断した場合は64ビット用プロファイラ
起動設定を行い(ステップA6)、64ビットでないと判
断した場合には、プロファイラ対象不可メッセージを出
力装置3に出力し(ステップA3)、処理を終了する。
は、当該実行可能プログラムAのオブジェクト属性が6
4ビットであるか否かを判断し(ステップA4)、64ビ
ットであると判断した場合は64ビット用プロファイラ
起動設定を行い(ステップA6)、64ビットでないと判
断した場合には、プロファイラ対象不可メッセージを出
力装置3に出力し(ステップA3)、処理を終了する。
【0020】ここで、上記32ビット用プロファイラ起
動設定では、プロファイラ用スタートアップ命令選択手
段S3及びプロファイラ用実行可能プログラム生成手段
S4として32ビット用のプロファイラを使うように設
定し、再帰的に当該32ビット用プロファイラを起動す
る準備を行う(ステップA8)。また、上記64ビット
用プロファイラ起動設定では、プロファイラ用スタート
アップ命令選択手段S3及びプロファイラ用実行可能プ
ログラム生成手段S4として64ビット用のプロファイ
ラを使うように設定し、再帰的に当該64ビット用プロ
ファイラを起動する準備を行う(ステップA8)。
動設定では、プロファイラ用スタートアップ命令選択手
段S3及びプロファイラ用実行可能プログラム生成手段
S4として32ビット用のプロファイラを使うように設
定し、再帰的に当該32ビット用プロファイラを起動す
る準備を行う(ステップA8)。また、上記64ビット
用プロファイラ起動設定では、プロファイラ用スタート
アップ命令選択手段S3及びプロファイラ用実行可能プ
ログラム生成手段S4として64ビット用のプロファイ
ラを使うように設定し、再帰的に当該64ビット用プロ
ファイラを起動する準備を行う(ステップA8)。
【0021】このようにしてオブジェクト形式判定手段
S2における処理が終了すると、プロファイラ用スター
トアップ命令選択手段S3は、実行可能プログラムAの
オブジェクト属性に適合したライブラリを選択する。
S2における処理が終了すると、プロファイラ用スター
トアップ命令選択手段S3は、実行可能プログラムAの
オブジェクト属性に適合したライブラリを選択する。
【0022】すなわち、オブジェクトの属性が32ビッ
トだった場合は、32ビット特有のプロファイラ用スタ
ートアップ命令コードI1を含むライブラリCを選択
し、再帰的に起動するプロファイラの引数としてライブ
ラリCを指定する。一方、オブジェクトの属性が64ビ
ットだった場合には、64ビット特有のプロファイラ用
スタートアップ命令コードI1’を含むライブラリDを
選択し、再帰的に起動するプロファイラの引数としてラ
イブラリDを指定する。
トだった場合は、32ビット特有のプロファイラ用スタ
ートアップ命令コードI1を含むライブラリCを選択
し、再帰的に起動するプロファイラの引数としてライブ
ラリCを指定する。一方、オブジェクトの属性が64ビ
ットだった場合には、64ビット特有のプロファイラ用
スタートアップ命令コードI1’を含むライブラリDを
選択し、再帰的に起動するプロファイラの引数としてラ
イブラリDを指定する。
【0023】ここで、上記プロファイラ用スタートアッ
プ命令コードI1,I1’は、実行可能プログラムAの
性能解析に必要な関数群の呼ばれ回数の計数結果をメモ
リに格納できるように、プロファイラを起動させる際に
最初に実行される命令コードである。
プ命令コードI1,I1’は、実行可能プログラムAの
性能解析に必要な関数群の呼ばれ回数の計数結果をメモ
リに格納できるように、プロファイラを起動させる際に
最初に実行される命令コードである。
【0024】このようなプロファイラ用スタートアップ
命令選択手段S3におけるライブラリ指定処理が終了す
ると、プロファイラ用実行可能プログラム生成手段S4
は、プロファイラ用スタートアップ命令選択手段S3に
よって指定された引数に基づいて再起的にプロファイラ
を起動して実行可能プログラムAに含まれる命令を1つ
ずつ解析する。そして、実行可能プログラムAの性能解
析に必要な関数群の呼ばれ回数を計数するプロファイラ
用命令を実行可能プログラムAに追加することによりプ
ロファイラ用命令コードI2を作成する。
命令選択手段S3におけるライブラリ指定処理が終了す
ると、プロファイラ用実行可能プログラム生成手段S4
は、プロファイラ用スタートアップ命令選択手段S3に
よって指定された引数に基づいて再起的にプロファイラ
を起動して実行可能プログラムAに含まれる命令を1つ
ずつ解析する。そして、実行可能プログラムAの性能解
析に必要な関数群の呼ばれ回数を計数するプロファイラ
用命令を実行可能プログラムAに追加することによりプ
ロファイラ用命令コードI2を作成する。
【0025】さらに、プロファイラ用実行可能プログラ
ム生成手段S4は、プロファイラ用命令コードI2にオ
ブジェクト形式選択手段S3によって選択されたプロフ
ァイラ用スタートアップ命令コードI1又はI1’を付
加してプロファイラ用実行可能プログラムBを生成す
る。
ム生成手段S4は、プロファイラ用命令コードI2にオ
ブジェクト形式選択手段S3によって選択されたプロフ
ァイラ用スタートアップ命令コードI1又はI1’を付
加してプロファイラ用実行可能プログラムBを生成す
る。
【0026】例えば、実行可能プログラムAのオブジェ
クト属性が32ビットの場合は、ライブラリCが引数指
定されることにより、プロファイラ用スタートアップ命
令コードI1がプロファイラ用命令コードI2に付加さ
れてプロファイラ用実行可能プログラムBが生成され、
実行可能プログラムAのオブジェクト属性が64ビット
の場合には、ライブラリDが引数指定されることによ
り、プロファイラ用スタートアップ命令コードI1’が
プロファイラ用命令コードI2に付加されてプロファイ
ラ用実行可能プログラムBが生成される。
クト属性が32ビットの場合は、ライブラリCが引数指
定されることにより、プロファイラ用スタートアップ命
令コードI1がプロファイラ用命令コードI2に付加さ
れてプロファイラ用実行可能プログラムBが生成され、
実行可能プログラムAのオブジェクト属性が64ビット
の場合には、ライブラリDが引数指定されることによ
り、プロファイラ用スタートアップ命令コードI1’が
プロファイラ用命令コードI2に付加されてプロファイ
ラ用実行可能プログラムBが生成される。
【0027】なお、プロファイラ用実行可能プログラム
生成手段S4における上記処理が終了すると、実行可能
プログラム読み込み手段S1によってファイルオープン
された実行可能プログラムAはファイルクローズの形で
閉じられる。
生成手段S4における上記処理が終了すると、実行可能
プログラム読み込み手段S1によってファイルオープン
された実行可能プログラムAはファイルクローズの形で
閉じられる。
【0028】
【発明の効果】以上説明したように、本発明に係わるプ
ロファイラ用プログラム生成装置によれば、以下のよう
な効果を奏する。 (1)解析しようとするプログラムからプロファイラで
解析可能なプロファイラ用プログラムを生成する装置に
おいて、プログラムのファイルヘッダを読み込むプログ
ラム読み込み手段と、プログラムのファイルヘッダから
オブジェクト情報を抽出し、プログラムのオブジェクト
属性を判定するオブジェクト判定手段と、前記属性に基
づいてプログラムの性能解析に必要な関数群の呼ばれ回
数の計数結果をメモリに格納可能とさせるプロファイラ
用スタートアップ命令コードを含むライブラリを選択
し、該ライブラリをプロファイラ起動時の引数として指
定するプロファイラ用スタートアップ命令選択手段と、
前記引数に基づいてプロファイラを再帰的に起動するこ
とによりプログラムに含まれる命令を1つずつ解析して
前記呼ばれ回数を計数するプロファイラ用命令をプログ
ラムに追加してプロファイラ用命令コードを作成し、該
プロファイラ用命令コードにプロファイラ用スタートア
ップ命令選択手段によって選択されたライブラリのプロ
ファイラ用スタートアップ命令コードを付加してプロフ
ァイラ用プログラムを生成するプロファイラ用プログラ
ム生成手段とを具備するので、関数群の呼ばれ回数を記
録できる環境になり、プログラムのオブジェクト形式を
意識することなくプログラムの性能解析を可能とするこ
とができる。 (2)起動させたいプロファイラの名前をフルパスで記
述しなくても、オブジェクトの属性に適合したプロファ
イラ、およびプロファイラ用スタートアップ命令を含ん
だライブラリを呼び出すことができる。この結果、ユー
ザの入力ミスやフルパスで記述しなければならないとい
う負担が削減でき、オブジェクト性能解析の繰り返し作
業に関する能率も向上する。
ロファイラ用プログラム生成装置によれば、以下のよう
な効果を奏する。 (1)解析しようとするプログラムからプロファイラで
解析可能なプロファイラ用プログラムを生成する装置に
おいて、プログラムのファイルヘッダを読み込むプログ
ラム読み込み手段と、プログラムのファイルヘッダから
オブジェクト情報を抽出し、プログラムのオブジェクト
属性を判定するオブジェクト判定手段と、前記属性に基
づいてプログラムの性能解析に必要な関数群の呼ばれ回
数の計数結果をメモリに格納可能とさせるプロファイラ
用スタートアップ命令コードを含むライブラリを選択
し、該ライブラリをプロファイラ起動時の引数として指
定するプロファイラ用スタートアップ命令選択手段と、
前記引数に基づいてプロファイラを再帰的に起動するこ
とによりプログラムに含まれる命令を1つずつ解析して
前記呼ばれ回数を計数するプロファイラ用命令をプログ
ラムに追加してプロファイラ用命令コードを作成し、該
プロファイラ用命令コードにプロファイラ用スタートア
ップ命令選択手段によって選択されたライブラリのプロ
ファイラ用スタートアップ命令コードを付加してプロフ
ァイラ用プログラムを生成するプロファイラ用プログラ
ム生成手段とを具備するので、関数群の呼ばれ回数を記
録できる環境になり、プログラムのオブジェクト形式を
意識することなくプログラムの性能解析を可能とするこ
とができる。 (2)起動させたいプロファイラの名前をフルパスで記
述しなくても、オブジェクトの属性に適合したプロファ
イラ、およびプロファイラ用スタートアップ命令を含ん
だライブラリを呼び出すことができる。この結果、ユー
ザの入力ミスやフルパスで記述しなければならないとい
う負担が削減でき、オブジェクト性能解析の繰り返し作
業に関する能率も向上する。
【図1】 本発明の一実施形態の機能構成を示すブロッ
ク図である。
ク図である。
【図2】 本発明の一実施形態の動作を説明するための
説明図である。
説明図である。
【図3】 本発明の一実施形態の動作を示すフローチャ
ートである。
ートである。
1……入力装置 2……データ処理装置 3……出力装置 S1……実行可能プログラム読み込み手段 S2……オブジェクト形式判定手段 S3……プロファイラ用スタートアップ命令選択手段 S4……プロファイラ用実行可能プログラム生成手段 A……実行可能プログラム B……プロファイラ用実行可能プログラム C,D……ライブラリ
Claims (2)
- 【請求項1】 解析しようとするプログラムからプロフ
ァイラで解析可能なプロファイラ用プログラムを生成す
る装置であって、 プログラムのファイルヘッダを読み込むプログラム読み
込み手段と、 プログラムのファイルヘッダからオブジェクト情報を抽
出し、プログラムのオブジェクト属性を判定するオブジ
ェクト判定手段と、 前記オブジェクト属性に基づいてプログラムの性能解析
に必要な関数群の呼ばれ回数の計数結果をメモリに格納
可能とさせるプロファイラ用スタートアップ命令コード
を含むライブラリを選択し、該ライブラリをプロファイ
ラ起動時の引数として指定するプロファイラ用スタート
アップ命令選択手段と、 前記引数に基づいてプロファイラを再帰的に起動するこ
とによりプログラムに含まれる命令を1つずつ解析して
前記呼ばれ回数を計数するプロファイラ用命令をプログ
ラムに追加してプロファイラ用命令コードを作成し、該
プロファイラ用命令コードにプロファイラ用スタートア
ップ命令選択手段によって選択されたライブラリのプロ
ファイラ用スタートアップ命令コードを付加してプロフ
ァイラ用プログラムを生成するプロファイラ用プログラ
ム生成手段と、 を具備することを特徴とするプロファイラ用プログラム
生成装置。 - 【請求項2】 オブジェクト判定手段は、オブジェクト
情報に基づいてプログラムが実行可能プログラムである
か否かを判定し、実行可能プログラムについてのみオブ
ジェクト属性を判定するように構成されることを特徴と
する請求項1記載のプロファイラ用プログラム生成装
置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP10117441A JP3137071B2 (ja) | 1998-04-27 | 1998-04-27 | プロファイラ用プログラム生成装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP10117441A JP3137071B2 (ja) | 1998-04-27 | 1998-04-27 | プロファイラ用プログラム生成装置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH11312104A true JPH11312104A (ja) | 1999-11-09 |
| JP3137071B2 JP3137071B2 (ja) | 2001-02-19 |
Family
ID=14711734
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP10117441A Expired - Fee Related JP3137071B2 (ja) | 1998-04-27 | 1998-04-27 | プロファイラ用プログラム生成装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3137071B2 (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2018026114A (ja) * | 2016-08-09 | 2018-02-15 | 富士通株式会社 | アプリケーション・プロファイリング・ジョブ管理システム、プログラム、及び方法 |
-
1998
- 1998-04-27 JP JP10117441A patent/JP3137071B2/ja not_active Expired - Fee Related
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2018026114A (ja) * | 2016-08-09 | 2018-02-15 | 富士通株式会社 | アプリケーション・プロファイリング・ジョブ管理システム、プログラム、及び方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| JP3137071B2 (ja) | 2001-02-19 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6757889B1 (en) | Source program checking device and program and method for same | |
| US20040049768A1 (en) | Method and program for compiling processing, and computer-readable medium recoding the program thereof | |
| Kohl et al. | The PVM 3.4 tracing facility and XPVM 1.1 | |
| JP2004164554A (ja) | プログラム実行監視装置および方法 | |
| CN113485702A (zh) | 配置化生成前端页面的方法、装置、设备及存储介质 | |
| JP2004185508A (ja) | プログラム解析装置およびプログラム | |
| JP4996262B2 (ja) | プログラム部品化支援装置 | |
| JP2009064124A (ja) | 性能データ収集・表示システム、性能データ表示装置、そのプログラム | |
| US20030009744A1 (en) | Source code line counting system and method | |
| JP3137071B2 (ja) | プロファイラ用プログラム生成装置 | |
| CN119248245A (zh) | 应用代码可视化方法、装置、计算机设备及存储介质 | |
| JP3049814B2 (ja) | マイクロコンピュータの言語処理装置 | |
| JP2000137600A (ja) | クライアント/サーバアプリケーション作成方法及びその装置並びに情報記録媒体 | |
| JP3857842B2 (ja) | プログラム分析装置及び記録媒体 | |
| JP2000293410A (ja) | プロファイラ | |
| JP3011115B2 (ja) | デバッグシステム | |
| JPH09101880A (ja) | プログラム分析装置 | |
| JP2006293436A (ja) | プログラムコード生成装置および生成方法 | |
| JP2000020296A (ja) | プログラム変更支援装置 | |
| JP3886726B2 (ja) | プログラム仕様書作成装置及びプログラム仕様書作成方法並びにプログラム仕様書作成プログラムを記録した記録媒体 | |
| JP2973906B2 (ja) | キャラクタ・ユーザ・インタフェース装置 | |
| JP2811804B2 (ja) | 変数出力範囲指定方式 | |
| JPH0635752A (ja) | 解析プログラム生成方式 | |
| JP2999654B2 (ja) | 端末装置 | |
| KR100546672B1 (ko) | 프로그램에서의 형식 문자열을 이용한 문자 출력 내용의 기록 및 번역 방법 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20001107 |
|
| LAPS | Cancellation because of no payment of annual fees |