(57)【要約】【課題】本発明により、ユーザの意図に応じた実行トレースの表示を可能とする。【解決手段】デバッグ装置は、プロセッサがプログラムを実行する際に取得したトレースデータを所定の条件に基づいて複数のグループに分類するイベント検出部と、入力操作に応答して不要グループを設定する条件設定部と、取得したトレースデータが不要グループに属するか否かを監視するイベント検出部と、取得したトレースデータが不要グループに属すとき取得したトレースデータを表示せず、不要グループに属さないとき取得したトレースデータを表示するトレース表示部とを備える。【選択図】図３
2011008395.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサがプログラムを実行する際に取得したトレースデータを所定の条件に基づいて複数のグループに分類するイベント検出部と、
入力操作に応答して前記複数のグループの中で少なくとも１つの不要グループを設定する条件設定部とを具備し、
前記イベント検出部は、前記取得したトレースデータが前記少なくとも１つの不要グループに属するか否かを監視し、
更に、前記取得したトレースデータが前記少なくとも１つの不要グループに属すとき前記取得したトレースデータを表示せず、前記少なくとも１つの不要グループに属さないとき前記取得したトレースデータを表示するトレース表示部
を具備するデバッグ支援装置。
【請求項２】
請求項１に記載されたデバッグ支援装置であって、
前記取得したトレースデータは、前記少なくとも１つの不要グループに属さないときトレースメモリに保存され、
前記条件設定部は、入力操作に応じて前記少なくとも１つの不要グループを削除設定とし、
前記イベント検出部は、前記削除設定がなされているとき、前記少なくとも１つの不要グループに属する前記取得したトレースデータを前記トレースメモリに保存せずに削除する
デバッグ支援装置。
【請求項３】
請求項２に記載されたデバッグ支援装置であって、
前記イベント検出部は、前記削除設定がなされていないとき、前記少なくとも１つの不要グループに属する前記取得したトレースデータを前記トレースメモリに記録し、且つ前記少なくとも１つの不要グループに属する前記取得したトレースデータのグループを示すグループ識別子を所定のメモリに記録する
デバッグ支援装置。
【請求項４】
請求項３に記載されたデバッグ支援装置であって、
前記トレースメモリは複数の物理メモリによって構成され、
前記所定のメモリは、前記複数の物理メモリのうち前記グループ識別子を格納できる最少数の物理メモリである
デバッグ支援装置。
【請求項５】
請求項１から４のいずれかに記載されたデバッグ支援装置であって、
前記条件設定部は、前記少なくとも１つの不要グループの各々について入力操作に応じてトレース表示フラグを設定し、
前記トレース表示部は、前記少なくとも１つの不要グループに属する前記取得したトレースデータの前記表示画面における表示と非表示とを、前記トレース表示フラグに応じて択一的に切り替える
デバッグ支援装置。
【請求項６】
請求項１から５のいずれかに記載されたデバッグ支援装置であって、
リアルタイムＯＳのトレースデータが、前記少なくとも１つの不要グループとして設定可能である
デバッグ支援装置。
【請求項７】
請求項１から６のいずれかに記載されたデバッグ支援装置であって、
前記イベント検出部が前記取得したトレースデータを参照して前記プロセッサがループ処理を行っていると認識した場合の前記ループ処理中の前記トレースデータが、前記少なくとも１つの不要データとして設定可能である
デバッグ支援装置。
【請求項８】
プロセッサがプログラムを実行する際に取得したトレースデータをコンピュータが備えるイベント検出手段が所定の条件に基づいて複数のグループに分類する工程と、
入力操作に応答してコンピュータが備える条件設定手段が前記複数のグループの中で少なくとも１つの不要グループを設定する工程と、
前記イベント検出手段が、プログラムをプロセッサが実行する際に取得したトレースデータが前記少なくとも１つの不要グループに属するか否かを監視する工程と、
コンピュータが備えるトレース表示手段が、前記取得したトレースデータが前記少なくとも１つの不要グループに属すとき前記取得したトレースデータを表示せず、前記少なくとも１つの不要グループに属さないとき前記取得したトレースデータを表示する工程
とを具備するデバッグ支援方法。
【請求項９】
請求項８に記載されたデバッグ支援方法であって、
更に、前記取得したトレースデータを、前記少なくとも１つの不要グループに属さないときトレースメモリに保存する工程と、
入力操作に応じて前記少なくとも１つの不要グループを削除設定とする工程と、
前記削除設定がなされているとき、前記少なくとも１つの不要グループに属する前記取得したトレースデータを前記トレースメモリに保存せずに削除する工程
とを具備するデバッグ支援方法。
【請求項１０】
請求項９に記載されたデバッグ支援方法であって、
更に、前記削除設定がなされていないとき、前記少なくとも１つの不要グループに属する前記取得したトレースデータを前記トレースメモリに記録する工程と、
前記少なくとも１つの不要グループに属する前記取得したトレースデータのグループを示すグループ識別子を所定のメモリに記録する工程
とを具備するデバッグ支援方法。
【請求項１１】
請求項１０に記載されたデバッグ支援方法であって、
前記トレースメモリは複数の物理メモリによって構成され、
前記所定のメモリは、前記複数の物理メモリのうち前記グループ識別子を格納できる最少数の物理メモリである
デバッグ支援方法。
【請求項１２】
請求項８から１１のいずれかに記載されたデバッグ支援方法であって、
更に、前記少なくとも１つの不要グループの各々について入力操作に応じてトレース表示フラグを設定する工程と、
前記少なくとも１つの不要グループに属する前記取得したトレースデータの前記表示画面における表示と非表示とを、前記トレース表示フラグに応じて択一的に切り替える工程
とを具備するデバッグ支援方法。
【請求項１３】
請求項８から１２のいずれかに記載されたデバッグ支援方法であって、
リアルタイムＯＳのトレースデータが、前記少なくとも１つの不要グループとして設定可能である
デバッグ支援方法。
【請求項１４】
請求項８から１３のいずれかに記載されたデバッグ支援方法であって、
前記取得したトレースデータを参照して前記プロセッサがループ処理を行っていると認識した場合の前記ループ処理中の前記トレースデータが、前記少なくとも１つの不要データとして設定可能である
デバッグ支援方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デバッグを支援する技術に関する。本発明は特に、デバッグ時にプログラムのトレースデータを処理する技術に関する。
【背景技術】
【０００２】
マイコンのプログラム開発におけるデバッグ装置として、ＩＣＥ（Ｉｎ−Ｃｉｒｃｕｉｔ  Ｅｍｕｌａｔｏｒ）などのエミュレータが用いられている。エミュレータは、プログラムの実行トレースを保存するトレースメモリを有する。デバッグ装置のユーザ、すなわちプログラムの開発者は、そのトレースメモリに保存された実行トレースを参照してデバッグを行う。
【０００３】
トレースデータに関する技術の一例として、以下に特許文献１「プログラム実行状況表示方法及びその実施装置並びにその処理プログラム」を挙げる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−２６３３４０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
開発者がエミュレータを使用して実行トレースを表示する場合、基本的にはプロセッサによって実行されたプログラムの実行履歴が全て表示される。しかしながらユーザは、デバッグ作業においてすべての実行履歴を求めているとは限らない。例えば、リアルタイムＯＳ（Ｒｅａｌ−Ｔｉｍｅ  Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）とユーザプログラムを組み合わせて使用する場合、ユーザはブラックボックスであるリアルタイムＯＳ処理を参照する必要は無いと考えることが多い。ユーザの意図に応じた実行トレースの表示を可能とする技術が求められる。
【課題を解決するための手段】
【０００６】
本発明の一側面におけるデバッグ支援装置は、プロセッサがプログラムを実行する際に取得したトレースデータを所定の条件に基づいて複数のグループに分類するイベント検出部と、入力操作に応答して複数のグループの中で少なくとも１つの不要グループを設定する条件設定部とを備える。イベント検出部は、プログラムをプロセッサが実行する際に取得したトレースデータが少なくとも１つの不要グループに属するか否かを監視する。デバッグ支援装置は更に、取得したトレースデータが少なくとも１つの不要グループに属すとき取得したトレースデータを表示せず、少なくとも１つの不要グループに属さないとき取得したトレースデータを表示するトレース表示部とを備える。
【０００７】
本発明の一側面におけるデバッグ支援方法は、プロセッサがプログラムを実行する際に取得したトレースデータをコンピュータが備えるイベント検出手段が所定の条件に基づいて複数のグループに分類する工程と、入力操作に応答してコンピュータが備える条件設定手段が複数のグループの中で少なくとも１つの不要グループを設定する工程と、イベント検出手段が、プログラムをプロセッサが実行する際に取得したトレースデータが少なくとも１つの不要グループに属するか否かを監視する工程と、コンピュータが備えるトレース表示手段が、取得したトレースデータが少なくとも１つの不要グループに属すとき取得したトレースデータを表示せず、少なくとも１つの不要グループに属さないとき取得したトレースデータを表示する工程とを備える。
【０００８】
このようなデバッグ支援装置又はデバッグ支援方法により、ユーザは実行されたプログラムのうち表示が不要であると考えるトレースデータのグループを指定することにより、デバッグ作業に必要であると考えるトレースデータのみを表示させることができる。その結果、見易いトレースデータが得られ、デバッグ作業の効率が向上する。
【発明の効果】
【０００９】
本発明により、ユーザの意図に応じた実行トレースの表示が可能である。
【図面の簡単な説明】
【００１０】
【図１Ａ】図１Ａは、実行トレース表示画面の例を示す。
【図１Ｂ】図１Ｂは、実行トレース表示画面の例を示す。
【図２Ａ】図２Ａは、実行トレース情報の例を示す。
【図２Ｂ】図２Ｂは、実行トレース情報の例を示す。
【図３】図３は、デバッグ支援装置の構成を示す。
【図４】図４は、トレースメモリに格納されるデータの構成例を示す。
【図５】図５は、デバッグ支援方法を示すフローチャートである。
【図６】図６は、デバッグ支援方法におけるデータの流れを示す。
【図７】図７は、デバッグ支援方法におけるデータの流れを示す。
【図８】図８は、デバッグ支援方法におけるデータの流れを示す。
【発明を実施するための形態】
【００１１】
以下、図面を参照して、本発明の実施形態について説明する。まず図１Ａ、図１Ｂ、図２Ａ及び図２Ｂを参照して、本実施形態におけるデバッグ支援装置及びデバッグ支援方法の使用イメージを説明する。
【００１２】
図１Ａは、デバッグ支援装置がデバッグ対象のプログラムを実行して得た実行トレース表示画面の例を示す。この例では、ユーザがリアルタイムＯＳを用いてユーザプログラムを開発しているものとする。ユーザはデバッグ支援装置を用いてユーザプログラムをＣＰＵ（ＣＰＵエミュレータ）により実行させる。デバッグ支援装置はそのプログラムの実行トレース（トレースデータ）を取得する。その際、ユーザプログラムはリアルタイムＯＳと共にコンパイルされるため、取得した実行トレースにはユーザプログラムの実行トレースと共にリアルタイムＯＳの実行トレースが含まれる。
【００１３】
実行トレース表示画面１−１には、実行トレースが実行順に表示される。図１Ａの例では、まずユーザプログラムの実行トレースを示すユーザ処理トレースデータ２が表示される。次にユーザプログラムに含まれるループ処理の実行トレースを示すループ処理トレースデータ３−１が表示される。ループ処理トレースデータ３−１には、１回目、２回目・・・、ｎ回目のループ処理の実行トレースが順次、表示される。次にＯＳの実行トレースを示すＯＳ処理トレースデータ５−１が表示される。最後にユーザプログラムの実行トレースを示すユーザ処理トレースデータ７が表示される。
【００１４】
実行トレース表示画面１−１には、ユーザプログラムを開発しているユーザが参照する必要性が強いデータと弱いデータとが含まれている。ユーザが参照する必要性が弱い種類のデータには、実行トレース表示画面１−１の該当箇所に、表示／非表示ボタン４−１、６−１が表示される。
【００１５】
例えばループ処理トレースデータ３−１は、数多く繰り返される類似した処理を含んでいるため、すべてを参照する必要が無い場合がある。そのためデバッグ支援装置はループ処理の実行トレースを表示する箇所に、表示／非表示ボタン４−１を表示する。またＯＳ処理トレースデータ５−１はユーザの開発環境を提供するＯＳの処理を示しておりデバッグ対象とならないため、参照する必要性が小さい。そのためデバッグ支援装置は、ＯＳの実行トレースを表示する箇所に、表示／非表示ボタン６−１を表示する。
【００１６】
図１Ｂは、図１Ａの実行トレース表示画面１−１のうち、ユーザが参照したくないトレース情報を隠した実行トレース表示画面１−２を示す。ユーザはループ処理トレースデータ３−１を隠したい場合は、ポインティングデバイスを用いて画面上の表示／非表示ボタン４−１を押下する。デバッグ支援装置はその押下に応答してループ処理の実行トレースを隠す。その結果、図１Ｂに示されるように、ループ処理トレースデータ３−２として、単にループ処理が行われていることを示すデータや、あるいは１回目のループ処理のトレースデータのみが表示される。同様にユーザはＯＳ処理トレースデータ７を隠したい場合は、表示／非表示ボタン６−１を押下する。デバッグ支援装置はその押下に応答して、ＯＳ処理トレースデータ５−２として単にＯＳ処理が実行されたことのみを示す情報を示す。このようにしてユーザは所望の実行トレースのみを表示した見易い画面を参照してデバッグを行うことができる。実行トレース表示画面１−２において隠された実行トレースの詳細を参照したい場合、ユーザは表示／非表示ボタン４−２、６−２を押下することによって図１Ａのように隠されていた項目が展開された実行トレース表示画面１−１を見ることができる。
【００１７】
図２Ａは、実行トレースの例を示す。実行トレース情報１０−１は、デバッグ支援装置のトレースメモリに格納される実行トレースを示す。実行トレース情報１０−１は、通常はプロセッサによって実行された全ての処理の実行トレースを含む。図２Ａの例では、実行順に、ユーザ処理トレースデータ１１、ループ処理トレースデータ１２、ＯＳ処理トレースデータ１３及びユーザ処理トレースデータ１４がトレースメモリに記録される。
【００１８】
図２Ｂは、ユーザがループ処理トレースデータ１２とＯＳ処理トレースデータ１３をデバッグに必要ないデータとして入力装置に対する操作によって指定した場合の実行トレース情報１０−２を示す。デバッグ支援装置はそのような操作がなされると、ＣＰＵから取得した実行トレースのうち、ループ処理トレースデータ１２とＯＳ処理トレースデータ１３をトレースメモリに記録しない。その結果、トレースメモリには図２Ｂに示されるようにユーザプログラムの実行トレースのみが記録される。このようにしてメモリを節約することができる。あるいはユーザが必要とする種類のデータについて、より長期間の履歴を記録することができる。
【００１９】
次に、以上のような使用イメージを実現するためのデバッグ支援装置の構成を説明する。図３はデバッグ支援装置２０の構成を示す。デバッグ支援装置２０は、ユーザインタフェース２４に接続される。デバッグ支援装置２０は更に、デバッグ対象のプログラムを実行するＣＰＵ２２に接続される。
【００２０】
デバッグ支援装置２０はＩＣＥなどのエミュレータ機能を備えるコンピュータ装置であり、トレースメモリ２６、イベント検出器２８、取得／表示条件設定部３１、トレース表示部３２及びトレース制御部３４を備える。トレース制御部３４はトレース機能全体を制御する。
【００２１】
トレースメモリ２６は、ＣＰＵ２２からトレース制御部３４経由で得た実行トレースを保持する。トレースメモリ２６は少なくとも１つの物理メモリ２７−１、２７−２…、２７−ｎから構成される。図４は、トレースメモリ２６に格納されるデータの構成例を示す。複数の物理メモリ２７−１〜２７−ｎからなるトレースメモリ２６の、図４の各カラムを形成する記憶領域は、例えばプログラムの１命令の実行についての実行トレースデータを示す。
【００２２】
デバッグ支援装置２０は、後述するグループ識別子を記録するためのメモリを有する。本実施形態ではグループ識別子は、物理メモリ２７−１に記録される。本実施形態においては、トレースメモリ２６は複数の物理メモリ２７−１〜２７−ｎから構成される。トレースメモリ２６からのデータ読み出しは個々の物理メモリ２７−１〜２７−ｎを単位として行われる。
【００２３】
このようなハードウエア構成の場合、複数の物理メモリ２７−１〜２７−ｎのうちグループ識別子を格納できる最少数の物理メモリがグループ識別子の格納用として設定される。グループ識別子は、この設定された物理メモリに集中して記録される。図４の場合、グループ識別子は第１の物理メモリ２７−１のみに記録されている。このような構成によれば、トレース制御部３４が実行トレースのグループを認識するときに、設定された最少数の物理メモリだけをインデックスとして参照すればよい。それため実行トレースの各フレームのグループを極めて短時間で認識することができる。
【００２４】
取得／表示条件設定部３１は、ユーザインタフェース２４を介して入力された抽象的な取得／表示条件をコンピュータ処理にとっての具体的な条件に変換し、トレース制御部３４経由でトレース表示部３２とイベント検出器２８に渡す。抽象的な取得／表示条件とは、例えば、実行トレースのうちリアルタイムＯＳの実行トレースはトレースメモリに保存しないという条件である。この条件は、ユーザ側にとって分かりやすい表現で示される。具体的な条件とは、リアルタイムＯＳが格納されているメモリ領域の先頭と末尾のアドレスを示し、その間のアドレスの命令が実行された場合はトレースメモリに保存しない、という条件である。この条件は、ユーザインタフェース２４を介して指示された条件をデバッグ支援装置２０が具体的な処理によって実現するための条件を示す。
【００２５】
イベント検出器２８は、取得／表示条件設定部３１からトレース制御部３４経由で入力した条件をトレース取得条件フラグ２９とグループアドレス範囲３０として保持する。イベント検出器２８は、保持した情報に基づいて、ＣＰＵ２２からトレースメモリ２６へ流れる実行トレースを監視する。
【００２６】
トレース表示部３２は、トレースメモリ２６からトレース制御部３４経由で送られた実行トレースを表示装置に表示する。この表示は、ユーザインタフェース２４を介して入力されトレース表示フラグ３３に示される条件に従って行われる。
【００２７】
次に、デバッグ支援装置２０が実行するデバッグ支援方法について説明する。図５は、デバッグ支援方法を示すフローチャートである。図６、図７及び図８は、デバッグ支援方法の各工程におけるデータの流れを示す。
【００２８】
ステップＳ１：保存／表示条件を設定
ユーザは、ユーザインタフェース２４に対する入力操作により条件設定を行う。設定内容は、トレース取得条件の選択（「保存」か「削除」か、すなわち全ての取得した実行トレースをトレースメモリに保存するか、不要な実行トレースは削除するかの選択）と、不要グループの選択である。取得／表示条件設定部３１は、選択された不要グループに関するトレース表示フラグ３３を「非表示」に設定する。その結果、各不要グループに関して、複数のグループをそれぞれ特定する識別情報の各々に対応づけたトレース表示フラグ３３がトレース表示部３２に格納される。尚、本実施形態では不要グループに属しない実行トレースに関しては、全ての実行トレースが表示されるものとするため、トレース表示フラグ３３を用意する必要はない。これらの処理におけるデータの流れが、図６のユーザインタフェース２４から取得／表示条件設定部３１への矢印に示されている。
【００２９】
ここで「グループ」及び「不要グループ」について説明する。デバッグ支援装置２０は、ＣＰＵ２２で実行されるプログラムを複数のグループに分類して取り扱う。不要グループは、その複数のグループのうちから設定される少なくとも１つのグループである。グループとしては、ユーザが作成したユーザプログラム、ユーザプログラム中のループ処理、ユーザプログラム中のデバッグ作業を済ませた部分、リアルタイムＯＳなどが例示される。ユーザは、デバッグ作業において参照する必要性が小さいグループを不要グループとして設定する。以下では、ユーザがＯＳとユーザプログラム中のループ処理とを不要グループとして選択した場合を例として説明する。
【００３０】
ステップＳ２：条件をデバッグ支援装置向けに変換し保持
保存／表示条件設定部３１は、ステップＳ１で入力された条件設定を、所定の手順に従って解釈することにより、トレース取得条件、グループの開始アドレス及び終了アドレスという要素に分離する。
【００３１】
デバッグ支援装置２０は、例えばＯＳが占めているメモリ上の領域の開始アドレスと終了アドレスを予め記憶装置に保存している。そのためユーザがユーザインタフェース２４を用いてＯＳを不要グループとして設定すると、保存／表示条件設定部３１はそのＯＳの開始アドレスと終了アドレスとを記憶装置から読み出して、グループアドレス範囲３０としてイベント検出器２８に記録する。保存／表示条件設定部３１は更に、ユーザが選択したトレース取得条件に応じたフラグをトレース取得条件フラグ２９としてイベント検出器２８に記録する。これらの処理におけるデータの流れが、図６の取得／表示条件設定部からトレース制御部３４を介してイベント検出器２８に向う矢印に示されている。
またトレース表示部３２内のトレース表示フラグ３３が自動的に非表示に初期設定される。この処理におけるデータの流れが、図６の取得／表示条件設定部からトレース表示部３２に向う矢印に示されている。
【００３２】
ステップＳ３：実行トレースの取得
ユーザがユーザインタフェース２４に対して所定の操作を行うと、ＣＰＵ２２上でデバッグ対象のプログラムの指定された部分が実行される。トレース制御部３４はＣＰＵ２２が実行したフレームから順にリアルタイムに実行トレースを取得する（ステップＳ３−１）。
【００３３】
イベント検出器２８は実行トレースのアドレスを監視しており、取得した実行トレースを所定の条件に基づいて複数のグループに分類する。具体的には、イベント検出器２８は、実行トレースの１フレームが取得されるたびに、実行トレースのアドレスが不要グループのアドレスであるか否かをリアルタイムで検出する。本実施形態では、イベント検出器２８により、取得した実行トレースはＯＳと、ループ処理と、それ以外の通常のユーザプログラム処理とに分類される。
【００３４】
実行トレースが設定された少なくとも１つの不要グループのいずれにも属していないと判断した場合（ステップＳ３−２ＮＯ且つステップＳ３−３ＮＯ）、イベント検出器２８は取得した実行トレースをトレースメモリ２６に保存する（ステップＳ３−４）。ユーザが指定した範囲のプログラムの実行トレースの取得が終了していないと、次の実行トレースを取得する動作に移行する（ステップＳ３−５ＮＯ）。全ての実行トレースの取得が完了すると、実行トレースを表示する動作に移行する（ステップＳ３−５ＹＥＳ）。
【００３５】
実行トレースが不要グループに属していた場合、イベント検出器２８はイベント情報を生成する。図５の例では、イベント検出器２８は、グループアドレス範囲３０を参照して、取得した実行トレースがＯＳの実行トレースであると判断した場合、イベント情報を生成する（ステップＳ３−２ＹＥＳ）。イベント検出器２８は更に、ユーザプログラム中のループ処理が不要グループとして設定されたとき、ループ処理を監視して、実行トレースにおける或るループ処理のループ回数が所定の回数に到達すると、イベント情報を生成する（ステップＳ３−３ＹＥＳ）。
これら処理におけるデータの流れが、図７のＣＰＵ２２からイベント検出器２８を経てトレース制御部３４に向う矢印に示されている。
【００３６】
ステップＳ４：実行トレースのフィルタリング
ステップＳ３で生成されたイベント情報（ステップＳ４−１）をトリガに、イベント検出器２８は設定されたトレース取得方法に応じたフィルタリングを行う。ステップＳ１とＳ２で設定されたトレース取得方法が「削除」に設定されていた場合（ステップＳ４−２ＹＥＳ）、イベント検出器２８は取得した実行トレースの１フレームをトレースメモリ２６に格納せずに削除し破棄する（ステップＳ４−３）。設定されたトレース取得方法が「保存」に設定されていた場合（ステップＳ４−２ＮＯ）、イベント検出部２８は、取得した実行トレースの１フレームをトレースメモリ２６に格納する。その際、取得した実行トレースの属するグループを示す識別情報も共にトレースメモリ２６（図４の例では第１の物理メモリ２７−１）に保存される（ステップＳ４−４）。
【００３７】
ステップＳ５：実行トレースの表示
トレース表示部３２は、トレースメモリ２６に取得した実行トレースをユーザインタフェース２４の表示装置に表示する（ステップＳ５）。
ステップＳ１とＳ２で設定されたトレース取得方法が「削除」であれば、トレースメモリ２６には、不要グループ以外の実行トレースのみが保存されている。従ってトレース表示部はトレースメモリ２６に保存された実行トレースを全て表示する。
ステップＳ１とＳ２で設定されたトレース取得方法が「保存」であれば、実行トレース内のグループ情報（図４の例では第１の物理メモリ２７−１に保存されている）に対応するトレース表示フラグ３３を読み出す。トレース表示フラグ３３が「表示」であれば、該当するグループの実行トレースを表示する。トレース表示フラグ３３が「非表示」であれば、該当するグループの実行トレースを表示せずに、図１Ｂのループ処理トレースデータ３−２やＯＳ処理トレースデータ５−２のようにして隠す。
これら処理におけるデータの流れが、図８のトレースメモリ２６からトレース制御部３４及びトレース表示部３２を経てユーザインタフェース２４に向う矢印に示されている。
【００３８】
ユーザは、トレース取得後にユーザインタフェース２４に対する操作によってトレース表示フラグを変更して、各不要グループの表示と非表示とを択一的に切り替えることができる。その操作に応答して、トレース表示フラグ３３が書き換わる。この処理におけるデータの流れが、図８のユーザインタフェース２４から取得／表示条件設定部３１を経てトレース表示フラグ３３に向う矢印に示されている。この動作によって、図１Ａ、図１Ｂを参照して説明した使用イメージが実現される。
【符号の説明】
【００３９】
１−１  実行トレース表示画面
１−２  実行トレース表示画面
２  ユーザ処理トレースデータ
３−１  ループ処理トレースデータ
３−２  ループ処理トレースデータ
４−１  表示／非表示ボタン
４−２  表示／非表示ボタン
５−１  ＯＳ処理トレースデータ
５−２  ＯＳ処理トレースデータ
６−１  表示／非表示ボタン
６−２  表示／非表示ボタン
７  ユーザ処理トレースデータ
１０−１  実行トレース情報
１０−２  実行トレース情報
１１  ユーザ処理トレースデータ
１２  ループ処理トレースデータ
１３  ＯＳ処理トレースデータ
１４  ユーザ処理トレースデータ
２０  デバッグ支援装置
２２  ＣＰＵ
２４  ユーザインタフェース
２６  トレースメモリ
２７−１〜２７−ｎ  物理メモリ
２８  イベント検出器
２９  トレース取得条件フラグ
３０  グループアドレス範囲
３１  取得／表示条件設定部
３２  トレース表示部
３３  トレース表示フラグ
３４  トレース制御部
【図１Ａ】
2011008395.tif 000003
【図１Ｂ】
2011008395.tif 000004
【図２Ａ】
2011008395.tif 000005
【図２Ｂ】
2011008395.tif 000006
【図３】
2011008395.tif 000007
【図４】
2011008395.tif 000008
【図５】
2011008395.tif 000009
【図６】
2011008395.tif 000010
【図７】
2011008395.tif 000011
【図８】
2011008395.tif 000012