この節では,選択しているマイクロコントローラが仮想化支援機能を搭載している場合における,仮想化支援機能向けのデバッグ機能について説明します。
CS+では,デバッグ対象とするコンテキストを指定することで,特定の仮想マシン(Guest)に着目したデバッグが可能です。
デバッグ対象とするコンテキストはデバッグ対象コンテキストの選択 ダイアログで選択します。デバッグ対象コンテキストを選択した場合のCS+の各機能の振る舞いは以下のとおりです。なお,各機能はデバッグ対象として選択したコア(PE)に基づいて動作します。
プロパティ パネルの[デバッグ・ツール設定]タブにおいて,[仮想化支援機能]カテゴリ内[デバッグ対象外コンテキストをスキップする]プロパティの設定値に応じて動作が変化します。
いずれかのブレーク要因が発生してプログラムの実行が停止した場合,停止した際のコンテキストがデバッグ対象として選択されている場合はそのまま停止します。デバッグ対象として選択されていないコンテキストで停止した場合,デバッグ対象のコンテキストに遷移するまで自動で実行を継続し,デバッグ対象コンテキストに遷移後に停止します。
プログラムの実行が停止した場合,コンテキストにかかわらずそのまま停止します。
[はい]を選択することで,デバッグ対象コンテキストのみに着目して動作を確認することが可能です。
ハードウエア・ブレーク・イベント,トレース・イベント,ポイント・トレース・イベント,タイマ計測イベント,パフォーマンス計測イベントは,デバッグ対象コンテキストで発生したもののみ検出します。
デバッグ対象コンテキストにかかわらず,すべてのメモリ,I/Oレジスタが表示されます。
ただし,デバッグ対象外コンテキストで停止している場合,以下のレジスタを除き[?]表示となります。
タイムスタンプについてはデバッグ対象外コンテキストの実行時間も含まれます。
また,トレース パネルの各トレース・データにコンテキストの情報が表示されます。
コンテキストの情報を表示するためには,以下の設定が必要です。
プロパティ パネルの[デバッグ・ツール設定]タブにおいて,[トレース]カテゴリ内[CPU動作モード遷移情報を取得する]プロパティを[はい]に設定してください。
Run-Breakタイマ・イベントでは,デバッグ対象コンテキストにかかわらず,すべてのコンテキストが計測対象となります。
タイマ計測イベントでは,イベントの成立後の計測についてはデバッグ対象コンテキストにかかわらず,すべてのコンテキストが計測対象となります。