JPH064360A - リアルタイムosのグラフィカルアナライザ - Google Patents
リアルタイムosのグラフィカルアナライザInfo
- Publication number
- JPH064360A JPH064360A JP4157979A JP15797992A JPH064360A JP H064360 A JPH064360 A JP H064360A JP 4157979 A JP4157979 A JP 4157979A JP 15797992 A JP15797992 A JP 15797992A JP H064360 A JPH064360 A JP H064360A
- Authority
- JP
- Japan
- Prior art keywords
- task
- data
- display
- trace data
- displaying
- 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.)
- Withdrawn
Links
Landscapes
- Debugging And Monitoring (AREA)
Abstract
(57)【要約】
【目的】トレースデータの情報量とその情報の内容をア
ナライザから制御でき、カーネルの様々なオブジェクト
を視覚的に分かりやすく表示できるようにする。 【構成】データの種類、タイムスタンプおよび実行中の
タスクのIDは共通データとして収集し、その他はプロ
ーブの設定場所に応じて適宜収集し、その収集データは
実行可能状態のアプリケーションタスクが存在しない時
にディスクに保存するトレースデータ収集機能と、図形
のみの表示、図形と記号の混在表示、必要な箇所でポッ
プアップウインドウを開きトレースデータを表示させる
3つの表示レベルを有し、かつ情報を加工し表示するに
際しては、CPUの推移を示すモード、タスクの状態を
示すモード、オブジェクトに対するアクセスとタスク間
のイベント、例外の送信、受信を示すモードの3つの表
示モードの中から適宜選択・変更ができるようにした動
作表示の機能を有する。
ナライザから制御でき、カーネルの様々なオブジェクト
を視覚的に分かりやすく表示できるようにする。 【構成】データの種類、タイムスタンプおよび実行中の
タスクのIDは共通データとして収集し、その他はプロ
ーブの設定場所に応じて適宜収集し、その収集データは
実行可能状態のアプリケーションタスクが存在しない時
にディスクに保存するトレースデータ収集機能と、図形
のみの表示、図形と記号の混在表示、必要な箇所でポッ
プアップウインドウを開きトレースデータを表示させる
3つの表示レベルを有し、かつ情報を加工し表示するに
際しては、CPUの推移を示すモード、タスクの状態を
示すモード、オブジェクトに対するアクセスとタスク間
のイベント、例外の送信、受信を示すモードの3つの表
示モードの中から適宜選択・変更ができるようにした動
作表示の機能を有する。
Description
【0001】
【産業上の利用分野】本発明は、リアルタイムシステム
のアプリケーションタスクとカーネルの動作を視覚的に
表現し、それらの動作の検証を容易にするグラフィカル
アナライザに関するものである。
のアプリケーションタスクとカーネルの動作を視覚的に
表現し、それらの動作の検証を容易にするグラフィカル
アナライザに関するものである。
【0002】
【従来の技術】従来より、リアルタイムOS(OSはオ
ペレーティングシステムの略)のカーネルの各部に設置
されたプローブからデータを収集し(このデータをトレ
ースデータという)、そのデータを加工してカーネルと
アプリケーションタスクの動作を表示画面上に視覚的に
表現するグラフィカルアナライザがある。
ペレーティングシステムの略)のカーネルの各部に設置
されたプローブからデータを収集し(このデータをトレ
ースデータという)、そのデータを加工してカーネルと
アプリケーションタスクの動作を表示画面上に視覚的に
表現するグラフィカルアナライザがある。
【0003】
【発明が解決しようとする課題】しかしながら、従来の
この種のグラフィカルアナライザでは次のような問題点
があった。 トレースデータの情報量とその内容が適当でなく、ま
た情報量が少ないために必要な情報が含まれないことが
ある。 また逆に情報量が多すぎるため冗長になることがあ
る。 カーネルの様々なオブジェクト(タスク、セマフォ、
キュー、イベント等)を分かりやすく表示できない。 本発明の目的は、このような点に鑑みて、トレースデー
タの情報量とその情報の内容をアナライザから制御で
き、カーネルの様々なオブジェクトを視覚的に分かりや
すく表示できるようにしたグラフィカルアナライザを提
供することにある。
この種のグラフィカルアナライザでは次のような問題点
があった。 トレースデータの情報量とその内容が適当でなく、ま
た情報量が少ないために必要な情報が含まれないことが
ある。 また逆に情報量が多すぎるため冗長になることがあ
る。 カーネルの様々なオブジェクト(タスク、セマフォ、
キュー、イベント等)を分かりやすく表示できない。 本発明の目的は、このような点に鑑みて、トレースデー
タの情報量とその情報の内容をアナライザから制御で
き、カーネルの様々なオブジェクトを視覚的に分かりや
すく表示できるようにしたグラフィカルアナライザを提
供することにある。
【0004】
【課題を解決するための手段】このような目的を達成す
るために本発明では、以下のような機能を持つことを特
徴を有する。すなわち、トレースデータ収集の機能とし
て次のような機能を持つ。データの種類、タイムスタン
プおよび実行中のタスクのIDの3つのデータは共通と
し、その他はプローブの設定場所に応じて適宜収集す
る。そして、あらかじめ用意した静的な領域にトレース
データを書き込んでおき、実行可能状態のアプリケーシ
ョンタスクが存在しない時にそのトレースデータをディ
スクに保存する。また、カーネルとアプリケーションタ
スクの動作を表示するための機能としては、次のような
機能を持つ。表示のレベルを、図形のみを表示するレベ
ルと、図形と記号を混在表示するレベルと、マウス使用
により必要な箇所でポップアップウインドウを開きトレ
ースデータを表示させるレベルの3つのレベルとする。
更に情報を加工して表示するに際しては、CPUの推移
を示すモードと、タスクの状態を示すモードと、オブジ
ェクトに対するアクセスとタスク間のイベント、例外の
送信、受信を示すモードの3つのモードの表示を適宜選
択・変更できるようにした。
るために本発明では、以下のような機能を持つことを特
徴を有する。すなわち、トレースデータ収集の機能とし
て次のような機能を持つ。データの種類、タイムスタン
プおよび実行中のタスクのIDの3つのデータは共通と
し、その他はプローブの設定場所に応じて適宜収集す
る。そして、あらかじめ用意した静的な領域にトレース
データを書き込んでおき、実行可能状態のアプリケーシ
ョンタスクが存在しない時にそのトレースデータをディ
スクに保存する。また、カーネルとアプリケーションタ
スクの動作を表示するための機能としては、次のような
機能を持つ。表示のレベルを、図形のみを表示するレベ
ルと、図形と記号を混在表示するレベルと、マウス使用
により必要な箇所でポップアップウインドウを開きトレ
ースデータを表示させるレベルの3つのレベルとする。
更に情報を加工して表示するに際しては、CPUの推移
を示すモードと、タスクの状態を示すモードと、オブジ
ェクトに対するアクセスとタスク間のイベント、例外の
送信、受信を示すモードの3つのモードの表示を適宜選
択・変更できるようにした。
【0005】
【作用】トレースデータ収集においては、データの種
類、タイムスタンプ、実行中のタスクのID、の3
つを共通データとして収集し、その他はプローブの設定
場所に応じて適宜収集する。そして、あらかじめ用意し
た静的な領域にトレースデータを書き込んでおき、実行
可能状態のアプリケーションタスクが存在しない時にそ
のトレースデータをディスクへ移し替え保存する。な
お、リアルタイムOSは1プロセスとして動作し、エラ
ーはすべてシグナルに変換される。エラーが発生したと
き、あらかじめ登録されたハンドラ(シグナルのハンド
ラ)によりトレースデータがファイルに書き込まれる。
また、カーネルとアプリケーションタスクの動作表示に
おいては、図形のみの表示、図形と記号との混在表
示、マウス使用により必要な箇所でポップアップウイ
ンドウを開きトレースデータを表示する態様の表示、と
3つの表示レベルがあり、適宜選択可能になっている。
更に情報を加工して表示するに際しては、CPUの推
移を示すモード、タスクの状態を示すモード、オブ
ジェクトに対するアクセスとタスク間のイベント、例外
の送信、受信を示すモード、の3つのモードの表示を適
宜選択・変更できる。このような作用により、トレース
データの情報量とその情報の内容をアナライザから制御
できると共に、リアルタイムシステムのアプリケーショ
ンタスクとカーネルの動作を容易に視覚的に表現するこ
とができる。
類、タイムスタンプ、実行中のタスクのID、の3
つを共通データとして収集し、その他はプローブの設定
場所に応じて適宜収集する。そして、あらかじめ用意し
た静的な領域にトレースデータを書き込んでおき、実行
可能状態のアプリケーションタスクが存在しない時にそ
のトレースデータをディスクへ移し替え保存する。な
お、リアルタイムOSは1プロセスとして動作し、エラ
ーはすべてシグナルに変換される。エラーが発生したと
き、あらかじめ登録されたハンドラ(シグナルのハンド
ラ)によりトレースデータがファイルに書き込まれる。
また、カーネルとアプリケーションタスクの動作表示に
おいては、図形のみの表示、図形と記号との混在表
示、マウス使用により必要な箇所でポップアップウイ
ンドウを開きトレースデータを表示する態様の表示、と
3つの表示レベルがあり、適宜選択可能になっている。
更に情報を加工して表示するに際しては、CPUの推
移を示すモード、タスクの状態を示すモード、オブ
ジェクトに対するアクセスとタスク間のイベント、例外
の送信、受信を示すモード、の3つのモードの表示を適
宜選択・変更できる。このような作用により、トレース
データの情報量とその情報の内容をアナライザから制御
できると共に、リアルタイムシステムのアプリケーショ
ンタスクとカーネルの動作を容易に視覚的に表現するこ
とができる。
【0006】
【実施例】以下本発明を詳細に説明する。図1は本発明
に係るグラフィカルアナライザの原理構成図である。図
において、1はグラフィカルアナライザ本体部で、従来
と同等の機能のほか、トレースデータを収集する機能、
取り込んだトレースデータを適宜加工する機能、更にそ
の加工データを解析する機能、結果を表示装置2で表示
させるための出力機能を有する。なお、グラフィカルア
ナライザのOSとしては、例えばUNIX(登録商標)
が使用される。3はシミュレーションの対象であるター
ゲットであり、ここではリアルタイムOS31とアプリ
ケーションタスク(リアルタイムOSのタスク)32,
33,34である。そしてリアルタイムOSとアプリケ
ーションタスクはUNIXの1つのプロセスとして扱わ
れる。4は設定したトレース条件が保存されているトレ
ース条件設定ファイル、5はトレースデータを記憶する
ディスクである。
に係るグラフィカルアナライザの原理構成図である。図
において、1はグラフィカルアナライザ本体部で、従来
と同等の機能のほか、トレースデータを収集する機能、
取り込んだトレースデータを適宜加工する機能、更にそ
の加工データを解析する機能、結果を表示装置2で表示
させるための出力機能を有する。なお、グラフィカルア
ナライザのOSとしては、例えばUNIX(登録商標)
が使用される。3はシミュレーションの対象であるター
ゲットであり、ここではリアルタイムOS31とアプリ
ケーションタスク(リアルタイムOSのタスク)32,
33,34である。そしてリアルタイムOSとアプリケ
ーションタスクはUNIXの1つのプロセスとして扱わ
れる。4は設定したトレース条件が保存されているトレ
ース条件設定ファイル、5はトレースデータを記憶する
ディスクである。
【0007】図2はリアルタイムシステムのシミュレー
ション開発環境の一実施例を示す構成図である。本発明
のグラフィカルアナライザはこのようなシミュレーショ
ン開発環境下で動作する。アプリケーション開発環境と
しては、まず次のような機能が備えられている。 リアルタイムOS31とアプリケーションタスク32
〜34をUNIXの1つのプロセスとしてシミュレーシ
ョンする。 IO(入出力)デバイス3aもUNIXのプロセスと
してシミュレーションする。 OSのテーブル3bは共有メモリ上に置き、システム
・テーブル・メモリ(STM)3cによりそのテーブル
を見ることができる。 リモート・デバッグ・モニタ(RDBM)3dを別プ
ロセス、またはリアルタイムOSの1タスクとすること
によって、それぞれオフラインまたオンラインのデバッ
グが可能である。 リモート・デバッグ・モニタ(RDBM)はデバッガの
ソースコード管理部分を除いたもので、ソースコードの
管理はリモートソースコードデバッガ(RSDB)3e
で行うことができる。また、オフラインデバッグはシミ
ュレーションプロセス全体のデバッグであり、オフライ
ンデバッガは被デバッグタスクのみをデバッグし、その
他のタスクは動き続けているデバッグのことである。
ション開発環境の一実施例を示す構成図である。本発明
のグラフィカルアナライザはこのようなシミュレーショ
ン開発環境下で動作する。アプリケーション開発環境と
しては、まず次のような機能が備えられている。 リアルタイムOS31とアプリケーションタスク32
〜34をUNIXの1つのプロセスとしてシミュレーシ
ョンする。 IO(入出力)デバイス3aもUNIXのプロセスと
してシミュレーションする。 OSのテーブル3bは共有メモリ上に置き、システム
・テーブル・メモリ(STM)3cによりそのテーブル
を見ることができる。 リモート・デバッグ・モニタ(RDBM)3dを別プ
ロセス、またはリアルタイムOSの1タスクとすること
によって、それぞれオフラインまたオンラインのデバッ
グが可能である。 リモート・デバッグ・モニタ(RDBM)はデバッガの
ソースコード管理部分を除いたもので、ソースコードの
管理はリモートソースコードデバッガ(RSDB)3e
で行うことができる。また、オフラインデバッグはシミ
ュレーションプロセス全体のデバッグであり、オフライ
ンデバッガは被デバッグタスクのみをデバッグし、その
他のタスクは動き続けているデバッグのことである。
【0008】本発明はこのようなアプリケーション開発
環境下で動作するが、更に次のような機能を有するもの
である。 (1) リアルタイムOSのカーネルの各部に、トレースデ
ータ収集のためのプローブを設定することができる。 (2) トレース条件をファイル4で指定できる。リアルタ
イムOS31はこのファイル4の内容を読み、プローブ
の設定を行う。トレース条件としては以下のようなもの
がある。 (2-1) 各部のプローブのオン、オフ設定。 (2-2) あるタスクの生成から消滅までの間のデータ収
集。 (2-3) あるイベントの発生時以降のデータ収集。
環境下で動作するが、更に次のような機能を有するもの
である。 (1) リアルタイムOSのカーネルの各部に、トレースデ
ータ収集のためのプローブを設定することができる。 (2) トレース条件をファイル4で指定できる。リアルタ
イムOS31はこのファイル4の内容を読み、プローブ
の設定を行う。トレース条件としては以下のようなもの
がある。 (2-1) 各部のプローブのオン、オフ設定。 (2-2) あるタスクの生成から消滅までの間のデータ収
集。 (2-3) あるイベントの発生時以降のデータ収集。
【0009】本発明は上記のような機能を有すると共
に、次の2つのモードで動作する。 (A) ディスク5に格納された既存のデータを読み、表示
するモード。 (B) グラフィカルアナライザ本体でリアルタイムOSを
起動して、トレースデータをディスク5に保存し、上記
の動作すなわちディスク5に格納された既存のデータ
を読み、表示するモード。 なお、この(B) のモードの場合には、グラフィカルアナ
ライザ本体部1で設定を行なうことによりトレース条件
設定ファイルの内容を書き換えることができる。
に、次の2つのモードで動作する。 (A) ディスク5に格納された既存のデータを読み、表示
するモード。 (B) グラフィカルアナライザ本体でリアルタイムOSを
起動して、トレースデータをディスク5に保存し、上記
の動作すなわちディスク5に格納された既存のデータ
を読み、表示するモード。 なお、この(B) のモードの場合には、グラフィカルアナ
ライザ本体部1で設定を行なうことによりトレース条件
設定ファイルの内容を書き換えることができる。
【0010】次にトレースデータの収集方式について説
明する。トレースデータはプローブを設定する場所によ
って異なるが、プローブは設定を容易にするために1つ
の関数によって実現している。そしてその関数の内部
で、それぞれ固有のデータを収集するようになってい
る。ただし、次の3つのデータは共通のデータとして常
に収集されるようになっている。 データの種類(システムコールの番号や割り込みの種
類など) タイムスタンプ 実行中のタスクのID(カーネルが行なった処理はタ
スクのIDを0とする)
明する。トレースデータはプローブを設定する場所によ
って異なるが、プローブは設定を容易にするために1つ
の関数によって実現している。そしてその関数の内部
で、それぞれ固有のデータを収集するようになってい
る。ただし、次の3つのデータは共通のデータとして常
に収集されるようになっている。 データの種類(システムコールの番号や割り込みの種
類など) タイムスタンプ 実行中のタスクのID(カーネルが行なった処理はタ
スクのIDを0とする)
【0011】非共通のトレースデータについては、プロ
ーブを設定する場所と、そこで収集するデータに次表の
関係がある。 図3はシミュレーションカーネルのトレースデータ収集
方法を説明するための図である。各プローブでは、収集
したトレースデータをあらかじめ用意した静的な領域に
書き込むようにする。そのデータは、実行可能状態のア
プリケーションタスクが存在しない時に、まとめてディ
スク5に保存される。タイムスタンプは外付けのハイレ
ゾリューションタイマ6より得るものとする。本シミュ
レーション開発環境においては、リアルタイムOSがU
NIXの1プロセスとして動作するので、エラーはすべ
てシグナルに変換される。したがって、エラーが発生し
た場合のためにそれらのシグナルのハンドラをあらかじ
め登録しておく。エラーが発生した時は、そのハンドラ
でトレースデータをファイルに書き込むようにする。こ
のようにすることによって、システムがダウンした時グ
ラフィカルアナライザでその原因を調べることができ
る。
ーブを設定する場所と、そこで収集するデータに次表の
関係がある。 図3はシミュレーションカーネルのトレースデータ収集
方法を説明するための図である。各プローブでは、収集
したトレースデータをあらかじめ用意した静的な領域に
書き込むようにする。そのデータは、実行可能状態のア
プリケーションタスクが存在しない時に、まとめてディ
スク5に保存される。タイムスタンプは外付けのハイレ
ゾリューションタイマ6より得るものとする。本シミュ
レーション開発環境においては、リアルタイムOSがU
NIXの1プロセスとして動作するので、エラーはすべ
てシグナルに変換される。したがって、エラーが発生し
た場合のためにそれらのシグナルのハンドラをあらかじ
め登録しておく。エラーが発生した時は、そのハンドラ
でトレースデータをファイルに書き込むようにする。こ
のようにすることによって、システムがダウンした時グ
ラフィカルアナライザでその原因を調べることができ
る。
【0012】次に表示方式について説明する。プローブ
から出力されたトレースデータは、システムの状態を時
間に沿って順番に記述した1次元のデータである。2次
元表示を行うためには、この1次元データをもとに解析
を行い、時間に沿った各タスクの状態を示す2次元のデ
ータを作る必要がある。例えば、他のタスクに対して影
響を及ぼすことのできるシステムコールについては、そ
の影響を評価し、そのタスクの状態を示す2次元のデー
タを変化させなければならない。またタスクやキューな
どのIDと、名前を対応付ける必要がある。
から出力されたトレースデータは、システムの状態を時
間に沿って順番に記述した1次元のデータである。2次
元表示を行うためには、この1次元データをもとに解析
を行い、時間に沿った各タスクの状態を示す2次元のデ
ータを作る必要がある。例えば、他のタスクに対して影
響を及ぼすことのできるシステムコールについては、そ
の影響を評価し、そのタスクの状態を示す2次元のデー
タを変化させなければならない。またタスクやキューな
どのIDと、名前を対応付ける必要がある。
【0013】さて、画面に表示する情報量は、多ければ
多いほど良いと言うものでもない。多すぎて冗長になっ
てしまうこともある。そこで、本発明では表示のレベル
を次の3段階に分け、ユーザが適宜選択、変更、追加で
きるようにしている。 図形のみで表示する。 図形と記号を併せて表示する。 詳細な情報が必要な箇所(画面に表示されている)に
カーソルを合わせてマウスをクリックすると、ポップア
ップウインドウが開き、トレースデータを表示する。な
お、画面上にあらかじめ表示された箇所をマウスでクリ
ックして当該処理を起動することはこの種のシステムで
は周知の方式であり、その説明は省略する。
多いほど良いと言うものでもない。多すぎて冗長になっ
てしまうこともある。そこで、本発明では表示のレベル
を次の3段階に分け、ユーザが適宜選択、変更、追加で
きるようにしている。 図形のみで表示する。 図形と記号を併せて表示する。 詳細な情報が必要な箇所(画面に表示されている)に
カーソルを合わせてマウスをクリックすると、ポップア
ップウインドウが開き、トレースデータを表示する。な
お、画面上にあらかじめ表示された箇所をマウスでクリ
ックして当該処理を起動することはこの種のシステムで
は周知の方式であり、その説明は省略する。
【0014】また、情報をどのように加工して表示する
かも大切な点である。いくつかの表示方式が考えられる
が、本発明では次の3つのモードの表示をユーザが選
択、変更できるようになっている。 モード1:中央処理装置(CPU)の推移を示すモード モード2:タスクの状態を示すモード モード3:オブジェクトに対するアクセスと、タスク間
のイベント、例外の送信および受信を示すモード
かも大切な点である。いくつかの表示方式が考えられる
が、本発明では次の3つのモードの表示をユーザが選
択、変更できるようになっている。 モード1:中央処理装置(CPU)の推移を示すモード モード2:タスクの状態を示すモード モード3:オブジェクトに対するアクセスと、タスク間
のイベント、例外の送信および受信を示すモード
【0015】上記いずれのモードの場合も、表示するデ
ータの量は膨大であり、一度に表示しきれないことが多
い。そこで、スクロールバー等を使い、全体の一部分を
表示することができるようになっている。また、表示の
スケール(倍率)を変更することもできる。なお、全体
の一部分を表示したり、表示のスケールを変更する等の
技術自体は周知であるので、その説明は省略する。
ータの量は膨大であり、一度に表示しきれないことが多
い。そこで、スクロールバー等を使い、全体の一部分を
表示することができるようになっている。また、表示の
スケール(倍率)を変更することもできる。なお、全体
の一部分を表示したり、表示のスケールを変更する等の
技術自体は周知であるので、その説明は省略する。
【0016】次に上記3つのモードについて更に詳しく
説明する。 (1) モード1:中央処理装置(CPU)の推移を示すモ
ードについて CPUが現在どのタスクあるいは割り込みを実行してい
るかを示すモードであり、図4に一例を示す。横軸は時
間、縦軸にタスクをとってある。タスクは上から優先度
順に並べる。また、CPUを放棄する時の理由を、記号
によって表示する。記号とその意味の一例を次表に示
す。 図に見られるように、タスクが下のタスク(より優先度
の低いタスク)に切り替わる時はBあるいはDが表示さ
れ、タスクが上のタスク(より優先度の高いタスク)に
切り替わる時はRが表示される。このような表示を参照
することによって、優先度の設定ミス等は簡単にチェッ
クすることができる。なお、図中の詳細な情報を知りた
い場所(折れ線付近)をマウスでクリックすると、ポッ
プアップウインドウが現れ、システムコールの名前や、
引数、割り込みの種類等が表示される。
説明する。 (1) モード1:中央処理装置(CPU)の推移を示すモ
ードについて CPUが現在どのタスクあるいは割り込みを実行してい
るかを示すモードであり、図4に一例を示す。横軸は時
間、縦軸にタスクをとってある。タスクは上から優先度
順に並べる。また、CPUを放棄する時の理由を、記号
によって表示する。記号とその意味の一例を次表に示
す。 図に見られるように、タスクが下のタスク(より優先度
の低いタスク)に切り替わる時はBあるいはDが表示さ
れ、タスクが上のタスク(より優先度の高いタスク)に
切り替わる時はRが表示される。このような表示を参照
することによって、優先度の設定ミス等は簡単にチェッ
クすることができる。なお、図中の詳細な情報を知りた
い場所(折れ線付近)をマウスでクリックすると、ポッ
プアップウインドウが現れ、システムコールの名前や、
引数、割り込みの種類等が表示される。
【0017】(2) モード2:タスクの状態を示すモード
について 全タスクの状態を表示するモードであり、図5にその一
例を示す。図では、上から生成順に並べてある。各タス
クの状態はそれぞれ特定の色で示すことができる。タス
クの状態には、システムコール(カーネルモード)実行
中、ユーザモード実行中、割り込み実行中、実行可能状
態、休眠状態等がある。図中の詳細な情報を知りたい場
所(各長方形の内部)をマウスでクリックすると、ポッ
プアップウインドウが現れ、システムコールの名前や、
引数、割り込みの種類等が表示される。システムコール
の種類や割り込みの種類などによって、該当する箇所を
サーチすることも可能である。 (3) モード3:オブジェクトに対するアクセスと、タス
ク間のイベント、例外の送信および受信を示すモードに
ついて このモードでは、カーネルのオブジェクトに対するアク
セスを表示することができる。また、リアルタイムシス
テムでは、タスク間でイベントや例外を授受でき、この
モードではそれらの関係も表示することができる。例え
ば次のような例が考えられる。 セマフォに対するアクセスを示すモード キューに対するアクセスを示すモード タスク間のイベント送信および受信を示すモード 例外の送信を示すモード
について 全タスクの状態を表示するモードであり、図5にその一
例を示す。図では、上から生成順に並べてある。各タス
クの状態はそれぞれ特定の色で示すことができる。タス
クの状態には、システムコール(カーネルモード)実行
中、ユーザモード実行中、割り込み実行中、実行可能状
態、休眠状態等がある。図中の詳細な情報を知りたい場
所(各長方形の内部)をマウスでクリックすると、ポッ
プアップウインドウが現れ、システムコールの名前や、
引数、割り込みの種類等が表示される。システムコール
の種類や割り込みの種類などによって、該当する箇所を
サーチすることも可能である。 (3) モード3:オブジェクトに対するアクセスと、タス
ク間のイベント、例外の送信および受信を示すモードに
ついて このモードでは、カーネルのオブジェクトに対するアク
セスを表示することができる。また、リアルタイムシス
テムでは、タスク間でイベントや例外を授受でき、この
モードではそれらの関係も表示することができる。例え
ば次のような例が考えられる。 セマフォに対するアクセスを示すモード キューに対するアクセスを示すモード タスク間のイベント送信および受信を示すモード 例外の送信を示すモード
【0018】以下これらについて更に説明する。 (3-1) セマフォに対するアクセスを示すモードについて 例えば、1つのセマフォ(初期値1)を用意して、ある
リソースを使用する時、セマフォをロックし、終了した
らアンロックするというリソースの排他アクセスの例を
図6に示す。図において、タスクからセマフォへのアク
セスは、上向き、下向きの矢印で示す。下向きの矢印は
セマフォのロック、上向きの矢印はアンロックを示す
(それぞれ、下げる行為、上げる行為を示している)。
セマフォの表現は、0以上の場合と、負の場合によって
異なる。0以上の時は、図中の太線の高さでセマフォカ
ウンタを示す。負の時は、図中の点線の数でセマフォカ
ウンタを示すと同時に、その順番によって、セマフォ待
ちのタスクの行列を示す。点線が上にあるものが、行列
の先頭に並んでいる。この並び方はFIFO(First In
First Out)の場合と、タスク優先度順の場合の2通り
がある。図6の場合はFIFOである。図において、タ
スクが太い点線で表わされている箇所は、メッセージ待
ちでブロックされていることを示す。
リソースを使用する時、セマフォをロックし、終了した
らアンロックするというリソースの排他アクセスの例を
図6に示す。図において、タスクからセマフォへのアク
セスは、上向き、下向きの矢印で示す。下向きの矢印は
セマフォのロック、上向きの矢印はアンロックを示す
(それぞれ、下げる行為、上げる行為を示している)。
セマフォの表現は、0以上の場合と、負の場合によって
異なる。0以上の時は、図中の太線の高さでセマフォカ
ウンタを示す。負の時は、図中の点線の数でセマフォカ
ウンタを示すと同時に、その順番によって、セマフォ待
ちのタスクの行列を示す。点線が上にあるものが、行列
の先頭に並んでいる。この並び方はFIFO(First In
First Out)の場合と、タスク優先度順の場合の2通り
がある。図6の場合はFIFOである。図において、タ
スクが太い点線で表わされている箇所は、メッセージ待
ちでブロックされていることを示す。
【0019】(3-2) キューに対するアクセスを示すモー
ド 図7にその一例を示す。下向きの矢印はキューに対する
メッセージの送信、上向きの矢印はキューからのメッセ
ージの受信を示す。図中キューが実線で表わされている
箇所は、キューにメッセージが溜まっていることと、そ
のメッセージの取り出される順番を示す。それぞれの線
をマウスでクリックすると、メッセージの内容がポップ
アップウインドウに表示される。キューが太い点線で表
わされている箇所はキューの待ち行列の順番を示す。こ
の並び方はFIFOの場合とタスク優先度順の場合の2
通りがあるが、図7に示すのはFIFOの場合である。
タスクが太い点線で表わされている箇所は、メッセージ
待ちでブロックされていることを示す。
ド 図7にその一例を示す。下向きの矢印はキューに対する
メッセージの送信、上向きの矢印はキューからのメッセ
ージの受信を示す。図中キューが実線で表わされている
箇所は、キューにメッセージが溜まっていることと、そ
のメッセージの取り出される順番を示す。それぞれの線
をマウスでクリックすると、メッセージの内容がポップ
アップウインドウに表示される。キューが太い点線で表
わされている箇所はキューの待ち行列の順番を示す。こ
の並び方はFIFOの場合とタスク優先度順の場合の2
通りがあるが、図7に示すのはFIFOの場合である。
タスクが太い点線で表わされている箇所は、メッセージ
待ちでブロックされていることを示す。
【0020】(3-3) タスク間のイベント送信および受信
を示すモード 図8にその一例を示す。図では、まずタスクBがタスク
Aにイベントを送信した後、タスクAがそれを受信す
る。そしてタスクAがさらにイベントを受信しようとし
て休眠状態になり(図中の点線で示す部分)、その後タ
スクBがタスクAにイベントを送信して、タスクAが目
覚めることを示す。そして該当する箇所をマウスでクリ
ックすると、イベントの種類がポップアップウインドウ
に表示される。
を示すモード 図8にその一例を示す。図では、まずタスクBがタスク
Aにイベントを送信した後、タスクAがそれを受信す
る。そしてタスクAがさらにイベントを受信しようとし
て休眠状態になり(図中の点線で示す部分)、その後タ
スクBがタスクAにイベントを送信して、タスクAが目
覚めることを示す。そして該当する箇所をマウスでクリ
ックすると、イベントの種類がポップアップウインドウ
に表示される。
【0021】(3-4) 例外の送信を示すモード 図9にその一例を示す。同図は、タスクBがタスクAに
例外を送信し、例外サービスルーチン(図中線点で示
す)が活性化されたことを示す。該当する箇所をマウス
でクリックすると、活性化されている例外サービスルー
チンがポップアップウインドウに表示される。
例外を送信し、例外サービスルーチン(図中線点で示
す)が活性化されたことを示す。該当する箇所をマウス
でクリックすると、活性化されている例外サービスルー
チンがポップアップウインドウに表示される。
【0022】
【発明の効果】以上説明したように本発明によれば、グ
ラフィカルアナライザを使用することによって、トレー
スデータの情報量とその情報の内容をアナライザから制
御できると共に、リアルタイムシステムのアプリケーシ
ョンタスクとカーネルの動作を視覚的に表現することが
でき、その検証を容易にすることができる。
ラフィカルアナライザを使用することによって、トレー
スデータの情報量とその情報の内容をアナライザから制
御できると共に、リアルタイムシステムのアプリケーシ
ョンタスクとカーネルの動作を視覚的に表現することが
でき、その検証を容易にすることができる。
【図1】本発明に係るグラフィカルアナライザの原理構
成図である。
成図である。
【図2】リアルタイムシステムのシミュレーション開発
環境の一実施例を示す構成図である。
環境の一実施例を示す構成図である。
【図3】シミュレーションカーネルのトレースデータ収
集方法を説明するための図である。
集方法を説明するための図である。
【図4】CPUの推移を示す表示例である。
【図5】タスクの状態を示す表示例である。
【図6】セマフォに対するアクセスを示す表示例であ
る。
る。
【図7】キューに対するアクセスを示す表示例である。
【図8】タスク間のイベント送受信を示す表示例であ
る。
る。
【図9】例外の送信を示す表示例である。
1 グラフィカルアナライザ本体部 2 表示装置 3 ターゲット 4 トレース条件設定ファイル 5 トレースデータ保存ファイル 6 ハイレゾリューションタイマ
Claims (1)
- 【請求項1】リアルタイムOSのアプリケーション開発
環境下で動作し、カーネルの各部にプローブを設定して
トレースデータを収集し、そのデータを適宜加工してカ
ーネルとアプリケーションタスクの動作を表示画面上に
視覚的に表現するグラフィカルアナライザであって、 前記トレースデータ収集のための機能として、データの
種類、タイムスタンプおよび実行中のタスクのIDの3
つのデータは共通に収集し、その他はプローブの設定場
所に応じて適宜収集し、あらかじめ用意した静的な領域
に書き込み、その収集トレースデータは実行可能状態の
アプリケーションタスクが存在しない時にディスクに保
存するようにした機能を有し、 前記カーネルとアプリケーションタスクの動作表示の機
能として、表示のレベルを、図形のみを表示するレベル
と、図形と記号を混在表示するレベルと、マウス使用に
より必要な箇所でポップアップウインドウを開きトレー
スデータを表示させるレベルの3つのレベルとし、かつ
情報を加工して表示するに際しては、CPUの推移を示
すモードと、タスクの状態を示すモードと、オブジェク
トに対するアクセスとタスク間のイベント、例外の送
信、受信を示すモードの3つのモードの表示を適宜選択
・変更できるようにした機能を有することを特徴とする
リアルタイムOSのグラフィカルアナライザ。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP4157979A JPH064360A (ja) | 1992-06-17 | 1992-06-17 | リアルタイムosのグラフィカルアナライザ |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP4157979A JPH064360A (ja) | 1992-06-17 | 1992-06-17 | リアルタイムosのグラフィカルアナライザ |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH064360A true JPH064360A (ja) | 1994-01-14 |
Family
ID=15661602
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP4157979A Withdrawn JPH064360A (ja) | 1992-06-17 | 1992-06-17 | リアルタイムosのグラフィカルアナライザ |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH064360A (ja) |
-
1992
- 1992-06-17 JP JP4157979A patent/JPH064360A/ja not_active Withdrawn
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Lange et al. | JEWEL: Design and implementation of a distributed measurement system | |
| US8504994B2 (en) | System and method for software diagnostics using a combination of visual and dynamic tracing | |
| JP2519009B2 (ja) | マルチメディアコンピュ―タ診断システム | |
| US5748878A (en) | Method and apparatus for analyzing software executed in embedded systems | |
| EP0632377B1 (en) | Method for testing a message-driven operating system | |
| US6202199B1 (en) | System and method for remotely analyzing the execution of computer programs | |
| JPH10105427A (ja) | 電子相互接続バス上でのメモリアクセスに関する状態論理データを表示するためのコンピュータ操作可能な方法 | |
| JPH05197594A (ja) | データ処理システム用資源データの実時間捕獲及び減縮方法及びシステム | |
| US5115502A (en) | Method and apparatus for determining internal status of a processor using simulation guided by acquired data | |
| US6598150B2 (en) | Asynchronously accessing the program counter values of a data processing system by applying an independent clock on the latching and scan-chain circuits | |
| US4813009A (en) | Method and apparatus for determining internal status of a processor | |
| EP0883061A1 (en) | Debugging method for a microcomputer system and recording medium on which debug program is recorded | |
| JPH064360A (ja) | リアルタイムosのグラフィカルアナライザ | |
| JPH10333938A (ja) | 計算機システムにおける実行ログの記録、表示方法、ならびに同方法を用いた計算機システム、及び同方法がプログラムされ記録される記録媒体 | |
| JP3031559B2 (ja) | 情報処理システムにロードされたプログラムの実行を観測する方法及び装置 | |
| KR100428712B1 (ko) | 멀티 태스크 프로그램의 논스톱 디버깅을 위한트레이스포인트 설정 방법 | |
| JPS63118964A (ja) | 情報処理装置 | |
| JPH06149347A (ja) | 設備の異常再現装置 | |
| JP2001005699A (ja) | 計算機システムおよび障害情報採取方法 | |
| JPH03144705A (ja) | プログラマブルコントローラの動作状態監視装置 | |
| CN116594750A (zh) | 一种函数调用收集方法、装置、设备、存储介质及产品 | |
| JP2892663B2 (ja) | 自律故障診断型解析方式 | |
| JPH10260872A (ja) | 計算機システムおよび記録媒体 | |
| JPH02197932A (ja) | コンピュータの異常現象再現装置 | |
| JPH05303376A (ja) | トレンドグラフ表示装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 19990831 |