Petit Profiler

COM/EXE profiler for DOS on PC-9800 series computer.

Download: petit_profiler_v0.3a.zip

PC-98 の DOS 上で動作するプロファイラツールです。 タイマ割り込みで定期的に CS:IP を監視して計測対象のプログラムのどの部分が多く実行されているかを記録します。

プロファイル結果は 128KiB のバイナリファイルとして保存されます。 ソースコードの関数名と実行頻度を対応付けるには、プロファイル結果とリンカの map ファイルを突き合わせるなどして、各関数に対応する IP レジスタの値が何回記録されたかを集計する必要があります。

v0.1a では、CS:IP の記録場所はコンベンショナルメモリのみでしたが、v0.2a から EMS メモリに CS:IP を記録することもできるようになりました。

v0.2a 時点ではプロファイラの動作について以下の制約があります。

  • タイマ割り込みをプロファイル計測に使用するため、タイマ割り込みを使用しているプログラムのプロファイルは計測できません。
  • タイマ割り込み発生時に、プログラム最初の命令の CS の指すセグメントと異なるセグメントを実行中の場合、その CS:IP は記録対象となりません。
    • 複数のコードセグメントを持つプログラムでは、最初の命令があるコードセグメント以外のセグメントの実行の様子は記録できません。

更新履歴

  • 2026/09/20: version 0.3a
    • PC/AT 互換機対応。
    • 不具合修正。
      • 計測対象のプログラム引数長が 0 の時にメモリ破壊する問題。
      • ログファイル書き出し時のエラーチェック忘れ。
  • 2026/05/03: version 0.2a
    • -b オプションと -e オプションを追加。
  • 2026/04/29: version 0.1a
    • 初版。


トップに戻る