(57)【要約】【課題】ブレークポイント毎のステップ実行回数を表示し、設定済みのブレークポイントが有効か否かの判別を可能にする。【解決手段】障害解析装置は、被デバッグプログラムが実行停止した際にステップ実行回数の情報収集を行う。また、障害解析装置は、収集したステップ実行回数情報をブレークポイント毎にステップ実行回数情報保持テーブルに保持する。更に、障害解析装置は、ステップ実行回数情報保持テーブルに保持しているブレークポイント毎のステップ実行回数情報の画面への表示等を行う。【選択図】図３
2011203961.tif 000002
【特許請求の範囲】
【請求項１】
ユーザが設定したブレークポイントで被デバッグプログラムの実行を停止した際に、ステップ実行を何回行ったかを示すステップ実行回数情報の収集を行うステップ実行回数情報収集処理部と、
収集されたステップ実行回数情報をブレークポイント毎に保持するステップ実行回数情報保持テーブルと、
前記ステップ実行回数情報保持テーブルに保持しているブレークポイント毎のステップ実行回数情報の出力を行うステップ実行回数情報出力処理部と
を具備する
障害解析装置。
【請求項２】
請求項１に記載の障害解析装置であって、
前記ステップ実行回数情報収集処理部は、
前記被デバッグプログラムの実行を停止した際、前記ユーザが設定したブレークポイントのうち、どのブレークポイントで前記被デバッグプログラムの実行が停止したのか確認し、該当ブレークポイント情報として保持する手段と、
前記ユーザの操作を判定し、前記ユーザがステップ実行操作を行ったか確認する手段と、
前記ユーザがステップ実行操作を行わなかった場合、前記ユーザの指定した操作に応じた処理を行う手段と、
前記ユーザがステップ実行操作を行った場合、該当ブレークポイント情報を基に、前記ステップ実行回数情報保持テーブル内の該当するブレークポイントのステップ実行回数を１つ加算し、ステップ実行処理を行う手段と
を具備する
障害解析装置。
【請求項３】
請求項２に記載の障害解析装置であって、
前記ステップ実行回数情報出力処理部は、
前記ユーザが設定したブレークポイントを格納したブレークポイントテーブルを先頭から順に参照し、前記ブレークポイントテーブル内にブレークポイントの設定があるか確認する手段と、
前記ブレークポイントテーブル内にブレークポイントの設定がある場合、前記ブレークポイントテーブル内での当該ブレークポイントの順番と、前記ステップ実行回数情報保持テーブル内の当該ブレークポイントのステップ実行回数情報とを出力する手段と
を具備する
障害解析装置。
【請求項４】
計算機により実施される障害解析方法であって、
ユーザが設定したブレークポイントで被デバッグプログラムの実行を停止した際に、ステップ実行を何回行ったかを示すステップ実行回数情報の収集を行うことと、
収集されたステップ実行回数情報をブレークポイント毎にステップ実行回数情報保持テーブルに保持することと、
前記ステップ実行回数情報保持テーブルに保持しているブレークポイント毎のステップ実行回数情報の出力を行うことと
を含む
障害解析方法。
【請求項５】
請求項４に記載の障害解析方法であって、
前記被デバッグプログラムの実行を停止した際、前記ユーザが設定したブレークポイントのうち、どのブレークポイントで前記被デバッグプログラムの実行が停止したのか確認し、該当ブレークポイント情報として保持することと、
前記ユーザの操作を判定し、前記ユーザがステップ実行操作を行ったか確認することと、
前記ユーザがステップ実行操作を行わなかった場合、前記ユーザの指定した操作に応じた処理を行うことと、
前記ユーザがステップ実行操作を行った場合、該当ブレークポイント情報を基に、前記ステップ実行回数情報保持テーブル内の該当するブレークポイントのステップ実行回数を１つ加算し、ステップ実行処理を行うことと
を更に含む
障害解析方法。
【請求項６】
請求項５に記載の障害解析方法であって、
前記ユーザが設定したブレークポイントを格納したブレークポイントテーブルを先頭から順に参照し、前記ブレークポイントテーブル内にブレークポイントの設定があるか確認することと、
前記ブレークポイントテーブル内にブレークポイントの設定がある場合、前記ブレークポイントテーブル内での当該ブレークポイントの順番と、前記ステップ実行回数情報保持テーブル内の当該ブレークポイントのステップ実行回数情報とを出力することと
を更に含む
障害解析方法。
【請求項７】
ユーザが設定したブレークポイントで被デバッグプログラムの実行を停止した際に、ステップ実行を何回行ったかを示すステップ実行回数情報の収集を行うステップと、
収集されたステップ実行回数情報をブレークポイント毎にステップ実行回数情報保持テーブルに保持するステップと、
前記ステップ実行回数情報保持テーブルに保持しているブレークポイント毎のステップ実行回数情報の出力を行うステップと
を計算機に実行させるための
障害解析用プログラム。
【請求項８】
請求項７に記載の障害解析用プログラムであって、
前記被デバッグプログラムの実行を停止した際、前記ユーザが設定したブレークポイントのうち、どのブレークポイントで前記被デバッグプログラムの実行が停止したのか確認し、該当ブレークポイント情報として保持するステップと、
前記ユーザの操作を判定し、前記ユーザがステップ実行操作を行ったか確認するステップと、
前記ユーザがステップ実行操作を行わなかった場合、前記ユーザの指定した操作に応じた処理を行うステップと、
前記ユーザがステップ実行操作を行った場合、該当ブレークポイント情報を基に、前記ステップ実行回数情報保持テーブル内の該当するブレークポイントのステップ実行回数を１つ加算し、ステップ実行処理を行うステップと
を更に計算機に実行させるための
障害解析用プログラム。
【請求項９】
請求項８に記載の障害解析用プログラムであって、
前記ユーザが設定したブレークポイントを格納したブレークポイントテーブルを先頭から順に参照し、前記ブレークポイントテーブル内にブレークポイントの設定があるか確認するステップと、
前記ブレークポイントテーブル内にブレークポイントの設定がある場合、前記ブレークポイントテーブル内での当該ブレークポイントの順番と、前記ステップ実行回数情報保持テーブル内の当該ブレークポイントのステップ実行回数情報とを出力するステップと
を更に計算機に実行させるための
障害解析用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、障害解析装置に関し、特にマイコンのソフトウェア用デバッガを持つ障害解析装置に関する。
【背景技術】
【０００２】
マイコンのソフトウェア用デバッガ（ｄｅｂｕｇｇｅｒ）は、計算機上で動作し、ユーザが作成したマイコン用のプログラムが正しく動作するか検証を行うことや、問題があればプログラムの修正を行うことができる。
【０００３】
正しく動作するか検証を行う際、デバッグ対象となる被デバッグプログラムの実行を止めて、その時点での各リソースの状況を確認するために、ブレークポイント（ｂｒｅａｋ  ｐｏｉｎｔ）の設定を行う。
【０００４】
ブレークポイントで被デバッグプログラムの実行を止めた際には、その時点でのメモリ、レジスタ、及びプログラム中の変数の値の確認及び値の変更や、止まった位置からプログラムの行単位での実行（ステップ実行）等を行い、被デバッグプログラム動作の検証を行う。
【０００５】
ブレークポイントの設定に関する従来技術として、特許文献１（特開２００１−０３４５０３号公報）に障害解析装置が開示されている。
【０００６】
［従来の障害解析装置の構成例］
図１を参照して、この障害解析装置の構成例について説明する。
この障害解析装置は、マウスやキーボード等の入力部１と、ディスプレイ等の出力部２と、デバッグ時に必要な情報等が格納されるメモリ３と、デバッグ対象となる被デバッグプログラム４と、障害箇所を見つける（検出する）ための障害解析処理部５を備える。
【０００７】
メモリ３は、ブレークポイントテーブル３ａと、イベントログ（イベントトレース）３ｂを有する。
【０００８】
障害解析処理部５は、ログ取得処理部６と、格納処理部７を備える。
【０００９】
ログ取得処理部６は、被デバッグプログラム４の実行中に発生したイベントに関する情報を取得して、メモリ３のイベントログ（イベントトレース）３ｂに蓄積すると共に、取得したイベントがブレーク対象であれば、メモリ３やレジスタの内容の読み出し機能を備えた外部デバッガを呼び出す。
【００１０】
格納処理部７は、ユーザによりブレークポイントとして指定されたイベントに関するイベント情報を取得して、当該イベント情報をブレーク条件（停止条件）としてメモリ３内のブレークポイントテーブル３ａに格納する。
【００１１】
障害解析装置は、ユーザによる設定／操作に応じて、被デバッグプログラム４の実行／解析、障害解析処理部５の起動、及びデバッグ等を開始する。障害解析装置は、障害解析処理部５によって、指定したイベントでブレークを発生させ、メモリ３等の内容を外部デバッガに読み取らせてプログラムの動作の確認を行い、障害発生箇所を見つける。
【００１２】
［ブレークポイントテーブルの構成例］
図２を参照して、ブレークポイントテーブル３ａの構成例について説明する。
図２に示すように、ブレークポイントテーブル３ａには、イベント情報がブレーク条件（停止条件）として格納される。ここでは、ブレークポイントテーブル３ａは、ブレーク条件（停止条件）として、イベント名、イベントを発生させたプロセス名、該当イベント発生時のパラメータ、イベントの実行回数を格納する。イベントの実行回数とは、実行中に発生した同種のイベントのうち当該イベントが何番目に発生したものであるかを示す値である。障害解析装置は、これらの条件全てを満たすイベントが発生した場合、ブレークを実行する。すなわち、障害解析装置は、これらのブレークポイントで被デバッグプログラムの実行を停止する。
【００１３】
なお、障害解析装置は、ブレークポイントで被デバッグプログラムの実行を停止した場合、ユーザは、その時点でのメモリ、レジスタ、及びプログラム中の変数の各値の確認及び変更を行った後、止まった位置からプログラムの行単位での実行（ステップ実行）を行うように指示することが多い。すなわち、被デバッグプログラムの実行を停止した後で、ステップ実行を行った箇所に設定してあるブレークポイントは、ユーザにとって利用価値のある有効なブレークポイントであるということが言える。
【００１４】
しかしながら、特許文献１に記載の技術では、ブレークポイントテーブル３ａにはブレーク条件（停止条件）が格納されているだけで、ブレークポイントにより被デバッグプログラムの動作が停止した後、ユーザがステップ実行の操作を行ったかに関する情報は保持していない。すなわち、特許文献１に記載の技術では、ブレークポイントの設定ができるだけであり、設定したブレークポイントにて被デバッグプログラムの動作が停止した後のユーザの操作に関する情報は保持していない。
【００１５】
また、関連技術として、特許文献２（特開平０５−０８１０６９号公報）にプログラムのデバッグ方法が開示されている。この関連技術では、ブレークポイントにレベルを設定することにより、設定されたレベルを基に有効と判断したブレークポイントのみでブレークを実行する。
【００１６】
しかし、特許文献２に記載の技術では、ブレークポイントの有効／無効をユーザが設定することになるため、どのブレークポイントを有効にすべきかを、ユーザが理解していなければならない。
【先行技術文献】
【特許文献】
【００１７】
【特許文献１】特開２００１−０３４５０３号公報
【特許文献２】特開平０５−０８１０６９号公報
【発明の概要】
【発明が解決しようとする課題】
【００１８】
本発明の目的は、有効なブレークポイントの情報提供を行うデバッガを持つ障害解析装置を提供することである。
【課題を解決するための手段】
【００１９】
本発明の障害解析装置は、ユーザが設定したブレークポイントで被デバッグプログラムの実行を停止した際に、ステップ実行を何回行ったかを示すステップ実行回数情報の収集を行うステップ実行回数情報収集処理部と、収集されたステップ実行回数情報をブレークポイント毎に保持するステップ実行回数情報保持テーブルと、ステップ実行回数情報保持テーブルに保持しているブレークポイント毎のステップ実行回数情報の出力を行うステップ実行回数情報出力処理部とを具備する。
【００２０】
計算機により実施される本発明の障害解析方法は、ユーザが設定したブレークポイントで被デバッグプログラムの実行を停止した際に、ステップ実行を何回行ったかを示すステップ実行回数情報の収集を行うことと、収集されたステップ実行回数情報をブレークポイント毎にステップ実行回数情報保持テーブルに保持することと、ステップ実行回数情報保持テーブルに保持しているブレークポイント毎のステップ実行回数情報の出力を行うこととを含む。
【００２１】
本発明の障害解析用プログラムは、ユーザが設定したブレークポイントで被デバッグプログラムの実行を停止した際に、ステップ実行を何回行ったかを示すステップ実行回数情報の収集を行うステップと、収集されたステップ実行回数情報をブレークポイント毎にステップ実行回数情報保持テーブルに保持するステップと、ステップ実行回数情報保持テーブルに保持しているブレークポイント毎のステップ実行回数情報の出力を行うステップとを計算機に実行させるためのプログラムである。なお、本発明の障害解析用プログラムは、記憶装置や記憶媒体に格納することが可能である。
【発明の効果】
【００２２】
ブレークポイント毎のステップ実行回数を表示することができ、ユーザは設定済みのブレークポイントが有効か否かの判別ができるようになる。
【図面の簡単な説明】
【００２３】
【図１】従来技術の一実施の形態の障害解析装置の構成を示す構成図である。
【図２】従来技術のブレークポイントテーブルの一例を示す図である。
【図３】本発明の実施形態における障害解析装置の構成例を示す図である。
【図４】本発明のステップ実行回数情報保持テーブルの構成例を示す図である。
【図５】本発明のステップ実行回数情報収集処理の例を示すフローチャートである。
【図６】本発明のステップ実行回数情報表示処理の例を示すフローチャートである。
【発明を実施するための形態】
【００２４】
以下に、本発明の実施形態について添付図面を参照して説明する。
本実施形態では、図１に示すブレークポイントテーブル３ａに格納されている設定済みの各ブレークポイントに対応する「ステップ実行回数情報」を保持するための回路／装置を設ける。
【００２５】
［本実施形態の構成例］
図３に示すように、本実施形態における障害解析装置は、入力部１と、出力部２と、メモリ３と、被デバッグプログラム４と、障害解析処理部５を備える。
【００２６】
メモリ３は、ブレークポイントテーブル３ａと、イベントログ（イベントトレース）３ｂを有する。
【００２７】
障害解析処理部５は、ログ取得処理部６と、格納処理部７と、ステップ実行回数情報収集処理部８と、ステップ実行回数情報保持テーブル９と、ステップ実行回数情報出力処理部１０を備える。
【００２８】
図３において、図１と同一の構成については同一の番号で示し、その説明を省略する。
【００２９】
ステップ実行回数情報収集処理部８は、被デバッグプログラム４の実行を停止した際に、ステップ実行回数情報の収集を行う。
【００３０】
ステップ実行回数情報保持テーブル９は、収集したステップ実行回数情報をブレークポイント毎に保持する。
【００３１】
ステップ実行回数情報出力処理部１０は、ステップ実行回数情報保持テーブルに保持しているブレークポイント毎のステップ実行回数情報の出力を行う。例えば、ステップ実行回数情報出力処理部１０は、ブレークポイント毎のステップ実行回数情報を画面に表示する。
【００３２】
なお、ステップ実行回数情報収集処理部８、及びステップ実行回数情報出力処理部１０は、障害解析処理部５から独立して存在していても良い。また、ステップ実行回数情報保持テーブル９は、メモリ３内に存在していても良い。
【００３３】
［ハードウェア等の例示］
本実施形態における障害解析装置の例として、ＰＣ（パソコン）、シンクライアント端末／サーバ、ワークステーション、メインフレーム、スーパーコンピュータ等の計算機を想定している。なお、障害解析装置は、端末やサーバに限らず、中継機器や周辺機器、計算機に搭載される拡張ボード等でも良い。
【００３４】
入力部１の例として、キーボードやキーパッド、画面上のキーパッド、タッチパネル（ｔｏｕｃｈ  ｐａｎｅｌ）、タブレット（ｔａｂｌｅｔ）、又は、ＱＲコード（登録商標）やＩＣチップや記憶媒体を読み込む読取装置等が考えられる。或いは、入力部１は、外部の入力装置や記憶装置から情報を取得するためのインターフェース（Ｉ／Ｆ：ｉｎｔｅｒｆａｃｅ）でも良い。
【００３５】
出力部２の例として、ＬＣＤ（液晶ディスプレイ）やＰＤＰ（プラズマディスプレイ）、有機ＥＬディスプレイ（ｏｒｇａｎｉｃ  ｅｌｅｃｔｒｏｌｕｍｉｎｅｓｃｅｎｃｅ  ｄｉｓｐｌａｙ）等の表示装置を想定している。他にも、出力部２の例として、出力内容を用紙等に印刷するプリンタ等の印刷装置、又は、出力内容を壁やスクリーンに投影するプロジェクタ等の映写装置等が考えられる。或いは、出力部２は、外部の表示装置や記憶装置に情報を出力するためのインターフェース（Ｉ／Ｆ）でも良い。
【００３６】
メモリ３の例として、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  ａｎｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）やフラッシュメモリ等の半導体記憶装置、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）やＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の補助記憶装置、又は、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）やＳＤメモリカード（Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ  ｍｅｍｏｒｙ  ｃａｒｄ）等のリムーバブルディスクや記憶媒体（メディア）等が考えられる。また、メモリ３は、計算機本体に内蔵された記憶装置に限らず、周辺機器（外付けＨＤＤ等）や外部のサーバ（Ｗｅｂサーバやファイルサーバ等）に設置された記憶装置、或いは、ＤＡＳ（Ｄｉｒｅｃｔ  Ａｔｔａｃｈｅｄ  Ｓｔｏｒａｇｅ）、ＦＣ−ＳＡＮ（Ｆｉｂｒｅ  Ｃｈａｎｎｅｌ  −  Ｓｔｏｒａｇｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＮＡＳ（Ｎｅｔｗｏｒｋ  Ａｔｔａｃｈｅｄ  Ｓｔｏｒａｇｅ）、ＩＰ−ＳＡＮ（ＩＰ  −  Ｓｔｏｒａｇｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）でも良い。
【００３７】
被デバッグプログラム４の例として、人間がプログラミング言語を用いて記述したソースコード（ｓｏｕｒｃｅ  ｃｏｄｅ）を想定している。なお、被デバッグプログラム４として、計算機に理解できる言語（機械語）で記述されたオブジェクトコード（ｏｂｊｅｃｔ  ｃｏｄｅ）を使用する場合も考えられる。オブジェクトコードを機械語レベルのまま検証していくデバッガを「アブソリュートデバッガ」、ソースコード上の対応箇所を参照できるようになっているデバッガを「シンボリックデバッガ」という。通常、プログラムを実行する際には、ソースコードをオブジェクトコードに変換して実行する。コンパイラ型言語かインタプリタ型言語かは問わない。
【００３８】
障害解析処理部５の例として、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、マイクロプロセッサ（ｍｉｃｒｏｐｒｏｃｅｓｓｏｒ）、マイクロコントローラ、或いは、専用の機能を有する半導体集積回路（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ（ＩＣ））等が考えられる。
【００３９】
ログ取得処理部６、格納処理部７、ステップ実行回数情報収集処理部８、及びステップ実行回数情報出力処理部１０は、プログラムで駆動されるプロセッサ等のハードウェアと、そのハードウェアを駆動して所望の処理を実行するためのプログラム等のソフトウェアと、そのソフトウェアや各種データを格納するメモリによって実現されるものとする。なお、ログ取得処理部６、格納処理部７、ステップ実行回数情報収集処理部８、及びステップ実行回数情報出力処理部１０は、物理マシン上に構築された仮想マシン（Ｖｉｒｔｕａｌ  Ｍａｃｈｉｎｅ（ＶＭ））環境でも良い。また、ログ取得処理部６、格納処理部７、ステップ実行回数情報収集処理部８、及びステップ実行回数情報出力処理部１０は、専用の機能を有する半導体集積回路（ＩＣ）でも良い。
【００４０】
ステップ実行回数情報保持テーブル９は、キャッシュ（ｃａｃｈｅ）、バッファ（ｂｕｆｆｅｒ）、或いはメモリ３等に格納可能である。
【００４１】
また、メモリ３、及び障害解析処理部５は、一体化していても良い。例えば、近年では、マイコン等の１チップ化が進んでいる。従って、本実施形態における障害解析装置に搭載される１チップマイコンが、メモリ３、及び障害解析処理部５を備えている事例が考えられる。
【００４２】
但し、実際には、これらの例に限定されない。
【００４３】
［ステップ実行回数保持テーブルの構成例］
図４を参照して、ステップ実行回数保持テーブル９の構成例について説明する。
図４に示すように、ステップ実行回数保持テーブル９には、ブレークポイントテーブル３ａと同様に、イベント情報がブレーク条件（停止条件）として格納される。すなわち、ステップ実行回数保持テーブル９は、ブレークポイントテーブル３ａと一体化することもできる。ここでは、ステップ実行回数保持テーブル９は、ブレーク条件（停止条件）として、ステップ実行回数を格納する。ステップ実行回数とは、ユーザが設定した各ブレークポイントで被デバッグプログラムの実行を停止した後、ステップ実行を何回行ったかを示す値である。
【００４４】
［本実施形態の動作］
本実施形態では、ステップ実行回数情報の収集動作、及びステップ実行回数情報の表示動作を行う。
【００４５】
［ステップ実行回数情報収集処理］
図５を参照して、ステップ実行回数情報の収集を行う際の処理について説明する。
【００４６】
（１）ステップＳ１０１
障害解析処理部５は、ユーザによる設定／操作に応じて、被デバッグプログラム４を実行する。
【００４７】
（２）ステップＳ１０２
障害解析処理部５は、被デバッグプログラム４の実行中にブレークポイントテーブル３ａに設定されているブレークポイントと実行アドレスが一致した場合、被デバッグプログラム４の実行を停止する。
【００４８】
（３）ステップＳ１０３
その際、ステップ実行回数情報収集処理部８は、ブレークポイントテーブル３ａに設定されているブレークポイントのうち、どのブレークポイントで被デバッグプログラム４の実行が停止したのか確認し、そのブレークポイントの情報を該当ブレークポイント情報として保持する。
【００４９】
（４）ステップＳ１０４
その後、ステップ実行回数情報収集処理部８は、入力部１を用いたユーザの操作を判定し、ユーザがステップ実行操作を行ったか確認する。ユーザがステップ実行操作を行うか行わないかで、処理が分かれる。
【００５０】
（５）ステップＳ１０５
ステップ実行回数情報収集処理部８は、ユーザがステップ実行操作を行わなかった場合は、ユーザの指定した操作に応じた処理を行う。このとき、ステップ実行回数情報収集処理部８は障害解析処理部５に制御を返し、障害解析処理部５がユーザの指定した操作に応じた処理を行うようにしても良い。
【００５１】
（６）ステップＳ１０６
ステップ実行回数情報収集処理部８は、ユーザがステップ実行操作を行った場合は、ステップＳ１０３で保持していた該当ブレークポイント情報と一致するステップ実行回数情報保持テーブル９内のブレークポイントのステップ実行回数に１を加算する（ステップ実行回数を「＋１」する）。すなわち、ステップ実行回数情報収集処理部８は、ステップ実行回数情報保持テーブル９内の該当するブレークポイントのステップ実行回数をインクリメント（ｉｎｃｒｅｍｅｎｔ）する。
【００５２】
（７）ステップＳ１０７
ステップ実行回数情報収集処理部８は、ステップ実行処理を行う。このとき、ステップ実行回数情報収集処理部８は障害解析処理部５に制御を返し、障害解析処理部５がステップ実行処理を行うようにしても良い。
【００５３】
上記の動作により、被デバッグプログラム４の実行停止後にステップ実行を行った際、該当ブレークポイントのステップ実行回数をカウントすることができる。
【００５４】
［ステップ実行回数情報表示処理］
図６を参照して、ステップ実行回数情報の表示を行う際の処理について説明する。
【００５５】
（１）ステップＳ２０１
まず、ステップ実行回数情報出力処理部１０は、ブレークポイントの順番を指定する値であるＮに１を代入し、初期化する（Ｎ＝１）。
【００５６】
（２）ステップＳ２０２
ステップ実行回数情報出力処理部１０は、ブレークポイントテーブル３ａのＮ番目（Ｎ列目）にブレークポイントの設定があるか確認する。ステップ実行回数情報出力処理部１０は、ブレークポイントの設定が無い場合、処理を終了する。
【００５７】
（３）ステップＳ２０３
ステップ実行回数情報出力処理部１０は、ブレークポイントの設定がある場合、出力部２を介して、ブレークポイントテーブル３ａの「ブレークＮ番目」のブレークポイント情報を画面に表示する。
【００５８】
（４）ステップＳ２０４
その後、ステップ実行回数情報出力処理部１０は、上記のブレークポイント情報と同様に、ステップ実行回数情報保持テーブル９の「ブレークＮ番目」のステップ実行回数情報を表示する。
【００５９】
（５）ステップＳ２０５
ステップ実行回数情報出力処理部１０は、ブレークポイントの順番を指定する値であるＮに１を加算する（Ｎ＝Ｎ＋１）。すなわち、ステップ実行回数情報出力処理部１０は、ブレークポイントの順番を指定する値であるＮをインクリメント（ｉｎｃｒｅｍｅｎｔ）する。その後、再度ステップＳ２０２に移行する。
【００６０】
ステップ実行回数情報出力処理部１０は、ステップＳ２０２でブレークポイントの設定がある間、上記ステップＳ２０２〜ステップＳ２０５を繰り返すことで、設定済みブレークポイントとそのステップ実行回数それぞれの情報を画面へ表示する。
【００６１】
上記の通り、ブレークポイント毎のステップ実行回数情報を収集及び表示を行うことで、ユーザは、自分が設定した各ブレークポイントで停止した後にステップ実行を何回行ったか、画面で確認できる。
【００６２】
画面に表示されたブレークポイントのうち、被デバッグプログラム４の実行を停止した後にステップ実行を行った回数が多いブレークポイントは、被デバッグプログラム４のデバッグのために有効に使われていると、ユーザが判断できる。
【００６３】
また、逆に画面に表示されたブレークポイントのうち、被デバッグプログラム４の実行を停止した後にステップ実行を行った回数が少ない、もしくは、ステップ実行を行った回数がないブレークポイントは、被デバッグプログラム４のデバッグのために有効に使われていないと、ユーザが判断できる。
【００６４】
有効に使われていないとユーザが判断したブレークポイントは、ブレークポイントの解除対象とすることができる。これにより、有限のブレークポイント設定数を無駄なく利用することができる。
【００６５】
以上説明したように、本発明によれば、ブレークポイント毎のステップ実行回数を画面に表示することができる。
【００６６】
また、本発明によれば、画面に表示されたブレークポイント毎のステップ実行回数により、ユーザは設定済みのブレークポイントが有効か否かの判別ができる。
【００６７】
また、本発明によれば、マイコンのソフトウェア用デバッガの分野において、有効なブレークポイントの情報提供を行うデバッガを実現することができる
【００６８】
以上、本発明の実施形態を詳述してきたが、実際には、上記の実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の変更があっても本発明に含まれる。
【符号の説明】
【００６９】
１…  入力部
２…  出力部
３…  メモリ
３ａ…  ブレークポイントテーブル
３ｂ…  イベントログ（イベントトレース）
４…  被デバッグプログラム
５…  障害解析処理部
６…  ログ取得処理部
７…  格納処理部
８…  ステップ実行回数情報収集処理部
９…  ステップ実行回数情報保持テーブル
１０…  ステップ実行回数情報出力処理部
【図１】
2011203961.tif 000003
【図２】
2011203961.tif 000004
【図３】
2011203961.tif 000005
【図４】
2011203961.tif 000006
【図５】
2011203961.tif 000007
【図６】
2011203961.tif 000008