JP2017191622A - Information generation system, method thereof, and program thereof - Google Patents

Information generation system, method thereof, and program thereof Download PDF

Info

Publication number
JP2017191622A
JP2017191622A JP2017149151A JP2017149151A JP2017191622A JP 2017191622 A JP2017191622 A JP 2017191622A JP 2017149151 A JP2017149151 A JP 2017149151A JP 2017149151 A JP2017149151 A JP 2017149151A JP 2017191622 A JP2017191622 A JP 2017191622A
Authority
JP
Japan
Prior art keywords
information
program
display
event
axis
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
JP2017149151A
Other languages
Japanese (ja)
Inventor
黒田 亮
Akira Kuroda
亮 黒田
新肖 李
Shinsho Ri
新肖 李
秀則 松崎
Hidenori Matsuzaki
秀則 松崎
信明 東條
Nobuaki Tojo
信明 東條
真由子 肥塚
Mayuko Koezuka
真由子 肥塚
暢康 中島
Nobuyasu Nakajima
暢康 中島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2017149151A priority Critical patent/JP2017191622A/en
Publication of JP2017191622A publication Critical patent/JP2017191622A/en
Abandoned legal-status Critical Current

Links

Images

Abstract

PROBLEM TO BE SOLVED: To cause a user to grasp an execution state of a program.SOLUTION: An information generation system according to an embodiment is an information generation system that generates a display event representing two or more events occurring through execution of a program. The information generation system may comprise: a display event information generation part generating the display event with a display unit based on a minimum drawing unit of a first axis of a coordinate system drawing an execution state of the program, an inclusion relation of a section of the program, and execution periods of the events; and a generation part generating an axis object representing the first axis.SELECTED DRAWING: Figure 1

Description

本発明の実施形態は、情報生成システム、その方法およびそのプログラムに関する。   Embodiments described herein relate generally to an information generation system, a method thereof, and a program thereof.

従来、プログラムの実行トレースに基づいて実行されたプログラムのスレッドを表すスレッドオブジェクトとイベントとを、時間軸とスレッドとを軸要素する座標系に表示することで、ユーザによるプログラム解析をサポートするプログラム実行状況表示に関する技術が存在する。この技術は、プログラムの全実行状況のアクティビティを表示する領域と、特定範囲の詳細な実行状況をスレッド軸と時間軸とを用いて表示する領域とを持ち、全実行状況の表示する領域から特定範囲を指定する機能をユーザに提供することで、対話的にプログラムの全実行状況から特定箇所の詳細情報を表示することを可能としている。   Conventionally, program execution that supports program analysis by the user by displaying thread objects and events that represent the thread of the program executed based on the execution trace of the program in a coordinate system with the time axis and thread as axis elements There are technologies related to status display. This technology has an area that displays the activity of the entire execution status of the program, and an area that displays the detailed execution status of a specific range using the thread axis and time axis, and is specified from the area that displays the overall execution status. By providing the user with a function for specifying the range, it is possible to interactively display detailed information on a specific location from the entire execution status of the program.

米国特許公開第2010/7698686号明細書US Patent Publication No. 2010/7698686

プログラム開発者のプログラム開発時に、プログラムの実行状況を表示することで動作の確認や性能最適化等を行う場合、従来のプログラム実行状況表示装置では、表示装置にプログラムの実行状況が表示されるため、その表示領域は表示装置のサイズに制限されてしまう。そのため、プログラムの詳細実行状況を表示する領域において大量のイベントを表示する場合は、例えば、表示装置の表示サイズ制約から全イベントの情報を同時に表示できない、全イベントの情報を同時に表示した際にイベントを表すオブジェクトの表示サイズが極めて小さいもしくは表示装置の描画性能で表示できない等、プログラムの詳細実行状況の把握が困難となる場合が存在する。   When performing program verification, performance optimization, etc. by displaying the program execution status during program development, the conventional program execution status display device displays the program execution status on the display device. The display area is limited by the size of the display device. Therefore, when displaying a large number of events in the area where the detailed execution status of the program is displayed, for example, if all event information is displayed at the same time, information on all events cannot be displayed simultaneously due to display size restrictions of the display device. In some cases, it is difficult to grasp the detailed execution status of the program, for example, the display size of the object representing the size of the object is extremely small or cannot be displayed with the drawing performance of the display device.

以下の実施形態では、大量の呼び出しが発生するような大規模プログラムにおいても、プログラム実行の実行状況をユーザに把握させることが可能な情報生成システム、その方法およびそのプログラムを提供することを目的とする。   In the following embodiments, an object is to provide an information generation system, a method thereof, and a program thereof that allow a user to grasp the execution status of program execution even in a large-scale program in which a large number of calls are generated. To do.

実施形態にかかる情報生成システムは、プログラムの実行によって発生する2つ以上のイベントを表現する表示イベントを生成する情報生成システムであって、前記プログラムの実行状況を描画する座標系の第1軸の最小描画単位と、前記プログラムの区間の包含関係と、前記イベントの実行期間とに基づいた表示単位で前記表示イベントを生成する表示イベント情報生成部と、前記第1軸を表現する軸オブジェクトを生成する生成部とを有してもよい。   An information generation system according to an embodiment is an information generation system that generates a display event that expresses two or more events that are generated by execution of a program, and includes a first axis of a coordinate system that draws the execution status of the program A display event information generating unit that generates the display event in a display unit based on a minimum drawing unit, an inclusion relation between the program sections, and an execution period of the event, and an axis object that expresses the first axis You may have a generating part to do.

実施形態1に係るプログラム実行状況表示装置(システム)の概要構成例を示すブロック図。FIG. 2 is a block diagram illustrating a schematic configuration example of a program execution status display device (system) according to the first embodiment. 実施形態1で例示するプログラムを示す図。FIG. 3 is a diagram illustrating a program exemplified in the first embodiment. 図2に示すプログラムの実行状況を例示する図。The figure which illustrates the execution condition of the program shown in FIG. 従来技術によるプログラム実行状況の表示例を示す図。The figure which shows the example of a display of the program execution condition by a prior art. 従来技術によるプログラム実行状況の他の表示例を示す図。The figure which shows the other example of a program execution condition by a prior art. 実施形態1にかかるプログラム実行状況表示の概略動作例を示すフローチャート。6 is a flowchart showing a schematic operation example of program execution status display according to the first embodiment; 実施形態1にかかるプログラム構造情報の例を示す図(その1)。FIG. 3A is a diagram illustrating an example of program structure information according to the first embodiment (first); 実施形態1にかかるプログラム構造情報の例を示す図(その2)。FIG. 2B is a diagram illustrating an example of program structure information according to the first embodiment (second); 実施形態1にかかるプログラム構造情報の例を示す図(その3)。FIG. 3 is a diagram illustrating an example of program structure information according to the first embodiment (third); 実施形態1にかかるプログラム構造情報の例を示す図(その4)。FIG. 4 is a diagram (part 4) illustrating an example of program structure information according to the first embodiment; 実施形態1にかかるプログラム構造情報の例を示す図(その5)。FIG. 5 is a diagram illustrating an example of program structure information according to the first embodiment (part 5); 実施形態1にかかるプログラム構造情報の例を示す図(その6)。FIG. 6 is a diagram illustrating an example of program structure information according to the first embodiment (No. 6); 実施形態1にかかるプログラム構造情報の例を示す図(その7)。FIG. 7 is a diagram illustrating an example of program structure information according to the first embodiment (part 7); 実施形態1にかかるプログラム構造情報の例を示す図(その8)。FIG. 8 is a diagram illustrating an example of program structure information according to the first embodiment (No. 8); 実施形態1にかかるプログラム構造情報の例を示す図(その9)。FIG. 9 is a diagram illustrating an example of program structure information according to the first embodiment (part 9); 実施形態1にかかるイベント情報の例を示す図(その1)。FIG. 3A is a diagram illustrating an example of event information according to the first embodiment (first); 実施形態1にかかるイベント情報の例を示す図(その2)。FIG. 6B is a diagram illustrating an example of event information according to the first embodiment (second); 実施形態1にかかるイベント情報の例を示す図(その3)。FIG. 6B is a diagram illustrating an example of event information according to the first embodiment (third); 実施形態1にかかるイベント情報の例を示す図(その4)。FIG. 4B is a diagram illustrating an example of event information according to the first embodiment (part 4); 実施形態1にかかる軸情報の例を示す図(その1)。FIG. 3A is a diagram illustrating an example of axis information according to the first embodiment (first); 実施形態1にかかる軸情報の例を示す図(その2)。FIG. 2B is a diagram illustrating an example of axis information according to the first embodiment (second); 実施形態1にかかる軸情報の例を示す図(その3)。FIG. 3 is a diagram illustrating an example of axis information according to the first embodiment (third); 実施形態1にかかる軸情報の例を示す図(その4)。FIG. 4 is a diagram illustrating an example of axis information according to the first embodiment (part 4); 実施形態1にかかる表示イベント単位情報の例を示す図(その1)。FIG. 6A is a diagram illustrating an example of display event unit information according to the first embodiment (part 1); 実施形態1にかかる表示イベント単位情報の例を示す図(その2)。FIG. 8B is a diagram illustrating an example of display event unit information according to the first embodiment (second); 実施形態1にかかる表示イベント単位情報の生成例を示す図。FIG. 6 is a diagram showing an example of generating display event unit information according to the first embodiment. 実施形態1にかかる表示イベント情報の例を示す図(その1)。FIG. 3A is a diagram illustrating an example of display event information according to the first embodiment (first); 実施形態1にかかる表示イベント情報の例を示す図(その2)。FIG. 8B is a diagram illustrating an example of display event information according to the first embodiment (second); 実施形態1にかかる表示イベント情報の例を示す図(その3)。FIG. 10 is a diagram illustrating an example of display event information according to the first embodiment (third); 実施形態1によるプログラム実行状況の表示例を示す図。FIG. 6 is a diagram illustrating a display example of a program execution status according to the first embodiment. 実施形態1によるプログラム実行状況の他の表示例を示す図。FIG. 10 is a diagram showing another display example of the program execution status according to the first embodiment. 実施形態2においてプログラム情報生成装置(システム)が実行するプログラムの一例を示す図。The figure which shows an example of the program which the program information generation apparatus (system) in Embodiment 2 performs. 従来技術によるプログラム実行状況の表示例を示す図。The figure which shows the example of a display of the program execution condition by a prior art. 従来技術によるプログラム実行状況の他の表示例を示す図。The figure which shows the other example of a program execution condition by a prior art. 実施形態2にかかるデータ構造情報の例を示す図(その1)。FIG. 9A is a diagram illustrating an example of data structure information according to the second embodiment (first); 実施形態2にかかるデータ構造情報の例を示す図(その2)。FIG. 10B is a diagram illustrating an example of data structure information according to the second embodiment (second); 実施形態2にかかるデータ構造情報の例を示す図(その3)。FIG. 13 is a diagram illustrating an example of data structure information according to the second embodiment (third); 実施形態2にかかるデータ構造情報の例を示す図(その4)。FIG. 14 is a diagram illustrating an example of data structure information according to the second embodiment (part 4); 実施形態2にかかるデータ構造情報の例を示す図(その5)。FIG. 5 is a diagram illustrating an example of data structure information according to the second embodiment (part 5); 実施形態2にかかるアクセス情報の例を示す図(その1)。FIG. 10 is a diagram illustrating an example of access information according to the second embodiment (part 1); 実施形態2にかかるアクセス情報の例を示す図(その2)。FIG. 10B is a diagram illustrating an example of access information according to the second embodiment (second); 実施形態2にかかる軸情報の例を示す図。The figure which shows the example of the axis | shaft information concerning Embodiment 2. FIG. 実施形態2にかかる表示アクセス単位情報の例を示す図(その1)。FIG. 10A is a diagram illustrating an example of display access unit information according to the second embodiment (first); 実施形態2にかかる表示アクセス単位情報の例を示す図(その2)。FIG. 10B is a diagram illustrating an example of display access unit information according to the second embodiment (second); 実施形態2にかかる表示アクセス単位情報の生成例を示す図。FIG. 10 is a diagram illustrating an example of generating display access unit information according to the second embodiment. 実施形態2にかかる表示アクセス情報の例を示す図(その1)。FIG. 10 is a diagram illustrating an example of display access information according to the second embodiment (first); 実施形態2にかかる表示アクセス情報の例を示す図(その2)。FIG. 10B is a diagram illustrating an example of display access information according to the second embodiment (second); 実施形態2によるプログラム実行状況の他の表示例を示す図。The figure which shows the other example of a display of the program execution status by Embodiment 2. FIG. 実施形態2によるプログラム実行状況の他の表示例を示す図。The figure which shows the other example of a display of the program execution status by Embodiment 2. FIG.

以下、添付図面を参照しながら、例示する実施形態にかかるプログラム情報生成システム、その方法、プログラム、およびプログラム情報表示システムを詳細に説明する。   Hereinafter, a program information generation system, a method thereof, a program, and a program information display system according to exemplary embodiments will be described in detail with reference to the accompanying drawings.

(実施形態1)
まず、実施形態1にかかるプログラム情報生成システム、その方法、プログラム、およびプログラム情報表示システムについて、図面を参照して詳細に説明する。
(Embodiment 1)
First, a program information generation system, a method thereof, a program, and a program information display system according to Embodiment 1 will be described in detail with reference to the drawings.

図1は、実施形態1に係るプログラム実行状況表示装置(システム)の概要構成例を示すブロック図である。プログラム実行状況表示装置(システム)101は、イベント情報記憶部102、プログラム構造情報記憶部103、軸情報記憶部104、表示イベント単位情報記憶部105、表示イベント情報記憶部106、表示イベント単位情報生成部107、表示イベント情報生成部108、オブジェクト生成部109、軸オブジェクト生成部110、表示部111、および入力部112を備える。   FIG. 1 is a block diagram illustrating a schematic configuration example of a program execution status display device (system) according to the first embodiment. The program execution status display device (system) 101 includes an event information storage unit 102, a program structure information storage unit 103, an axis information storage unit 104, a display event unit information storage unit 105, a display event information storage unit 106, and display event unit information generation. Unit 107, display event information generation unit 108, object generation unit 109, axis object generation unit 110, display unit 111, and input unit 112.

なお、本実施形態において、プログラムとは、コンピュータへ指示する命令を、特定の言語や形式で記述したものである。また、イベントとは、プログラムやプロセスの実行時に発生する処理の単位とする。このイベントは、たとえば関数やループや条件分岐等のプログラムの構成単位であってもよいし、メモリアクセス、命令実行、スレッド生成、同期処理等の特定の処理であってもよい。   In the present embodiment, the program is a program in which instructions for instructing a computer are described in a specific language or format. An event is a unit of processing that occurs when a program or process is executed. This event may be a structural unit of a program such as a function, loop, or conditional branch, or may be a specific process such as memory access, instruction execution, thread generation, or synchronization process.

以下の説明では、図2に示すプログラムを実行した際の実行状況を表示する例を述べる。図2に示すように、プログラム201は、関数“FUNCTION”202内で、繰り返し処理を表すループ“LOOP_A”203と“TASK_C”209とを実行するプログラムである。“LOOP_A”203は、“BLOCK_A”204”と“BLOCK_B”205とからなり、条件分岐結果に基づいてどちらかを実行するループである。また、“BLOCK_A”204は、“TASK_A0”206と“TASK_A1”207とからなる処理であり、“BLOCK_B”205は、“TASK_B”208からなる処理である。   In the following description, an example of displaying the execution status when the program shown in FIG. 2 is executed will be described. As shown in FIG. 2, the program 201 is a program for executing a loop “LOOP_A” 203 and “TASK_C” 209 representing the repetitive processing in the function “FUNCTION” 202. “LOCK_A” 203 is a loop that includes “BLOCK_A” 204 and “BLOCK_B” 205, and executes either one based on the conditional branch result, and “BLOCK_A” 204 includes “TASK_A0” 206 and “TASK_A1”. “BLOCK_B” 205 is a process consisting of “TASK_B” 208.

以上のようなプログラム201の実行状況は、図3に示すように、イベント“TASK_A0”とイベント“TASK_A1”301とイベント“TASK_B”302とを含むループ“LOOP_A”303を600回実行した後、“TASK_C”304を1回実行する内容となる。   As shown in FIG. 3, the execution state of the program 201 as described above is as follows: a loop “LOOP_A” 303 including an event “TASK_A0”, an event “TASK_A1” 301 and an event “TASK_B” 302 is executed 600 times. TASK_C "304 is executed once.

本実施形態では、図3に示すプログラム実行状況が、時間軸を含む平面または空間に表示される。本実施形態において、時間軸は、イベントの実行時間を表す軸である。   In the present embodiment, the program execution status shown in FIG. 3 is displayed on a plane or space including the time axis. In the present embodiment, the time axis is an axis representing an event execution time.

一般的に、プログラムの実行状況を表示する表示装置の表示画面サイズもしくは表示ウインドウサイズには限りがある。そのため、時間軸に一度に表示可能な要素数には限りがある。図4および図5に、上記プログラム実行状況の従来技術による表示例を示す。   In general, the display screen size or display window size of a display device that displays the execution status of a program is limited. Therefore, the number of elements that can be displayed on the time axis is limited. 4 and 5 show examples of display of the above program execution status according to the prior art.

図4は、時間軸要素の表示サイズを固定した例である。この場合、同時に表示可能な実行期間が限られている(図4では“0”〜“10”の実行期間)ため、時間軸の全要素を同時に表示できない場合が生じ得る。そのような場合、スクロールバーなどで表示範囲をスライドさせることで、非表示の範囲を確認することは可能であるが、プログラム実行状況全体を俯瞰できないため、プログラム実行状況全体をユーザに把握させ難い場合がある。   FIG. 4 is an example in which the display size of the time axis element is fixed. In this case, since the execution period that can be displayed simultaneously is limited (the execution period of “0” to “10” in FIG. 4), there may be a case where all elements on the time axis cannot be displayed simultaneously. In such a case, it is possible to confirm the non-display range by sliding the display range with a scroll bar or the like, but it is difficult to make the user understand the entire program execution status because the entire program execution status cannot be viewed There is a case.

また、図5は、時間軸の全要素を同時に表示する場合を示す。この場合、従来技術では、時間軸要素の表示サイズが表示画面サイズもしくは表示ウインドウサイズから決定される。そのため、表示装置の描画性能次第では複数のイベントが描画最小単位(たとえば解像度)以下のサイズとなってしまい、1つ1つのイベントを区別できない場合が生じ得る。例えば、図5に示す例では、“BLOCK_A”に含まれるイベント“TASK_A0”502と、“TASK_A1”503と、“BLOCK_B”に含まれるイベント“TASK_B”504との実行時間をそれぞれ把握することは困難である。   FIG. 5 shows a case where all the elements on the time axis are displayed simultaneously. In this case, in the prior art, the display size of the time axis element is determined from the display screen size or the display window size. For this reason, depending on the drawing performance of the display device, a plurality of events may be smaller than the drawing minimum unit (for example, resolution), and each event may not be distinguished. For example, in the example illustrated in FIG. 5, it is difficult to grasp the execution times of the event “TASK_A0” 502, “TASK_A1” 503 included in “BLOCK_A”, and the event “TASK_B” 504 included in “BLOCK_B”. It is.

そこで本実施形態では、描画性能で表示できないイベントをプログラム構造の階層構造に基づいてまとめて表示するとともに、描画性能で表示できないイベントについての情報を表示することで、プログラム実行状況全体をまとめて表示した場合でもその全体をユーザに把握させることを可能にする。なお、本実施形態では、描画性能で表示できないイベントについての情報として、密度情報を用いる。密度情報の詳細については、後述において触れる。   Therefore, in the present embodiment, events that cannot be displayed with the drawing performance are collectively displayed based on the hierarchical structure of the program structure, and information about the events that cannot be displayed with the drawing performance is displayed, thereby displaying the entire program execution status collectively. It is possible to make the user grasp the whole even when it is done. In the present embodiment, density information is used as information about events that cannot be displayed with drawing performance. Details of the density information will be described later.

つづいて、本実施形態にかかるプログラム実行状況表示装置(システム)の概略動作について、図面を用いて詳細に説明する。図6は、実施形態1にかかるプログラム実行状況表示の概略動作例を示すフローチャートである。図6に示すように、本動作では、まず、表示イベント単位情報生成部107は、イベント情報記憶部102からイベント情報を入力し、プログラム構造情報記憶部103からプログラム構造情報を入力し、軸情報記憶部104から軸情報を入力し、入力したイベント情報とプログラム構造情報と軸情報とから表示イベント単位情報を生成する(ステップS601)。生成された表示イベント単位情報は、表示イベント単位記憶部105に記憶される。   Next, a schematic operation of the program execution status display device (system) according to the present embodiment will be described in detail with reference to the drawings. FIG. 6 is a flowchart illustrating a schematic operation example of program execution status display according to the first embodiment. As shown in FIG. 6, in this operation, first, the display event unit information generation unit 107 inputs event information from the event information storage unit 102, inputs program structure information from the program structure information storage unit 103, and receives axis information. Axis information is input from the storage unit 104, and display event unit information is generated from the input event information, program structure information, and axis information (step S601). The generated display event unit information is stored in the display event unit storage unit 105.

次に、表示イベント情報生成部108は、イベント情報記憶部102からイベント情報を入力とし、表示イベント単位記憶部105から表示イベント単位情報を入力し、プログラム構造情報記憶部103からプログラム構造情報を入力し、入力したイベント情報と表示イベント単位情報とプログラム構造情報とから表示イベント情報を生成する(ステップS602)。生成された表示イベント情報は、表示イベント情報記憶部106に記憶される。   Next, the display event information generation unit 108 receives event information from the event information storage unit 102, inputs display event unit information from the display event unit storage unit 105, and inputs program structure information from the program structure information storage unit 103. Display event information is generated from the input event information, display event unit information, and program structure information (step S602). The generated display event information is stored in the display event information storage unit 106.

次に、オブジェクト生成部109は、表示イベント情報記憶部106の表示イベント情報を入力し、入力した表示イベント情報からイベントオブジェクトを生成する(ステップS603)。また、軸オブジェクト生成部110は、軸情報記憶部から軸情報を入力し、入力した軸情報から軸オブジェクトを生成する(ステップS604)。   Next, the object generation unit 109 inputs display event information from the display event information storage unit 106, and generates an event object from the input display event information (step S603). In addition, the axis object generation unit 110 receives axis information from the axis information storage unit, and generates an axis object from the input axis information (step S604).

以上のように、イベントオブジェクトと軸オブジェクトとが生成されると、表示部111は、これらイベントオブジェクトと軸オブジェクトとを入力し、入力したイベントオブジェクトと軸オブジェクトを用いてプログラム実行状況を表示する(ステップS605)。   As described above, when the event object and the axis object are generated, the display unit 111 inputs the event object and the axis object, and displays the program execution status using the input event object and the axis object ( Step S605).

つぎに、本実施形態にかかるプログラム実行状況表示装置(システム)の各部の詳細な構成および動作について、以下に説明する。   Next, the detailed configuration and operation of each part of the program execution status display device (system) according to the present embodiment will be described below.

・プログラム構造情報記憶部
プログラム構造情報記憶部103は、少なくとも1つのプログラム構造情報を記憶する記憶部である。このプログラム構造情報記憶部103は、PC(パーソナルコンピュータ)等の情報処理装置に組み込まれたバッファやメモリやストレージ等であってもよいし、情報処理装置に接続されたストレージ等であってもよいし、ネットワーク上に配置されたネットワークストレージ等であってもよい。ここで、プログラム構造情報とは、1つのプログラム構造情報を特定するプログラム構造識別情報と、プログラム階層情報と、包含関係にあるプログラム構造情報を特定する包含プログラム構造識別情報とを含む。
Program Structure Information Storage Unit The program structure information storage unit 103 is a storage unit that stores at least one program structure information. The program structure information storage unit 103 may be a buffer, memory, storage, or the like incorporated in an information processing apparatus such as a PC (personal computer), or may be a storage connected to the information processing apparatus. Alternatively, it may be a network storage or the like arranged on the network. Here, the program structure information includes program structure identification information for specifying one program structure information, program hierarchy information, and inclusion program structure identification information for specifying program structure information in an inclusion relationship.

本実施形態では、包含プログラム構造識別情報は、第1のプログラム構造情報とこの第1のプログラム構造情報を包含する第2のプログラム構造情報との間に第1のプログラム構造情報を包含する第3のプログラム構造情報を含まない“隣接する”第2の包含プログラム構造情報を識別する情報であるとする。   In the present embodiment, the inclusion program structure identification information includes the third program structure information including the first program structure information between the first program structure information and the second program structure information including the first program structure information. It is assumed that this is information for identifying “adjacent” second inclusion program structure information that does not include the program structure information.

図7A〜図7Iに、図2に例示したプログラム201に関するプログラム構造情報の一例を示す。図7Aに示す“FUNCTION“のプログラム構造情報701は、プログラム構造識別情報が“0”、プログラム階層情報が“FUNCTION”、包含プログラム構造識別情報が“なし”の情報であり、図2に示すプログラム201全体の範囲を表す階層構造である。したがって、プログラム構造情報701には、包含プログラム構造情報が存在しない。また、図7Bに示す“LOOP_A”のプログラム構造情報702は、プログラム構造識別情報が“1”、プログラム階層情報が“LOOP_A”、包含プログラム構造識別情報が“0”の情報であり、図2に示すプログラム201における“LOOP_A”203の範囲を表す階層構造である。したがって、プログラム構造情報702は、“FUNCTION”のプログラム構造情報701に包含されるプログラム構造情報であることを示す包含プログラム構造識別情報“0”が付与されている。   7A to 7I show an example of program structure information related to the program 201 illustrated in FIG. The program structure information 701 of “FUNCTION” shown in FIG. 7A is information in which the program structure identification information is “0”, the program hierarchy information is “FUNCTION”, and the inclusion program structure identification information is “none”, and the program shown in FIG. 201 is a hierarchical structure representing the entire range. Therefore, the program structure information 701 has no inclusion program structure information. Further, the program structure information 702 of “LOOP_A” shown in FIG. 7B is information of which the program structure identification information is “1”, the program hierarchy information is “LOOP_A”, and the inclusion program structure identification information is “0”. This is a hierarchical structure representing the range of “LOOP_A” 203 in the program 201 shown. Accordingly, the program structure information 702 is provided with inclusion program structure identification information “0” indicating that the program structure information is included in the program structure information 701 of “FUNCTION”.

プログラム201における他のプログラム構造情報703〜709も同様に、プログラム構造識別情報にそれぞれを一意に識別するための識別子“2”〜“9”が付与され、プログラム階層情報にそれぞれの階層情報を表す文字列が付与され、包含プログラム構造識別情報にそれぞれを包含するプログラム構造情報を識別するためのプログラム構造識別情報が付与されている。   Similarly, the other program structure information 703 to 709 in the program 201 is given identifiers “2” to “9” for uniquely identifying each of the program structure identification information, and represents the respective hierarchy information in the program hierarchy information. A character string is assigned, and program structure identification information for identifying the program structure information including each is added to the included program structure identification information.

ここで、プログラム階層情報は、プログラムの特定階層を示す情報である。これは、例えば、ファイル、関数、ループ、条件分岐などのプログラムの階層情報であってもよいし、配列、構造体などのデータ構造の集合やその部分集合を示す情報であってもよい。また、プログラム構造識別情報は、プログラム構造情報記憶部に含まれる複数のプログラム構造情報から1つのプログラム構造情報を特定する情報である。これは、例えば、プログラム構造の固有名であっても良いし、プログラム構造のIDであってもよい。なお、プログラム構造識別情報とプログラム階層情報とは、何れか一方にまとめることも可能である。   Here, the program hierarchy information is information indicating a specific hierarchy of the program. This may be, for example, program hierarchy information such as files, functions, loops, conditional branches, etc., or information indicating a set of data structures such as arrays and structures, or a subset thereof. The program structure identification information is information for specifying one program structure information from a plurality of program structure information included in the program structure information storage unit. This may be, for example, a unique name of the program structure or an ID of the program structure. Note that the program structure identification information and the program hierarchy information can be combined into either one.

包含プログラム構造識別情報は、プログラム構造を包含するプログラム構造情報を特定する識別情報である。1つの識別情報は、プログラム構造情報記憶部103のプログラム構造情報のプログラム構造識別情報の1つと対応する。また、包含するプログラム構造情報がない場合において、包含プログラム構造識別情報は、“ない”ことを示す情報であればよく、例えば“NULL”であってもよいし、“無”であってもよい。さらに、包含プログラム構造識別情報は、1つであってもよいし、複数であってもよい。さらにまた、包含プログラム構造識別情報は、第1のプログラム構造情報とこの第1のプログラム構造情報を包含する第2のプログラム構造情報との間に第1のプログラム構造情報を包含する第3のプログラム構造情報を含まない“隣接する”第2の包含プログラム構造情報を識別する情報であってもよいし、第1のプログラム構造情報とこの第1のプログラム構造情報を包含する第2のプログラム構造情報との間に第1のプログラム構造情報を包含する第3のプログラム構造情報を含む“隣接しない”第2の包含プログラム構造情報を識別する情報であってもよい。   The included program structure identification information is identification information that identifies program structure information including the program structure. One piece of identification information corresponds to one piece of program structure identification information of the program structure information in the program structure information storage unit 103. Further, in the case where there is no program structure information to be included, the included program structure identification information may be information indicating “not”, and may be, for example, “NULL” or “none”. . Furthermore, the inclusion program structure identification information may be one or plural. Furthermore, the inclusion program structure identification information is a third program that includes the first program structure information between the first program structure information and the second program structure information that includes the first program structure information. Information that identifies “adjacent” second inclusion program structure information that does not include structure information may be used, or first program structure information and second program structure information that includes the first program structure information May be information that identifies “not adjacent” second inclusion program structure information including third program structure information including the first program structure information.

・イベント情報記憶部
イベント情報記憶部102は、少なくとも2つのイベント情報を記憶する記憶部である。このイベント情報記憶部102は、PC(パーソナルコンピュータ)等の情報処理装置に組み込まれたバッファやメモリやストレージ等であってもよいし、情報処理装置に接続されたストレージ等であってもよいし、ネットワーク上に配置されたネットワークストレージ等であってもよい。また、イベント情報とは、プログラム実行時に実行されたイベントの情報であり、区間情報と、プログラム構造識別情報と、イベント属性情報とを含む。
Event Information Storage Unit The event information storage unit 102 is a storage unit that stores at least two pieces of event information. The event information storage unit 102 may be a buffer, memory, storage, or the like incorporated in an information processing apparatus such as a PC (personal computer), or may be a storage connected to the information processing apparatus. It may be a network storage or the like arranged on the network. The event information is information on an event executed at the time of executing the program, and includes section information, program structure identification information, and event attribute information.

本実施形態では、実行時間が1サイクルのイベント“TASK_A0”206と、実行時間が8サイクルのイベント“TASK_A1”207と、実行時間が1サイクルのイベント“TASK_B”208とをそれぞれ300回繰り返し実行した後、実行時間が3000サイクル“TASK_C“209を実行した際のプログラム実行状況を表示した場合を示している。   In the present embodiment, an event “TASK_A0” 206 having an execution time of 1 cycle, an event “TASK_A1” 207 having an execution time of 8 cycles, and an event “TASK_B” 208 having an execution time of 1 cycle are each repeatedly executed 300 times. Thereafter, the program execution status when the execution time is 3000 cycles “TASK_C” 209 is displayed.

図8A〜図8Dに、本実施形態にかかるイベント情報の例を示す。例えば、図8Aに示すイベント情報801は、“TASK_A0”206の1回目の実行を示し、実行開始時刻が“0”、実行終了時刻が“1”、プログラム構造識別情報が“4”、属性情報が“BLOCK_A”である。また、図8Bに示すイベント情報802は、“TASK_A1”207の1回目の実行を示し、実行開始時刻が“1”、実行終了時刻が“9”、プログラム構造識別情報が“5”、属性情報が“BLOCK_A”である。図8Cに示すイベント情報803は、“TASK_B”208の1回目の実行を示し、実行開始時刻が“9”、実行終了時刻が“10”、プログラム構造識別情報が“7”、属性情報が“BLOCK_B”である。図8Dに示すイベント情報804は、“TASK_C”209の1回目の実行を示し、実行開始時刻が“3000”、実行終了時刻が“6000”、プログラム構造識別情報が“8”、属性情報が“TASK_C”である。ただし、これらのようなイベント情報は、イタレーションによる繰り返しを含む全てのイベントに対して生成されている。   8A to 8D show examples of event information according to the present embodiment. For example, event information 801 shown in FIG. 8A indicates the first execution of “TASK_A0” 206, execution start time is “0”, execution end time is “1”, program structure identification information is “4”, and attribute information. Is “BLOCK_A”. Also, the event information 802 shown in FIG. 8B indicates the first execution of “TASK_A1” 207, the execution start time is “1”, the execution end time is “9”, the program structure identification information is “5”, and attribute information Is “BLOCK_A”. The event information 803 shown in FIG. 8C indicates the first execution of “TASK_B” 208, the execution start time is “9”, the execution end time is “10”, the program structure identification information is “7”, and the attribute information is “ BLOCK_B ″. The event information 804 shown in FIG. 8D indicates the first execution of “TASK_C” 209, the execution start time is “3000”, the execution end time is “6000”, the program structure identification information is “8”, and the attribute information is “ TASK_C ". However, such event information is generated for all events including repetition due to iteration.

なお、区間情報は、イベントの実行開始時刻と実行期間が定義される情報である。これは、例えば、実行開始時刻と実行期間からなる情報であってもよいし、実行開始時刻と実行終了時刻からなる情報であってもよし、実行期間と実行終了時刻からなる情報であってもよし、イベントの実行開始時刻であってもよいし、イベントの終了時刻であってもよい。また、実行開始時刻、実行終了時刻、および、実行期間は、時間情報である。これらは、例えば、プログラム実行時におけるプロセッサ時刻であってもよいし、プロセッサ時刻に基づいて生成した時間情報であってもよい。   The section information is information in which an event execution start time and an execution period are defined. This may be, for example, information including an execution start time and an execution period, may be information including an execution start time and an execution end time, or may be information including an execution period and an execution end time. It may be the event execution start time or the event end time. The execution start time, execution end time, and execution period are time information. These may be, for example, processor time at the time of program execution, or time information generated based on the processor time.

さらに、属性情報は、イベントに関する情報である。これは、例えば、実行トレース情報であってもよいし、プログラムの静的情報であってもよいし、プログラムの実行環境情報であってもよい。   Further, the attribute information is information regarding the event. This may be, for example, execution trace information, program static information, or program execution environment information.

実行トレース情報は、プログラム実行時に取得可能な実行時の状況を表す情報である。これは、例えば、イベントを実行したプロセッサコア情報であってもよいし、イベント実行した命令情報であってもよいし、イベント実行期間であってもよいし、イベントが実行したメモリアクセス情報であってもよいし、イベントが実行した関数コール回数であってもよいし、イベント内の変数の値であってもよいし、イベントがループイタレーションである場合において何回目のイタレーションであるかの情報であってもよし、イベントが割り込み処理であるかの情報であってもよし、配列や構造体などのデータ構造であってもよいし、データ構造のメモリアドレス区間であってもよいし、データ構造の先頭メモリアドレスであってもよいし、データ構造の終端メモリアドレスであってもよい。   The execution trace information is information representing a situation at the time of execution that can be acquired at the time of program execution. This may be, for example, processor core information that executed the event, instruction information that executed the event, event execution period, or memory access information that the event executed. It may be the number of function calls executed by the event, the value of a variable in the event, or the number of iterations when the event is a loop iteration. It may be information, information on whether an event is an interrupt process, a data structure such as an array or a structure, a memory address section of a data structure, It may be the start memory address of the data structure or the end memory address of the data structure.

プログラムの静的情報は、ソースコードもしくはソースコード管理システムから得られる静的な情報である。これは、例えば、ソースコード上の位置情報であってもよいし、ソフトウェアプログラム構造情報であってもよいし、ソースコードのコンパイル情報であってもよいし、ソースコードのバージョン情報であってもよいし、プログラムがカーネルプログラムであるかの情報であってもよいし、プログラムがユーザプログラムであるかの情報であってもよい。   The static information of the program is static information obtained from the source code or the source code management system. This may be, for example, location information on the source code, software program structure information, source code compilation information, or source code version information. It may be information on whether the program is a kernel program or information on whether the program is a user program.

プログラムの実行環境情報は、プログラムを実行した際の環境の情報である。これは、例えば、プロセッサコア名であってもよいし、サーバ名であってもよいし、サーバの仕様情報であってもよい。   The program execution environment information is information on the environment when the program is executed. This may be, for example, a processor core name, a server name, or server specification information.

・軸情報記憶部
軸情報記憶部104は、時系列情報と、少なくとも1つ以上の属性軸情報と、少なくとも1つ以上の表示属性特定情報とからなる軸情報を記憶する記憶部である。この軸情報記憶部104は、PC(パーソナルコンピュータ)等の情報処理装置に組み込まれたバッファやメモリやストレージ等であってもよいし、情報処理装置に接続されたストレージ等であってもよいし、ネットワーク上に配置されたネットワークストレージ等であってもよい。
Axis Information Storage Unit The axis information storage unit 104 is a storage unit that stores axis information including time series information, at least one or more attribute axis information, and at least one or more display attribute specifying information. The axis information storage unit 104 may be a buffer, memory, storage, or the like incorporated in an information processing apparatus such as a PC (personal computer), or may be a storage connected to the information processing apparatus. It may be a network storage or the like arranged on the network.

ここで、軸情報は、時間軸情報、属性軸情報および表示属性特定情報からなる情報である。時間軸情報は、表示装置の最小描画単位が表す期間を示す情報と、時間軸方向の表示範囲を示す表示範囲情報である。属性軸情報は、軸の要素名と、その表示位置情報とを示す情報であり、イベント情報のイベント属性情報に対応する情報である。   Here, the axis information is information including time axis information, attribute axis information, and display attribute specifying information. The time axis information is information indicating a period represented by the minimum drawing unit of the display device and display range information indicating a display range in the time axis direction. The attribute axis information is information indicating the element name of the axis and its display position information, and is information corresponding to the event attribute information of the event information.

図9A〜図9Dに、本実施形態にかかる軸情報の例を示す。図9Aに示す時間軸情報901は、最小描画単位を“100”とし、表示範囲情報を“0−5000”としている。これは、最小描画単位が100サイクルを表すことと、表示範囲が0サイクルから5000サイクルであることとを示している。また、“BLOCK_A”の属性軸情報902(図9B参照)、“BLOCK_B”の属性軸情報903(図9C参照)、および、“TASK_C”の属性軸情報904(図9D参照)は、表示位置がそれぞれ100、200、300であることを示す。   9A to 9D show examples of axis information according to the present embodiment. In the time axis information 901 shown in FIG. 9A, the minimum rendering unit is “100”, and the display range information is “0-5000”. This indicates that the minimum drawing unit represents 100 cycles and the display range is from 0 cycle to 5000 cycles. The attribute axis information 902 (see FIG. 9B) of “BLOCK_A”, the attribute axis information 903 (see FIG. 9C) of “BLOCK_B”, and the attribute axis information 904 (see FIG. 9D) of “TASK_C” are displayed at the display position. Indicates 100, 200, and 300, respectively.

上記において、時間軸情報は、表示装置の最小描画単位が表す情報を示す情報である。これは、例えば、1表示間隔当たりの期間情報であってもよいし、1期間当たりの表示間隔情報であってもよいし、表示間隔とその表示間隔が表す期間情報からなる情報であってもよい。また、時間軸情報は、プログラム実行状況表示装置が事前に保持していてもよいし、ソフトウェア開発者が指定した情報であってもよいし、表示装置の画面サイズもしくはウインドウサイズと1画面で表示する実行時間情報に基づいて生成してもよい。   In the above, the time axis information is information indicating information represented by the minimum drawing unit of the display device. This may be, for example, period information per display interval, display interval information per period, or information consisting of a display interval and period information represented by the display interval. Good. Further, the time axis information may be held in advance by the program execution status display device, or may be information specified by the software developer, or may be displayed in one screen with the screen size or window size of the display device. May be generated based on the execution time information.

属性軸情報は、属性軸の要素名と、その表示位置情報とである。属性軸の要素名には、各イベント情報のイベント属性情報に対応する情報が存在する。属性軸の要素名のいずれかは、属性軸に対応するイベント情報のイベント属性情報と一致する。属性軸の要素名は、プログラム実行状況表示装置が事前に保持していてもよいし、ソフトウェア開発者が指定した情報であってもよい。   The attribute axis information is an element name of the attribute axis and display position information thereof. The element name on the attribute axis includes information corresponding to the event attribute information of each event information. One of the element names of the attribute axis matches the event attribute information of the event information corresponding to the attribute axis. The element name of the attribute axis may be held in advance by the program execution status display device, or may be information specified by the software developer.

表示位置情報は、表示装置の画面上の属性軸の要素名を表示する位置を表す情報である。この表示位置情報は、プログラム実行状況表示装置が事前に保持している情報であってもよいし、ソフトウェア開発者が指定した情報であってもよいし、表示装置の画面サイズもしくはウインドウサイズと1画面で表示する属性軸の要素数に基づいて生成してもよい。   The display position information is information representing a position where the element name of the attribute axis on the screen of the display device is displayed. This display position information may be information held in advance by the program execution status display device, may be information designated by the software developer, or may be a screen size or window size of the display device. You may produce | generate based on the number of elements of the attribute axis displayed on a screen.

・表示イベント単位情報記憶部
表示イベント単位情報記憶部105は、少なくとも1つ以上のプログラム表示単位情報を記憶する記憶部である。この表示イベント単位情報記憶部105は、PC(パーソナルコンピュータ)等の情報処理装置に組み込まれたバッファやメモリやストレージ等であってもよいし、情報処理装置に接続されたストレージ等であってもよいし、ネットワーク上に配置されたネットワークストレージ等であってもよい。
Display Event Unit Information Storage Unit The display event unit information storage unit 105 is a storage unit that stores at least one program display unit information. The display event unit information storage unit 105 may be a buffer, memory, storage, or the like incorporated in an information processing apparatus such as a PC (personal computer), or may be a storage connected to the information processing apparatus. Alternatively, it may be a network storage or the like arranged on the network.

ここで、表示イベント単位情報は、イベントの表示単位を定義する情報である。この表示イベント単位情報は、たとえば、最小描画区間単位情報の区間以上の区間を持つプログラム構造単位であり且つ1つ以上のイベント情報に関連するプログラム構造識別情報を含む。ただし、これに限定されず、プログラム構造情報を特定する情報であってもよいし、プログラム構造情報であってもよい。   Here, the display event unit information is information that defines a display unit of an event. This display event unit information is, for example, a program structure unit having a section equal to or larger than the minimum rendering section unit information and includes program structure identification information related to one or more event information. However, the present invention is not limited to this, and may be information specifying program structure information or program structure information.

図10Aおよび図10Bに、本実施形態にかかる表示イベント単位情報の例を示す。図10Aに示す表示イベント単位情報1001は、プログラム構造識別情報が“1”である。図10Bに示す表示イベント単位情報1002は、プログラム構造識別情報が“8”である。   10A and 10B show examples of display event unit information according to the present embodiment. In the display event unit information 1001 shown in FIG. 10A, the program structure identification information is “1”. In the display event unit information 1002 shown in FIG. 10B, the program structure identification information is “8”.

・表示イベント単位情報生成部
表示イベント単位生成部107は、イベント情報記憶部102のイベント情報と、プログラム構造情報記憶部103のプログラム構造情報と、軸情報記憶部104の軸情報とを入力し、入力したイベント情報とプログラム構造情報と軸情報とに基づいて、プログラム構造の区間情報を計算する。次に、表示イベント単位生成部107は、同一の隣接する包含プログラム構造情報を持つ1つ以上のプログラム構造情報の区間情報が軸情報の時間軸情報が示す最小描画単位情報が表す区間以上であるプログラム構造情報を特定する。次に、表示イベント単位生成部107は、1つ以上の特定されたプログラム構造情報から互いに包含関係に無く、最下層のプログラム構造情報で構成されるプログラム構造情報を選択し、そのプログラム構造情報のプログラム構造識別情報を表示イベント単位情報として生成する。
Display event unit information generation unit The display event unit generation unit 107 inputs the event information of the event information storage unit 102, the program structure information of the program structure information storage unit 103, and the axis information of the axis information storage unit 104, Based on the input event information, program structure information, and axis information, section information of the program structure is calculated. Next, in the display event unit generation unit 107, the section information of one or more program structure information having the same adjacent inclusion program structure information is not less than the section represented by the minimum drawing unit information indicated by the time axis information of the axis information. Specify program structure information. Next, the display event unit generation unit 107 selects program structure information that is not inclusive of each other from one or more specified program structure information and is composed of the lowermost program structure information, and the program structure information Program structure identification information is generated as display event unit information.

プログラム構造の区間情報は、同じプログラム構造であるイベント情報の区間情報に基づいて計算されていればよく、例えば、区間情報の最大値であってもよいし、最小値であってもよいし、平均であってもよい。   The section information of the program structure may be calculated based on the section information of the event information having the same program structure, for example, the maximum value of the section information may be a minimum value, It may be an average.

ここで、図11を用いて、表示イベント単位情報の生成例を述べる。表示イベント単位生成部107は、イベント情報に基づいて各プログラム構造における区間情報を計算する。本例では、プログラム構造の区間情報が最小区間情報として計算される。図11に、各プログラム構造とその最小区間情報を示す。プログラム構造1101、1102、1103、1104、1105、1106、1107、1108および1109は、それぞれプログラム構造情報701、702、703、704、705、706、707、708および709に対応する。また、最小区間情報1101〜1109の実行時間は、それぞれ、6000サイクル、3000サイクル、10サイクル、9サイクル、1サイクル、8サイクル、1サイクル、1サイクル、および、3000サイクルである。表示イベント単位生成部107は、時間軸情報の最小描画単位情報の区間“100”以上を満足する最小区間情報を持つプログラム構造1101、1102および1109を特定し、さらに、同一の隣接包含プログラム構造情報を持つ全てのプログラム構造情報が時間軸情報の最小描画単位情報の区間“100”以上を満足する最小区間情報を持つプログラム構造1101、1102および1109を特定する。ここで、選択されたプログラム構造1101、1102および1109のうち、互いに包含関係なく且つ最小区間情報が最小であるプログラム構造1102および1109を表示イベント単位とし、そのプログラム構造を示すプログラム構造情報のプログラム構造識別情報に基づいて、表示イベント単位情報1001および1002が生成される。   Here, a generation example of display event unit information will be described with reference to FIG. The display event unit generator 107 calculates section information in each program structure based on the event information. In this example, the section information of the program structure is calculated as the minimum section information. FIG. 11 shows each program structure and its minimum section information. Program structures 1101, 1102, 1103, 1104, 1105, 1106, 1107, 1108 and 1109 correspond to program structure information 701, 702, 703, 704, 705, 706, 707, 708 and 709, respectively. The execution times of the minimum section information 1101 to 1109 are 6000 cycles, 3000 cycles, 10 cycles, 9 cycles, 1 cycle, 8 cycles, 1 cycle, 1 cycle, and 3000 cycles, respectively. The display event unit generation unit 107 identifies program structures 1101, 1102, and 1109 having minimum section information that satisfies the section “100” or more of the minimum drawing unit information of the time axis information, and further includes the same adjacent inclusion program structure information. The program structures 1101, 1102 and 1109 having the minimum section information satisfying the section “100” or more of the minimum drawing unit information of the time axis information are specified. Here, among the selected program structures 1101, 1102, and 1109, the program structures 1102 and 1109 that are not inclusive of each other and have the smallest minimum section information are displayed event units, and the program structure of the program structure information that indicates the program structure Display event unit information 1001 and 1002 are generated based on the identification information.

また、たとえば最小描画単位情報の区間が区間“9”である場合には、プログラム構造1101、1102、1103、1104および1109を特定し、さらに、同一の隣接包含プログラム構造情報を持つ全てのプログラム構造情報が時間軸情報の最小描画単位情報の区間“9”以上を満足する最小区間情報を持つプログラム構造1101、1102、1103および1109を特定する。ここで、選択されたプログラム構造1101、1102、1103及び1109のうち、互いに包含関係なく且つ最小区間情報が最小であるプログラム構造1103および1109を表示イベント単位とし、そのプログラム構造を示すプログラム構造情報のプログラム構造識別情報に基づいて、表示イベント単位情報が生成される。その場合、図10Aに示す表示イベント単位情報1001は、プログラム構造識別情報が“2”となる。   For example, when the section of the minimum drawing unit information is the section “9”, the program structures 1101, 1102, 1103, 1104 and 1109 are specified, and all program structures having the same adjacent inclusion program structure information are specified. Program structures 1101, 1102, 1103 and 1109 having minimum section information whose information satisfies the section “9” or more of the minimum drawing unit information of the time axis information are specified. Here, among the selected program structures 1101, 1102, 1103 and 1109, the program structures 1103 and 1109 which are not inclusive of each other and have the smallest minimum section information are set as display event units, and the program structure information indicating the program structure is displayed. Display event unit information is generated based on the program structure identification information. In that case, the display event unit information 1001 shown in FIG. 10A has the program structure identification information “2”.

なお、上述した表示イベント単位情報は、時間軸情報901の時間軸描画範囲に基づいて描画範囲内に含まれるイベント情報に対して生成されてもよいし、全てのイベント情報に対して生成されてもよい。   The display event unit information described above may be generated for event information included in the drawing range based on the time axis drawing range of the time axis information 901, or may be generated for all event information. Also good.

・表示イベント情報記憶部
表示イベント情報記憶部106は、少なくとも1つ以上の表示イベント情報を記憶する記憶部である。この表示イベント情報記憶部106は、PC(パーソナルコンピュータ)等の情報処理装置に組み込まれたバッファやメモリストレージ等であってもよいし、情報処理承知に接続されるストレージ等であってもよいし、ネットワーク上に配置されたネットワークストレージ等であってもよい。
Display event information storage unit The display event information storage unit 106 is a storage unit that stores at least one or more pieces of display event information. The display event information storage unit 106 may be a buffer, a memory storage, or the like incorporated in an information processing apparatus such as a PC (personal computer), or may be a storage that is connected to information processing awareness. It may be a network storage or the like arranged on the network.

ここで、表示イベント情報は、区間情報と、属性情報と、密度情報と、複数イベント表示イベント情報と、統計情報とを含む。複数イベント表示イベント情報は、表示イベントが複数のイベントを表しているか否かの情報である。   Here, the display event information includes section information, attribute information, density information, multi-event display event information, and statistical information. The multiple event display event information is information indicating whether the display event represents a plurality of events.

図12A〜図12Cに、表示イベント情報の例を示す。本実施形態において、区間情報は実行開始情報と実行終了情報とからなり、密度情報は表示イベントが表す区間とその区間内でイベントが実際に実行された区間との比とし、統計情報はイベント数とする。図12Aに示す表示イベント情報1201は、実行開始情報を“0”、実行終了情報を“3000”、属性情報を“BLOCK_A”、密度情報を“0.9”、複数イベント表示情報を“TRUE”、イベント数を“600”とする情報である。また、図12Bに示す表示イベント情報1202は、実行開始情報を“0”、実行終了情報を“3000”、属性情報を“BLOCK_B”、密度情報を“0.1”、複数イベント表示情報を“TRUE”、イベント数を“300”とする情報である。さらに、図12Cに示す表示イベント情報1203は、実行開始情報を“3000”、実行終了情報を“1”、属性情報を“TASK_C”、密度情報を“1”、複数イベント表示情報を“FALSE”、イベント数を“1”とする情報である。   12A to 12C show examples of display event information. In this embodiment, the section information includes execution start information and execution end information, the density information is a ratio between the section represented by the display event and the section in which the event is actually executed, and the statistical information is the number of events. And The display event information 1201 shown in FIG. 12A includes execution start information “0”, execution end information “3000”, attribute information “BLOCK_A”, density information “0.9”, and multiple event display information “TRUE”. , The number of events is “600”. Also, the display event information 1202 illustrated in FIG. 12B includes execution start information “0”, execution end information “3000”, attribute information “BLOCK_B”, density information “0.1”, and multiple event display information “ TRUE ”and the number of events is“ 300 ”. Furthermore, the display event information 1203 illustrated in FIG. 12C includes execution start information “3000”, execution end information “1”, attribute information “TASK_C”, density information “1”, and multiple event display information “FALSE”. , Information with the number of events as “1”.

・表示イベント情報生成部
表示イベント情報生成部108は、イベント情報記憶部102のイベント情報と、プログラム構造情報記憶部103のプログラム構造情報と、表示イベント単位情報記憶部105の表示イベント単位情報とを入力し、表示イベント単位情報のプログラム構造識別情報およびイベント情報の属性情報に基づいて表示イベントを決定する。また、表示イベント情報生成部108は、表示イベント毎に、区間情報、属性情報、密度情報、複数イベント表示情報および統計情報を含む表示イベント情報を生成する。表示イベント情報の属性情報は、表示イベントに含まれるイベントの属性情報に基づいて決定される。区間情報は、表示イベントに含まれるイベントの区間情報に基づいて決定される。複数イベント表示情報は、表示イベントに含まれるイベント数に基づいて決定される。統計情報は、表示イベントに含まれるイベントのイベント情報に基づいて決定される。
Display event information generation unit The display event information generation unit 108 includes event information stored in the event information storage unit 102, program structure information stored in the program structure information storage unit 103, and display event unit information stored in the display event unit information storage unit 105. The display event is determined based on the program structure identification information of the display event unit information and the attribute information of the event information. In addition, the display event information generation unit 108 generates display event information including section information, attribute information, density information, multiple event display information, and statistical information for each display event. The attribute information of the display event information is determined based on the event attribute information included in the display event. The section information is determined based on event section information included in the display event. The multiple event display information is determined based on the number of events included in the display event. The statistical information is determined based on event information of events included in the display event.

ここで、表示イベント情報の生成について、表示イベント単位情報1001に着目して説明する。まず、表示イベント単位情報1001のプログラム構造識別情報“1”とプログラム構造情報とに基づいて、包含するプログラム構造情報のプログラム構造識別情報“2”、“3”、“4”、“5”を特定する。次に、特定されたプログラム構造識別情報を持つイベント情報を選択し、プログラム構造識別情報“1”のプログラム構造情報“LOOP_A”で区切られる単位をイベント情報の属性情報毎に1つの表示イベントとする。本実施形態では、プログラム構造識別情報“1”のプログラム構造情報を持つイベント情報は、プログラム201において“TASK_A0”206、“TASK_A1”207および“TASK_B”208である。したがって、“TASK_A0”206、“TASK_A1”207および“TASK_B”208に対応する全イベント情報が“LOOP_A”で1つに区切られ、その区間情報が全イベント情報の区間情報に基づいて決定される。“LOOP_A”の区間情報は、“TASK_A0”206、“TASK_A1”207および“TASK_B”208に対応する全イベント情報の区間情報を包含する区間情報であり、実行開始時間を“0”とし、実行終了時間を“3000”とする。   Here, the generation of the display event information will be described focusing on the display event unit information 1001. First, based on the program structure identification information “1” and the program structure information of the display event unit information 1001, the program structure identification information “2”, “3”, “4”, “5” of the included program structure information is changed. Identify. Next, event information having the specified program structure identification information is selected, and a unit delimited by the program structure information “LOOP_A” of the program structure identification information “1” is set as one display event for each attribute information of the event information. . In this embodiment, the event information having the program structure information of the program structure identification information “1” is “TASK_A0” 206, “TASK_A1” 207, and “TASK_B” 208 in the program 201. Accordingly, all event information corresponding to “TASK_A0” 206, “TASK_A1” 207, and “TASK_B” 208 is divided into one by “LOOP_A”, and the section information is determined based on the section information of all event information. The section information of “LOOP_A” is section information including section information of all event information corresponding to “TASK_A0” 206, “TASK_A1” 207, and “TASK_B” 208, the execution start time is set to “0”, and the execution ends. The time is “3000”.

次に、区切られたイベント情報に対して、属性情報毎に1つの表示イベントを生成する。例えば、属性情報“BLOCK_A”の表示イベントは、“TASK_A0”206とTASK_A1”207とに対応する全イベントを表す。そこで、属性情報“BLOCK_A”の表示イベント情報1201を生成する例を説明する。属性情報“BLOCK_A”の表示イベントの区間情報は、プログラム構造“LOOP_A“の区間情報であり、実行開始時間を“0”とし、実行終了時間を“3000”とし、表示イベント情報1201の属性情報を“BLOCK_A”とし、統計情報を表示イベントが表すイベント数である“1200“とし、複数イベント表示情報を”TRUE“とし、密度情報を表示イベントが表す区間とその区間内でイベントが実際に実行された区間との比を求める式“(1x300+8x300)÷(3000)”に基づいて“0.9”とする。表示イベント情報生成部108は、これらの情報を含む表示イベント情報1201を生成する。   Next, one display event is generated for each piece of attribute information for the delimited event information. For example, the display event of attribute information “BLOCK_A” represents all events corresponding to “TASK_A0” 206 and TASK_A1 ”207. Therefore, an example of generating display event information 1201 of attribute information“ BLOCK_A ”will be described. The section information of the display event of the information “BLOCK_A” is section information of the program structure “LOOP_A”, the execution start time is “0”, the execution end time is “3000”, and the attribute information of the display event information 1201 is “ BLOCK_A ”, statistical information“ 1200 ”, which is the number of events represented by the display event, multi-event display information“ TRUE ”, density information is represented by the display event, and the event was actually executed in that section Formula “(1 × 300 + 8 × 300) ÷ (300 ) "On the basis" 0.9 ". Display event information generator 108 generates display event information 1201 including these information.

また、密度情報は、表示イベントが表すイベントとその区間情報とに基づいて計算される情報である。これは、例えば、表示イベントが表す区間とその区間内でイベントが実際に実行された区間との比であってもよし、表示イベントが表す区間とその区間内で実行されたイベントの実行区間の総和との比であってもよいし、表示イベントが表す区間内で実行されたイベントの実行区間の平均値であってもよい。   The density information is information calculated based on the event represented by the display event and its section information. This may be, for example, the ratio of the section represented by the display event and the section in which the event is actually executed, or the execution section of the event executed in the section represented by the display event. It may be a ratio to the sum, or may be an average value of the execution sections of events executed within the section represented by the display event.

さらに、統計情報は、表示イベントが表すイベントに関連する情報であり、例えば、表示イベントが表すイベント数であってもよいし、イベントが動作する区間情報であってもよいし、イベントが動作する区間のその総和であってもよい。   Further, the statistical information is information related to the event represented by the display event. For example, the statistical information may be the number of events represented by the display event, may be section information in which the event operates, or the event operates. It may be the sum of the sections.

・オブジェクト生成部
オブジェクト生成部109は、表示イベント情報記憶部106に記憶される表示イベント情報と、軸情報記憶部104に記憶される軸情報とを入力し、入力した表示イベント情報の区間情報と軸情報の時間軸情報とに基づいて、時間軸方向の表示位置と表示サイズとを決定する。また、オブジェクト生成部109は、表示イベント情報の属性情報と軸情報の属性軸情報とに基づいて属性軸方向の表示位置を決定し、表示イベント情報の密度情報に基づいて表示方式を決定し、表示イベント情報の複数イベント表示情報に基づいてユーザ入力に対するアクションを決定し、イベントを表すイベントオブジェクトを生成する。
Object generation unit The object generation unit 109 inputs display event information stored in the display event information storage unit 106 and axis information stored in the axis information storage unit 104, and section information of the input display event information Based on the time axis information of the axis information, the display position and display size in the time axis direction are determined. Further, the object generation unit 109 determines the display position in the attribute axis direction based on the attribute information of the display event information and the attribute axis information of the axis information, determines the display method based on the density information of the display event information, An action for a user input is determined based on the multiple event display information of the display event information, and an event object representing the event is generated.

ここで、イベントオブジェクトの生成について、表示イベント情報1201に着目して説明する。オブジェクト生成部109は、まず、軸情報の時間軸情報901と、表示イベント情報1201の実行開始情報“0”および実行終了情報“3000”とに基づいて、時間軸方向の表示サイズと表示位置とを決定する。また、オブジェクト生成部109は、軸情報の属性軸情報902に基づいて属性軸方向の表示位置を決定し、表示イベント情報1201の密度情報に基づいて表示方式を決定し、表示イベント情報1201の複数イベント表示情報に基づいてユーザのイベントオブジェクトへのユーザ入力に対するアクションを決定する。   Here, generation of an event object will be described by focusing on the display event information 1201. First, the object generation unit 109 first displays the display size and display position in the time axis direction based on the time axis information 901 of the axis information and the execution start information “0” and the execution end information “3000” of the display event information 1201. To decide. Further, the object generation unit 109 determines a display position in the attribute axis direction based on the attribute axis information 902 of the axis information, determines a display method based on the density information of the display event information 1201, and includes a plurality of display event information 1201. Based on the event display information, an action for a user input to the user event object is determined.

表示方式の決定では、たとえば密度情報に基づいてイベントオブジェクトの色を決定してもよいし、複数イベント表示情報が“TRUE”である場合にはイベント数等の情報をテキストで表示すると決定してもよいし、複数イベント表示情報が“FALSE”でない場合には区間情報を表示すると決定してもよい。なお、表示方式は、密度情報に基づいて決定されればよく、密度情報の差異が分かる表示方式であれば如何様にも変形することができる。密度情報の差異は、例えば色の濃淡で表現されてもよいし、色の輝度で表現されてもよい。   In the determination of the display method, for example, the color of the event object may be determined based on the density information. When the multiple event display information is “TRUE”, it is determined that information such as the number of events is displayed in text. Alternatively, when the multiple event display information is not “FALSE”, it may be determined to display the section information. The display method may be determined based on the density information, and can be modified in any manner as long as the display method can understand the difference in density information. The difference in density information may be expressed by, for example, color shading or color brightness.

また、ユーザ入力に対するアクションは、複数イベント表示情報が異なる表示イベント間で異なるアクションとなればよい。アクションの違いとしては、例えば統計情報の表示の有無であってもよいし、アクション自体の有無であってもよい。   Moreover, what is necessary is just to become an action with respect to a user input different between display events from which multiple event display information differs. The difference in action may be, for example, whether or not statistical information is displayed or whether or not the action itself is present.

・軸オブジェクト生成部
軸オブジェクト生成部110は、軸情報記憶部104から軸情報を入力し、時間軸オブジェクトと属性軸オブジェクトとを生成する。軸オブジェクト生成部110は、まず、時間軸情報に基づいて、表示装置の表示間隔1当たり時刻“100”を表し且つ描画範囲が“0”から“5000”までの時間軸オブジェクトを生成する。次に、軸オブジェクト生成部110は、属性軸情報の属性軸名をラベルとし、そのラベルを表示位置情報に基づいて配置する属性軸オブジェクトを生成する。例えば、“BLOCK_A”の属性軸情報において、ラベルを“BLOCK_A”、表示位置を“100”とする属性軸オブジェクトを生成する。
Axis Object Generation Unit The axis object generation unit 110 inputs axis information from the axis information storage unit 104, and generates a time axis object and an attribute axis object. The axis object generation unit 110 first generates a time axis object representing the time “100” per display interval 1 of the display device and the drawing range from “0” to “5000” based on the time axis information. Next, the axis object generation unit 110 generates an attribute axis object that uses the attribute axis name of the attribute axis information as a label and arranges the label based on the display position information. For example, in the attribute axis information “BLOCK_A”, an attribute axis object having a label “BLOCK_A” and a display position “100” is generated.

・表示部
表示部111は、軸オブジェクト生成部110で生成された軸オブジェクトを入力し、軸オブジェクトが持つ表示情報に基づいて、軸オブジェクトを画面上に描画する。時間軸オブジェクトは一定区間ごとに時刻情報のラベルを表示し、属性軸オブジェクトは属性ラベルを表示する。表示部111は、画面サイズもしくはウインドウサイズ等の表示サイズを入力とし、表示可能なサイズの軸オブジェクトを表示してもよいし、表示可能なサイズの軸オブジェクトにサイズを変換して表示してもよい。
Display Unit The display unit 111 receives the axis object generated by the axis object generation unit 110 and draws the axis object on the screen based on display information that the axis object has. The time axis object displays a label of time information for each fixed section, and the attribute axis object displays an attribute label. The display unit 111 may receive a display size such as a screen size or a window size and display an axis object having a displayable size, or may convert the size into a displayable size axis object and display the axis object. Good.

また、表示部111は、オブジェクト生成部109で生成されたイベントオブジェクトを入力し、イベントオブジェクトが持つ表示位置情報に基づいて、イベントオブジェクトを画面上に描画する。本実施形態では、図13に示すように、表示イベント情報1201、1202および1203を表すイベントオブジェクトをそれぞれ順に1301、1302および1303として表示する。また、時間軸オブジェクトを1304、属性軸オブジェクトを1305、属性軸ラベルを1306,1307および1308として表示する。   The display unit 111 receives the event object generated by the object generation unit 109 and draws the event object on the screen based on the display position information held by the event object. In the present embodiment, as shown in FIG. 13, event objects representing display event information 1201, 1202 and 1203 are displayed as 1301, 1302 and 1303, respectively, in order. Also, the time axis object is displayed as 1304, the attribute axis object is 1305, and the attribute axis labels are displayed as 1306, 1307, and 1308.

また、表示部111は、入力部112を用いたユーザからの入力を受け付け、ユーザの入力に基づいて、イベントオブジェクトに定義されたアクションを表示する。例えば図14に示すように、表示イベント情報1202のイベントオブジェクト1402にマウスオーバー等のユーザからの入力があった場合、たとえばその統計情報である“イベント数:60”1404を表示する。   In addition, the display unit 111 receives an input from the user using the input unit 112 and displays an action defined in the event object based on the user input. For example, as shown in FIG. 14, when there is an input from the user such as a mouse over to the event object 1402 of the display event information 1202, for example, “event count: 60” 1404 as the statistical information is displayed.

以上のように、本実施形態によれば、プログラム構造に基づいてイベントがまとめて表示されるため、大量のイベントが実行されるプログラムの実行状況をユーザに容易に把握させることが可能となる。   As described above, according to the present embodiment, since events are collectively displayed based on the program structure, the user can easily grasp the execution status of a program in which a large number of events are executed.

なお、本実施形態では、時間軸として、1つの時間軸オブジェクトを表示する場合を例示したが、これに限定されるものではない。たとえば互いに異なる期間を示す複数の時間軸オブジェクトを一画面に表示し、これらに対して各属性軸オブジェクトのイベントオブジェクトを表示してもよい。   In the present embodiment, the case where one time axis object is displayed as the time axis is exemplified, but the present invention is not limited to this. For example, a plurality of time axis objects indicating different periods may be displayed on one screen, and event objects of each attribute axis object may be displayed for these.

(実施形態2)
つぎに、実施形態2について、図面を参照して詳細に説明する。実施形態1では、プログラムの実況状況をプログラム構造に基づいて表示していた。これに対し、実施形態2では、プログラム実行時のメモリアドレス空間へのアクセスをデータ構造に基づいて表示するプログラム情報生成システム、その方法、プログラム、およびプログラム情報表示システムを例示する。
(Embodiment 2)
Next, Embodiment 2 will be described in detail with reference to the drawings. In the first embodiment, the actual situation of the program is displayed based on the program structure. In contrast, the second embodiment exemplifies a program information generation system, a method thereof, a program, and a program information display system that display access to a memory address space during program execution based on a data structure.

本実施形態にかかるプログラム情報生成装置(システム)は、実施形態1で説明したプログラム情報生成装置(システム)101と同様の構成であってよい。ただし、実施形態1における「イベント」は「アクセス」と読み替えられ、「プログラム構造」は「データ構造」と読み替えられるものとする。また、軸情報としては、時間軸の代わりに、メモリアドレス軸が用いられるとする。   The program information generation apparatus (system) according to the present embodiment may have the same configuration as the program information generation apparatus (system) 101 described in the first embodiment. However, “event” in the first embodiment is read as “access”, and “program structure” is read as “data structure”. As axis information, a memory address axis is used instead of the time axis.

図15に、実施形態2においてプログラム情報生成装置(システム)101が実行するプログラムの一例を示す。図15に示すように、プログラム1501は、メモリメモリアドレス空間表記A[0][0]〜A[9][9]で示されるメモリアドレス空間に対し、ループ1502の“ACCESS(A[0][i])”によりメモリアドレス空間表記A[0][0]〜A[0][9]で示される部分メモリアドレス空間へアクセスし、ループ1503の“ACCESS(A[1][i])”によりメモリアドレス空間表記A[1][0]〜A[1][4]で示される部分メモリアドレス区間へアクセスするプログラムである。ここで、メモリアドレス空間表記は、プログラム上の記述でメモリアドレス空間を表すものであればよく、例えば、C言語においては変数であってもよいし、配列であってもよいし、構造体であってもよい。   FIG. 15 shows an example of a program executed by the program information generation apparatus (system) 101 in the second embodiment. As shown in FIG. 15, the program 1501 executes “ACCESS (A [0]” in the loop 1502 for the memory address space indicated by the memory memory address space notation A [0] [0] to A [9] [9]. [i]) ”accesses the partial memory address space indicated by the memory address space notations A [0] [0] to A [0] [9], and the loop 1503“ ACCESS (A [1] [i]) "Is a program for accessing a partial memory address section indicated by memory address space notations A [1] [0] to A [1] [4]. Here, the memory address space notation only needs to represent the memory address space in the program description. For example, in the C language, it may be a variable, an array, or a structure. There may be.

以上のようなプログラム1501を実行した際のメモリアドレス空間へのアクセス状況を表示装置に表示する場合、全てのメモリアドレス空間を1画面または1つのウィンドウに表示しようとすると、図16に示すように、表示装置の描画性能次第では1つ1つのアクセスを区別できない場合が生じ得る。一方で、メモリアドレス空間の一部を1画面または1つのウィンドウに表示する場合では、図17に示すように、メモリアドレス軸の全要素を同時に表示できない場合が生じ得る。そのような場合、スクロールバーなどで表示範囲をスライドさせることで、非表示の範囲を確認することは可能であるが、メモリアドレス空間全体に対するアクセス状況を俯瞰できないため、アクセス状況全体をユーザに把握させ難い場合がある。   When displaying the access status to the memory address space when executing the program 1501 as described above on the display device, if all the memory address spaces are displayed on one screen or one window, as shown in FIG. Depending on the drawing performance of the display device, there may be cases where individual accesses cannot be distinguished. On the other hand, when a part of the memory address space is displayed on one screen or one window, there may be a case where all elements of the memory address axis cannot be displayed simultaneously as shown in FIG. In such a case, it is possible to check the non-display range by sliding the display range with a scroll bar, etc., but since the access status to the entire memory address space cannot be overlooked, the entire access status is grasped by the user. It may be difficult to let them.

そこで本実施形態では、描画性能で表示できないアクセスをデータ構造の階層構造に基づいてまとめて表示するとともに、描画性能で表示できないアクセスについての情報を表示することで、アクセス状況全体をまとめて表示した場合でもその全体をユーザに把握させることを可能にする。なお、本実施形態では、実施形態1と同様に、描画性能で表示できないアクセスについての情報として、密度情報を用いる。   Therefore, in the present embodiment, the accesses that cannot be displayed with the drawing performance are collectively displayed based on the hierarchical structure of the data structure, and the information about the access that cannot be displayed with the drawing performance is displayed, so that the entire access status is displayed together. Even in this case, it is possible to make the user grasp the whole. In the present embodiment, as in the first embodiment, density information is used as information about accesses that cannot be displayed with drawing performance.

本実施形態2にかかるプログラム実行状況表示装置(システム)の概略動作は、実施形態1において図6を用いて説明した動作と同様であってよい。ただし、ただし、実施形態1における「イベント」は「アクセス」と読み替えられ、「プログラム構造」は「データ構造」と読み替えられるものとする。   The general operation of the program execution status display device (system) according to the second embodiment may be the same as the operation described with reference to FIG. 6 in the first embodiment. However, in the first embodiment, “event” is read as “access”, and “program structure” is read as “data structure”.

つぎに、本実施形態において、プログラム実行状況表示装置(システム)の各部が記憶または生成する情報について、以下に図面を参照して詳細に説明する。   Next, in the present embodiment, information stored or generated by each unit of the program execution status display device (system) will be described in detail below with reference to the drawings.

・データ構造情報
図18A〜図18Cは、図15に例示したプログラム1501がアクセスするメモリアドレス空間のデータ構造情報の例を示す図である。これらのデータ構造情報は、実施形態1において図7A〜図7Iを用いて例示したプログラム構造情報の代替となるものである。
Data Structure Information FIGS. 18A to 18C are diagrams illustrating examples of data structure information of the memory address space accessed by the program 1501 illustrated in FIG. Such data structure information is an alternative to the program structure information exemplified in FIGS. 7A to 7I in the first embodiment.

図18Aに示すメモリアドレス空間表記A[][]のアクセス先となるメモリアドレス空間のデータ構造情報1801は、データ構造識別情報が“A[][]”、データ階層情報が“A[][]”、包含データ構造識別情報が“なし”の情報であり、メモリアドレス空間全体を表す階層構造である。したがって、データ構造情報1801には、包含データ構造情報が存在しない。   In the data structure information 1801 of the memory address space that is the access destination of the memory address space notation A [] [] shown in FIG. 18A, the data structure identification information is “A [] []”, and the data hierarchy information is “A [] [ ] ”, The inclusion data structure identification information is“ none ”information, and has a hierarchical structure representing the entire memory address space. Therefore, the data structure information 1801 has no inclusion data structure information.

また、図18Bに示すメモリアドレス空間表記A[0][]のアクセス先となる部分メモリアドレス空間のデータ構造情報1802は、データ構造識別情報が“A[0][]”、データ階層情報が“A[0][]”、包含データ構造識別情報が“A[][]”の情報である。データ構造情報1802には、メモリアドレス空間表記A[][]のデータ構造情報1801に包含されるデータ構造情報であることを示す包含データ構造識別情報“A[][]”が付与されている。   Also, the data structure information 1802 of the partial memory address space that is the access destination of the memory address space notation A [0] [] shown in FIG. 18B has data structure identification information “A [0] []” and data hierarchy information. “A [0] []” is included, and the included data structure identification information is information “A [] []”. The data structure information 1802 is provided with inclusion data structure identification information “A [] []” indicating that the data structure information is included in the data structure information 1801 of the memory address space notation A [] []. .

同様に、図18Cに示すメモリアドレス空間表記A[1][]のアクセス先となる部分メモリアドレス空間のデータ構造情報1803は、データ構造識別情報が“A[1][]”、データ階層情報が“A[1][]”、包含データ構造識別情報が“A[][]”の情報である。データ構造情報1803には、メモリアドレス空間表記A[][]のデータ構造情報1801に包含されるデータ構造情報であることを示す包含データ構造識別情報“A[][]”が付与されている。   Similarly, in the data structure information 1803 of the partial memory address space that is the access destination of the memory address space notation A [1] [] shown in FIG. 18C, the data structure identification information is “A [1] []”, data hierarchy information Is information of “A [1] []” and inclusion data structure identification information is “A [] []”. The data structure information 1803 is provided with inclusion data structure identification information “A [] []” indicating that the data structure information is included in the data structure information 1801 of the memory address space notation A [] []. .

さらに、図18Dに示すメモリアドレス空間表記A[0][0]〜A[0][9]のアクセス先となる部分メモリアドレス空間のデータ構造情報1811〜1820は、それぞれ、データ構造識別情報が“A[0][0]”〜“A[0][9]”、データ階層情報が“A[0][0]”〜“A[0][9]”、包含データ構造識別情報が共通して“A[0][]”の情報である。データ構造情報1803には、メモリアドレス空間表記A[0][]のデータ構造情報1802に包含されるデータ構造情報であることを示す包含データ構造識別情報“A[0][]”が付与されている。   Furthermore, the data structure information 1811 to 1820 of the partial memory address space that is the access destination of the memory address space notations A [0] [0] to A [0] [9] shown in FIG. “A [0] [0]” to “A [0] [9]”, data hierarchy information is “A [0] [0]” to “A [0] [9]”, and inclusion data structure identification information is The information is “A [0] []” in common. The data structure information 1803 is provided with inclusion data structure identification information “A [0] []” indicating that the data structure information is included in the data structure information 1802 of the memory address space notation A [0] []. ing.

同様に、図18Eに示すメモリアドレス空間表記A[1][0]〜A[1][9]のアクセス先となる部分メモリアドレス空間のデータ構造情報1821〜1830は、それぞれ、データ構造識別情報が“A[1][0]”〜“A[1][9]”、データ階層情報が“A[1][0]”〜“A[1][9]”、包含データ構造識別情報が共通して“A[1][]”の情報である。データ構造情報1803には、メモリアドレス空間表記A[1][]のデータ構造情報1803に包含されるデータ構造情報であることを示す包含データ構造識別情報“A[1][]”が付与されている。   Similarly, the data structure information 1821 to 1830 of the partial memory address space that is the access destination of the memory address space notation A [1] [0] to A [1] [9] shown in FIG. 18E is data structure identification information, respectively. Are “A [1] [0]” to “A [1] [9]”, the data hierarchy information is “A [1] [0]” to “A [1] [9]”, and the included data structure identification information Is information of “A [1] []” in common. The data structure information 1803 is provided with inclusion data structure identification information “A [1] []” indicating that the data structure information is included in the data structure information 1803 of the memory address space notation A [1] []. ing.

・アクセス情報
図19Aおよび図19Bは、図15に例示したプログラム1501を実行することによって発生するアクセスのアクセス情報の例を示す図である。これらのアクセス情報は、実施形態1において図8A〜図8Dを用いて例示したイベント情報の代替となるものである。
Access Information FIGS. 19A and 19B are diagrams illustrating an example of access information of an access generated by executing the program 1501 illustrated in FIG. These pieces of access information are alternatives to the event information exemplified in FIGS. 8A to 8D in the first embodiment.

図19Aは、図15のプログラム1501におけるループ1502を実行した際に発生するアクセスのアクセス情報1901〜1910を示す。たとえば、アクセス情報1901は、ループ1502の1回目のイテレーション実行(iが0である場合)を示し、始点メモリアドレス情報が“0x00000000”、終点メモリアドレス情報が“0x0000FFFF”、データ構造識別情報が“A[0][0]”、アクセス回数が“1”である。また、アクセス情報1909は、ループ1502の10回目のイテレーション実行(iが9である場合)を示し、始点メモリアドレス情報が“0x0009FFFF”、終点メモリアドレス情報が“0x000AFFFF”、データ構造識別情報が“A[0][9]”、アクセス回数が“1”である。   FIG. 19A shows access information 1901 to 1910 of access that occurs when the loop 1502 in the program 1501 of FIG. 15 is executed. For example, the access information 1901 indicates the first iteration execution of the loop 1502 (when i is 0), the start point memory address information is “0x00000000”, the end point memory address information is “0x0000FFFF”, and the data structure identification information is “ A [0] [0] ”and the access count is“ 1 ”. The access information 1909 indicates the 10th iteration of the loop 1502 (when i is 9), the start point memory address information is “0x0009FFFF”, the end point memory address information is “0x000AFFFF”, and the data structure identification information is “ A [0] [9] ”and the access count is“ 1 ”.

一方、図19Bは、図15のプログラム1501におけるループ1503を実行した際に発生するアクセスのアクセス情報1911〜1915を示す。たとえば、アクセス情報1911は、ループ1503の1回目のイテレーション実行(iが0である場合)を示し、始点メモリアドレス情報が“0x00F00000”、終点メモリアドレス情報が“0x00F0FFFF”、データ構造識別情報が“A[1][0]”、アクセス回数が“1”である。また、アクセス情報1919は、ループ1503の5回目のイテレーション実行(iが4である場合)を示し、始点メモリアドレス情報が“0x00F9FFFF”、終点メモリアドレス情報が“0x00FAFFFF”、データ構造識別情報が“A[1][9]”、アクセス回数が“1”である。   On the other hand, FIG. 19B shows access information 1911 to 1915 of accesses that occur when the loop 1503 in the program 1501 of FIG. 15 is executed. For example, the access information 1911 indicates the first iteration execution of the loop 1503 (when i is 0), the start point memory address information is “0x00F00000”, the end point memory address information is “0x00F0FFFF”, and the data structure identification information is “ A [1] [0] ”and the access count is“ 1 ”. The access information 1919 indicates the fifth iteration execution of the loop 1503 (when i is 4), the start point memory address information is “0x00F9FFFF”, the end point memory address information is “0x00FAFFFF”, and the data structure identification information is “ A [1] [9] ”and the access count is“ 1 ”.

・軸情報
図20は、本実施形態にかかる軸情報の例を示す。図20に示すように、本実施形態にかかる軸情報2001は、最小描画区間単位情報2002を“0xFFFF”とし、メモリアドレス軸描画範囲情報2003を“0−0x100000000”としている。これは、最小描画単位がメモリアドレス空間の幅0xFFFFを表すことと、表示範囲がメモリアドレス空間におけるメモリアドレス0からメモリアドレス0x100000000であることとを示している。
Axis Information FIG. 20 shows an example of axis information according to the present embodiment. As shown in FIG. 20, in the axis information 2001 according to the present embodiment, the minimum drawing section unit information 2002 is “0xFFFF”, and the memory address axis drawing range information 2003 is “0-0x100000000”. This indicates that the minimum drawing unit represents the width 0xFFFF of the memory address space and that the display range is from memory address 0 to memory address 0x100000000 in the memory address space.

・表示アクセス単位情報
図21Aおよび図21Bは、本実施形態にかかる表示アクセス単位情報の例を示す。これらの表示アクセス単位情報は、実施形態1において図10A〜図10Cを用いて例示した表示イベント単位情報の代替となるものである。図21Aに示す表示アクセス単位情報2101は、データ構造識別情報が“A[0][]”である。一方、図21Bに示す表示アクセス単位情報2102は、データ構造識別情報が“A[1][]”である。
Display Access Unit Information FIGS. 21A and 21B show examples of display access unit information according to the present embodiment. These pieces of display access unit information are substitutes for the display event unit information exemplified in FIGS. 10A to 10C in the first embodiment. In the display access unit information 2101 shown in FIG. 21A, the data structure identification information is “A [0] []”. On the other hand, the display access unit information 2102 shown in FIG. 21B has data structure identification information “A [1] []”.

ここで、図22を用いて、表示アクセス単位情報の生成例を述べる。表示アクセス単位情報の生成では、アクセス情報に基づいて各データ構造における区間情報が計算される。本例では、データ構造の区間情報が最小区間情報として計算される。図22に、各データ構造とその最小区間情報を示す。データ構造2200、2201、2202、…2210、2211A〜2211J、2212A〜2212J、…、2220A〜2220Jのうち、データ構造2200、2201および2202は、それぞれデータ構造情報1801、1802、1803に対応し、また、データ構造2211A〜2211Jおよび2212A〜2212Jは、データ構造情報1811〜1820および1821〜1830に対応する。   Here, a generation example of display access unit information will be described with reference to FIG. In generating the display access unit information, section information in each data structure is calculated based on the access information. In this example, the section information of the data structure is calculated as the minimum section information. FIG. 22 shows each data structure and its minimum section information. Of the data structures 2200, 2201, 2202, ... 2210, 2211A to 2211J, 2212A to 2212J, ..., 2220A to 2220J, the data structures 2200, 2201 and 2202 correspond to the data structure information 1801, 1802, 1803, respectively. The data structures 2211A to 2211J and 2212A to 2212J correspond to the data structure information 1811 to 1820 and 1821 to 1830, respectively.

表示アクセス単位情報の生成では、メモリアドレス軸情報の最小描画区間単位情報2002の区間“0xFFFF”以上を満足する最小区間情報を持つデータ構造2200、2201〜2210を特定し、さらに、同一の隣接包含データ構造情報を持つ全てのデータ構造情報がメモリアドレス軸情報の最小描画区間単位情報の区間“0xFFFF”以上を満足する最小区間情報を持つデータ構造2200、2201〜2210を特定する。ここで、選択されたデータ構造2200、2201〜2210のうち、互いに包含関係なく、最小区間情報が最小であり且つプログラム1501の実行によってアクセスされるデータ構造2201および2202が表示アクセス単位とされ、そのデータ構造を示すデータ構造情報のデータ構造識別情報に基づいて、表示アクセス単位情報2101および2102が生成される。   In the generation of the display access unit information, the data structures 2200 and 2201 to 2210 having the minimum section information satisfying the section “0xFFFF” or more of the minimum drawing section unit information 2002 of the memory address axis information are specified, and further, the same adjacent inclusion is included. The data structures 2200 and 2201 to 2210 having the minimum section information in which all the data structure information having the data structure information satisfy the section “0xFFFF” or more of the minimum drawing section unit information of the memory address axis information are specified. Here, out of the selected data structures 2200 and 2201 to 2210, the data structures 2201 and 2202 having the smallest minimum section information and being accessed by the execution of the program 1501 are included in the display access unit. Display access unit information 2101 and 2102 are generated based on the data structure identification information of the data structure information indicating the data structure.

・表示アクセス情報
図23Aおよび図23Bは、本実施形態にかかる表示アクセス情報の例を示す。これらの表示アクセス情報は、実施形態1において図12A〜図12Cを用いて例示した表示イベント情報の代替となるものである。
Display Access Information FIGS. 23A and 23B show examples of display access information according to the present embodiment. These pieces of display access information are substitutes for the display event information exemplified in FIGS. 12A to 12C in the first embodiment.

本実施形態において、区間情報は始点メモリアドレス情報と終点メモリアドレス情報とからなり、密度情報は表示アクセスが表す区間とその区間内で実際にアクセスが発生した区間との比とし、統計情報はアクセスされた要素数とする。図23Aに示す表示アクセス情報2301は、始点メモリアドレス情報を“0x00000000”、終点メモリアドレス情報を“0x000AFFFF”、属性情報を“A[0][]”、密度情報を“1.0”、複数アクセス表示情報を“TRUE”、要素数を“10”とする情報である。また、図23Bに示す表示アクセス情報2302は、始点メモリアドレス情報を“0x00F00000”、終点メモリアドレス情報を“0x00FAFFFF”、属性情報を“A[1][]”、密度情報を“0.5”、複数アクセス表示情報を“TRUE”、要素数を“5”とする情報である。   In this embodiment, the section information is made up of the start point memory address information and the end point memory address information, the density information is the ratio between the section represented by the display access and the section where the access actually occurred within that section, and the statistical information is the access The number of elements made In the display access information 2301 shown in FIG. 23A, the start point memory address information is “0x00000000”, the end point memory address information is “0x000AFFFF”, the attribute information is “A [0] []”, the density information is “1.0”, The access display information is “TRUE” and the number of elements is “10”. Also, the display access information 2302 shown in FIG. 23B includes the start point memory address information “0x00F00000”, the end point memory address information “0x00FAFFFF”, the attribute information “A [1] []”, and the density information “0.5”. The multiple access display information is “TRUE” and the number of elements is “5”.

本実施形態において、オブジェクト生成部109は、表示アクセス情報記憶部(表示イベント情報記憶部106に相当)に記憶される表示アクセス情報と、軸情報記憶部104に記憶される軸情報とを入力し、入力した表示アクセス情報の区間情報と軸情報のメモリアドレス軸情報とに基づいて、メモリアドレス軸方向の表示位置と表示サイズとを決定する。また、オブジェクト生成部109は、表示アクセス情報の密度情報に基づいて表示方式を決定し、表示アクセス情報の複数アクセス表示情報に基づいてユーザ入力に対するアクションを決定し、アクセスを表すアクセスオブジェクト(イベントオブジェクトに相当)を生成する。   In the present embodiment, the object generation unit 109 inputs display access information stored in the display access information storage unit (corresponding to the display event information storage unit 106) and axis information stored in the axis information storage unit 104. The display position and the display size in the memory address axis direction are determined based on the section information of the input display access information and the memory address axis information of the axis information. Further, the object generation unit 109 determines a display method based on the density information of the display access information, determines an action for user input based on the multiple access display information of the display access information, and displays an access object (event object) indicating access. Equivalent).

なお、本実施形態では、密度情報を、表示アクセスが表す区間とその区間内で実際にアクセスが発生した区間との比としたが、これに限定されるものではない。たとえば、表示アクセスが表す区間とその区間内で実際にアクセスが発生した区間との比に統計情報として用いる要素数を加えた値を密度情報として用いるなど、種々変形することが可能である。   In the present embodiment, the density information is the ratio between the section represented by the display access and the section where the access actually occurred in the section. However, the present invention is not limited to this. For example, various modifications can be made such as using, as the density information, a value obtained by adding the number of elements used as statistical information to the ratio between the section represented by the display access and the section in which the access actually occurs.

また、本実施形態では、軸情報として属性軸を用いていないが、たとえばマルチコアなど、複数のプロセッサから同一メモリアドレス空間へのアクセスがある場合には、実施形態1と同様に、属性軸を用いて各プロセッサからのアクセスを分離して表示してもよい。   In this embodiment, the attribute axis is not used as the axis information. However, when there is access to the same memory address space from a plurality of processors such as a multi-core, for example, the attribute axis is used as in the first embodiment. Thus, access from each processor may be displayed separately.

また、表示部111は、実施形態1と同様に、軸オブジェクト生成部110で生成された軸オブジェクトを入力し、軸オブジェクトが持つ表示情報に基づいて、軸オブジェクトを画面上に描画する。この際、マルチコア対応の場合には、属性軸オブジェクトとして属性ラベルを表示してもよい。   Similarly to the first embodiment, the display unit 111 receives the axis object generated by the axis object generation unit 110 and draws the axis object on the screen based on display information of the axis object. At this time, in the case of multi-core support, an attribute label may be displayed as an attribute axis object.

また、表示部111は、オブジェクト生成部109で生成されたアクセスオブジェクトを入力し、アクセスオブジェクトが持つ表示位置情報に基づいて、アクセスオブジェクトを画面上に描画する。本実施形態では、図24に示すように、表示アクセス情報2301および2302を表すアクセスオブジェクトをそれぞれ順に2402および2402として表示する。また、メモリアクセス軸オブジェクト2404を表示する。なお、実施形態1と同様に、表示部111は、入力部112を用いたユーザからの入力を受け付け、ユーザの入力に基づいて、イベントオブジェクトに定義されたアクションを表示してもよい。   Further, the display unit 111 receives the access object generated by the object generation unit 109 and draws the access object on the screen based on the display position information held by the access object. In this embodiment, as shown in FIG. 24, the access objects representing the display access information 2301 and 2302 are displayed as 2402 and 2402, respectively. In addition, the memory access axis object 2404 is displayed. As in the first embodiment, the display unit 111 may receive an input from a user using the input unit 112 and display an action defined in the event object based on the user's input.

また、実施形態1と同様、表示部111は、入力部112を用いたユーザからの入力を受け付け、ユーザの入力に基づいて、アクセスオブジェクトに定義されたアクションを表示する。例えば図25に示すように、表示アクセス情報2301のイベントオブジェクト2402にマウスオーバー等のユーザからの入力があった場合、たとえばその統計情報である“要素数:10”2504を表示する。   As in the first embodiment, the display unit 111 receives an input from the user using the input unit 112 and displays an action defined in the access object based on the user input. For example, as shown in FIG. 25, when there is an input from the user such as mouse over to the event object 2402 of the display access information 2301, for example, “number of elements: 10” 2504 as the statistical information is displayed.

以上のように、本実施形態によれば、プログラム実行時のメモリアドレス空間へのアクセスがデータ構造に基づいて表示されるため、大量のアクセスが発生するプログラムの実行状況をユーザに容易に把握させることが可能となる。   As described above, according to the present embodiment, access to the memory address space at the time of program execution is displayed based on the data structure, so that the user can easily grasp the execution status of the program in which a large amount of access occurs. It becomes possible.

なお、本実施形態では、メモリアドレス空間表記A[0][0]のようなデータ構造における最小単位に対するアクセス命令を前提として説明したが、これに限るものではない。たとえばC言語における“memset”のような、メモリアドレス空間表記A[0][]などの中規模単位へのアクセス命令に対しても同様に、本実施形態を適用することが可能である。   Although the present embodiment has been described on the premise of an access instruction for a minimum unit in a data structure such as memory address space notation A [0] [0], the present invention is not limited to this. For example, the present embodiment can be similarly applied to an instruction for accessing a medium-scale unit such as memory address space notation A [0] [] such as “memset” in C language.

また、上記実施形態では、1つのメモリアドレス空間に対しては1つの属性軸とした場合を説明したが、これに限るものではない。たとえば上記において、変数A[0][]による中規模単位でのアクセスと、メモリアドレス空間表記A[1][]による中規模単位でのアクセスとを、別の属性軸としてもよい。その場合、属性軸毎にメモリアドレス軸を設定してもよい。   In the above embodiment, a case where one attribute axis is used for one memory address space has been described. However, the present invention is not limited to this. For example, in the above, the access in the medium scale unit by the variable A [0] [] and the access in the medium scale unit by the memory address space notation A [1] [] may be used as different attribute axes. In that case, a memory address axis may be set for each attribute axis.

さらに、上記実施形態では、メモリアドレス空間へのアクセスをデータ構造に基づいてまとめて表示する場合を例示したが、これに限るものではない。たとえばアクセスをプログラム構造(データアクセス命令)に基づいてまとめて表示するようにも構成することが可能である。   Furthermore, in the above-described embodiment, the case where the accesses to the memory address space are collectively displayed based on the data structure is illustrated, but the present invention is not limited to this. For example, it is possible to configure so that accesses are collectively displayed based on a program structure (data access instruction).

上記実施形態およびその変形例は本発明を実施するための例にすぎず、本発明はこれらに限定されるものではなく、仕様等に応じて種々変形することは本発明の範囲内であり、更に本発明の範囲内において、他の様々な実施形態が可能であることは上記記載から自明である。例えば実施形態に対して適宜例示した変形例は、他の実施形態と組み合わせることも可能であることは言うまでもない。   The above-described embodiment and its modifications are merely examples for carrying out the present invention, and the present invention is not limited thereto, and various modifications according to specifications and the like are within the scope of the present invention. Furthermore, it is obvious from the above description that various other embodiments are possible within the scope of the present invention. For example, it is needless to say that the modification examples illustrated as appropriate for the embodiments can be combined with other embodiments.

101…プログラム実行状況表示装置(システム)、102…イベント情報記憶部、103…プログラム構造情報記憶部、104…軸情報記憶部、105…表示イベント単位情報記憶部、106…表示イベント情報記憶部、107…表示イベント単位情報生成部、108…表示イベント情報生成部、109…オブジェクト生成部、110…軸オブジェクト生成部、111…表示部、112…入力部   DESCRIPTION OF SYMBOLS 101 ... Program execution status display apparatus (system), 102 ... Event information storage part, 103 ... Program structure information storage part, 104 ... Axis information storage part, 105 ... Display event unit information storage part, 106 ... Display event information storage part, 107: Display event unit information generation unit, 108: Display event information generation unit, 109 ... Object generation unit, 110 ... Axis object generation unit, 111 ... Display unit, 112 ... Input unit

Claims (8)

プログラムの実行によって発生する2つ以上のイベントを表現する表示イベントを生成する情報生成システムであって、
前記プログラムの実行状況を描画する座標系の第1軸の最小描画単位と、前記プログラムの区間の包含関係と、前記イベントの実行期間とに基づいた表示単位で前記表示イベントを生成する表示イベント情報生成部と、
前記第1軸を表現する軸オブジェクトを生成する生成部と
を有する情報生成システム。
An information generation system that generates a display event that represents two or more events generated by execution of a program,
Display event information for generating the display event in a display unit based on the minimum drawing unit of the first axis of the coordinate system for drawing the execution state of the program, the inclusion relation of the section of the program, and the execution period of the event A generator,
An information generation system comprising: a generation unit configured to generate an axis object representing the first axis.
前記表示イベント情報生成部は、前記実行期間が前記第1軸の前記最小描画単位よりも短い複数の前記イベントを前記プログラムの区間の包含関係に基づいてまとめて表示するように前記表示イベントを生成する請求項1に記載の情報生成システム。   The display event information generation unit generates the display event so as to collectively display a plurality of the events whose execution period is shorter than the minimum drawing unit of the first axis based on an inclusion relationship of the program sections. The information generation system according to claim 1. 前記プログラムの区間毎に、各プログラムの区間に対応する1つまたは複数の前記イベントの実行期間から前記プログラムの区間の実行期間を取得し、自身および自身が隣接した包含関係にある前記プログラムの区間と同じ前記プログラムの区間と隣接した包含関係にある全ての前記プログラムの区間が前記第1軸の前記最小描画単位以上の前記プログラムの区間の実行期間を有し、互いに包含関係が無い前記プログラムの区間の内、前記プログラムの区間の前記実行期間が最短の前記プログラムの区間を表示単位とする表示イベント単位情報を生成する表示イベント単位情報生成部をさらに有する請求項1または2に記載の情報生成システム。   For each section of the program, the execution period of the section of the program is acquired from the execution period of one or a plurality of the events corresponding to the section of each program, and the section of the program that is in an inclusive relationship with itself All the program sections adjacent to the program section adjacent to the program section have an execution period of the program section equal to or greater than the minimum drawing unit of the first axis, and the program sections having no inclusion relation with each other. The information generation according to claim 1, further comprising: a display event unit information generation unit configured to generate display event unit information whose display unit is the section of the program having the shortest execution period in the section of the program. system. 前記表示イベントに基づいて1つ以上のイベントオブジェクトを生成するオブジェクト生成部をさらに有し、
前記オブジェクト生成部は、前記表示イベントの密度情報に基づいて前記表示イベントの前記イベントオブジェクトの表示方式を決定する
請求項1乃至3のいずれか1項に記載の情報生成システム。
An object generation unit that generates one or more event objects based on the display event;
The information generation system according to any one of claims 1 to 3, wherein the object generation unit determines a display method of the event object of the display event based on density information of the display event.
前記イベントは、前記プログラムの実行の単位であり、
前記第1軸は、前記プログラムの実行における時間軸である
請求項1乃至4のいずれか1項に記載の情報生成システム。
The event is a unit of execution of the program,
The information generation system according to any one of claims 1 to 4, wherein the first axis is a time axis in execution of the program.
前記イベントは、メモリアドレス空間へのアクセスであり、
前記第1軸は、前記メモリアドレス空間を表現するメモリアドレス軸である
請求項1乃至4のいずれか1項に記載の情報生成システム。
The event is an access to a memory address space;
The information generation system according to any one of claims 1 to 4, wherein the first axis is a memory address axis that represents the memory address space.
プログラムの実行によって発生する2つ以上のイベントを表現する表示イベントを生成する情報生成方法であって、
前記プログラムの実行状況を描画する座標系の第1軸の最小描画単位と、前記プログラムの区間の包含関係と、前記イベントの実行期間とに基づいた表示単位で前記表示イベントを生成し、
前記第1軸を表現する軸オブジェクトを生成する
情報生成方法。
An information generation method for generating a display event representing two or more events generated by execution of a program,
Generating the display event in a display unit based on the minimum drawing unit of the first axis of the coordinate system for drawing the execution state of the program, the inclusion relation of the section of the program, and the execution period of the event;
An information generation method for generating an axis object representing the first axis.
プログラムの実行によって発生する2つ以上のイベントを表現する表示イベントを生成するコンピュータを機能させるための情報生成プログラムであって、
前記プログラムの実行状況を描画する座標系の第1軸の最小描画単位と、前記プログラムの区間の包含関係と、前記イベントの実行期間とに基づいた表示単位で前記表示イベントを生成するステップと、
前記第1軸を表現する軸オブジェクトを生成するステップと
をコンピュータに実行させる情報生成プログラム。
An information generation program for causing a computer to generate a display event that expresses two or more events generated by execution of a program,
Generating the display event in a display unit based on the minimum drawing unit of the first axis of the coordinate system for drawing the execution status of the program, the inclusion relation of the section of the program, and the execution period of the event;
An information generation program that causes a computer to execute an axis object that represents the first axis.
JP2017149151A 2017-08-01 2017-08-01 Information generation system, method thereof, and program thereof Abandoned JP2017191622A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017149151A JP2017191622A (en) 2017-08-01 2017-08-01 Information generation system, method thereof, and program thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017149151A JP2017191622A (en) 2017-08-01 2017-08-01 Information generation system, method thereof, and program thereof

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2014041853A Division JP6189232B2 (en) 2014-03-04 2014-03-04 Program information generation system, method thereof, program, and program information display system

Publications (1)

Publication Number Publication Date
JP2017191622A true JP2017191622A (en) 2017-10-19

Family

ID=60084901

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017149151A Abandoned JP2017191622A (en) 2017-08-01 2017-08-01 Information generation system, method thereof, and program thereof

Country Status (1)

Country Link
JP (1) JP2017191622A (en)

Similar Documents

Publication Publication Date Title
US10565095B2 (en) Hybrid testing automation engine
US9021440B1 (en) System and method for automated test script generation
Brunst et al. Performance optimization for large scale computing: The scalable VAMPIR approach
US8935673B1 (en) System and method for debugging computer program based on execution history
CN106062711B (en) Method, system, and computer storage medium for compound controls
US9471213B2 (en) Chaining applications
US8935705B2 (en) Execution of highly concurrent processing tasks based on the updated dependency data structure at run-time
US10657208B2 (en) Analyzing model based on design interest
US20170235661A1 (en) Integration of Software Systems via Incremental Verification
Chotisarn et al. A systematic literature review of modern software visualization
Salihoglu et al. Graft: A debugging tool for apache giraph
US20100313186A1 (en) Developer-managed debugger data records
US8296726B2 (en) Representation of software application functionality
JP5421228B2 (en) Program, apparatus, and method for visualizing relationships using virtual tasks
US10289388B2 (en) Process visualization toolkit
JP6223866B2 (en) Display information generating apparatus, program execution status display system, method and program
Sfaxi et al. Babel: a generic benchmarking platform for Big Data architectures
JP6189232B2 (en) Program information generation system, method thereof, program, and program information display system
CN117389873A (en) Automatic testing method, device and equipment for interface service
US10996987B2 (en) Progress visualization of computational job
US8826234B2 (en) Relational modeling for performance analysis of multi-core processors
JP6437226B2 (en) Information processing system, program information generation method, program information generation program, and program information display system
JP2017191622A (en) Information generation system, method thereof, and program thereof
US9811335B1 (en) Assigning operational codes to lists of values of control signals selected from a processor design based on end-user software
US20140380272A1 (en) Business application inspection and modification

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170801

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180511

A762 Written abandonment of application

Free format text: JAPANESE INTERMEDIATE CODE: A762

Effective date: 20180521