説明

実行状況確認装置、実行状況確認方法および実行状況確認プログラム

【課題】マルチスレッドで実行する場合であっても実行時のハードウェアの実行環境を再現することなく容易にプログラムの実行状況を確認する。
【解決手段】プログラムを複数のスレッドで実行するプログラム実行部11と、ユーザによって指定された収集範囲に含まれる命令文の実行状況情報を収集する情報収集部12と、収集された実行状況情報をシーケンステーブルおよび変数テーブルに登録する登録部13と、ユーザによってシーケンス名が指定された場合にこのシーケンス名を用いてシーケンステーブルおよび変数テーブルに記憶されている実行状況情報を取得する取得部14と、取得された実行状況情報を用いて特定の命令文およびこの命令文で用いられる変数の内容を強調表示させてディスプレイ30に表示させる表示制御部15と、を備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、実行状況確認装置、実行状況確認方法および実行状況確認プログラムに関する。
【背景技術】
【0002】
コンピュータ処理を効率的に実行するための技術として、マルチスレッドがある。マルチスレッドは、プログラムの処理を複数のスレッドで並行して実行する技術である。マルチスレッドのプログラムを実行した場合には、複数のスレッドで並行してデータが更新されることとなる。したがって、マルチスレッドのプログラムをデバッグする場合には、通常のシングルスレッドのプログラムをデバッグするよりもデバッグ作業に手間を要する。下記特許文献1および特許文献2には、マルチスレッドのプログラムのデバッグ作業を効率良く行うためのデバッグ技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2000−122882号公報
【特許文献2】特開平11−338733号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
上記特許文献1および特許文献2に記載されているデバッグ技術は、マルチスレッドのプログラムを実際に実行しながらデバッグするものである。ここで、マルチスレッドでは複数の処理を並行して実行するため、例えばCPUの稼働状況等のハードウェアの実行環境によって各スレッドにおける進行状況が変動し、スレッド間の処理の実行タイミングが想定を超えてずれてしまうことがある。このずれによってエラーが発生した場合には、エラーの原因を検証するために、エラー発生時のハードウェアの実行環境を再現し、エラー発生時と同様の実行タイミングでプログラムを実行させる必要がある。しかしながら、エラー発生時と同様のハードウェアの実行環境を再現するには困難を要する。
【0005】
本発明は、上述した課題を解決するためになされたものであり、マルチスレッドで実行する場合であっても、実行時のハードウェアの実行環境を再現することなく容易にプログラムの実行状況を確認することができる実行状況確認装置、実行状況確認方法および実行状況確認プログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明の実行状況確認装置は、プログラムを複数のスレッドで実行する実行手段と、ユーザによって指定された収集範囲に含まれるプログラムの命令文について、少なくとも、実行手段によって実行されている命令文を特定する実行文特定情報と当該命令文に記述されている変数の内容を含む変数情報を有する実行状況情報を収集する収集手段と、収集手段によって収集された実行状況情報を、収集範囲を特定する範囲特定情報に対応付けて記憶部に登録する登録手段と、ユーザによって、いずれかの範囲特定情報が指定された場合に、当該指定された範囲特定情報に対応して記憶部に登録されている実行状況情報を取得する取得手段と、取得手段によって取得された実行状況情報を用いて、少なくとも、収集範囲に含まれる命令文および当該命令文における変数の内容を、当該命令文ごとにそれぞれ対応付けて表示部に表示させる表示手段と、を備える。
【0007】
本発明の実行状況確認方法は、プログラムを複数のスレッドで実行する実行ステップと、ユーザによって指定された収集範囲に含まれるプログラムの命令文について、少なくとも、実行ステップにおいて実行されている命令文を特定する実行文特定情報と当該命令文に記述されている変数の内容を含む変数情報を有する実行状況情報を収集する収集ステップと、収集ステップにおいて収集された実行状況情報を、収集範囲を特定する範囲特定情報に対応付けて記憶部に登録する記憶ステップと、ユーザによって、いずれかの範囲特定情報が指定された場合に、当該指定された範囲特定情報に対応して記憶部に登録されている実行状況情報を取得する取得ステップと、取得ステップにおいて取得された実行状況情報を用いて、少なくとも、収集範囲に含まれる命令文および当該命令文における変数の内容を、当該命令文ごとにそれぞれ対応付けて表示部に表示させる表示ステップと、を含む。
【0008】
本発明の実行状況確認プログラムは、上記実行状況確認方法に含まれる各ステップをコンピュータに実行させる。
【発明の効果】
【0009】
本発明によれば、マルチスレッドで実行する場合であっても、実行時のハードウェアの実行環境を再現することなく容易にプログラムの実行状況を確認することができる。
【図面の簡単な説明】
【0010】
【図1】実施形態における実行状況確認装置の機能構成を例示するブロック図である。
【図2】シーケンステーブルのデータ構成を例示する図である。
【図3】変数テーブルのデータ構成を例示する図である。
【図4】表示画面の一例を示す図である。
【図5】実行状況情報を登録する際の処理手順を例示するフローチャートである。
【図6】実行状況情報を表示する際の処理手順を例示するフローチャートである。
【図7】実行状況情報を更新する際の処理手順を例示するフローチャートである。
【発明を実施するための形態】
【0011】
以下、添付図面を参照して、本発明に係る実行状況確認装置、実行状況確認方法および実行状況確認プログラムの好適な実施形態について説明する。実行状況確認装置は、マルチスレッドプログラムの実行状況に関する情報(以下、「実行状況情報」という。)を収集して記憶し、この記憶した実行状況情報をユーザの呼び出しに応じて表示させる点に特徴がある。これにより、マルチスレッドプログラムを動作させることなく、マルチスレッドプログラムの実行状況を再現させている。なお、マルチスレッドプログラムとは、マルチスレッドで処理を実行するように記述されたプログラムをいう。
【0012】
図1を参照して、実施形態における実行状況確認装置の機能構成について説明する。実行状況確認装置1は、プログラム実行部(実行手段)11と、情報収集部(収集手段)12と、登録部(登録手段)13と、取得部(取得手段)14と、表示制御部(表示手段)15と、仮想実行部(仮想実行手段)16と、更新部(更新手段)17と、を有する。
【0013】
ここで、実行状況確認装置1は、物理的には、例えば、CPU(Central Processing Unit)と、記憶装置(記憶部)と、入力装置と、表示装置(表示部)とを含んで構成される。これらの要素は、互いにバスを介して接続されている。記憶装置には、例えば、CPUで処理されるプログラムやデータを記憶するROM(Read Only Memory)やHDD(Hard Disk Drive)、主として制御処理のための各種作業領域として使用されるRAM(Random Access Memory)等が含まれる。本実施形態における記憶装置20には、例えば、図2に示すシーケンステーブルと、図3に示す変数テーブルとが格納される。CPUは、ROMに記憶されたプログラムを実行し、入力装置から入力された各種の指令等に従ってRAMに展開された各種のデータを処理する。CPUは、その処理結果を表示装置に表示させる。これにより、以下に記載する実行状況確認装置1における各部の機能を実現することができる。
【0014】
プログラム実行部11は、マルチスレッドプログラムを実行する。マルチスレッドプログラムは、例えばインタプリタ言語で記述することができる。なお、実行状況確認装置1は、従来と同様に、マルチスレッドプログラムをマルチスレッドで処理可能なOS等の動作環境を有する。
【0015】
情報収集部12は、プログラム実行部11によってマルチスレッドプログラムが実行されているときに、ユーザによって指定された収集範囲(後述)に含まれる命令文の実行状況情報を収集する。収集範囲は、マルチスレッドプログラムに含まれる命令文のうち、実行状況情報を収集する命令文の範囲であり、ユーザにより指定することができる。この収集範囲は、複数設定することができる。ユーザは、収集範囲を指定する際に、この収集範囲を一意に特定するためのシーケンス名(範囲特定情報)を指定する。
【0016】
登録部13は、情報収集部12によって収集された実行状況情報をシーケンステーブルおよび変数テーブルに登録する。実行状況情報には、例えば、実行文情報と変数情報とが含まれる。実行文情報は、プログラム実行部11によって実行されている命令文(以下、「実行文」という。)に関する情報であり、シーケンステーブルに格納される。変数情報は、実行文に記述されている変数に関する情報であり、変数テーブルに格納される。図2および図3を参照して、シーケンステーブルおよび変数テーブルのデータ構成について説明する。
【0017】
図2は、シーケンステーブルのデータ構成図である。シーケンステーブルは、収集範囲に含まれる命令文ごとに一のレコード(以下、「シーケンスレコード」という。)を格納する。シーケンスレコードは、データ項目として、例えば、識別ID、シーケンス名、プログラム名、行番号、スレッドIDおよび実行時間を有する。識別ID、シーケンス名、プログラム名および行番号が、プログラム実行部11によって実行されている命令文を特定する実行文特定情報となる。
【0018】
図2に示す識別IDには、シーケンスレコードを一意に特定するためのIDが格納される。識別IDは、登録部13によってシーケンスレコードが生成されるときに付与される。シーケンス名には、実行文を含む収集範囲を一意に特定する名称が格納される。シーケンス名には、上述したように、ユーザによって収集範囲とともに指定されるシーケンス名が格納される。プログラム名には、実行文を含む一連のプログラムを一意に特定する名称が格納される。行番号には、実行文が記述されているプログラムの行番号が格納される。行番号は、プログラム単位に付与される。スレッドIDには、実行文を実行したスレッドを一意に特定するIDが格納される。実行時間には、実行文を実行するのに要した時間が格納される。
【0019】
図3は、変数テーブルのデータ構成図である。変数テーブルは、収集範囲に含まれる命令文に記述されている変数ごとに一のレコード(以下、「変数レコード」という。)を格納する。変数レコードは、データ項目として、例えば、変数ID、識別ID、変数名および変数値を有する。変数IDには、変数レコードを一意に特定するためのIDが格納される。変数IDは、登録部13によって変数レコードが生成されるときに付与される。識別IDには、対応するシーケンスレコードを一意に特定するためのIDが格納される。この識別IDによって、変数レコードとシーケンスレコードとが対応づけられる。変数名には、実行文に記述されている変数名が格納される。変数値には、変数名にセットされている内容が格納される。変数には、スレッド内でのみ有効なローカル変数と、実行中のプログラムで共有されるグローバル変数とがある。
【0020】
なお、実行状況情報を記憶するテーブルは、シーケンステーブルおよび変数テーブルには限定されない。実行状況情報を、一つのテーブルに登録することとしてもよいし、三つ以上のテーブルに登録することとしてもよい。
【0021】
取得部14は、ユーザの操作指示によって、特定のシーケンス名が指定され、実行状況情報の表示指令が出された場合に、指定されたシーケンス名を用いてシーケンステーブルおよび変数テーブルから実行状況情報である実行文特定情報および変数情報を取得する。
【0022】
取得部14の機能を具体的に説明する。取得部14は、シーケンス名をキーにして、シーケンステーブルからシーケンスレコードを抽出する。取得部14は、抽出した一または複数のシーケンスレコードに含まれる識別IDをキーにして、変数テーブルから変数レコードを抽出する。これにより、実行文特定情報および変数情報を取得することができる。
【0023】
表示制御部15は、取得部14によって取得された実行文特定情報および変数情報を用いて、この実行文特定情報によって特定される命令文と、この命令文に記述されている変数の内容とをディスプレイ30に表示させる。
【0024】
図4に表示画面の一例を示す。図4に示す表示画面上には、変数ビュウVVと、コードビュウCVとが表示される。変数ビュウVVには、取得部14によって取得された変数情報に含まれる変数の内容が表示される。コードビュウCVには、取得部14によって取得された実行文情報に対応する命令文が表示される。コードビュウCVでは、一の命令文の表示領域CLが強調して表示(以下、「強調表示」という。)される。変数ビュウVVでは、コードビュウCVで強調表示されている命令文に対応する変数の内容の表示領域VLが強調表示される。強調表示する方法としては、例えば、表示領域CL、VLを他の領域とは異なる色で表示する方法や、表示領域CL、VLを枠で囲む方法等を用いることができる。
【0025】
なお、命令文や変数の内容を表示する画面は、上記図4に示す表示画面には限定されない。例えば、コードビュウCVに一の命令文のみを表示し、変数ビュウVVに当該一の命令文の変数の内容のみを表示させることとしてもよい。一の命令文と当該一の命令文の変数の内容とを対応付け、その対応関係を認識可能に表示することができれば、どのような表示画面であってもよい。
【0026】
表示制御部15は、ユーザの操作指示によって、コードビュウCVで強調表示されている命令文とは異なる命令文が指定され、強調表示の移動指令が出された場合に、この指定された命令文を強調表示させるとともに、この指定された命令文の変数の内容を強調表示させる。つまり、表示制御部15は、ユーザの操作指示によって、強調表示する命令文および変数の内容を変更する。次に強調表示させる命令文を指定する方法としては、例えば、マウス等の入力装置を操作してポインタ指定とクリック操作とで命令文を指定する方法や、キーボード等の入力装置を操作してカーソル指定と入力キー操作とで命令文を指定する方法等を用いることができる。つまり、次に強調表示する命令文を特定して指定することができれば、どのような指定方法であってもよい。
【0027】
仮想実行部16は、ユーザの操作指示によって、変数ビュウVVで強調表示されている変数の値が変更され、更新指令が出された場合に、この変更された値を用いて、強調表示されている命令文以降に処理される命令文を順次実行する。
【0028】
仮想実行部16の機能を具体的に説明する。仮想実行部16は、変数の値が変更された場合に、強調表示されている命令文に関する情報を表示制御部15から受信し、受信した情報(例えば、プログラム名および行番号)をキーにしてシーケンステーブルから識別IDを取得する。仮想実行部16は、取得した識別IDをキーにして変数テーブルの変数情報を特定し、特定した変数情報の変数値を変更された値で更新する。仮想実行部16は、コードビュウCVに表示されている命令文のモジュールをロードし、強調表示されている命令文以降に処理される命令文を順次実行する。
【0029】
なお、仮想実行部16が実行する命令文は、コードビュウCVに表示されている命令文に限定されない。コードビュウCVに表示されている命令文以降に処理される全ての命令文のモジュールをロードして順次実行することとしてもよい。
【0030】
また、変更可能な変数はローカル変数に限定することが好ましい。グローバル変数を変更した場合には、各プログラム間でのデータの整合性が失われる可能性があるためである。この場合には、強調表示の対象となる変数がグローバル変数である場合には、変更できないようにガードをかければよい。
【0031】
更新部17は、強調表示されている命令文以降に処理される命令文が、仮想実行部16によって実行されているときに、上述した情報収集部12および登録部13と同様に、実行状況情報を収集し、収集した実行状況情報をシーケンステーブルおよび変数テーブルに記憶させる。つまり、更新部17は、シーケンステーブルおよび変数テーブルに格納されている実行文情報および変数情報を、仮想実行部16による実行結果で更新する。
【0032】
次に、図面を参照して、本実施形態における実行状況確認装置の動作について説明する。図5を参照して、実行状況情報を記憶装置に登録する際の動作について説明する。図5は、実行状況情報を登録する際の処理手順を示すフローチャートである。
【0033】
最初に、プログラム実行部11は、収集範囲が指定されたマルチスレッドプログラムの実行を開始する(ステップS101)。
【0034】
続いて、情報収集部12は、実行文が収集範囲に含まれるか否かを判定する(ステップS102)。この判定がNOである場合(ステップS102;NO)には、後述するステップS105に処理を移行する。
【0035】
一方、上記ステップS102の判定で実行文が収集範囲に含まれると判定された場合(ステップS102;YES)に、情報収集部12は、実行文の実行状況情報を収集する(ステップS103)。
続いて、登録部13は、上記ステップS103で収集された実行状況情報をシーケンステーブルおよび変数テーブルに登録する(ステップS104)。
【0036】
続いて、プログラム実行部11は、マルチスレッドプログラムの実行終了条件を満たしたか否かを判定する(ステップS105)。この判定がYESである場合(ステップS105;YES)には、本処理手順を終了する。一方、この判定がNOである場合(ステップS105;NO)に、プログラム実行部11は、次の命令文を実行し(ステップS106)、処理を上述したステップS103に移行する。
【0037】
図6を参照して、実行状況情報を表示装置に表示する際の動作について説明する。図6は、実行状況情報を表示する際の処理手順を示すフローチャートである。
【0038】
最初に、ユーザの操作指示によって、特定のシーケンス名が指定され、実行状況情報の表示指令が出された場合(ステップS201;YES)に、取得部14は、指定されたシーケンス名に対応する実行状況情報を、シーケンステーブルおよび変数テーブルから取得する(ステップS202)。
【0039】
続いて、表示制御部15は、上記ステップS202で取得された実行状況情報に基づいて、命令文と変数の内容とをディスプレイ30に表示させる(ステップS203)。この場合に、表示制御部15は、初期表示として、コードビュウに表示する命令文のうち、先頭行に位置する命令文を強調表示し、変数ビュウに表示する変数の内容のうち、先頭行に位置する命令文に対応する変数の内容を強調表示する。
【0040】
続いて、ユーザの操作指示によって、コードビュウで強調表示されている命令文とは異なる命令文が指定され、強調表示対象の移動指令が出された場合(ステップS204;YES)に、表示制御部15は、指定された命令文と、この命令文に対応する変数の内容とを強調表示する(ステップS205)。
【0041】
続いて、表示制御部15は、ユーザの操作指示によって、終了指令が出されたか否かを判定する(ステップS206)。この判定がYESの場合(ステップS206;YES)には、本処理手順を終了し、この判定がNOである場合(ステップS206;NO)には、処理を上記ステップS204に移行する。
【0042】
図7を参照して、実行状況情報を更新する際の動作について説明する。図7は、実行状況情報を更新する際の処理手順を示すフローチャートである。
【0043】
最初に、ユーザの操作指示によって、変数ビュウで強調表示されている変数値が変更され、変更指令が出された場合(ステップS301;YES)に、仮想実行部16は、コードビュウに表示されている命令文のモジュールをロードする(ステップS302)。
【0044】
続いて、仮想実行部16は、強調表示されている命令文の次の命令文を、変更された変数値を用いて実行する(ステップS303)。
【0045】
続いて、更新部17は、実行文の実行状況情報を収集し、収集した実行状況情報を用いてシーケンステーブルおよび変数テーブルに格納されている情報を更新する(ステップS304)。
【0046】
続いて、仮想実行部16は、ロードしたモジュールの処理が終了したか否かを判定する(ステップS305)。この判定がYESである場合(ステップS305;YES)には、本処理手順を終了する。一方、この判定がNOである場合(ステップS305;NO)に、仮想実行部16は、次の命令文を実行し(ステップS306)、処理を上述したステップS304に移行する。
【0047】
上述してきたように、実施形態における実行状況確認装置1によれば、ユーザにより指定された収集範囲の命令文をマルチスレッドで実行しているときに、その実行状況情報をシーケンステーブルおよび変数テーブルに登録することができる。マルチスレッドプログラムを実行した後に、ユーザによって、収集範囲を特定するシーケンス名が指定された場合には、このシーケンス名に対応して記憶されている実行状況情報を取得して、収集範囲に含まれる命令文およびこの命令文で用いられる変数の内容を画面上に表示させることができる。この表示の際には、ユーザにより指定された特定の命令文およびこの命令文で用いられる変数の内容を強調表示させ、他の表示情報と識別可能に表示させることができる。
【0048】
これにより、例えば、スレッドごとの実行タイミングにずれが生じてエラーが発生した場合であっても、エラー発生時の動作環境を再現することなく、命令文とこの命令文に対応する変数の内容とを順次指定して確認することが可能となる。つまり、マルチスレッドで実行するプログラムであっても、実行時のハードウェアの実行環境を再現することなく容易にプログラムの実行状況を確認することができる。
【0049】
また、実施形態における実行状況確認装置1によれば、ユーザによって、強調表示した変数の内容が変更された場合に、その変更した変数を含む命令文以降の処理を実行して実行状況情報を更新することができる。これにより、変数の内容を変更しながら、マルチスレッドプログラムの内容を検証することが可能となる。
【0050】
なお、上述した実施形態は、単なる例示に過ぎず、実施形態に明示していない種々の変形や技術の適用を排除するものではない。すなわち、本発明は、その趣旨を逸脱しない範囲で様々な形態に変形して実施することができる。
【0051】
例えば、上述した実施形態における更新部17は、シーケンステーブルおよび変数テーブルに格納されている実行文情報および変数情報を、仮想実行部16による実行結果で上書きして更新しているが、各情報を上書きして更新することには限定されない。例えば、仮想実行部16による実行結果を、既存の実行文情報および変数情報と区別可能にし、シーケンステーブルおよび変数テーブルにレコードを追加して更新することとしてもよい。各情報を区別可能とするために、例えば、既存データと追加データとを区別するための区分データを実行文情報および変数情報に設けることとしてもよい。これにより、一部の変数値を変更した場合に、変更後の実行状況に加え、変更前の実行状況についても確認することが可能となる。
【0052】
また、上述した実施形態では、変数の値が変更されたときに実行状況情報を更新しているが、実行状況情報を更新する際の要件はこれに限定されない。例えば、図2に示す実行時間を命令文に対応させて表示画面上に表示させ、この実行時間が変更されたときに、実行状況情報を更新することとしてもよい。これにより、例えば実行時間を変更させた命令文を、変更後の実行時間が経過するまで待機させてから次の命令文を実行させることができるため、スレッドごとの実行タイミングを意図的にずらすことが可能となる。つまり、様々なハードウェアの実行環境を想定して、スレッドごとの実行タイミングをずらしながら、マルチスレッドプログラムの内容を検証することが可能となる。
【0053】
また、上述した実施形態では、実行状況確認装置1が、プログラム実行部11、情報収集部12、登録部13、取得部14、表示制御部15、仮想実行部16および更新部17の各要素を全て備えているが、これに限定されない。例えば、実行状況確認装置1が、プログラム実行部11、情報収集部12、登録部13、取得部14および表示制御部15を備え、その他の要素は、他の装置が備えることとしてもよい。すなわち、実行状況確認装置1が上述した各要素を全て備える必要はなく、各要素を複数の異なる装置に分散して備えることとしてもよい。
【符号の説明】
【0054】
1…実行状況確認装置、11…プログラム実行部、12…情報収集部、13…登録部、14…取得部、15…表示制御部、16…仮想実行部、17…更新部、20…記憶装置、30…ディスプレイ。

【特許請求の範囲】
【請求項1】
プログラムを複数のスレッドで実行する実行手段と、
ユーザによって指定された収集範囲に含まれる前記プログラムの命令文について、少なくとも、前記実行手段によって実行されている前記命令文を特定する実行文特定情報と当該命令文に記述されている変数の内容を含む変数情報とを有する実行状況情報を収集する収集手段と、
前記収集手段によって収集された前記実行状況情報を、前記収集範囲を特定する範囲特定情報に対応付けて記憶部に登録する登録手段と、
ユーザによって、いずれかの前記範囲特定情報が指定された場合に、当該指定された前記範囲特定情報に対応して前記記憶部に登録されている前記実行状況情報を取得する取得手段と、
前記取得手段によって取得された前記実行状況情報を用いて、少なくとも、前記収集範囲に含まれる前記命令文および当該命令文における前記変数の内容を、当該命令文ごとにそれぞれ対応付けて表示部に表示させる表示手段と、
を備えることを特徴とする実行状況確認装置。
【請求項2】
前記表示手段は、一の前記命令文および当該一の前記命令文における前記変数の内容を、他の表示情報と識別可能な状態で表示部に表示させることを特徴とする請求項1記載の実行状況確認装置。
【請求項3】
前記表示手段は、他の表示情報と識別可能な状態で表示されている前記命令文とは異なる前記命令文が指定された場合に、当該指定された前記命令文および当該指定された前記命令文における前記変数の内容を、他の表示情報と識別可能な状態で表示させることを特徴とする請求項2記載の実行状況確認装置。
【請求項4】
他の表示情報と識別可能な状態で表示されている前記変数の内容が変更された場合に、当該変更された前記変数の内容を用いて、他の表示情報と識別可能な状態で表示されている前記命令文以降に処理される命令文を順次実行する仮想実行手段と、
前記仮想実行手段によって命令文が実行されているときに、当該命令文の実行結果を用いて、前記記憶部に記憶される前記実行状況情報を更新する更新手段と、
をさらに備えることを特徴とする請求項2または3記載の実行状況確認装置。
【請求項5】
前記実行状況情報には、前記命令文の実行時間に関する実行時間情報がさらに含まれ、
前記表示手段は、一の前記命令文と、当該一の前記命令文における前記変数の内容と、当該一の前記命令文の実行時間とを、他の表示情報と識別可能な状態で表示部に表示させ、
前記仮想実行手段は、他の表示情報と識別可能な状態で表示されている前記実行時間が変更された場合に、当該変更された前記実行時間を用いて、他の表示情報と識別可能な状態で表示されている前記命令文以降に処理される命令文を順次実行する、
ことを特徴とする請求項4記載の実行状況確認装置。
【請求項6】
プログラムを複数のスレッドで実行する実行ステップと、
ユーザによって指定された収集範囲に含まれる前記プログラムの命令文について、少なくとも、前記実行ステップにおいて実行されている前記命令文を特定する実行文特定情報と当該命令文に記述されている変数の内容を含む変数情報を有する実行状況情報を収集する収集ステップと、
前記収集ステップにおいて収集された前記実行状況情報を、前記収集範囲を特定する範囲特定情報に対応付けて記憶部に登録する記憶ステップと、
ユーザによって、いずれかの前記範囲特定情報が指定された場合に、当該指定された前記範囲特定情報に対応して前記記憶部に登録されている前記実行状況情報を取得する取得ステップと、
前記取得ステップにおいて取得された前記実行状況情報を用いて、少なくとも、前記収集範囲に含まれる前記命令文および当該命令文における前記変数の内容を、当該命令文ごとにそれぞれ対応付けて表示部に表示させる表示ステップと、
を含むことを特徴とする実行状況確認方法。
【請求項7】
請求項6に記載の各ステップをコンピュータに実行させるための実行状況確認プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate