JPH07325732A - マルチプロセスのデバッグ方法 - Google Patents

マルチプロセスのデバッグ方法

Info

Publication number
JPH07325732A
JPH07325732A JP6119193A JP11919394A JPH07325732A JP H07325732 A JPH07325732 A JP H07325732A JP 6119193 A JP6119193 A JP 6119193A JP 11919394 A JP11919394 A JP 11919394A JP H07325732 A JPH07325732 A JP H07325732A
Authority
JP
Japan
Prior art keywords
debug
debugging
request
target
debug target
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.)
Pending
Application number
JP6119193A
Other languages
English (en)
Inventor
Taketomo Yamane
丈知 山根
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP6119193A priority Critical patent/JPH07325732A/ja
Publication of JPH07325732A publication Critical patent/JPH07325732A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 【目的】 複数のプロセスから構成されるプログラムを
デバッグする際に、デバッグ対象のプロセスを1つ指定
すれば、明示的な指示をしておかなくても、関連プロセ
スをデバッグの対象とすることができるマルチプロセス
のデバッグ方法を得る。 【構成】 複数のプロセスによって共用されるOS資源
のそれぞれにデバッグ対象フラグを設け、すでにデバッ
グ対象となっているプロセスによってOS資源が使用さ
れた場合に、そのOS資源に設けられたデバッグ対象フ
ラグをセットし、このデバッグ対象フラグがセットされ
たOS資源を使用するプロセスを、関連プロセスとして
デバッグの対象にするものである。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、計算機において、複
数のプロセスで構成される一連のアプリケーションプロ
グラムをデバッグするマルチプロセスのデバッグ方法に
関するものである。
【0002】
【従来の技術】図13は例えば特開平1−217525
号公報に示された、従来のマルチプロセスのデバッグ方
法を示す構成図である。図において、1、2はオペレー
ティングシステム(以下OSという)がタスクを管理す
るために用いるタスクコントロールブロック(以下TC
Bという)である。3、4はそれぞれTCB1または2
の次にリンクされているTCBのアドレスが格納される
格納エリア、5、6はそれぞれTCB1または2の1つ
前にリンクされているTCBのアドレスが格納される格
納エリアである。また、7はデバッガ内にあって、関連
したタスクとして指定されたタスク(この場合タスク
A、B)のTCBのアドレスが登録されるグループ登録
テーブルであり、8はそのタスクAのTBCアドレスが
格納される格納エリア、9はタスクBのTBCアドレス
が格納される格納エリアである。
【0003】次に動作について説明する。デバッガはグ
ループ登録テーブル7にタスクAとのTCB1とタスク
BのTCB2をリンクする。なお、このリンクは次のよ
うに行われる。まず、TCB1の格納エリア3にタスク
BのTCBアドレスを、TCB2の格納エリア6にタス
クAのTCBアドレスを格納し、TCB1の格納エリア
5とTCB2の格納エリア4にはそれぞれ「0」を格納
する。次に、グループ登録テーブル7の格納エリア8に
タスクAのTCBアドレスを、格納エリア9にタスクB
のTCBアドレスを格納する。以上のようにして指定タ
スクA,BのTCBのリンクを形成する。
【0004】ここで、図14はタスクAがブレークポイ
ントで停止した場合の動作の流れを示すフローチャート
である。タスクAがブレークポイントに達すると、デバ
ッガに制御が移る。デバッガはグループ登録テーブル7
のアドレスを得て(ステップST1)、グループ登録テ
ーブル7の格納エリア8からリンクの先頭のTCBアド
レスを得る(ステップST2)。このアドレスはタスク
Aのものであり、デバッガはまずタスクAをウェイト
(wait)状態に遷移する(ステップST3、ST
4)。次にTCB1の格納エリア3を調べて、次にリン
クされているTCBのアドレスを得(ステップST
5)、それが「0」でないかどうかをチェックする(ス
テップST6)。この場合には、格納エリア3にタスク
BのTCBアドレスが格納されているため「0」ではな
いので、デバッガはタスクBをウェイト状態に遷移させ
る(ステップST4)。次にTCB2の格納エリア4を
調べて、次にリンクされているTCBのアドレスを得
(ステップST5)、それが「0」でないかどうかをチ
ェックする(ステップST6)。この場合には、格納エ
リア4に「0」が格納されているので、デバッガはリン
クを最後までたどったことになり、関連プロセスは全て
ウェイト状態になる。デバッグに必要な処理が終わった
ら、自らウェイト状態になり(ステップST7)、タス
クAとタスクBをレディー(ready)状態に戻す。
【0005】また、図15は例えば特開平5−4643
1号公報に示された、従来のマルチプロセスのデバッグ
方法を示すブロック図である。図において、11はユー
ザのデバッグ要求を認識して受け取るユーザコマンド受
信手段、12はそのユーザコマンドを解析してデバッグ
対象を認識するユーザコマンド解析手段であり、13は
指定したデバッグ対象の全プロセスに対するプロセスデ
バッガを起動するプロセスデバッガ起動手段である。1
4はユーザコマンド解析手段12の解析結果にしたがっ
てデバッグ対象プロセスに対するデバッグコマンドを発
行するデバッグコマンド発行手段であり、15はこのデ
バッグコマンド発行手段14の発行するデバッグコマン
ドを受信するデバッグコマンド受信手段である。また、
16および17はそれぞれがデバッグコマンド受信手段
15を備え、デバッグ対象のプロセスを制御するプロセ
スデバッガであり、それぞれデバッグシステムを内蔵し
ている。
【0006】次に動作について説明する。まず、プロセ
スデバッガ起動手段13によりユーザのデバッグシステ
ム起動要求によって、デバッグ対象プロセスに対するプ
ロセスデバッガを起動する。ここでは、デバッグ対象は
2つとし、プロセスデバッガ16とプロセスデバッガ1
7が起動されたものとして説明する。プロセスデバッガ
16に対してデバッグコマンドを発行する場合は、プロ
セスデバッガ識別語とプロセスデバッガ16に対するデ
バッグコマンドを指定したデバッグ要求をユーザコマン
ド受信手段11により受け取り、受け取ったデバッグ要
求をユーザコマンド解析手段12で解析し、指定された
デバッガ識別語によりどのプロセスデバッガに対するも
のかを認識する。デバッグコマンド発行手段14はユー
ザコマンド解析手段12の解析結果にしたがい、指定さ
れたプロセスデバッガ16に対してデバッグコマンドを
発行する。一方、プロセスデバッガ16は内部に組み込
まれたデバッグコマンド受信手段15により、デバッグ
コマンドを受信し、受信したコマンドを内部のデバッグ
システムに対して発行することにより、当該プロセスデ
バッガ16に制御されるデバッグ対象プロセスをデバッ
グする。また、プロセスデバッガ17に対しても同様の
手順でコマンドを送りデバッグすることができる。
【0007】
【発明が解決しようとする課題】従来のマルチプロセス
のデバッグ方法は以上のように構成されているので、デ
バッグを行うユーザが、関連するタスクを明示的に登録
しておかねばならず、指定し忘れたタスクが存在した場
合にはデッドロックに陥ってしまい、また、他のタスク
によってあとから動的に生成されるタスクでは、TCB
1、2がタスクの生成時まで用意されないため、それを
デバッグ対象として指定することができないという問題
点があった。また、TCB1、2のリンクを利用してい
るため、複数の計算機にまたがる通信プログラムのよう
なものは、その送信側と受信側のプロセスを関連プロセ
スとして登録することが困難であり、さらに、プログラ
ム実行時の優先度を指定できるOS上で、優先度が異な
る複数のプロセスをデバッグする場合に、デバッグコマ
ンド発行手段14の優先度よりデバッグ対象のプロセス
の優先度が高くなるとコマンドが発行できなくなり、デ
バッグを実行できなくなるなどの問題点もあった。
【0008】この発明は上記のような問題点を解消する
ためになされたもので、明示的に関連タスクを指定する
ことなく、関連タスクもデバッグすることが可能であ
り、後から動的に生成されるタスクもデバッグ対象とし
て指定できるマルチプロセスのデバッグ方法を得ること
を目的とする。
【0009】また、この発明の他の目的は、相互に通信
するプロセス同士を関連プロセスとしてデバッグ対象に
することができるマルチプロセスのデバッグ方法を得る
ことにあり、この発明のさらに他の目的は、優先度を指
定できるOS上で、優先度が異なる複数のプロセスをデ
バッグする際に、常にデバッグコマンドの発行が可能な
マルチプロセスのデバッグ方法を得ることにある。
【0010】
【課題を解決するための手段】請求項1に記載の発明に
係るマルチプロセスのデバッグ方法は、OS資源にデバ
ッグ対象フラグを設け、それがセットされているOS資
源を使用するプロセスは、デバッグ対象プロセスの関連
プロセスとしてデバッグの対象とするようにしたもので
ある。
【0011】また、請求項2に記載の発明に係るマルチ
プロセスのデバッグ方法は、OS資源がデバッグ対象プ
ロセスによって使用されると、自動的にそのデバッグ対
象フラグをセットするようにしたものである。
【0012】また、請求項3に記載の発明に係るマルチ
プロセスのデバッグ方法は、デバッグ対象フラグを指定
されたOS資源のものについて、あらかじめセットして
おくようにしたものである。
【0013】また、請求項4に記載の発明に係るマルチ
プロセスのデバッグ方法は、すでにデバッグ対象になっ
ているプロセスよりデバッグ要求を送信し、それを受信
した通信相手において、そのデバッグ要求に応じたプロ
セスを関連プロセスとしてデバッグの対象にするもので
ある。
【0014】また、請求項5に記載の発明に係るマルチ
プロセスのデバッグ方法は、デバッグ要求として、通常
の通信データに付加したデバッグ要求フラグを用いたも
のである。
【0015】また、請求項6に記載の発明に係るマルチ
プロセスのデバッグ方法は、通信相手にプロセスを指定
したデバッグ要求を送信し、通信相手ではそれによって
指定されたプロセスを関連プロセスとしてデバッグの対
象にするものである。
【0016】また、請求項7に記載の発明に係るマルチ
プロセスのデバッグ方法は、デバッグ対象のプロセスよ
り優先度変更要求を受けると、当該プロセスの優先度よ
りも、デバッグコマンド発行手段および当該プロセスを
デバッグするプロセスデバッガの優先度の方を高くする
ようにしたものである。
【0017】
【作用】請求項1に記載の発明におけるマルチプロセス
のデバッグ方法は、デバッグ対象フラグがセットされて
いるOS資源を使用するプロセスを、デバッグ対象プロ
セスの関連プロセスとしてデバッグの対象とすることに
より、明示的に関連プロセスを指定しておかなくとも、
関連プロセスのデバッグを可能とし、後から動的に生成
されるプロセスについても、デバッグ対象として指定で
きるマルチプロセスのデバッグ方法を実現する。
【0018】また、請求項2に記載の発明におけるマル
チプロセスのデバッグ方法は、デバッグ対象プロセスに
よって使用されたOS資源については、そのデバッグ対
象フラグを自動的にセットすることにより、明示的に指
定しておかなくとも、このデバッグ対象フラグがセット
されているOS資源を利用した別のプロセスを、デバッ
グ対象プロセスの関連プロセスとしてデバッグの対象と
することを可能にする。
【0019】また、請求項3に記載の発明におけるマル
チプロセスのデバッグ方法は、所定のOS資源のデバッ
グ対象フラグをあらかじめセットしておくことにより、
そのOS資源を利用するプロセスは、あらかじめデバッ
グ対象と指定しておかなくともデバッグの対象とし、同
じOS資源を利用するプロセス同士を、関連プロセスと
してデバッグすることを可能とする。
【0020】また、請求項4に記載の発明におけるマル
チプロセスのデバッグ方法は、デバッグ対象のプロセス
からデバッグ要求を送信することにより、それを受信し
た通信相手側でそのデバッグ要求に応じたプロセスを、
明示的に関連プロセスの指定をしておかなくとも、ま
た、同じ計算機上に存在しなくとも、関連プロセスとし
てデバッグ対象に指定できるマルチプロセスのデバッグ
方法を実現する。
【0021】また、請求項5に記載の発明におけるマル
チプロセスのデバッグ方法は、デバッグ対象のプロセス
より通常の通信データにデバッグ要求フラグを付加して
送信することにより、そのデバッグ要求フラグを受信し
たプロセスを関連プロセスとしてデバッグの対象にす
る。
【0022】また、請求項6に記載の発明におけるマル
チプロセスのデバッグ方法は、デバッグ対象のプロセス
から、プロセスを指定したデバッグ要求を送信すること
により、通信相手において、そのデバック要求で指定さ
れたプロセスを関連プロセスとしてデバッグの対象にす
る。
【0023】また、請求項7に記載の発明におけるマル
チプロセスのデバッグ方法は、優先度の変更を要求した
デバッグ対象プロセスの優先度よりも、デバッグコマン
ド発行手段と、当該デバッグ対象プロセスのプロセスデ
パッガの優先度を高くすることにより、デバッグコマン
ドの入力を、デバッグ対象のプロセスの優先度によらず
に、常に受けられるようにする。
【0024】
【実施例】
実施例1.以下、この発明の実施例1を図に添って説明
する。図1は請求項1および2に記載した発明の一実施
例を示すブロック図で、複数のプロセスが動作するOS
において、複数のプロセスからなる一連のアプリケーシ
ョンプログラムをデバッグする場合のものである。図に
おいて、21はプロセスのデバッグを行うプロセスデバ
ッガであり、22はこのプロセスデバッガ21によるデ
バッグの対象となるデバッグ対象プロセスである。23
はこのデバッグ対象プロセス22によって利用される、
例えばファイルや共有メモリなどのOS上の資源(以下
OS資源という)であり、24はOS資源23対応に設
けられ、デバッグ対象プロセス22がそのOS資源23
を使用している場合にセットされるデバッグ対象フラグ
である。25はデバッグ対象プロセス22とともにデバ
ッグ対象フラグ24がセットされたOS資源23を共用
する関連プロセスであり、26はこの関連プロセス25
のデバッグを行うプロセスデバッガである。
【0025】次に動作について説明する。ここで、図2
はその動作の流れを示すフローチャートである。なお、
初期状態では、デバッグ対象フラグ24はセットされて
いないものとする。まず、デバッグ対象プロセス22を
デバッグするため、それに対応したプロセスデバッガ2
1を起動する(ステップST11)。その後、デバッグ
対象プロセス22や関連プロセス25などから、ファイ
ルや共有メモリなどのOS資源23が要求されると(ス
テップST12)、OSはこのOS資源23を要求した
プロセスが、すでにデバッグの対象になっているかどう
かをチェックする(ステップST13)。その結果、O
S資源23を要求したプロセスがデバッグ対象プロセス
22であって、すでにデバッグの対象になっている場合
には、当該デバッグ対象プロセス22が要求したOS資
源24に対応して設けられたデバッグ対象フラグ24を
セットし(ステップST14)、デバッグ対象プロセス
22に要求されたOS資源23を返して実行を継続する
(END)。
【0026】一方、ステップST13によるチェックの
結果、OS資源23を要求したプロセスがデバッグ対象
プロセス22以外の、例えば関連プロセス25であっ
て、まだデバッグの対象になっていなければ、要求され
たOS資源23に対応するデバッグ対象フラグ24をチ
ェックする(ステップST15)。その結果、デバッグ
対象フラグ24がセットされていなければ、関連プロセ
ス25に要求されたOS資源23を返して実行を継続す
る(END)。また、デバッグ対象フラグ24がセット
されていれば、そのOS資源23の要求元である関連プ
ロセス25に、対応するプロセスデバッガ26を起動さ
せ、当該関連プロセス25をデバッグの対象にする(ス
テップST15)。
【0027】このように、デバッグの対象になっていな
い関連プロセス25が、すでにデバッグ対象フラグ24
がセットされたOS資源23を使用しようとした場合、
対応するプロセスデバッガ26が起動されて、その関連
プロセス25はデバッグ対象になる。
【0028】実施例2.次に、この発明の実施例2を図
に添って説明する。図3は請求項1および3に記載した
発明の一実施例を示すブロック図で、複数のプロセスが
動作するOSにおいて、複数のプロセスからなる一連の
アプリケーションプログラムをデバッグする場合のもの
である。図において、23はOS資源、24はOS資源
23に対応したデバッグ対象フラグで、図1に同一符号
を付したそれらと同等のものである。27はそのOS資
源23を使用するプロセスであり、28はこのプロセス
27のデバッグを行うプロセスデバッガである。29は
あらかじめ指定された注目するOS資源23が使用され
た場合に、それを使用したプロセス27をデバッグ対象
とするため、そのOS資源23に対応して設けられたデ
バッグ対象フラグ24をセットするデバッグ対象資源設
定手段である。
【0029】次に動作について説明する。ここで、図4
はその動作の流れを示すフローチャートである。この場
合も、初期状態ではデバッグ対象フラグ24はセットさ
れていないものとする。まず、注目するOS資源23を
使用したプロセス27をデバッグ対象とするために、そ
のOS資源23に対応して設けられたデバッグ対象フラ
グ24を、デバッグ対象資源設定手段29によってセッ
トする(ステップST21)。その後、プロセス27か
らOS資源23の要求がなされると(ステップST2
2)、OSはOS資源23を要求したプロセス27がす
でにデバッグ対象になっているかどうかをチェックする
(ステップST23)。その結果、すでにデバッグ対象
になっていた場合には、そのプロセス27に要求された
OS資源23を返して実行を継続する(END)。
【0030】一方、ステップST23によるチェックの
結果、そのプロセス27がまだデバッグの対象になって
いなかった場合には、要求されたOS資源23に対応す
るデバッグ対象フラグ24をチェックする。その結果、
デバッグ対象フラグ24がセットされていなければ、要
求元のプロセス27に要求されたOS資源23を返して
実行を継続する(END)。また、デバッグ対象フラグ
24がセットされていれば、そのOS資源23の要求元
であるプロセス27に、それに対応するプロセスデバッ
ガ28を起動させ、当該プロセス27をデバッグの対象
にする(ステップST25)。
【0031】このようにして、動的に生成されるプロセ
スのような、デバッグ対象に直接指定しにくいようなも
のであっても、デバッグ対象フラグ24がセットされて
いるOS資源23を利用するプロセスとして、それを容
易にデバッグ対象に指定することができる。
【0032】実施例3.次に、この発明の実施例3を図
に添って説明する。図5は請求項4および5に記載した
発明の一実施例を示すブロック図で、プロセス間で通信
を行っている複数のプロセスからなる一連のアプリケー
ションプログラムをデバッグする場合のものである。図
において、21はプロセスデバッガ、22はそれによっ
てデバッグされるデバッグ対象プロセス、25は関連プ
ロセス、26はそのデバッグを行うプロセスデバッガで
あり、図1に同一符号を付したそれらと同等のものであ
る。30はデバッグ対象プロセス22から関連プロセス
25に送られる通信データであり、31は送信側がデバ
ッグ対象プロセス22である場合に、この通信データ3
0に付加されるデバッグ要求フラグである。なお、以下
の説明では、デバッグ要求の送信側とデバッグ要求の受
信側とを異なる計算機上にあるプロセスとしているが、
もちろん同一計算機上のプロセス間の通信であっても問
題はない。
【0033】次にデバッグ要求送信側の動作について説
明する。ここで、図6はその動作の流れを示すフローチ
ャートである。まず、デバッグ対象プロセス22をデバ
ッグするために、それに対応したプロセスデバッガ21
が起動される(ステップST31)。その後、当該デバ
ッグ対象プロセス22はプログラム実行の過程で、他の
計算機上にある関連プロセス25に対してデータ送信を
する必要が八畝すすると、ネットワークへのデータの送
信を要求をする(ステップST32)。OSでは要求元
のプロセスがデバッグ対象になっているかどうかのチェ
ックを行い(ステップST33)、この場合のデバッグ
対象プロセス22のように、デバッグ対象になっている
ものである場合には、通常の通信データ30にデバッグ
要求フラグ31を付加してデバッグ要求受信側に送信す
る(ステップST34)。なお、要求元のプロセスがデ
バッグ対象プロセス22以外の、デバッグ対象になって
いないものである場合には、通常の通信データ30のみ
を送信する(ステップST35)。
【0034】次にデバッグ要求受信側の動作について説
明する。ここで、図7はその動作の流れを示すフローチ
ャートである。関連プロセス25では他の計算機上にあ
るデバッグ対象プロセス22からのデータの受信要求を
行う(ステップST41)。OSは受信したデータを調
べ、通常の通信データ30にデバッグ要求フラグ31が
付加されているかどうかチェックする(ステップST4
2)。その結果、デバッグ要求フラグ31が付加されて
いる場合には、データ受信を要求した関連プロセス25
に、それに対応するプロセスデバッガ26を起動させ、
当該関連プロセス25をデバッグの対象にする(ステッ
プST43)。一方、ステップST42によるチェック
の結果、通信データ30にデバッグ要求フラグ31が付
加されていない場合には、OSは通常の受信処理を行っ
て、関連プロセス25に制御を戻す。
【0035】このようにして、明示的にデバッグ対象の
指定をしておかなくとも、デバッグ対象プロセス22か
らの、デバッグ要求フラグ31が付加された通信データ
30を受信したことにより、そのプロセスをデバッグ対
象とすることができる。
【0036】実施例4.次に、この発明の実施例4を図
に添って説明する。図8は請求項4および6に記載した
発明の一実施例を示すブロック図で、プロセス間で通信
を行っている複数のプロセスからなる一連のアプリケー
ションプログラムをデバッグする場合のものである。図
において、21はプロセスデバッガ、22はそれによっ
てデバッグされるデバッグ対象プロセスであり、図1に
同一の符号を付したそれらと同等のものである。32は
デバッグ対象プロセス22の通信相手のプロセスを調査
する通信相手調査手段であり、33はその通信相手のプ
ロセス側にデバッグ要求を送信するデバッグ要求送信手
段である。34はその通信相手のプロセスとしての関連
プロセスであり、35はこの関連プロセス26のデバッ
グを行うプロセスデバッガである。56はデバッグ要求
送信手段33からのデバッグ要求を受信してプロセスデ
バッガ35を起動するデバッグ要求受信手段である。な
お、以下の説明では、デバッグ要求の送信側とデバッグ
要求の受信側とを異なる計算機上にあるプロセスとして
いるが、もちろん同一計算機上のプロセス間の通信であ
っても問題はない。
【0037】次にデバッグ要求送信側の動作について説
明する。ここで、図9はその動作の流れを示すフローチ
ャートである。まず、デバッグ対象プロセス22をデバ
ッグするために、それに対応したプロセスデバッガ21
が起動される(ステップST51)。その後、当該デバ
ッグ対象プロセス22はプログラム実行の過程で、他の
計算機上にある関連プロセス25との間でデータの送受
信を行う必要が生じると、ネットワークへの回線接続の
要求やデータの送受信の要求を行う(ステップST5
2)。OSでは要求元のプロセスがデバッグ対象になっ
ているかどうのチェックを行い(ステップST53)、
この場合のデバッグ対象プロセス22のようにデバッグ
対象になっていれば、通信相手調査手段32を起動して
通信を行っている相手を調べ、その通信相手の計算機と
プロセスを特定する(ステップST54)。次に、デバ
ッグ要求送信手段33によって、通信相手の計算機にプ
ロセス(この場合、関連プロセス34)を指定したデバ
ッグ要求を送信し(ステップST55)、その後、要求
された通常のネットワークの処理を実行する(ステップ
ST56)。一方、ステップST53によるチェックの
結果、要求元のプロセスがデバッグ対象プロセス22以
外の、デバッグ対象とはなっていないものであれば、直
接ステップST56に進んで、要求された通常のネット
ワーク処理を行う。
【0038】次にデバッグ要求受信側の動作について説
明する。ここで、図10はその動作流れを示すフローチ
ャートである。関連プロセス34はネットワークを含む
プログラム上の動作を通常通り行っている。そのとき、
通信相手の計算機のデバッグ要求送信手段33が送信し
たデバッグ要求が、デバッグ要求受信手段36で受信さ
れると(ステップST61)、デバッグ要求受信手段3
6は受信したデバッグ要求によって指定される関連プロ
セス34に対応したプロセスデバッガ35を起動し、当
該関連プロセス34をデバッグ対象とする(ステップS
T62)。
【0039】このようにして、明示的にデバッグ対象の
指定をしておかなくとも、通信相手のプロセスを指定し
たデバッグ要求を送受信することにより、デバッグ対象
プロセス22とデータの通信を行っている関連プロセス
34を、デバッグ対象とすることができる。
【0040】実施例5.次に、この発明の実施例5を図
に添って説明する。図11は請求項7に記載した発明の
一実施例を示すブロック図で、プロセスの優先度を変更
する機能を持ったOSにおいて、複数のプロセスからな
る一連のアプリケーションプログラムをデバッグする場
合のものである。図において、37、38は後述するデ
バッグコマンド発行手段からのデバッグコマンドを受信
する機能を備えたプロセスデバッガであり、39はプロ
セスデバッガ37によってデバッグされるプロセス、4
0はプロセスデバッガ38によってデバッグされるプロ
セスである。41はユーザからのデバッグコマンドの入
力・解析、プロセスデバッガ37、38の起動、指定す
るプロセスデバッガ37、38へのデバッグコマンドの
分配を行い、プロセスデバッガ37、38とデバッグの
要求・応答をやりとりすることにより、マルチプロセス
のデバッグを行っているデバッグコマンド発行手段であ
る。42はプロセス39および40からOSに発行され
た優先度変更要求を処理して、OSの優先度の変更制御
を行う部分に、デバッグコマンド発行手段41の優先度
の変更を行わせる優先度調整手段である。
【0041】次に動作について説明する。ここで、図1
2はその優先度調整の動作の流れを示すフローチャート
である。今、プロセス39よりOSに対してプロセス3
9の優先度変更の要求が行われると(ステップST7
1)、優先度調整手段42によってデバッグコマンド発
行手段41との優先度の調整が行われる。すなわち、プ
ロセス39の変更要求された優先度と、デバッグコマン
ド発行手段41の優先度をまず比較する(ステップST
72)。その結果、プロセス39の変更要求された優先
度の方が大きければ、デバッグコマンド発行手段41の
優先度を、プロセス39より要求された優先度より大き
くする(ステップST73)。次いで、優先度の変更を
要求したプロセス39に対応するプロセスデバッガ37
の優先度をデバッグコマンド発行手段41の優先度と等
しくする(ステップST74)。
【0042】これにより、デバッグコマンド発行手段4
1と、デバッグ対象となるプロセス39、40に対応す
るプロセスデバッガ37、38の優先度を、プロセス3
9、40の優先度よりつねに高くしておくことができ、
デバッグ対象となるプロセス39、40の優先度に関り
なく、デバッグコマンドの受け付けが可能となる。
【0043】なお、このようにして、プロセス39、4
0より高い優先度がつねに設定されているデバッグコマ
ンド発行手段41は、ユーザからデバッグコマンドが入
力されると、それを受け取って解析し、その解析結果に
基づいて必要なプロセスデバッガ37、38を指定して
それを起動する。次に、その指定するプロセスデバッガ
37、38に対してデバッグコマンドを分配するととも
に、それらのプロセスデバッガ37、38とデバッグの
要求、デバッグの応答をやりとりすることによって、マ
ルチプロセスのデバッグを行う。なお、デバッグコマン
ド発行手段41からのデバッグコマンドを受けたプロセ
スデバッガ37、38は、それぞれデバッグ対象のプロ
セス39あるいは40を、受け取ったデバッグコマンド
にもとづいて制御し、デバッグする。
【0044】
【発明の効果】以上のように、請求項1に記載の発明に
よれば、OS資源のそれぞれにデバッグ対象フラグを設
け、それがセットされているOS資源を利用するプロセ
スを、デバッグ対象プロセスの関連プロセスとしてデバ
ッグの対象とするように構成したので、関連プロセスを
あらかじめ明示的に指定しておかなくとも、また、あら
かじめ関連プロセスとして指定しておくことが困難な、
後から動的に生成されるようなプロセスについても、デ
バッグ対象フラグがセットされているOS資源を利用す
るプロセスとしてデバッグ対象に指定し、それを関連プ
ロセスとしてデバッグできるマルチプロセスのデバッグ
方法プロセスが得られる効果がある。
【0045】また、請求項2に記載の発明によれば、デ
バッグ対象プロセスが使用したOS資源のデバッグ対象
フラグをセットするように構成したので、あらかじめデ
バッグ対象フラグをセットしておかなくとも、デバッグ
対象プロセスによってOS資源が使用されると自動的に
セットされ、このデバッグ対象フラグがセットされてい
るOS資源を利用した別のプロセスをデバッグの対象と
して、それを関連プロセスとしてデバッグすることがで
きる効果がある。
【0046】また、請求項3に記載の発明によれば、注
目するOS資源のデバッグ対象フラグをあらかじめセッ
トしておくように構成したので、同じOS資源を利用す
るプロセス同士を関連プロセスとしてデバッグ対象に指
定してデバッグすることが可能となり、あらかじめデバ
ッグ対象に指定しておきにくい、動的に生成されるよう
なプロセスも、デバッグ対象フラグがセットされている
OS資源を利用するプロセスとしてデバッグ対象に指定
でき、それらを関連プロセスとしてデバッグすることが
できる効果がある。
【0047】また、請求項4に記載の発明によれば、デ
バッグ対象のプロセスからデバッグ要求を送信するよう
に構成したので、相互に通信しているプロセス同士を関
連プロセスとしてデバッグ対象とすることが可能とな
り、明示的に関連プロセスの指定をしておかなくとも、
また、同じ計算機上に存在しなくとも、そのデバッグ要
求に応じたプロセスをデバッグ対象に指定することが可
能となって、それを関連プロセスとしてデバッグできる
マルチプロセスのデバッグ方法が得られる効果がある。
【0048】また、請求項5に記載の発明によれば、デ
バッグ対象のプロセスから通信相手のプロセスに、通常
の通信データにデバッグ要求フラグを付加して送信し、
このデバッグ要求フラグを受信したプロセスをデバッグ
対象に指定するように構成したので、明示的に関連プロ
セスの指定をしておかなくとも、また、同じ計算機上に
存在しなくとも、デバッグ要求フラグを受信したプロセ
スを、関連プロセスとしてデバッグの対象にすることが
できる効果がある。
【0049】また、請求項6に記載の発明によれば、デ
バッグ対象のプロセスから通信相手に、プロセスを指定
したデバッグ要求を送信し、通信相手ではこのデバッグ
要求によって指定されたプロセスをデバッグ対象に指定
するように構成したので、明示的に関連プロセスの指定
をしておかなくとも、また、同じ計算機上に存在しなく
とも、さらに、デバッグ対象プロセスからの送信データ
がなくとも、デバッグ要求で指定されたプロセスを、関
連プロセスとしてデバッグ対象にすることができる効果
がある。
【0050】また、請求項7に記載の発明によれば、デ
バッグ対象プロセスより優先度の変更要求があると、当
該デバッグ対象プロセスの優先度よりも、そのプロセス
デパッガとデバッグコマンド発行手段の優先度を高くす
るように構成したので、デバッグコマンド発行手段と該
当するプロセスデバッガの優先度が、デバッグ対象のプ
ロセスのそれよりも常に高くしておくことができ、デバ
ッグ対象プロセスの優先度に関わらず、デバッガコマン
ドの入力を受け付けてデバッグを実行することができる
効果がある。
【図面の簡単な説明】
【図1】 この発明の実施例1によるマルチプロセスの
デバッグ方法を示すブロック図である。
【図2】 上記実施例の動作の流れを示すフローチャー
トである。
【図3】 この発明の実施例2によるマルチプロセスの
デバッグ方法を示すブロック図である。
【図4】 上記実施例の動作の流れを示すフローチャー
トである。
【図5】 この発明の実施例3によるマルチプロセスの
デバッグ方法を示すブロック図である。
【図6】 上記実施例のデータ送信側の動作の流れを示
すフローチャートである。
【図7】 上記実施例のデータ受信側の動作の流れを示
すフローチャートである。
【図8】 この発明の実施例4によるマルチプロセスの
デバッグ方法を示すブロック図である。
【図9】 上記実施例のデバッグ要求送信側の動作の流
れを示すフローチャートである。
【図10】 上記実施例のデバッグ要求受信側の動作の
流れを示すフローチャートである。
【図11】 この発明の実施例5によるマルチプロセス
のデバッグ方法を示すブロック図である。
【図12】 上記実施例の動作の流れを示すフローチャ
ートである。
【図13】 従来のマルチプロセスのデバッグ方法の一
例を示す構成図である。
【図14】 その動作の流れを示すフローチャートであ
る。
【図15】 従来のマルチプロセスのデバッグ方法の他
の例を示すブロック図である。
【符号の説明】
21,26,28,35,37,38 プロセスデバッ
ガ、22 デバッグ対象プロセス、23 OS資源、2
4 デバッグ対象フラグ、25,34 関連プロセス、
27,39,40 プロセス、30 通信データ、31
デバッグ要求フラグ、36 デバッグ要求受信手段、
41 デバッグコマンド発行手段。

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】 複数のプロセスが動作するオペレーティ
    ングシステムにおける、複数のプロセスからなる一連の
    アプリケーションプログラムのデバッグを行うマルチプ
    ロセスのデバッグ方法において、複数の前記プロセスで
    共用するオペレーティングシステム上の資源のそれぞれ
    にデバッグ対象フラグを設け、前記デバッグ対象フラグ
    がセットされた資源を使用する前記プロセスを、関連プ
    ロセスとしてデバッグの対象にすることを特徴とするマ
    ルチプロセスのデバッグ方法。
  2. 【請求項2】 すでにデバッグ対象となっているプロセ
    スによって前記資源が使用された場合に、その資源に設
    けられたデバッグ対象フラグのセットを行うことを特徴
    とする請求項1に記載のマルチプロセスのデバッグ方
    法。
  3. 【請求項3】 指定された前記資源について、その資源
    に設けられたデバッグ対象フラグをあらかじめセットし
    ておくことを特徴とする請求項1に記載のマルチプロセ
    スのデバッグ方法。
  4. 【請求項4】 複数のプロセスからなり、プロセス間で
    通信が行われる一連のアプリケーションプログラムのデ
    バッグを行うマルチプロセスのデバッグ方法において、
    すでにデバッグ対象となっている前記プロセスから、通
    信相手に対してデバッグ要求を送信し、通信相手にて前
    記デバッグ要求に応じたプロセスを、関連プロセスとし
    てデバッグの対象にすることを特徴とするマルチプロセ
    スのデバッグ方法。
  5. 【請求項5】 前記デバッグ要求を、すでにデバッグ対
    象となっているプロセスより通信相手となるプロセスに
    送る通信データに付加したデバッグ要求フラグとし、前
    記デバッグ要求フラグを通信データとともに受信したプ
    ロセスを、関連プロセスとしてデバッグの対象にするこ
    とを特徴とする請求項4に記載のマルチプロセスのデバ
    ッグ方法。
  6. 【請求項6】 すでにデバッグ対象となったプロセスと
    通信を行っている通信相手を調査して、プロセスを指定
    したデバッグ要求を送信し、通信相手では、前記デバッ
    グ要求によって指定されたプロセスを、関連プロセスと
    してデバッグの対象にすることを特徴とする請求項4に
    記載のマルチプロセスのデバッグ方法。
  7. 【請求項7】 プロセスの優先度を変更する機能をもつ
    オペレーティングシステムにおける、複数のプロセスか
    らなる一連のアプリケーションプログラムのデバッグを
    行うマルチプロセスのデバッグ方法において、前記プロ
    セスから当該プロセスの優先度の変更要求があった場
    合、当該マルチプロセスのデバッグを行うデバッグコマ
    ンド発行手段と、前記優先度の変更を要求したプロセス
    をデバッグするプロセスデバッガの優先度を、前記優先
    度の変更を要求したプロセスのそれより高くなるように
    変更することを特徴とするマルチプロセスのデバッグ方
    法。
JP6119193A 1994-05-31 1994-05-31 マルチプロセスのデバッグ方法 Pending JPH07325732A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6119193A JPH07325732A (ja) 1994-05-31 1994-05-31 マルチプロセスのデバッグ方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6119193A JPH07325732A (ja) 1994-05-31 1994-05-31 マルチプロセスのデバッグ方法

Publications (1)

Publication Number Publication Date
JPH07325732A true JPH07325732A (ja) 1995-12-12

Family

ID=14755230

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6119193A Pending JPH07325732A (ja) 1994-05-31 1994-05-31 マルチプロセスのデバッグ方法

Country Status (1)

Country Link
JP (1) JPH07325732A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6516460B1 (en) * 1998-09-01 2003-02-04 International Business Machines Corporation Debugging multiple related processes simultaneously
JP2006127166A (ja) * 2004-10-28 2006-05-18 Kyocera Corp 情報処理装置、タスク停止方法及びプログラム
JP2011138494A (ja) * 2009-12-23 2011-07-14 Intel Corp 仮想タスクを使用したマルチコアプロセッサの性能解析のための関係モデル化
JP2012079130A (ja) * 2010-10-01 2012-04-19 Fujitsu Ltd デバッグ支援プログラム、デバッグ支援装置、及びデバッグ支援方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01181132A (ja) * 1988-01-14 1989-07-19 Toshiba Corp デバッグ方式
JPH0324637A (ja) * 1989-06-21 1991-02-01 Fuji Electric Co Ltd プログラムデバッグ時の資源管理方法
JPH064361A (ja) * 1992-06-18 1994-01-14 Hokuriku Nippon Denki Software Kk トレース情報収集方式

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01181132A (ja) * 1988-01-14 1989-07-19 Toshiba Corp デバッグ方式
JPH0324637A (ja) * 1989-06-21 1991-02-01 Fuji Electric Co Ltd プログラムデバッグ時の資源管理方法
JPH064361A (ja) * 1992-06-18 1994-01-14 Hokuriku Nippon Denki Software Kk トレース情報収集方式

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6516460B1 (en) * 1998-09-01 2003-02-04 International Business Machines Corporation Debugging multiple related processes simultaneously
JP2006127166A (ja) * 2004-10-28 2006-05-18 Kyocera Corp 情報処理装置、タスク停止方法及びプログラム
JP2011138494A (ja) * 2009-12-23 2011-07-14 Intel Corp 仮想タスクを使用したマルチコアプロセッサの性能解析のための関係モデル化
JP2012079130A (ja) * 2010-10-01 2012-04-19 Fujitsu Ltd デバッグ支援プログラム、デバッグ支援装置、及びデバッグ支援方法

Similar Documents

Publication Publication Date Title
EP1508858A2 (en) A method and system for executing software on non-native platforms
JPH0567011A (ja) データ処理システムのユーザ照会機能
JP2002351854A (ja) プログラム実行装置および携帯型情報処理装置
US8972944B2 (en) Coordinating and controlling debuggers in a simulation environment
JPH07325732A (ja) マルチプロセスのデバッグ方法
GB2394575A (en) System for a distributed shell in a distributed computer environment
JP3651573B2 (ja) ファクトリーオートメーションシステムの制御方法、ファクトリーオートメーションシステムの中央制御装置
EP1977338B1 (en) External configuration of processing content for script
JP4063573B2 (ja) デバイスドライバの組み込み・実行方式、組み込み・実行方法、及びプログラム
JPH05210603A (ja) 通信システムにおける応用プログラムと通信プログラムとの間のデータ転送を向上させる装置及び方法
JP3358045B2 (ja) プログラマブルコントローラ
JP2008108123A (ja) モジュール実行装置、およびモジュール化プログラム
JP2693460B2 (ja) 分散ネットワーク・システム
JPH07306800A (ja) デバッグ方式
JP3358585B2 (ja) ネットワーク分散プログラムデバッグ方法およびネットワーク分散プログラムデバッグ用システム
JP2006139346A (ja) デバッグ制御方法
KR100310289B1 (ko) 디버거 마스터를 이용한 칠 프로그램 공동 교차 디버깅 방법
JP2004310422A (ja) 組み込み機器用pcカードシステム
JPH08147189A (ja) 並列計算機のオペレーティングシステムのデバッグ方法
JP2002244883A (ja) デバッグ支援装置、デバッグ支援方法及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体
JP3185924B2 (ja) Lanで接続されたデバッグホストとデバッグ対象ターゲットマシン間のコネクション確立方法
JPH0756729A (ja) プログラムデバッグシステム
JPH1083317A (ja) エミュレータの制御方法およびエミュレータ
JP2003044317A (ja) Romモニタ
JPH10177531A (ja) スクリプト実行方式