11.26 [Trace]ビュー

[トレース]ビューでは、ナビゲーションタイムラインを使用した関数の実行を示すグラフィカルなナビゲーショングラフを表示できます。さらに、逆アセンブリトレースには、アドレスおよび選択されている場合は命令に関連付けられている関数呼び出しが表示されます。グラフの特定の時間をクリックすると、[逆アセンブリ]ビューを同期化します。

トレースがキャプチャされた場合、デバッガは情報をトレースストリームから抽出して伸張し、実行されたコードの完全な逆アセンブリをシンボルとともに提供します。

グラフの左列には、各関数の合計トレースにおける割合が表示されます。例えば、合計 1000 個の命令が実行され、これらの命令の 300 個が myFunction() に関連付けられている場合、この関数は 30% と表示されます。

ナビゲーションタイムラインで、色分けは、実行される命令および各関数がタイムラインごとに実行する命令の数を示すヒートマップです。濃い赤色は命令が多いことを示し、明るい黄色は命令が少ないことを示しています。ただし、1:1 のスケールでの配色は、濃い赤色がメモリアクセスの命令、オレンジ色が分岐命令、明るい緑色が他のすべての命令を表示するように変更されます。

図 11-36 スケールが 100:1 のトレースビュー
スケールが 100:1 のトレースビュー


[Trace]ビューはデフォルトでは表示されない場合があります。このビューを追加するには、以下の手順に従います。

  1. DS-5 デバッグパースペクティブで作業していることを確認します。

  2. [ウィンドウ] > [ビューを表示] > [トレース]を選択します。

[トレース]ビューのナビゲーショングラフには複数のタブが含まれています。

  • [トレース]タブには、グラフィカルタイムラインと逆アセンブリが表示されます。

  • [キャプチャデバイス]タブには、トレースキャプチャデバイスとトレースバッファに関する情報が表示され、ここでトレースキャプチャを設定することができます。

  • [ソース]タブには、トレースソースに関する情報が表示されます。

  • [範囲]タブでは、トレースキャプチャを特定のアドレス範囲に制限できます。

[トレース]タブには、以下も表示されます。

バッファサイズ

トレースレコードを保存するためのトレースバッファのサイズ。これはトレースキャプチャデバイスによって特定されます。トレースレコードには、命令レコードまたは非命令レコードを指定できます。

使用されたバッファ

トレースレコードに既に使用されているトレースバッファの容量。

ページ内のレコード

現在の[トレース]ビューでの、命令レコードおよび非命令レコードの総数。

表示レコード

[トレース]ビューの逆アセンブリ領域に表示されるトレースレコードの数。

ツールバーとコンテキストメニューのオプション

ツールバーまたはコンテキストメニューには、以下のオプションが用意されています。

[Linked:context]

このビューを[デバッグ制御]ビューで選択した接続にリンクします。これがデフォルトです。または、ビューを 対称的マルチプロセス (SMP) 接続の別の接続またはプロセッサにリンクすることもできます。リンクする接続がドロップダウンリストに表示されていない場合は、まず[デバッグ制御]ビューで接続を選択する必要があります。

非表示の場合はビューを更新する
非表示の場合はビューを更新しない

他のビューの背後にあり表示されない場合は、ビューの更新を切り替えます。デフォルトでは、非表示の場合はビューを更新しません。そのためトレースデータを失う可能性があります。

[Show Next Match]

ナビゲーショングラフおよび逆アセンブリトレースのフォーカスを、選択した関数または命令が次に一致する箇所に移動します。

[Show Previous Match]

ナビゲーショングラフおよび逆アセンブリトレースのフォーカスを、選択した関数または命令が直前に一致する箇所に移動します。

他の出現個所をマークしない(クリックしてマーキングを開始)
他の出現個所をマークする (クリックしてマーキングを中止)

関数トレースが選択されている場合は、影付きで強調表示されている選択した関数のすべての出現箇所をマークします。命令トレースが選択されている場合、このオプションは無効です。

[Clear Trace]

トレースバッファとトレースビューに現在含まれている未加工トレースデータをクリアします。

命令トレースを表示しています (クリックして関数に切り替え)
関数トレースを表示しています (クリックして命令に切り替え)

命令と関数の間で逆アセンブリトレースを切り替えます。

[Export Trace Report]

[Export Trace Report]ダイアログボックスを表示して、トレースデータをファイルに保存します。

[Home]

有効にすると、トレースビューがトレースバッファの先頭に移動します。トレースバッファが小さすぎる場合は、変化が見えない可能性があります。

[Page Back]

このオプションを有効にすると、[Trace]ビューを 1 ページ前に戻します。[Set Maximum Instruction Depth]設定を変更して、ページサイズを変更できます。

[Page Forward]

このオプションを有効にすると、[Trace]ビューを 1 ページ先に移動させます。[Set Maximum Instruction Depth]設定を変更して、ページサイズを変更できます。

[End]

有効にすると、トレースビューがトレースバッファの末尾に移動します。トレースバッファが小さすぎる場合は、変化が見えない可能性があります。

[Switch between navigation resolutions]

ナビゲーショングラフのタイムラインの解像度を変更します。

[Switch between alternate views]

ビューにナビゲーショングラフ、逆アセンブリトレースまたはその両方が表示されるように変更します。

[Focus Here]

リストの上部には、選択した時間帯で実行されている関数が表示されます。残りの関数は、時間内に選択したポイントの後で実行した順序で一覧表示されます。時間内のポイントの後に表示されない関数は末尾に配置され、合計時間の順に配置されます。

[Order By Total Time]

関数を関数内でかかった合計時間順に表示します。これがデフォルトの順序です。

[View Menu]

以下の[View Menu]オプションがあります。

[New Trace View]

[Trace]ビューの新しいインスタンスを表示します。

[Set Trace Page Size...]

逆アセンブリトレースに表示できる最大命令数を入力するダイアログボックスを表示します。命令数は、1,000 から 1,000,000 個の範囲で指定する必要があります。

トレースのトリガイベントの検出

トレースキャプチャバッファでトリガイベントを検索できます。

タイムスタンプの検出...

数値タイムスタンプを 64 ビット値または h:m:s 形式で入力できるダイアログボックスを表示します。

[関数の検出...]

トレースバッファで名前によって関数を検索できます。

[アドレスで命令を検出...]

トレースバッファでアドレスによって命令を検索できます。

[トレースバッファ内で ETM データアクセスを検出...]
トレースバッファでデータ値または値の範囲を検索できます。
[インデックスで命令を検出...]

インデックスによって命令を検索できます。正のインデックスはトレースバッファの開始位置に相対的であり、負のインデックスは終了位置に相対的です。

DTSL オプション...

DTSL コンフィギュレーションの追加、編集、選択ができるダイアログボックスを表示します。

注:

これによってトレースバッファがクリアされます。
[Open Trace Control View]

[トレース制御]ビューを開きます。

[Refresh]

ビュー内のデータをすべて破棄し、現在のトレースバッファから再び読み取ります。

[Freeze Data]

現在のビュー内のデータのフリーズを切り替えます。

[Trace Filter Settings...]

[トレース]ビューに表示するトレースレコードタイプを選択できるダイアログボックスを表示します。

非機密扱いPDF file icon PDF 版ARM DUI0446ZJ
Copyright © 2010–2016 ARM.All rights reserved.