itrace --- SPARCプラットホーム用命令トレースプログラム



概要

 itrace は、SPARCプロセッサ用にコンパイルされたプログラムの実行を 実環境の上でトレースし、実行した命令のアドレスや参照したデータのア ドレス等の情報を出力するプログラムです。デバッガと同様の手法を用い てトレースを行いますので、トレース採取の対象となるプログラムに対し て、ライブラリの組み込みや再コンパイルなどの特別な操作を必要としま せん。シェルのコマンドラインから起動するのと同様の感覚で、トレース 情報を採取することができます。
 itrace は、プロセッサアーキテクチャ研究のためのツールの 1つとし て開発されました。種々のプログラムに対して、トレース範囲を指定して プログラム実行の動的なトレースを採取できるほか、任意の実行時点での 強制 core dump を可能としています。core ファイルを解析することで、 プログラム実行環境のスナップショットを得ることが出来ますので、例え ば、SPARC命令セットを用いた試作マイクロプロセッサのテストにも応用 することができます。
 トレース範囲の指定は命令アドレスを用いて行います。このため、dbx などのデバッガを用いるなどして、あらかじめ、命令アドレスを調べてお く必要があります。
 一般に、トレース結果のデータ量は莫大なものとなるため、アドレス情 報については参照の局所性を利用した簡単なデータ量圧縮を行っています。 このため、トレース結果のファイルから元のアドレスを復元するためのユ ーティリティプログラム xordiff を付属させて公開しています。
 itrace は、現在、SunOS 4.1.x および Solaris 2.x 上で使用すること ができます。また、対象としているプロセッサの命令セットは Version 8 です。Solaris の場合、Solaris 2.6 までのバージョンでの動作は確認し ていますが、Solaris 7 での動作は保証しません。

今後の予定

 ソースコードの公開を予定しています。