JPH08272644A - 分散処理装置で実行されるプログラムのデバッグ方法 - Google Patents
分散処理装置で実行されるプログラムのデバッグ方法Info
- Publication number
- JPH08272644A JPH08272644A JP7077886A JP7788695A JPH08272644A JP H08272644 A JPH08272644 A JP H08272644A JP 7077886 A JP7077886 A JP 7077886A JP 7788695 A JP7788695 A JP 7788695A JP H08272644 A JPH08272644 A JP H08272644A
- Authority
- JP
- Japan
- Prior art keywords
- debug
- computer
- program
- request
- information
- 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
Links
Landscapes
- Debugging And Monitoring (AREA)
- Multi Processors (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
(57)【要約】
【目的】分散透過なプログラムを分散を意識せずにデバ
ッグ操作可能とする。 【構成】分散処理装置内の各計算機10-iに、デバッグ
対象プログラムを起動するためのデバッグ付きリクエス
トを生成するリクエスト生成部22と、当該リクエスト
をデバッグ対象プログラムが存在する計算機に送信する
リクエスト送信部231と、デバッグ対象プログラムの
デバッグを指示するデバッグコマンドを発行するデバッ
グコマンド入力部251と、当該コマンドをデバッグ対
象プログラムが存在する計算機に送信するコマンド送信
部271と、受信したデバッグ付きリクエストの要求す
るプログラムを起動してデバッグ可能状態とし、受信し
たデバッグコマンドの指示するプログラムに対して指示
されたデバッグ操作を行うデバッグ実行部24と、ここ
で得られたデバッグ情報をデバッグコマンド発行元計算
機に送信するデバッグ情報送信部282とを備えた構成
とする。
ッグ操作可能とする。 【構成】分散処理装置内の各計算機10-iに、デバッグ
対象プログラムを起動するためのデバッグ付きリクエス
トを生成するリクエスト生成部22と、当該リクエスト
をデバッグ対象プログラムが存在する計算機に送信する
リクエスト送信部231と、デバッグ対象プログラムの
デバッグを指示するデバッグコマンドを発行するデバッ
グコマンド入力部251と、当該コマンドをデバッグ対
象プログラムが存在する計算機に送信するコマンド送信
部271と、受信したデバッグ付きリクエストの要求す
るプログラムを起動してデバッグ可能状態とし、受信し
たデバッグコマンドの指示するプログラムに対して指示
されたデバッグ操作を行うデバッグ実行部24と、ここ
で得られたデバッグ情報をデバッグコマンド発行元計算
機に送信するデバッグ情報送信部282とを備えた構成
とする。
Description
【0001】
【産業上の利用分野】本発明は、複数の計算機を備えた
分散処理装置で実行されるプログラムのデバッグ方法に
関する。
分散処理装置で実行されるプログラムのデバッグ方法に
関する。
【0002】
【従来の技術】従来から、より処理能力の高い計算機シ
ステムを実現するために、分散した複数の計算機(を備
えた分散処理装置)によって並列に処理を行う分散/並
列処理技術の開発が行われている。また近年は、オブジ
ェクト指向の技術を採用した分散オブジェクト指向シス
テムへの関心も高まっており、オブジェクト間通信イン
タフェースの仕様を標準化する団体もある。
ステムを実現するために、分散した複数の計算機(を備
えた分散処理装置)によって並列に処理を行う分散/並
列処理技術の開発が行われている。また近年は、オブジ
ェクト指向の技術を採用した分散オブジェクト指向シス
テムへの関心も高まっており、オブジェクト間通信イン
タフェースの仕様を標準化する団体もある。
【0003】オブジェクト指向技術の標準化団体である
OMG(Object Management Group)の制定したオブジ
ェクト間通信インタフェースCORBAの仕様に従え
ば、プログラマからは他計算機上にあるオブジェクトも
同一計算機上にあるように見える。このような特徴を分
散透過であると呼んでいる。ここでのオブジェクトは、
ある機能を持ったプログラムのことであり、以後の説明
では、オブジェクトをプログラムと呼ぶこともある。ま
た、以下の説明では、アプリケーションプログラムのよ
うに一定の目的を果たすためのプログラムの集合をシス
テムと表現し、分散透過なプログラム(システム)を分
散システムと表現している。
OMG(Object Management Group)の制定したオブジ
ェクト間通信インタフェースCORBAの仕様に従え
ば、プログラマからは他計算機上にあるオブジェクトも
同一計算機上にあるように見える。このような特徴を分
散透過であると呼んでいる。ここでのオブジェクトは、
ある機能を持ったプログラムのことであり、以後の説明
では、オブジェクトをプログラムと呼ぶこともある。ま
た、以下の説明では、アプリケーションプログラムのよ
うに一定の目的を果たすためのプログラムの集合をシス
テムと表現し、分散透過なプログラム(システム)を分
散システムと表現している。
【0004】ここで、分散システム(分散透過なプログ
ラム)に不具合があった場合のデバッグ方法について述
べる。説明の仮定として、プログラマがシステム(アプ
リケーションプログラム)を起動した計算機以外で実行
される(オブジェクト指向での)オブジェクト(プログ
ラム)がデバッグ対象であるとする。
ラム)に不具合があった場合のデバッグ方法について述
べる。説明の仮定として、プログラマがシステム(アプ
リケーションプログラム)を起動した計算機以外で実行
される(オブジェクト指向での)オブジェクト(プログ
ラム)がデバッグ対象であるとする。
【0005】従来のデバッグ方法では、デバッグ対象の
オブジェクトが実行されている計算機上にデバッガを起
動し、当該デバッガにデバッグ対象オブジェクトを結合
することで、オブジェクトの制御を行っている。
オブジェクトが実行されている計算機上にデバッガを起
動し、当該デバッガにデバッグ対象オブジェクトを結合
することで、オブジェクトの制御を行っている。
【0006】この場合、プログラマは、物理的に分散さ
れている複数の計算機上でデバッガの操作を行うこと
で、デバッグ作業を実施する。これは、リモートデバッ
ガであっても同じであり、物理的に実行されている計算
機をプログラマが認識する必要がある。
れている複数の計算機上でデバッガの操作を行うこと
で、デバッグ作業を実施する。これは、リモートデバッ
ガであっても同じであり、物理的に実行されている計算
機をプログラマが認識する必要がある。
【0007】しかしながら、分散透過に見えているプロ
グラムを、本来知る必要がない物理的なオブジェクト位
置を使ってデバッグすることは、プログラマからのシス
テムの見え方が複数存在することになる。これは、デバ
ッグを難しいものにする原因となる。また、本来持って
いたオブジェクト(プログラム)がどこにあるかを知る
必要がないという特徴をなくすことにもなる。
グラムを、本来知る必要がない物理的なオブジェクト位
置を使ってデバッグすることは、プログラマからのシス
テムの見え方が複数存在することになる。これは、デバ
ッグを難しいものにする原因となる。また、本来持って
いたオブジェクト(プログラム)がどこにあるかを知る
必要がないという特徴をなくすことにもなる。
【0008】
【発明が解決しようとする課題】上記のように従来のデ
バッグ方法では、分散透過なプログラムのデバッグであ
っても、分散処理装置内で物理的に異なる計算機上でデ
バッグ対象プログラム(オブジェクト)が起動している
場合には、それぞれのプログラムが起動している計算機
上に対応するデバッガを明示的に起動しなければならな
いという問題があった。
バッグ方法では、分散透過なプログラムのデバッグであ
っても、分散処理装置内で物理的に異なる計算機上でデ
バッグ対象プログラム(オブジェクト)が起動している
場合には、それぞれのプログラムが起動している計算機
上に対応するデバッガを明示的に起動しなければならな
いという問題があった。
【0009】また。リモートデバッガのように、他の計
算機からデバッグ情報を取り出し、別計算機上でデバッ
グ作業を行う場合でも、別の計算機にプログラム(オブ
ジェクト)があることを意識しなければならず、システ
ムの見え方が複数存在するという問題があった。
算機からデバッグ情報を取り出し、別計算機上でデバッ
グ作業を行う場合でも、別の計算機にプログラム(オブ
ジェクト)があることを意識しなければならず、システ
ムの見え方が複数存在するという問題があった。
【0010】本発明は上記事情を考慮してなされたもの
でその目的は、分散処理装置上における分散透過な単一
のシステム(プログラム)のデバッグに必要なデバッグ
操作は、プログラマが当該システムを起動した計算機だ
けで行えるようにし、デバッグ対象プログラムが分散処
理装置上で分散しているか否かをプログラマは意識する
ことなくデバッグ操作が行える分散処理装置で実行され
るプログラム(分散透過なプログラム、分散システム)
のデバッグ方法を提供することにある。
でその目的は、分散処理装置上における分散透過な単一
のシステム(プログラム)のデバッグに必要なデバッグ
操作は、プログラマが当該システムを起動した計算機だ
けで行えるようにし、デバッグ対象プログラムが分散処
理装置上で分散しているか否かをプログラマは意識する
ことなくデバッグ操作が行える分散処理装置で実行され
るプログラム(分散透過なプログラム、分散システム)
のデバッグ方法を提供することにある。
【0011】
【課題を解決するための手段及び作用】本発明の第1の
観点に係る構成は、分散処理装置内の各計算機に、分散
処理装置で実行されるプログラムが存在する計算機を示
す存在計算機情報を保持しておくプログラム位置管理手
段と、デバッグ対象プログラムを起動するに際して、当
該プログラムが存在する計算機をプログラム位置管理手
段の保持情報をもとに探し、その計算機を送信先として
示す送信先情報が付された、当該プログラムの起動を要
求するデバッグ付きリクエストを生成するリクエスト生
成手段と、上記生成されたデバッグ付きリクエストを当
該リクエストに付されている送信先情報の示す計算機に
送信するリクエスト送信手段と、デバッグ対象プログラ
ムのデバッグ操作のために、当該プログラムのデバッグ
を指示するデバッグコマンドを発行するデバッグ操作手
段と、上記発行されたデバッグコマンドの指示するデバ
ッグ対象プログラムが存在する計算機をプログラム位置
管理手段の保持情報をもとに探し、その計算機を当該コ
マンドの送信先として決定するコマンド送信先選択手段
と、この決定された送信先計算機にデバッグ操作手段に
より発行されたデバッグコマンドを送信するコマンド送
信手段と、分散処理装置内のある計算機のリクエスト送
信手段から送られたデバッグ付きリクエストを受けて当
該リクエストの要求するデバッグ対象プログラムを起動
してデバッグ可能状態とし、分散処理装置内のある計算
機のコマンド送信手段から送られたデバッグコマンドを
受けて上記起動されているデバッグ対象プログラムに対
して指示されたデバッグ操作を行うデバッグ実行手段
と、このデバッグ実行手段でのデバッグ操作に際し、対
応するデバッグコマンドの発行元計算機を示す情報を保
持しておき、デバッグ実行手段のデバッグ操作によりデ
バッグ情報が得られた際には、上記保持しておいたデバ
ッグコマンド発行元計算機情報の示す計算機を当該デバ
ッグ情報の送信先として決定するデバッグ情報送信先選
択手段と、この決定された計算機に上記得られたデバッ
グ情報を送信するデバッグ情報送信手段とを備えたこと
を特徴とするものである。なお、デバッグ操作手段、コ
マンド送信先選択手段及びコマンド送信手段は、必ずし
も分散処理装置内の全ての計算機に設けられている必要
はなく、少なくとも、ユーザ(プログラマ)がデバッグ
操作を行う計算機に設けられていればよい。
観点に係る構成は、分散処理装置内の各計算機に、分散
処理装置で実行されるプログラムが存在する計算機を示
す存在計算機情報を保持しておくプログラム位置管理手
段と、デバッグ対象プログラムを起動するに際して、当
該プログラムが存在する計算機をプログラム位置管理手
段の保持情報をもとに探し、その計算機を送信先として
示す送信先情報が付された、当該プログラムの起動を要
求するデバッグ付きリクエストを生成するリクエスト生
成手段と、上記生成されたデバッグ付きリクエストを当
該リクエストに付されている送信先情報の示す計算機に
送信するリクエスト送信手段と、デバッグ対象プログラ
ムのデバッグ操作のために、当該プログラムのデバッグ
を指示するデバッグコマンドを発行するデバッグ操作手
段と、上記発行されたデバッグコマンドの指示するデバ
ッグ対象プログラムが存在する計算機をプログラム位置
管理手段の保持情報をもとに探し、その計算機を当該コ
マンドの送信先として決定するコマンド送信先選択手段
と、この決定された送信先計算機にデバッグ操作手段に
より発行されたデバッグコマンドを送信するコマンド送
信手段と、分散処理装置内のある計算機のリクエスト送
信手段から送られたデバッグ付きリクエストを受けて当
該リクエストの要求するデバッグ対象プログラムを起動
してデバッグ可能状態とし、分散処理装置内のある計算
機のコマンド送信手段から送られたデバッグコマンドを
受けて上記起動されているデバッグ対象プログラムに対
して指示されたデバッグ操作を行うデバッグ実行手段
と、このデバッグ実行手段でのデバッグ操作に際し、対
応するデバッグコマンドの発行元計算機を示す情報を保
持しておき、デバッグ実行手段のデバッグ操作によりデ
バッグ情報が得られた際には、上記保持しておいたデバ
ッグコマンド発行元計算機情報の示す計算機を当該デバ
ッグ情報の送信先として決定するデバッグ情報送信先選
択手段と、この決定された計算機に上記得られたデバッ
グ情報を送信するデバッグ情報送信手段とを備えたこと
を特徴とするものである。なお、デバッグ操作手段、コ
マンド送信先選択手段及びコマンド送信手段は、必ずし
も分散処理装置内の全ての計算機に設けられている必要
はなく、少なくとも、ユーザ(プログラマ)がデバッグ
操作を行う計算機に設けられていればよい。
【0012】上記第1の観点に係る構成においては、あ
る計算機(デバッグ操作する計算機)からデバッグ対象
プログラムを起動するときに、その計算機内のリクエス
ト生成手段により、当該プログラムを起動してデバッグ
可能状態とするためのデバッグ付きリクエストが生成さ
れる。この生成されたデバッグ付きリクエストは、プロ
グラム位置管理手段の保持情報の示す、当該リクエスト
により要求されるデバッグ対象プログラムが存在する計
算機宛てに送信される。
る計算機(デバッグ操作する計算機)からデバッグ対象
プログラムを起動するときに、その計算機内のリクエス
ト生成手段により、当該プログラムを起動してデバッグ
可能状態とするためのデバッグ付きリクエストが生成さ
れる。この生成されたデバッグ付きリクエストは、プロ
グラム位置管理手段の保持情報の示す、当該リクエスト
により要求されるデバッグ対象プログラムが存在する計
算機宛てに送信される。
【0013】さて、デバッグ付きリクエストが送られた
計算機のデバッグ実行手段は、当該リクエストの要求す
るデバッグ対象プログラムを起動する。またデバッグ実
行手段は、起動したデバッグ対象プログラムをデバッグ
可能状態とするために、そのプログラムを(デバッグプ
ログラムにより実現される)デバッガと結合する。
計算機のデバッグ実行手段は、当該リクエストの要求す
るデバッグ対象プログラムを起動する。またデバッグ実
行手段は、起動したデバッグ対象プログラムをデバッグ
可能状態とするために、そのプログラムを(デバッグプ
ログラムにより実現される)デバッガと結合する。
【0014】一方、デバッグ付きリクエストを送信した
計算機では、当該リクエストにより起動されるデバッグ
対象プログラムのデバッグを指示するデバッグコマンド
がデバッグ操作手段から発行される。このデバッグコマ
ンドは、プログラム位置管理手段の保持情報の示す、当
該コマンドにより指示されるデバッグ対象プログラムが
存在する計算機宛てに、コマンド送信手段により送信さ
れる。
計算機では、当該リクエストにより起動されるデバッグ
対象プログラムのデバッグを指示するデバッグコマンド
がデバッグ操作手段から発行される。このデバッグコマ
ンドは、プログラム位置管理手段の保持情報の示す、当
該コマンドにより指示されるデバッグ対象プログラムが
存在する計算機宛てに、コマンド送信手段により送信さ
れる。
【0015】このデバッグコマンドが送られた計算機の
デバッグ実行手段は、先のデバッグ付きリクエストによ
って起動されているデバッグ対象プログラムに対して当
該コマンドに従うデバッグ操作を行う。ここで得られた
デバッグ情報はデバッグコマンドの発行元計算機に送信
され、当該計算機で受信される。
デバッグ実行手段は、先のデバッグ付きリクエストによ
って起動されているデバッグ対象プログラムに対して当
該コマンドに従うデバッグ操作を行う。ここで得られた
デバッグ情報はデバッグコマンドの発行元計算機に送信
され、当該計算機で受信される。
【0016】このように、上記の構成においては、プロ
グラマがアプリケーションプログラム等のシステムを起
動した計算機から、分散処理装置内のある計算機に存在
する分散透過なプログラムのデバッグ操作を行うことが
でき、プログラマはデバッグ対象プログラムが分散して
いるか否かを何ら意識する必要がない。
グラマがアプリケーションプログラム等のシステムを起
動した計算機から、分散処理装置内のある計算機に存在
する分散透過なプログラムのデバッグ操作を行うことが
でき、プログラマはデバッグ対象プログラムが分散して
いるか否かを何ら意識する必要がない。
【0017】本発明の第2の観点に係る構成は、分散処
理装置内の各計算機に、分散処理装置で実行されるプロ
グラムが存在する計算機を示す存在計算機情報を保持し
ておくプログラム位置管理手段と、デバッグコマンドの
送信先計算機を示す情報及びデバッグ情報の送信先計算
機を示す情報であって、初期状態においては自身を示す
情報を保持しておく送信先管理手段と、デバッグ対象プ
ログラムを起動するに際して、当該プログラムが存在す
る計算機をプログラム位置管理手段の保持情報をもとに
探し、その計算機を送信先として示す送信先情報が付さ
れると共に、送信先管理手段に保持されているデバッグ
情報送信先情報が付されたデバッグ付きリクエストを生
成するリクエスト生成手段と、上記生成されたデバッグ
付きリクエストを当該リクエストに付されている前記送
信先情報の示す計算機に送信するリクエスト送信手段
と、上記生成されたデバッグ付きリクエストの送信先計
算機がデバッグコマンドの送信先になるように送信先管
理手段のデバッグコマンド送信先情報を変更する第1の
変更手段と、分散処理装置内のある計算機のリクエスト
送信手段から送信されたデバッグ付きリクエストを受信
するリクエスト受信手段と、デバッグ対象プログラムの
デバッグ操作のために、当該プログラムのデバッグを指
示するデバッグコマンドを発行するデバッグ操作手段
と、上記デバッグコマンドの送信先計算機を、前記送信
先管理手段に保持されているデバッグコマンド送信先情
報をもとに決定するコマンド送信先選択手段と、分散処
理装置内のある計算機から送信されたデバッグコマンド
を受信するコマンド受信手段と、デバッグ操作手段によ
りデバッグコマンドが発行された場合には、当該コマン
ドをコマンド送信先選択手段により決定された計算機に
送信するコマンド送信手段と、リクエスト受信手段によ
りデバッグ付きリクエストが受信された場合には、当該
リクエストの要求するデバッグ対象プログラムを起動し
てデバッグ可能状態とし、この起動したデバッグ対象プ
ログラムの実行に伴って他の計算機上の別のデバッグ対
象プログラムを起動するためにリクエスト生成手段によ
りデバッグ付きリクエストが生成されて当該他計算機に
送信された場合には、デバッグ対象プログラムの動作し
ている計算機が当該他計算機に変更されたことを通知す
るための情報を特定のデバッグ情報として生成し、コマ
ンド受信手段によりデバッグコマンドが受信され、且つ
当該受信コマンドの送信先としてコマンド送信先選択手
段により自身が決定された場合には、当該受信コマンド
を受け取って、デバッグ付きリクエストに従って起動さ
れているデバッグ対象プログラムに対して指示されたデ
バッグ操作を行うデバッグ実行手段と、リクエスト受信
手段によりデバッグ付きリクエストが受信された場合に
は、当該リクエストに付されているデバッグ情報送信先
情報の示す計算機がデバッグ情報の送信先となるよう
に、送信先管理手段のデバッグ情報送信先情報を変更す
る第2の変更手段と、デバッグ情報の送信先計算機を、
送信先管理手段に保持されているデバッグ情報送信先情
報をもとに決定するデバッグ情報送信先選択手段と、分
散処理装置内のある計算機から送信されたデバッグ情報
を受信するデバッグ情報受信手段と、デバッグ実行手段
でのデバッグ操作によりデバッグ情報が得られた場合
と、デバッグ実行手段により上記特定のデバッグ情報が
生成された場合には、当該デバッグ情報をデバッグ情報
送信先選択手段により決定された計算機に送信するデバ
ッグ情報送信手段とを備え、分散処理装置内のある計算
機のデバッグ情報送信手段から上記特定のデバッグ情報
が送信されて、当該デバッグ情報がデバッグ情報受信手
段により受信された場合には、当該デバッグ情報により
通知される計算機がデバッグコマンドの送信先になるよ
うに、送信先管理手段に保持されているデバッグコマン
ド送信先情報が第1の変更手段により変更されるように
構成されていることを特徴とする。なお、デバッグ操作
手段、コマンド送信先選択手段、コマンド送信手段及び
デバッグ情報受信手段は、必ずしも分散処理装置内の全
ての計算機に設けられている必要はなく、少なくとも、
ユーザ(プログラマ)がデバッグ操作を行う計算機に設
けられていればよい。
理装置内の各計算機に、分散処理装置で実行されるプロ
グラムが存在する計算機を示す存在計算機情報を保持し
ておくプログラム位置管理手段と、デバッグコマンドの
送信先計算機を示す情報及びデバッグ情報の送信先計算
機を示す情報であって、初期状態においては自身を示す
情報を保持しておく送信先管理手段と、デバッグ対象プ
ログラムを起動するに際して、当該プログラムが存在す
る計算機をプログラム位置管理手段の保持情報をもとに
探し、その計算機を送信先として示す送信先情報が付さ
れると共に、送信先管理手段に保持されているデバッグ
情報送信先情報が付されたデバッグ付きリクエストを生
成するリクエスト生成手段と、上記生成されたデバッグ
付きリクエストを当該リクエストに付されている前記送
信先情報の示す計算機に送信するリクエスト送信手段
と、上記生成されたデバッグ付きリクエストの送信先計
算機がデバッグコマンドの送信先になるように送信先管
理手段のデバッグコマンド送信先情報を変更する第1の
変更手段と、分散処理装置内のある計算機のリクエスト
送信手段から送信されたデバッグ付きリクエストを受信
するリクエスト受信手段と、デバッグ対象プログラムの
デバッグ操作のために、当該プログラムのデバッグを指
示するデバッグコマンドを発行するデバッグ操作手段
と、上記デバッグコマンドの送信先計算機を、前記送信
先管理手段に保持されているデバッグコマンド送信先情
報をもとに決定するコマンド送信先選択手段と、分散処
理装置内のある計算機から送信されたデバッグコマンド
を受信するコマンド受信手段と、デバッグ操作手段によ
りデバッグコマンドが発行された場合には、当該コマン
ドをコマンド送信先選択手段により決定された計算機に
送信するコマンド送信手段と、リクエスト受信手段によ
りデバッグ付きリクエストが受信された場合には、当該
リクエストの要求するデバッグ対象プログラムを起動し
てデバッグ可能状態とし、この起動したデバッグ対象プ
ログラムの実行に伴って他の計算機上の別のデバッグ対
象プログラムを起動するためにリクエスト生成手段によ
りデバッグ付きリクエストが生成されて当該他計算機に
送信された場合には、デバッグ対象プログラムの動作し
ている計算機が当該他計算機に変更されたことを通知す
るための情報を特定のデバッグ情報として生成し、コマ
ンド受信手段によりデバッグコマンドが受信され、且つ
当該受信コマンドの送信先としてコマンド送信先選択手
段により自身が決定された場合には、当該受信コマンド
を受け取って、デバッグ付きリクエストに従って起動さ
れているデバッグ対象プログラムに対して指示されたデ
バッグ操作を行うデバッグ実行手段と、リクエスト受信
手段によりデバッグ付きリクエストが受信された場合に
は、当該リクエストに付されているデバッグ情報送信先
情報の示す計算機がデバッグ情報の送信先となるよう
に、送信先管理手段のデバッグ情報送信先情報を変更す
る第2の変更手段と、デバッグ情報の送信先計算機を、
送信先管理手段に保持されているデバッグ情報送信先情
報をもとに決定するデバッグ情報送信先選択手段と、分
散処理装置内のある計算機から送信されたデバッグ情報
を受信するデバッグ情報受信手段と、デバッグ実行手段
でのデバッグ操作によりデバッグ情報が得られた場合
と、デバッグ実行手段により上記特定のデバッグ情報が
生成された場合には、当該デバッグ情報をデバッグ情報
送信先選択手段により決定された計算機に送信するデバ
ッグ情報送信手段とを備え、分散処理装置内のある計算
機のデバッグ情報送信手段から上記特定のデバッグ情報
が送信されて、当該デバッグ情報がデバッグ情報受信手
段により受信された場合には、当該デバッグ情報により
通知される計算機がデバッグコマンドの送信先になるよ
うに、送信先管理手段に保持されているデバッグコマン
ド送信先情報が第1の変更手段により変更されるように
構成されていることを特徴とする。なお、デバッグ操作
手段、コマンド送信先選択手段、コマンド送信手段及び
デバッグ情報受信手段は、必ずしも分散処理装置内の全
ての計算機に設けられている必要はなく、少なくとも、
ユーザ(プログラマ)がデバッグ操作を行う計算機に設
けられていればよい。
【0018】上記第2の観点に係る構成においては、第
1の計算機からの第1のデバッグ付きリクエストにより
第2の計算機上の第1のデバッグ対象プログラムが起動
され、その第1のデバッグ対象プログラムの実行に伴
い、第3の計算機に存在する第2のデバッグ対象プログ
ラムを起動する際には、第2の計算機のリクエスト生成
手段により、第3の計算機に存在する第2のデバッグ対
象プログラムを起動するための第2のデバッグ付きリク
エストが発行される。
1の計算機からの第1のデバッグ付きリクエストにより
第2の計算機上の第1のデバッグ対象プログラムが起動
され、その第1のデバッグ対象プログラムの実行に伴
い、第3の計算機に存在する第2のデバッグ対象プログ
ラムを起動する際には、第2の計算機のリクエスト生成
手段により、第3の計算機に存在する第2のデバッグ対
象プログラムを起動するための第2のデバッグ付きリク
エストが発行される。
【0019】この第2のデバッグ付きリクエストには、
第2の計算機を送信先として示す送信先情報と第2の計
算機の送信先管理手段に保持されているデバッグ情報送
信先情報が付加される。このとき送信先管理手段に保持
されているデバッグ情報送信先情報は、第1の計算機か
ら第2の計算機に送られた第1のデバッグ付きリクエス
トに従って第1のデバッグ対象プログラムが起動された
場合に、そのリクエストに付されていた第1の計算機を
示すデバッグ情報送信先情報(最初のデバッグ付きリク
エストの発行元であるデバッグ操作を行う第1の計算機
を示す情報)に変更されている。したがって、上記第2
のデバッグ付きリクエストに付されるデバッグ情報送信
先情報は第1の計算機を示すことになる。
第2の計算機を送信先として示す送信先情報と第2の計
算機の送信先管理手段に保持されているデバッグ情報送
信先情報が付加される。このとき送信先管理手段に保持
されているデバッグ情報送信先情報は、第1の計算機か
ら第2の計算機に送られた第1のデバッグ付きリクエス
トに従って第1のデバッグ対象プログラムが起動された
場合に、そのリクエストに付されていた第1の計算機を
示すデバッグ情報送信先情報(最初のデバッグ付きリク
エストの発行元であるデバッグ操作を行う第1の計算機
を示す情報)に変更されている。したがって、上記第2
のデバッグ付きリクエストに付されるデバッグ情報送信
先情報は第1の計算機を示すことになる。
【0020】さて、第2の計算機から第3の計算機に第
2のデバッグ付きリクエストが発行されると、第2の計
算機のデバッグ実行手段は、デバッグ対象プログラムの
動作している計算機が第3の計算機に変更になったこと
を通知するための特定デバッグ情報を生成する。このデ
バッグ情報は、第2の計算機の送信先管理手段に保持さ
れているデバッグ情報送信先情報の示す第1の計算機に
送られる。
2のデバッグ付きリクエストが発行されると、第2の計
算機のデバッグ実行手段は、デバッグ対象プログラムの
動作している計算機が第3の計算機に変更になったこと
を通知するための特定デバッグ情報を生成する。このデ
バッグ情報は、第2の計算機の送信先管理手段に保持さ
れているデバッグ情報送信先情報の示す第1の計算機に
送られる。
【0021】第1の計算機では、この特定デバッグ情報
が受信されると、第1の計算機の送信先管理手段に保持
されているデバッグコマンド送信先情報が、当該デバッ
グ情報で示される第3の計算機を示すように変更され
る。
が受信されると、第1の計算機の送信先管理手段に保持
されているデバッグコマンド送信先情報が、当該デバッ
グ情報で示される第3の計算機を示すように変更され
る。
【0022】一方、第2の計算機から第2のデバッグ付
きリクエストが送られた第3の計算機では、第2のデバ
ッグ対象プログラムが起動されると共に、第3の計算機
の送信先管理手段に保持されているデバッグ情報送信先
情報が、当該リクエストに付されているデバッグ情報送
信先情報、即ち最初のデバッグ付きリクエストの発行元
であるデバッグ操作を行う第1の計算機を示す情報に変
更される。
きリクエストが送られた第3の計算機では、第2のデバ
ッグ対象プログラムが起動されると共に、第3の計算機
の送信先管理手段に保持されているデバッグ情報送信先
情報が、当該リクエストに付されているデバッグ情報送
信先情報、即ち最初のデバッグ付きリクエストの発行元
であるデバッグ操作を行う第1の計算機を示す情報に変
更される。
【0023】以上により、第1の計算機からのデバッグ
コマンドは、第1の計算機の送信先管理手段に保持され
ているデバッグコマンド送信先情報の示す第3の計算機
に直接送信される。また、このデバッグコマンドに従っ
て第3の計算機で起動されている第2のデバッグ対象プ
ログラムに対するデバッグ操作が行われ、その結果得ら
れるデバッグ情報は、第3の計算機の送信先管理手段に
保持されているデバッグ情報送信先情報の示す第1の計
算機(デバッグ操作を行う計算機)に直接送信される。
コマンドは、第1の計算機の送信先管理手段に保持され
ているデバッグコマンド送信先情報の示す第3の計算機
に直接送信される。また、このデバッグコマンドに従っ
て第3の計算機で起動されている第2のデバッグ対象プ
ログラムに対するデバッグ操作が行われ、その結果得ら
れるデバッグ情報は、第3の計算機の送信先管理手段に
保持されているデバッグ情報送信先情報の示す第1の計
算機(デバッグ操作を行う計算機)に直接送信される。
【0024】このように、ある計算機からのリクエスト
で起動されたプログラムの実行により、他の計算機上の
別のプログラムを起動するリクエスト(深いリクエスト
と呼ぶ)を発行する場合に、そのリクエスト発行元計算
機を示す情報ではなくて、送信先管理手段に保持されて
いるデバッグ情報送信先情報をそのままデバッグ情報の
送信先情報として用いると共に、この種のリクエストを
発行した際に、デバッグ対象プログラムが動作している
計算機が変更となったことと、その変更先の計算機とを
通知する特定のデバッグ情報をデバッグ操作を行う計算
機に送信することで、デバッグコマンドとデバッグ情報
の転送効率を向上することができる。
で起動されたプログラムの実行により、他の計算機上の
別のプログラムを起動するリクエスト(深いリクエスト
と呼ぶ)を発行する場合に、そのリクエスト発行元計算
機を示す情報ではなくて、送信先管理手段に保持されて
いるデバッグ情報送信先情報をそのままデバッグ情報の
送信先情報として用いると共に、この種のリクエストを
発行した際に、デバッグ対象プログラムが動作している
計算機が変更となったことと、その変更先の計算機とを
通知する特定のデバッグ情報をデバッグ操作を行う計算
機に送信することで、デバッグコマンドとデバッグ情報
の転送効率を向上することができる。
【0025】本発明の第3の観点に係る構成は、前記第
1の観点に係る構成におけるプログラム位置管理手段及
びリクエスト生成手段に代えて、プログラムのインタフ
ェースを定義したインタフェース情報と実行動作を記述
した実装コードからなるソースプログラム、当該プログ
ラムをコンパイルして得られるオブジェクトプログラ
ム、及び前記分散処理装置で実行されるプログラムが存
在する計算機を示す存在計算機情報を保持しておくプロ
グラム管理手段、及びソースプログラムのコンパイル時
に、当該プログラム中のインタフェース情報及び実装コ
ードをもとに、デバッグ対象プログラム起動用のデバッ
グ付きリクエストを発行するためのリクエスト生成プロ
グラムと、そのリクエストに対応したプログラム起動用
のリクエスト起動プログラムを生成して上記プログラム
管理手段に保持するプログラムコンパイル手段を設ける
他、デバッグ対象プログラムを制御してデバッグ操作を
行うデバッグ実行手段に、デバッグ対象プログラムを起
動する際には、上記プログラム管理手段からリクエスト
生成プログラムと共に当該デバッグ対象プログラムが存
在する計算機の存在計算機情報を探し、そのリクエスト
生成プログラム及び存在計算機情報をもとに、その計算
機情報が送信先情報として付された、当該デバッグ対象
プログラムの起動を要求するリクエストであるデバッグ
付きリクエストを生成する機能と、リクエスト受信手段
によりデバッグ付きリクエストが受信された場合には、
プログラム管理手段から当該リクエストに対応するリク
エスト起動プログラムを探し、このリクエスト起動プロ
グラムに従って、指定されたデバッグ対象プログラムを
起動する機能を持たせたことを特徴とする。
1の観点に係る構成におけるプログラム位置管理手段及
びリクエスト生成手段に代えて、プログラムのインタフ
ェースを定義したインタフェース情報と実行動作を記述
した実装コードからなるソースプログラム、当該プログ
ラムをコンパイルして得られるオブジェクトプログラ
ム、及び前記分散処理装置で実行されるプログラムが存
在する計算機を示す存在計算機情報を保持しておくプロ
グラム管理手段、及びソースプログラムのコンパイル時
に、当該プログラム中のインタフェース情報及び実装コ
ードをもとに、デバッグ対象プログラム起動用のデバッ
グ付きリクエストを発行するためのリクエスト生成プロ
グラムと、そのリクエストに対応したプログラム起動用
のリクエスト起動プログラムを生成して上記プログラム
管理手段に保持するプログラムコンパイル手段を設ける
他、デバッグ対象プログラムを制御してデバッグ操作を
行うデバッグ実行手段に、デバッグ対象プログラムを起
動する際には、上記プログラム管理手段からリクエスト
生成プログラムと共に当該デバッグ対象プログラムが存
在する計算機の存在計算機情報を探し、そのリクエスト
生成プログラム及び存在計算機情報をもとに、その計算
機情報が送信先情報として付された、当該デバッグ対象
プログラムの起動を要求するリクエストであるデバッグ
付きリクエストを生成する機能と、リクエスト受信手段
によりデバッグ付きリクエストが受信された場合には、
プログラム管理手段から当該リクエストに対応するリク
エスト起動プログラムを探し、このリクエスト起動プロ
グラムに従って、指定されたデバッグ対象プログラムを
起動する機能を持たせたことを特徴とする。
【0026】また、本発明の第4の観点に係る構成は、
前記第2の観点に係る構成におけるプログラム位置管理
手段及びリクエスト生成手段に代えて、上記第3の観点
に係る構成と同様のプログラム管理手段、及びプログラ
ムコンパイル手段を設ける他、デバッグ対象プログラム
を制御してデバッグ操作を行うデバッグ実行手段に、デ
バッグ対象プログラムを起動する際には、上記プログラ
ム管理手段からリクエスト生成プログラムと共に当該デ
バッグ対象プログラムが存在する計算機の存在計算機情
報を探し、そのリクエスト生成プログラム及び存在計算
機情報をもとに、その計算機情報が送信先情報として付
されると共に、送信先管理手段に保持されているデバッ
グ情報送信先情報が付されたデバッグ付きリクエストを
生成する機能と、リクエスト受信手段によりデバッグ付
きリクエストが受信された場合には、プログラム管理手
段から当該リクエストに対応するリクエスト起動プログ
ラムを探し、このリクエスト起動プログラムに従って、
指定されたデバッグ対象プログラムを起動する機能を持
たせたことを特徴とする。
前記第2の観点に係る構成におけるプログラム位置管理
手段及びリクエスト生成手段に代えて、上記第3の観点
に係る構成と同様のプログラム管理手段、及びプログラ
ムコンパイル手段を設ける他、デバッグ対象プログラム
を制御してデバッグ操作を行うデバッグ実行手段に、デ
バッグ対象プログラムを起動する際には、上記プログラ
ム管理手段からリクエスト生成プログラムと共に当該デ
バッグ対象プログラムが存在する計算機の存在計算機情
報を探し、そのリクエスト生成プログラム及び存在計算
機情報をもとに、その計算機情報が送信先情報として付
されると共に、送信先管理手段に保持されているデバッ
グ情報送信先情報が付されたデバッグ付きリクエストを
生成する機能と、リクエスト受信手段によりデバッグ付
きリクエストが受信された場合には、プログラム管理手
段から当該リクエストに対応するリクエスト起動プログ
ラムを探し、このリクエスト起動プログラムに従って、
指定されたデバッグ対象プログラムを起動する機能を持
たせたことを特徴とする。
【0027】上記第4及び第5の観点に係る構成におい
ては、プログラムコンパイル手段によるソースプログラ
ムのコンパイル時に、当該プログラム中のインタフェー
ス情報及び実装コードをもとにデバッグ対象プログラム
起動用のデバッグ付きリクエストを発行するためのリク
エスト生成プログラムと、そのリクエストに対応したプ
ログラム起動用のリクエスト起動プログラムを予め静的
に生成してプログラム管理手段に保持しておき、デバッ
グ対象プログラムを起動する際には、プログラム管理手
段に保持されている専用のリクエスト生成プログラムを
利用することでデバッグ付きリクエストの発行が速やか
に行え、デバッグ付きリクエストを受信した際には、プ
ログラム管理手段に保持されている専用のリクエスト起
動プログラムを利用することでデバッグ対象プログラム
を起動してデバッグ操作可能状態とする制御が速やかに
行えるようになる。なお、プログラム実行時に動的にリ
クエストを組み立てる汎用的な方式では、対象プログラ
ムが起動できるか否かをチェックしてからリクエストが
生成されることから、時間がかかる。また、リクエスト
生成のために、実行プログラム内でデータタイプ等が調
べられることから、この点でも時間がかかる。
ては、プログラムコンパイル手段によるソースプログラ
ムのコンパイル時に、当該プログラム中のインタフェー
ス情報及び実装コードをもとにデバッグ対象プログラム
起動用のデバッグ付きリクエストを発行するためのリク
エスト生成プログラムと、そのリクエストに対応したプ
ログラム起動用のリクエスト起動プログラムを予め静的
に生成してプログラム管理手段に保持しておき、デバッ
グ対象プログラムを起動する際には、プログラム管理手
段に保持されている専用のリクエスト生成プログラムを
利用することでデバッグ付きリクエストの発行が速やか
に行え、デバッグ付きリクエストを受信した際には、プ
ログラム管理手段に保持されている専用のリクエスト起
動プログラムを利用することでデバッグ対象プログラム
を起動してデバッグ操作可能状態とする制御が速やかに
行えるようになる。なお、プログラム実行時に動的にリ
クエストを組み立てる汎用的な方式では、対象プログラ
ムが起動できるか否かをチェックしてからリクエストが
生成されることから、時間がかかる。また、リクエスト
生成のために、実行プログラム内でデータタイプ等が調
べられることから、この点でも時間がかかる。
【0028】
[第1の実施例]まず、本発明の第1の実施例につき図
面を参照して説明する。
面を参照して説明する。
【0029】図1は本発明の第1の実施例に係る分散処
理装置のシステム構成を示すブロック図、図2は図1中
の各計算機の機能構成を示すブロック図である。
理装置のシステム構成を示すブロック図、図2は図1中
の各計算機の機能構成を示すブロック図である。
【0030】図1に示す分散処理装置は、複数の計算機
10-1,10-2,…10-nと、これら計算機10-1〜1
0-n間の通信に用いられる通信路11により構成され
る。
10-1,10-2,…10-nと、これら計算機10-1〜1
0-n間の通信に用いられる通信路11により構成され
る。
【0031】各計算機10-i(i=1〜n)は、図2に
示すように、プログラム位置管理部20、リクエスト生
成部22、リクエスト通信部23、デバッグ実行部2
4、デバッグ操作部25、コマンド送信先選択部26、
コマンド通信部27、デバッグ情報通信部28及びデバ
ッグ情報送信先選択部29を有している。
示すように、プログラム位置管理部20、リクエスト生
成部22、リクエスト通信部23、デバッグ実行部2
4、デバッグ操作部25、コマンド送信先選択部26、
コマンド通信部27、デバッグ情報通信部28及びデバ
ッグ情報送信先選択部29を有している。
【0032】プログラム位置管理部20は、デバッグ対
象プログラムの存在場所(具体的には、プログラムのプ
ログラム名と当該プログラムが存在する計算機を示す識
別子との組からなる、各プログラム毎の存在計算機情
報)を保持するものであり、図示しない主記憶または二
次記憶上に確保される。
象プログラムの存在場所(具体的には、プログラムのプ
ログラム名と当該プログラムが存在する計算機を示す識
別子との組からなる、各プログラム毎の存在計算機情
報)を保持するものであり、図示しない主記憶または二
次記憶上に確保される。
【0033】リクエスト生成部22は、デバッグ対象プ
ログラムを起動してデバッグ可能状態とするための要求
(デバッグ付きリクエスト)を生成するものである。
ログラムを起動してデバッグ可能状態とするための要求
(デバッグ付きリクエスト)を生成するものである。
【0034】リクエスト通信部23は、リクエスト生成
部22が生成したリクエストを対象計算機に送信するリ
クエスト送信部231と、図1の分散処理装置内のある
計算機から送られたリクエストを受信するリクエスト受
信部232からなる。
部22が生成したリクエストを対象計算機に送信するリ
クエスト送信部231と、図1の分散処理装置内のある
計算機から送られたリクエストを受信するリクエスト受
信部232からなる。
【0035】デバッグ実行部24は、デバッグコマンド
の指示するデバッグ操作を(デバッグプログラムにより
実現される)デバッガ(図示せず)により実行するもの
であり、起動リクエストからデバッグ対象プログラムを
起動する操作を含んでいる。
の指示するデバッグ操作を(デバッグプログラムにより
実現される)デバッガ(図示せず)により実行するもの
であり、起動リクエストからデバッグ対象プログラムを
起動する操作を含んでいる。
【0036】デバッグ操作部25は、ユーザ(プログラ
マ)によるデバッグ作業のためのインタフェースをなす
もので、デバッグ対象プログラムに対するコマンド(デ
バッグコマンド)の発行を行うデバッグコマンド入力部
251と、デバッグ情報を表示するデバッグ情報表示部
252からなる。
マ)によるデバッグ作業のためのインタフェースをなす
もので、デバッグ対象プログラムに対するコマンド(デ
バッグコマンド)の発行を行うデバッグコマンド入力部
251と、デバッグ情報を表示するデバッグ情報表示部
252からなる。
【0037】コマンド送信先選択部26は、デバッグ対
象プログラムの動作する計算機をデバッグコマンドの送
信先として選択するものである。
象プログラムの動作する計算機をデバッグコマンドの送
信先として選択するものである。
【0038】コマンド通信部27は、デバッグ対象プロ
グラムが起動されている計算機に対してデバッグコマン
ドを送信するコマンド送信部271と、デバッグ要求元
計算機からのデバッグコマンドを受信するコマンド受信
部272からなる。
グラムが起動されている計算機に対してデバッグコマン
ドを送信するコマンド送信部271と、デバッグ要求元
計算機からのデバッグコマンドを受信するコマンド受信
部272からなる。
【0039】デバッグ情報通信部28は、デバッグ要求
先計算機からのデバッグ情報を受信するデバッグ情報受
信部281と、(デバッグ要求元計算機からのデバッグ
コマンドに従う)デバッグ実行部24でのデバッグ操作
により得られるデバッグ情報をデバッグ要求元計算機に
送信するデバッグ情報送信部282からなる。
先計算機からのデバッグ情報を受信するデバッグ情報受
信部281と、(デバッグ要求元計算機からのデバッグ
コマンドに従う)デバッグ実行部24でのデバッグ操作
により得られるデバッグ情報をデバッグ要求元計算機に
送信するデバッグ情報送信部282からなる。
【0040】デバッグ情報送信先選択部29は、デバッ
グ要求元計算機をデバッグ情報の送信先計算機として選
択するものである。
グ要求元計算機をデバッグ情報の送信先計算機として選
択するものである。
【0041】次に、図2の構成の計算機10-1〜10-n
を備えた図1の分散処理装置における動作を、ユーザ
(プログラマ)のいる計算機10-1からリクエストを発
行し、計算機10-2でプログラムP1を動作させてデバ
ッグを行う場合を例に、(1)リクエスト発行時と
(2)デバッグ操作時にわけて説明する。
を備えた図1の分散処理装置における動作を、ユーザ
(プログラマ)のいる計算機10-1からリクエストを発
行し、計算機10-2でプログラムP1を動作させてデバ
ッグを行う場合を例に、(1)リクエスト発行時と
(2)デバッグ操作時にわけて説明する。
【0042】(1)リクエスト発行時 本実施例におけるリクエストの発行は、プログラムの動
作時に他のプログラムを起動する命令(を実行するこ
と)によって行われる。以下の説明では、デバッグ対象
プログラムP1を起動するものとする。
作時に他のプログラムを起動する命令(を実行するこ
と)によって行われる。以下の説明では、デバッグ対象
プログラムP1を起動するものとする。
【0043】まず、計算機10-1のリクエスト生成部2
2は、プログラム位置管理部20に保持されているプロ
グラムの存在場所の情報(存在計算機情報)から、デバ
ッグ対象プログラムP1が存在する計算機(の識別子)
をリクエスト(デバッグ付きリクエスト)の送信先計算
機(の識別子)として探す。プログラムP1が存在する
計算機は、複数であっても構わないが、以下の説明で
は、計算機10-2だけに存在するものとする。
2は、プログラム位置管理部20に保持されているプロ
グラムの存在場所の情報(存在計算機情報)から、デバ
ッグ対象プログラムP1が存在する計算機(の識別子)
をリクエスト(デバッグ付きリクエスト)の送信先計算
機(の識別子)として探す。プログラムP1が存在する
計算機は、複数であっても構わないが、以下の説明で
は、計算機10-2だけに存在するものとする。
【0044】ここで、リクエスト生成部22において生
成しようとしているリクエストの原形(プログラムP1
を起動するための起動リクエスト)を図3(a)に示
す。この図3(a)中の第1要素“create”は新
しいプログラムの起動命令を、第2要素“P1”は起動
対象プログラムP1の識別子(プログラム名)を示して
いる。
成しようとしているリクエストの原形(プログラムP1
を起動するための起動リクエスト)を図3(a)に示
す。この図3(a)中の第1要素“create”は新
しいプログラムの起動命令を、第2要素“P1”は起動
対象プログラムP1の識別子(プログラム名)を示して
いる。
【0045】計算機10-1のリクエスト生成部22は、
図3(a)のリクエストの原形に、プログラム位置管理
部20から探したリクエスト送信先計算機10-2(起動
すべきデバッグ対象プログラムが存在する計算機10-
2)の識別子(計算機#2)と、その原形中のプログラ
ム識別子(P1)で示されるプログラムP1がデバッグ
対象プログラムであることを示す情報“debug”を
付加し、図3(b)に示すデバッグ付きリクエストを生
成する。
図3(a)のリクエストの原形に、プログラム位置管理
部20から探したリクエスト送信先計算機10-2(起動
すべきデバッグ対象プログラムが存在する計算機10-
2)の識別子(計算機#2)と、その原形中のプログラ
ム識別子(P1)で示されるプログラムP1がデバッグ
対象プログラムであることを示す情報“debug”を
付加し、図3(b)に示すデバッグ付きリクエストを生
成する。
【0046】計算機10-1のリクエスト生成部22によ
り生成されたリクエストは、当該リクエストに含まれる
リクエスト送信先計算機識別子(計算機#2)をもと
に、リクエスト通信部23内のリクエスト送信部231
により通信路11を介して当該識別子の計算機10-2に
送信される。このリクエストの送信は、(計算機10-2
を示す)送信先アドレスと(計算機10-1を示す)送信
元アドレスを付加して行われる。
り生成されたリクエストは、当該リクエストに含まれる
リクエスト送信先計算機識別子(計算機#2)をもと
に、リクエスト通信部23内のリクエスト送信部231
により通信路11を介して当該識別子の計算機10-2に
送信される。このリクエストの送信は、(計算機10-2
を示す)送信先アドレスと(計算機10-1を示す)送信
元アドレスを付加して行われる。
【0047】計算機10-1のリクエスト送信部231に
より計算機10-2に送信された(計算機10-1からの)
デバッグ付きリクエストは、計算機10-2のリクエスト
受信部232で受信され、当該計算機10-2のデバッグ
実行部24に渡される。
より計算機10-2に送信された(計算機10-1からの)
デバッグ付きリクエストは、計算機10-2のリクエスト
受信部232で受信され、当該計算機10-2のデバッグ
実行部24に渡される。
【0048】計算機10-2のデバッグ実行部24は、リ
クエスト受信部232から渡された図3(b)に示すよ
うなデバッグ付きリクエストから、図3(a)に示した
オリジナルのリクエスト(リクエストの原形)、即ちプ
ログラムP1を起動するためのリクエストを復元して、
当該プログラムP1(デバッグ対象プログラムP1)を
起動する。このときデバッグ実行部24は、プログラム
P1をデバッグするために、そのプログラムP1とデバ
ッガとを結合する。
クエスト受信部232から渡された図3(b)に示すよ
うなデバッグ付きリクエストから、図3(a)に示した
オリジナルのリクエスト(リクエストの原形)、即ちプ
ログラムP1を起動するためのリクエストを復元して、
当該プログラムP1(デバッグ対象プログラムP1)を
起動する。このときデバッグ実行部24は、プログラム
P1をデバッグするために、そのプログラムP1とデバ
ッガとを結合する。
【0049】(2)デバッグ操作時 次に、計算機10-1から計算機10-2上のプログラムP
1(先のデバッグ付きリクエストによって計算機10-2
において起動されているプログラムP1)をデバッグす
る場合の動作を説明する。
1(先のデバッグ付きリクエストによって計算機10-2
において起動されているプログラムP1)をデバッグす
る場合の動作を説明する。
【0050】ここでは、計算機10-1のデバッグ操作部
25が有するデバッグコマンド入力部251によりデバ
ッグ対象プログラムP1のデバッグ操作を行うものとす
る。
25が有するデバッグコマンド入力部251によりデバ
ッグ対象プログラムP1のデバッグ操作を行うものとす
る。
【0051】まず、計算機10-1のデバッグコマンド入
力部251により、デバッグ対象プログラムP1へのブ
レークポイントの設定を指示する図4に示すような形式
のコマンド(デバッグコマンド)が発行されたものとす
る。図4中の第1要素“breakpoint”はブレ
ークポイントであることを、第2要素“P1−labe
l−i”はデバッグ対象プログラムP1でのブレークポ
イントとなる論理位置(label−i)を示してい
る。
力部251により、デバッグ対象プログラムP1へのブ
レークポイントの設定を指示する図4に示すような形式
のコマンド(デバッグコマンド)が発行されたものとす
る。図4中の第1要素“breakpoint”はブレ
ークポイントであることを、第2要素“P1−labe
l−i”はデバッグ対象プログラムP1でのブレークポ
イントとなる論理位置(label−i)を示してい
る。
【0052】計算機10-1のコマンド送信先選択部26
は、デバッグコマンド入力部251により発行された図
4に示す形式のデバッグコマンドの第2要素(の“P
1”の部分)からデバッグ対象プログラムP1を判断す
る。そしてコマンド送信先選択部26は、プログラム位
置管理部20に保持されているプログラムの存在場所の
情報(存在計算機情報)から、自身が判断したデバッグ
対象プログラムP1が存在する計算機10-2を探し、そ
の計算機10-2をデバッグコマンドの送信先として決定
する。
は、デバッグコマンド入力部251により発行された図
4に示す形式のデバッグコマンドの第2要素(の“P
1”の部分)からデバッグ対象プログラムP1を判断す
る。そしてコマンド送信先選択部26は、プログラム位
置管理部20に保持されているプログラムの存在場所の
情報(存在計算機情報)から、自身が判断したデバッグ
対象プログラムP1が存在する計算機10-2を探し、そ
の計算機10-2をデバッグコマンドの送信先として決定
する。
【0053】さて、上記コマンド送信先選択部26での
コマンド送信先計算機の決定の結果、デバッグコマンド
入力部251により発行されたデバッグコマンドは、計
算機10-1のコマンド送信部271により通信路11を
介して計算機10-2に送信される。このデバッグコマン
ドの送信は、(計算機10-2を示す)送信先アドレスと
(計算機10-1を示す)送信元アドレスを付加して行わ
れる。
コマンド送信先計算機の決定の結果、デバッグコマンド
入力部251により発行されたデバッグコマンドは、計
算機10-1のコマンド送信部271により通信路11を
介して計算機10-2に送信される。このデバッグコマン
ドの送信は、(計算機10-2を示す)送信先アドレスと
(計算機10-1を示す)送信元アドレスを付加して行わ
れる。
【0054】計算機10-1のコマンド送信部271によ
り計算機10-2に送信された(計算機10-1からの)デ
バッグコマンドは、計算機10-2のコマンド受信部27
2で受信され、当該計算機10-2のデバッグ実行部24
に渡される。
り計算機10-2に送信された(計算機10-1からの)デ
バッグコマンドは、計算機10-2のコマンド受信部27
2で受信され、当該計算機10-2のデバッグ実行部24
に渡される。
【0055】計算機10-2のデバッグ実行部24は、コ
マンド受信部272から渡された図4に示すようなデバ
ッグコマンドの指示に従い、(先に受け取った計算機1
0-1からのデバッグ付きリクエストに従って)起動され
ているデバッグ対象プログラムP1のブレークポイント
を設定する。
マンド受信部272から渡された図4に示すようなデバ
ッグコマンドの指示に従い、(先に受け取った計算機1
0-1からのデバッグ付きリクエストに従って)起動され
ているデバッグ対象プログラムP1のブレークポイント
を設定する。
【0056】また、デバッグ実行部24は、設定したブ
レークポイントに対するデバッグ情報をデバッグ要求元
計算機に返信するために、コマンド受信部272から渡
されたデバッグコマンドの発行元(送信元)計算機10
-1がデバッグ情報の返信先であることをデバッグ情報送
信先選択部29に通知して、そのデバッグ情報返信先
(デバッグコマンド発行元)計算機情報を内部に保持さ
せる。
レークポイントに対するデバッグ情報をデバッグ要求元
計算機に返信するために、コマンド受信部272から渡
されたデバッグコマンドの発行元(送信元)計算機10
-1がデバッグ情報の返信先であることをデバッグ情報送
信先選択部29に通知して、そのデバッグ情報返信先
(デバッグコマンド発行元)計算機情報を内部に保持さ
せる。
【0057】さて、計算機10-2のデバッグ実行部24
は、デバッグコマンドの指示に従ってデバッグ対象プロ
グラムP1のブレークポイントを設定したことにより、
そのブレークポイントでデバッグ情報を得ると、当該デ
バッグ情報をデバッグ情報送信先選択部29に渡す。
は、デバッグコマンドの指示に従ってデバッグ対象プロ
グラムP1のブレークポイントを設定したことにより、
そのブレークポイントでデバッグ情報を得ると、当該デ
バッグ情報をデバッグ情報送信先選択部29に渡す。
【0058】計算機10-2のデバッグ情報送信先選択部
29は、デバッグ実行部24によって当該選択部29内
部に保持されたデバッグ情報返信先(デバッグコマンド
発行元)計算機情報に従い、デバッグコマンドの発行元
計算機10-1をデバッグ情報の返信先として選択する。
この結果、上記デバッグ情報は、計算機10-2のデバッ
グ情報送信部282により通信路11を介して計算機1
0-1に送信される。このデバッグ情報の送信は、(計算
機10-1を示す)送信先アドレスと(計算機10-2を示
す)送信元アドレスを付加して行われる。
29は、デバッグ実行部24によって当該選択部29内
部に保持されたデバッグ情報返信先(デバッグコマンド
発行元)計算機情報に従い、デバッグコマンドの発行元
計算機10-1をデバッグ情報の返信先として選択する。
この結果、上記デバッグ情報は、計算機10-2のデバッ
グ情報送信部282により通信路11を介して計算機1
0-1に送信される。このデバッグ情報の送信は、(計算
機10-1を示す)送信先アドレスと(計算機10-2を示
す)送信元アドレスを付加して行われる。
【0059】計算機10-2のデバッグ情報送信部282
により計算機10-1に送信された(計算機10-2から
の)デバッグ情報は、計算機10-1のデバッグ情報受信
部281で受信される。この受信デバッグ情報は、計算
機10-1のデバッグ情報表示部252により表示され
る。このデバッグ情報をプリント出力することも可能で
ある。
により計算機10-1に送信された(計算機10-2から
の)デバッグ情報は、計算機10-1のデバッグ情報受信
部281で受信される。この受信デバッグ情報は、計算
機10-1のデバッグ情報表示部252により表示され
る。このデバッグ情報をプリント出力することも可能で
ある。
【0060】なお、以上の説明では、プログラム位置管
理部20は各計算機10-1〜10-nにそれぞれ設けられ
ているものとしたが、システムに1つだけ設け、各計算
機10-1〜10-nにより共有される構成とすることも可
能である。この場合、各計算機10-1〜10-nはプログ
ラム位置管理部20を間接的に持つことになる。
理部20は各計算機10-1〜10-nにそれぞれ設けられ
ているものとしたが、システムに1つだけ設け、各計算
機10-1〜10-nにより共有される構成とすることも可
能である。この場合、各計算機10-1〜10-nはプログ
ラム位置管理部20を間接的に持つことになる。
【0061】また、デバッグ操作部25、コマンド送信
先選択部26、コマンド送信部27及びデバッグ情報受
信部281も各計算機10-1〜10-nにそれぞれ設けら
れているものとしたが、デバッグ操作を行う計算機だけ
に設けられているものであっても構わない。
先選択部26、コマンド送信部27及びデバッグ情報受
信部281も各計算機10-1〜10-nにそれぞれ設けら
れているものとしたが、デバッグ操作を行う計算機だけ
に設けられているものであっても構わない。
【0062】[第2の実施例]次に、本発明の第2の実
施例につき図面を参照して説明する。
施例につき図面を参照して説明する。
【0063】まず、本実施例が前記第1の実施例と異な
る点は、分散処理装置内の各計算機の機能構成であり、
分散処理装置のシステム構成自体は変わらない。そこ
で、以下の説明では、図1の分散処理装置のシステム構
成を便宜的に参照し、図1中の各計算機10-i(i=1
〜n)の本実施例特有の機能構成を図5に示して、前記
第1の実施例における図2の機能構成と異なることを明
確にする。
る点は、分散処理装置内の各計算機の機能構成であり、
分散処理装置のシステム構成自体は変わらない。そこ
で、以下の説明では、図1の分散処理装置のシステム構
成を便宜的に参照し、図1中の各計算機10-i(i=1
〜n)の本実施例特有の機能構成を図5に示して、前記
第1の実施例における図2の機能構成と異なることを明
確にする。
【0064】本実施例における各計算機10-i(i=1
〜n)は、図5に示すように、プログラム位置管理部3
0、送信先管理部31、リクエスト生成部32、リクエ
スト通信部33、デバッグ実行部34、デバッグ操作部
35、コマンド送信先選択部36、コマンド通信部3
7、デバッグ情報通信部38及びデバッグ情報送信先選
択部39を有している。
〜n)は、図5に示すように、プログラム位置管理部3
0、送信先管理部31、リクエスト生成部32、リクエ
スト通信部33、デバッグ実行部34、デバッグ操作部
35、コマンド送信先選択部36、コマンド通信部3
7、デバッグ情報通信部38及びデバッグ情報送信先選
択部39を有している。
【0065】プログラム位置管理部30は、デバッグ対
象プログラムの存在場所(存在計算機情報)を保持する
ものであり、主記憶または二次記憶上に確保される。
象プログラムの存在場所(存在計算機情報)を保持する
ものであり、主記憶または二次記憶上に確保される。
【0066】送信先管理部31は、デバッグコマンドの
送信先の情報及びデバッグ情報の送信先の情報を保持す
るものであり、主記憶または二次記憶上に確保される。
送信先の情報及びデバッグ情報の送信先の情報を保持す
るものであり、主記憶または二次記憶上に確保される。
【0067】リクエスト生成部32は、デバッグ対象プ
ログラムを起動してデバッグ可能状態とするための要求
(デバッグ付きリクエスト)を生成するものである。こ
のリクエストには、後述するように、当該リクエストの
送信先計算機の情報(識別子)とデバッグ情報の送信先
(返信先)計算機の情報(識別子)が付されている。リ
クエスト生成部32は、生成したリクエストをリクエス
ト送信部331により送信する際に、その送信先計算機
の情報をデバッグコマンドの送信先情報として送信先管
理部31に保持するようになっている。
ログラムを起動してデバッグ可能状態とするための要求
(デバッグ付きリクエスト)を生成するものである。こ
のリクエストには、後述するように、当該リクエストの
送信先計算機の情報(識別子)とデバッグ情報の送信先
(返信先)計算機の情報(識別子)が付されている。リ
クエスト生成部32は、生成したリクエストをリクエス
ト送信部331により送信する際に、その送信先計算機
の情報をデバッグコマンドの送信先情報として送信先管
理部31に保持するようになっている。
【0068】リクエスト通信部33は、リクエスト生成
部32が生成したリクエストを対象計算機に送信するリ
クエスト送信部331と、図1の分散処理装置内のある
計算機から送られたリクエストを受信するリクエスト受
信部332からなる。
部32が生成したリクエストを対象計算機に送信するリ
クエスト送信部331と、図1の分散処理装置内のある
計算機から送られたリクエストを受信するリクエスト受
信部332からなる。
【0069】デバッグ実行部34は、デバッグコマンド
の指示するデバッグ操作をデバッガにより実行するもの
であり、起動リクエストからデバッグ対象プログラムを
起動する操作を含んでいる。デバッグ実行部34は、リ
クエスト受信部332からリクエストを受け取った場合
に、そのリクエストに付されているデバッグ情報送信先
(返信先)情報を送信先管理部31に保持するようにな
っている。
の指示するデバッグ操作をデバッガにより実行するもの
であり、起動リクエストからデバッグ対象プログラムを
起動する操作を含んでいる。デバッグ実行部34は、リ
クエスト受信部332からリクエストを受け取った場合
に、そのリクエストに付されているデバッグ情報送信先
(返信先)情報を送信先管理部31に保持するようにな
っている。
【0070】デバッグ操作部35は、ユーザ(プログラ
マ)によるデバッグ作業のためのインタフェースをなす
もので、デバッグ対象プログラムに対するコマンド(デ
バッグコマンド)の発行を行うデバッグコマンド入力部
351と、デバッグ情報を表示するデバッグ情報表示部
352からなる。デバッグ情報表示部352は、他計算
機から送られたデバッグ情報を(デバッグ情報受信部3
81からではなく)デバッグ情報送信先選択部39から
受け取るようになっている。
マ)によるデバッグ作業のためのインタフェースをなす
もので、デバッグ対象プログラムに対するコマンド(デ
バッグコマンド)の発行を行うデバッグコマンド入力部
351と、デバッグ情報を表示するデバッグ情報表示部
352からなる。デバッグ情報表示部352は、他計算
機から送られたデバッグ情報を(デバッグ情報受信部3
81からではなく)デバッグ情報送信先選択部39から
受け取るようになっている。
【0071】コマンド送信先選択部36は、デバッグコ
マンドの送信先計算機を選択するものである。このデバ
ッグコマンドの送信先計算機は送信先管理部31内のデ
バッグコマンド送信先情報によって示され、計算機10
-i自身(自計算機)の場合もある。送信の対象となるデ
バッグコマンドは、デバッグ操作部35(内のデバッグ
コマンド入力部351)からのデバッグコマンドの場合
と、コマンド通信部37(内のコマンド受信部372)
で受信された他計算機からのデバッグコマンドの場合が
ある。
マンドの送信先計算機を選択するものである。このデバ
ッグコマンドの送信先計算機は送信先管理部31内のデ
バッグコマンド送信先情報によって示され、計算機10
-i自身(自計算機)の場合もある。送信の対象となるデ
バッグコマンドは、デバッグ操作部35(内のデバッグ
コマンド入力部351)からのデバッグコマンドの場合
と、コマンド通信部37(内のコマンド受信部372)
で受信された他計算機からのデバッグコマンドの場合が
ある。
【0072】コマンド通信部37は、デバッグ対象プロ
グラムが起動されている計算機に対してデバッグコマン
ドを送信するコマンド送信部371と、デバッグ要求元
計算機からのデバッグコマンドを受信するコマンド受信
部372からなる。コマンド送信部371は、受信した
デバッグコマンドを(デバッグ実行部34ではなくて)
コマンド送信先選択部36に渡すようになっている。
グラムが起動されている計算機に対してデバッグコマン
ドを送信するコマンド送信部371と、デバッグ要求元
計算機からのデバッグコマンドを受信するコマンド受信
部372からなる。コマンド送信部371は、受信した
デバッグコマンドを(デバッグ実行部34ではなくて)
コマンド送信先選択部36に渡すようになっている。
【0073】デバッグ情報通信部38は、デバッグ要求
先計算機からのデバッグ情報を受信するデバッグ情報受
信部381と、(デバッグ要求元計算機からのデバッグ
コマンドに従う)デバッグ実行部34でのデバッグ操作
により得られるデバッグ情報をデバッグ要求元計算機に
送信するデバッグ情報送信部382からなる。デバッグ
情報受信部381は、受信したデバッグ情報を(デバッ
グ情報表示部352ではなくて)デバッグ情報送信先選
択部39に渡すようになっている。
先計算機からのデバッグ情報を受信するデバッグ情報受
信部381と、(デバッグ要求元計算機からのデバッグ
コマンドに従う)デバッグ実行部34でのデバッグ操作
により得られるデバッグ情報をデバッグ要求元計算機に
送信するデバッグ情報送信部382からなる。デバッグ
情報受信部381は、受信したデバッグ情報を(デバッ
グ情報表示部352ではなくて)デバッグ情報送信先選
択部39に渡すようになっている。
【0074】デバッグ情報送信先選択部39は、デバッ
グ情報の送信先計算機を選択するものである。このデバ
ッグ情報の送信先計算機は送信先管理部31内のデバッ
グ情報送信先情報によって示され、計算機10-i自身
(自計算機)の場合もある。
グ情報の送信先計算機を選択するものである。このデバ
ッグ情報の送信先計算機は送信先管理部31内のデバッ
グ情報送信先情報によって示され、計算機10-i自身
(自計算機)の場合もある。
【0075】次に、図5の構成の計算機10-1〜10-n
を備えた図1の分散処理装置における動作を、ユーザ
(プログラマ)のいる計算機10-1からリクエストを発
行し、計算機10-2でプログラムP1を動作させてデバ
ッグを行う場合を例に、(1)リクエスト発行時と
(2)デバッグ操作時に分けて説明する他、(3)深い
リクエスト(あるリクエストにより起動されたプログラ
ムから他の計算機上の別のプログラムを起動するための
リクエスト)が発行される場合についても説明する。
を備えた図1の分散処理装置における動作を、ユーザ
(プログラマ)のいる計算機10-1からリクエストを発
行し、計算機10-2でプログラムP1を動作させてデバ
ッグを行う場合を例に、(1)リクエスト発行時と
(2)デバッグ操作時に分けて説明する他、(3)深い
リクエスト(あるリクエストにより起動されたプログラ
ムから他の計算機上の別のプログラムを起動するための
リクエスト)が発行される場合についても説明する。
【0076】(1)リクエスト発行時 今、リクエスト(デバッグ付きリクエスト)発行前にお
いて、計算機10-1,10-2の送信先管理部31には、
デバッグコマンドの送信先及びデバッグ情報の送信先と
して、いずれも当該計算機10-1,10-2自身(自計算
機)を示す送信先情報が保持されているものとする。
いて、計算機10-1,10-2の送信先管理部31には、
デバッグコマンドの送信先及びデバッグ情報の送信先と
して、いずれも当該計算機10-1,10-2自身(自計算
機)を示す送信先情報が保持されているものとする。
【0077】本実施例におけるリクエストの発行は、プ
ログラムの動作時に他のプログラムを起動する命令(を
実行すること)によって行われる。以下の説明では、デ
バッグ対象プログラムP1を起動するものとする。
ログラムの動作時に他のプログラムを起動する命令(を
実行すること)によって行われる。以下の説明では、デ
バッグ対象プログラムP1を起動するものとする。
【0078】まず、計算機10-1のリクエスト生成部3
2は、プログラム位置管理部30に保持されている存在
計算機情報から、デバッグ対象プログラムP1が存在す
る計算機(の識別子)をリクエスト(デバッグ付きリク
エスト)の送信先計算機(の識別子)として探す。これ
により、(前記第1の実施例と同様に)計算機10-2が
リクエストの送信先計算機として決定されたものとす
る。
2は、プログラム位置管理部30に保持されている存在
計算機情報から、デバッグ対象プログラムP1が存在す
る計算機(の識別子)をリクエスト(デバッグ付きリク
エスト)の送信先計算機(の識別子)として探す。これ
により、(前記第1の実施例と同様に)計算機10-2が
リクエストの送信先計算機として決定されたものとす
る。
【0079】次にリクエスト生成部32は、新たなプロ
グラムP1を起動するための図6(a)に示す(図3
(a)と同様の)リクエストの原形に、プログラム位置
管理部30から探したリクエスト送信先計算機10-2の
識別子(計算機#2)と、その原形中のプログラム識別
子(P1)で示されるプログラムP1がデバッグ対象プ
ログラムであることを示す情報“debug”を付加す
る他、リクエストの発行元計算機10-1の識別子(計算
機#1)をデバッグ情報の送信先(返信先)計算機を示
す識別子(デバッグ情報送信先情報)として更に付加
し、図6(b)に示すデバッグ付きリクエストを生成す
る。
グラムP1を起動するための図6(a)に示す(図3
(a)と同様の)リクエストの原形に、プログラム位置
管理部30から探したリクエスト送信先計算機10-2の
識別子(計算機#2)と、その原形中のプログラム識別
子(P1)で示されるプログラムP1がデバッグ対象プ
ログラムであることを示す情報“debug”を付加す
る他、リクエストの発行元計算機10-1の識別子(計算
機#1)をデバッグ情報の送信先(返信先)計算機を示
す識別子(デバッグ情報送信先情報)として更に付加
し、図6(b)に示すデバッグ付きリクエストを生成す
る。
【0080】この図6(b)のデバッグ付きリクエスト
が、図3(b)のデバッグ付きリクエストと異なる点
は、リクエストの発行元計算機(ここでは計算機10-
1)の識別子が、デバッグ情報の返信先(送信先)計算
機を示す情報として新たに付加されていることである。
が、図3(b)のデバッグ付きリクエストと異なる点
は、リクエストの発行元計算機(ここでは計算機10-
1)の識別子が、デバッグ情報の返信先(送信先)計算
機を示す情報として新たに付加されていることである。
【0081】さて、計算機10-1のリクエスト生成部3
2により生成された図6(b)のデバッグ付きリクエス
トは、当該リクエストに含まれるリクエスト送信先計算
機識別子(計算機#2)をもとに、リクエスト通信部3
3内のリクエスト送信部331により通信路11を介し
て当該識別子の計算機10-2に送信される。
2により生成された図6(b)のデバッグ付きリクエス
トは、当該リクエストに含まれるリクエスト送信先計算
機識別子(計算機#2)をもとに、リクエスト通信部3
3内のリクエスト送信部331により通信路11を介し
て当該識別子の計算機10-2に送信される。
【0082】このとき計算機10-1のリクエスト生成部
32は、自身の生成したリクエストの送信先計算機10
-2がデバッグコマンドの送信先となるように、送信先管
理部31に保持されているデバッグコマンド送信先情報
を(現在の計算機10-1自身を示す情報から)変更す
る。
32は、自身の生成したリクエストの送信先計算機10
-2がデバッグコマンドの送信先となるように、送信先管
理部31に保持されているデバッグコマンド送信先情報
を(現在の計算機10-1自身を示す情報から)変更す
る。
【0083】計算機10-1のリクエスト送信部331に
より計算機10-2に送信された(計算機10-1からの)
デバッグ付きリクエストは、計算機10-2のリクエスト
受信部332で受信され、当該計算機10-2のデバッグ
実行部34に渡される。
より計算機10-2に送信された(計算機10-1からの)
デバッグ付きリクエストは、計算機10-2のリクエスト
受信部332で受信され、当該計算機10-2のデバッグ
実行部34に渡される。
【0084】計算機10-2のデバッグ実行部34は、リ
クエスト受信部332から渡された図6(b)に示すよ
うなデバッグ付きリクエストから、図6(a)に示した
オリジナルのリクエスト(リクエストの原形)、即ちプ
ログラムP1を起動するためのリクエストを復元して、
当該プログラムP1(デバッグ対象プログラムP1)を
起動する。このときデバッグ実行部34は、プログラム
P1をデバッグするために、そのプログラムP1とデバ
ッガとを結合する。
クエスト受信部332から渡された図6(b)に示すよ
うなデバッグ付きリクエストから、図6(a)に示した
オリジナルのリクエスト(リクエストの原形)、即ちプ
ログラムP1を起動するためのリクエストを復元して、
当該プログラムP1(デバッグ対象プログラムP1)を
起動する。このときデバッグ実行部34は、プログラム
P1をデバッグするために、そのプログラムP1とデバ
ッガとを結合する。
【0085】計算機10-2のデバッグ実行部34は更
に、リクエスト受信部332から渡された図6(b)に
示すリクエストの第3要素であるデバッグ情報送信先情
報(ここでは計算機10-1の識別子)により示される計
算機、即ちリクエストの発行元の計算機10-1(ここで
はデバッグ操作部35によりデバッグ操作を行う計算機
10-1)がデバッグ情報の送信先となるように、送信先
管理部31に保持されているデバッグ情報送信先情報を
(現在の計算機10-2自身を示す情報から)変更する。
に、リクエスト受信部332から渡された図6(b)に
示すリクエストの第3要素であるデバッグ情報送信先情
報(ここでは計算機10-1の識別子)により示される計
算機、即ちリクエストの発行元の計算機10-1(ここで
はデバッグ操作部35によりデバッグ操作を行う計算機
10-1)がデバッグ情報の送信先となるように、送信先
管理部31に保持されているデバッグ情報送信先情報を
(現在の計算機10-2自身を示す情報から)変更する。
【0086】(2)デバッグ操作時 次に、計算機10-1から計算機10-2上のプログラムP
1(先のデバッグ付きリクエストによって計算機10-2
において起動されているプログラムP1)をデバッグす
る場合の動作を説明する。
1(先のデバッグ付きリクエストによって計算機10-2
において起動されているプログラムP1)をデバッグす
る場合の動作を説明する。
【0087】ここでは、計算機10-1のデバッグ操作部
35が有するデバッグコマンド入力部351によりデバ
ッグ対象プログラムP1のデバッグ操作を行うものとす
る。
35が有するデバッグコマンド入力部351によりデバ
ッグ対象プログラムP1のデバッグ操作を行うものとす
る。
【0088】まず、計算機10-1のデバッグ操作部35
が有するデバッグコマンド入力部351により、デバッ
グ対象プログラムP1へのブレークポイントの設定を指
示する図7(a)に示すような形式のコマンド(デバッ
グコマンド)が発行されたものとする。この図7(a)
に示すコマンドは、図4に示したデバッグコマンドと同
じものである。
が有するデバッグコマンド入力部351により、デバッ
グ対象プログラムP1へのブレークポイントの設定を指
示する図7(a)に示すような形式のコマンド(デバッ
グコマンド)が発行されたものとする。この図7(a)
に示すコマンドは、図4に示したデバッグコマンドと同
じものである。
【0089】計算機10-1のコマンド送信先選択部36
は、デバッグコマンド入力部351によりデバッグコマ
ンドが発行されると、送信先管理部31に保持されてい
るデバッグコマンド送信先情報から、デバッグコマンド
の送信先計算機を決定する。ここでは、先の計算機10
-1での(プログラムP1を起動するための)リクエスト
発行時における送信先管理部31内のデバッグコマンド
送信先情報の更新から明らかなように、その際のリクエ
スト送信先計算機である計算機10-2が決定される。
は、デバッグコマンド入力部351によりデバッグコマ
ンドが発行されると、送信先管理部31に保持されてい
るデバッグコマンド送信先情報から、デバッグコマンド
の送信先計算機を決定する。ここでは、先の計算機10
-1での(プログラムP1を起動するための)リクエスト
発行時における送信先管理部31内のデバッグコマンド
送信先情報の更新から明らかなように、その際のリクエ
スト送信先計算機である計算機10-2が決定される。
【0090】計算機10-1のコマンド送信先選択部36
でのコマンド送信先計算機の決定の結果、デバッグコマ
ンド入力部351により発行されたデバッグコマンド
は、計算機10-1のコマンド送信部371により通信路
11を介して計算機10-2に送信される。
でのコマンド送信先計算機の決定の結果、デバッグコマ
ンド入力部351により発行されたデバッグコマンド
は、計算機10-1のコマンド送信部371により通信路
11を介して計算機10-2に送信される。
【0091】計算機10-1のコマンド送信部371によ
り計算機10-2に送信された(計算機10-1からの)デ
バッグコマンドは、計算機10-2のコマンド受信部37
2で受信され、当該計算機10-2のコマンド送信先選択
部36に渡される。
り計算機10-2に送信された(計算機10-1からの)デ
バッグコマンドは、計算機10-2のコマンド受信部37
2で受信され、当該計算機10-2のコマンド送信先選択
部36に渡される。
【0092】計算機10-2のコマンド送信先選択部36
は、コマンド受信部372からデバッグコマンドを受け
取ると、送信先管理部31に保持されているデバッグコ
マンド送信先情報から、デバッグコマンドの送信先計算
機を決定する。ここでは、先に述べたリクエスト発行前
の前提条件から明らかなように、計算機10-2自身が決
定される。
は、コマンド受信部372からデバッグコマンドを受け
取ると、送信先管理部31に保持されているデバッグコ
マンド送信先情報から、デバッグコマンドの送信先計算
機を決定する。ここでは、先に述べたリクエスト発行前
の前提条件から明らかなように、計算機10-2自身が決
定される。
【0093】この計算機10-2のコマンド送信先選択部
36でのコマンド送信先計算機の決定の結果、コマンド
受信部372で受信された(計算機10-1からの)デバ
ッグコマンドは当該コマンド送信先選択部36により同
じ計算機10-2内のデバッグ実行部34に渡される。
36でのコマンド送信先計算機の決定の結果、コマンド
受信部372で受信された(計算機10-1からの)デバ
ッグコマンドは当該コマンド送信先選択部36により同
じ計算機10-2内のデバッグ実行部34に渡される。
【0094】計算機10-2のデバッグ実行部34は、コ
マンド送信先選択部36から渡された(計算機10-1か
らの)デバッグコマンド(図7(a)参照)の指示に従
い、(先に受け取った計算機10-1からのデバッグ付き
リクエストに従って)起動されているデバッグ対象プロ
グラムP1のブレークポイントを設定する。
マンド送信先選択部36から渡された(計算機10-1か
らの)デバッグコマンド(図7(a)参照)の指示に従
い、(先に受け取った計算機10-1からのデバッグ付き
リクエストに従って)起動されているデバッグ対象プロ
グラムP1のブレークポイントを設定する。
【0095】計算機10-2のデバッグ実行部34は、デ
バッグコマンドの指示に従ってデバッグ対象プログラム
P1のブレークポイントを設定したことにより、そのブ
レークポイントでデバッグ情報を得ると、当該デバッグ
情報をデバッグ情報送信先選択部39に渡す。
バッグコマンドの指示に従ってデバッグ対象プログラム
P1のブレークポイントを設定したことにより、そのブ
レークポイントでデバッグ情報を得ると、当該デバッグ
情報をデバッグ情報送信先選択部39に渡す。
【0096】計算機10-2のデバッグ情報送信先選択部
39は、デバッグ実行部34からデバッグ情報を受け取
ると、送信先管理部31に保持されているデバッグ情報
送信先情報から、デバッグ情報の送信先計算機を決定す
る。ここでは、先の計算機10-2でのリクエスト受信時
における(デバッグ実行部34による)送信先管理部3
1内のデバッグ情報送信先情報の更新から明らかなよう
に、その際のリクエスト発行元計算機である計算機10
-1が決定される。
39は、デバッグ実行部34からデバッグ情報を受け取
ると、送信先管理部31に保持されているデバッグ情報
送信先情報から、デバッグ情報の送信先計算機を決定す
る。ここでは、先の計算機10-2でのリクエスト受信時
における(デバッグ実行部34による)送信先管理部3
1内のデバッグ情報送信先情報の更新から明らかなよう
に、その際のリクエスト発行元計算機である計算機10
-1が決定される。
【0097】この計算機10-2のデバッグ情報送信先選
択部39でのデバッグ情報送信先計算機の決定の結果、
デバッグ実行部34から渡されたデバッグ情報は、計算
機10-2のデバッグ情報送信部382により通信路11
を介して計算機10-1に送信される。
択部39でのデバッグ情報送信先計算機の決定の結果、
デバッグ実行部34から渡されたデバッグ情報は、計算
機10-2のデバッグ情報送信部382により通信路11
を介して計算機10-1に送信される。
【0098】計算機10-2のデバッグ情報送信部382
により計算機10-1に送信された(計算機10-2から
の)デバッグ情報は、計算機10-1のデバッグ情報受信
部381で受信され、当該計算機10-1のデバッグ情報
送信先選択部39に渡される。
により計算機10-1に送信された(計算機10-2から
の)デバッグ情報は、計算機10-1のデバッグ情報受信
部381で受信され、当該計算機10-1のデバッグ情報
送信先選択部39に渡される。
【0099】計算機10-1のデバッグ情報送信先選択部
39は、デバッグ情報受信部381からデバッグ情報を
受け取ると、送信先管理部31に保持されているデバッ
グ情報送信先情報から、デバッグ情報の送信先計算機を
決定する。ここでは、先に述べたリクエスト発行前の前
提条件から明らかなように、計算機10-1自身が決定さ
れる。
39は、デバッグ情報受信部381からデバッグ情報を
受け取ると、送信先管理部31に保持されているデバッ
グ情報送信先情報から、デバッグ情報の送信先計算機を
決定する。ここでは、先に述べたリクエスト発行前の前
提条件から明らかなように、計算機10-1自身が決定さ
れる。
【0100】この計算機10-1のデバッグ情報送信先選
択部39でのデバッグ情報送信先計算機の決定の結果、
デバッグ情報受信部381から渡されたデバッグ情報
は、計算機10-1のデバッグ情報表示部352に送ら
れ、当該表示部352により表示される。
択部39でのデバッグ情報送信先計算機の決定の結果、
デバッグ情報受信部381から渡されたデバッグ情報
は、計算機10-1のデバッグ情報表示部352に送ら
れ、当該表示部352により表示される。
【0101】(3)深いリクエストが発行される場合 次に、あるリクエストにより起動されたプログラムから
他の計算機上の別のプログラムを起動するためのリクエ
スト(深いリクエスト)が発行される場合について説明
する。
他の計算機上の別のプログラムを起動するためのリクエ
スト(深いリクエスト)が発行される場合について説明
する。
【0102】例えば、計算機10-1からのリクエストに
より起動された計算機10-2上のプログラムP1の実行
により、計算機10-n上のプログラムP2が起動される
ものとする。また、このプログラムP2が起動される前
において、計算機10-nの送信先管理部31には、デバ
ッグコマンドの送信先及びデバッグ情報の送信先とし
て、いずれも当該計算機10-n自身(自計算機)を示す
送信先情報が保持されているものとする。
より起動された計算機10-2上のプログラムP1の実行
により、計算機10-n上のプログラムP2が起動される
ものとする。また、このプログラムP2が起動される前
において、計算機10-nの送信先管理部31には、デバ
ッグコマンドの送信先及びデバッグ情報の送信先とし
て、いずれも当該計算機10-n自身(自計算機)を示す
送信先情報が保持されているものとする。
【0103】さて、計算機10-2でのプログラムP1の
実行に伴って計算機10-n上のプログラムP2を起動す
る際には、計算機10-2のリクエスト生成部32によ
り、計算機10-n上のプログラムP2を起動するための
デバッグ付きリクエストが生成され、計算機10-nに発
行される。このリクエストは、新たなプログラムP2を
起動するための図6(c)に示すリクエストの原形に、
図6(d)に示すように、リクエスト送信先計算機10
-2の識別子(計算機#n)と、その原形中のプログラム
識別子(P2)で示されるプログラムP2がデバッグ対
象プログラムであることを示す情報“debug”と、
リクエストの発行元計算機10-2の識別子(計算機#
2)を付加したものである。
実行に伴って計算機10-n上のプログラムP2を起動す
る際には、計算機10-2のリクエスト生成部32によ
り、計算機10-n上のプログラムP2を起動するための
デバッグ付きリクエストが生成され、計算機10-nに発
行される。このリクエストは、新たなプログラムP2を
起動するための図6(c)に示すリクエストの原形に、
図6(d)に示すように、リクエスト送信先計算機10
-2の識別子(計算機#n)と、その原形中のプログラム
識別子(P2)で示されるプログラムP2がデバッグ対
象プログラムであることを示す情報“debug”と、
リクエストの発行元計算機10-2の識別子(計算機#
2)を付加したものである。
【0104】この計算機10-2から計算機10-nへの
(プログラムP2を起動するための)リクエスト発行時
の動作は、先に述べた計算機10-1から計算機10-2へ
の(プログラムP1を起動するための)リクエスト発行
時の動作と同様である。
(プログラムP2を起動するための)リクエスト発行時
の動作は、先に述べた計算機10-1から計算機10-2へ
の(プログラムP1を起動するための)リクエスト発行
時の動作と同様である。
【0105】したがって、プログラムP2を起動するた
めの図6(d)に示すリクエストの発行元計算機10-2
では、当該リクエストの送信先計算機10-nがデバッグ
コマンドの送信先となるように、送信先管理部31に保
持されているデバッグコマンド送信先情報が(現在の計
算機10-2を示す情報から)変更される。
めの図6(d)に示すリクエストの発行元計算機10-2
では、当該リクエストの送信先計算機10-nがデバッグ
コマンドの送信先となるように、送信先管理部31に保
持されているデバッグコマンド送信先情報が(現在の計
算機10-2を示す情報から)変更される。
【0106】同様に、計算機10-2からのリクエストの
受信側計算機10-nでは、当該リクエストの発行元(送
信先)計算機10-2がデバッグ情報の送信先となるよう
に、送信先管理部31に保持されているデバッグ情報送
信先情報が(現在の計算機10-nを示す情報から)変更
される。
受信側計算機10-nでは、当該リクエストの発行元(送
信先)計算機10-2がデバッグ情報の送信先となるよう
に、送信先管理部31に保持されているデバッグ情報送
信先情報が(現在の計算機10-nを示す情報から)変更
される。
【0107】以下では、このような状況の下でのデバッ
グ操作時の動作を、プログラムP1を起動した計算機1
0-1から(更に具体的に述べるならば、計算機10-1の
デバッグ操作部35が有するデバッグコマンド入力部3
51により)、計算機10-n上のデバッグ対象プログラ
ムP2をデバッグ操作する場合を例に説明する。
グ操作時の動作を、プログラムP1を起動した計算機1
0-1から(更に具体的に述べるならば、計算機10-1の
デバッグ操作部35が有するデバッグコマンド入力部3
51により)、計算機10-n上のデバッグ対象プログラ
ムP2をデバッグ操作する場合を例に説明する。
【0108】まず、計算機10-1のデバッグ操作部35
が有するデバッグコマンド入力部351により、デバッ
グ対象プログラムP2へのブレークポイントの設定を指
示する図7(b)に示すようなコマンド(デバッグコマ
ンド)が発行されたものとする。図7(b)中の第1要
素“breakpoint”はブレークポイントである
ことを、第2要素“P2−label−j”はデバッグ
対象プログラムP2でのブレークポイントとなる論理位
置(label−j)を示している。
が有するデバッグコマンド入力部351により、デバッ
グ対象プログラムP2へのブレークポイントの設定を指
示する図7(b)に示すようなコマンド(デバッグコマ
ンド)が発行されたものとする。図7(b)中の第1要
素“breakpoint”はブレークポイントである
ことを、第2要素“P2−label−j”はデバッグ
対象プログラムP2でのブレークポイントとなる論理位
置(label−j)を示している。
【0109】計算機10-1のコマンド送信先選択部36
は、デバッグコマンド入力部351により図7(b)の
デバッグコマンドが発行されると、送信先管理部31に
保持されているデバッグコマンド送信先情報から、デバ
ッグコマンドの送信先計算機を決定する。ここでは、先
の計算機10-1での(プログラムP1を起動するため
の)リクエストの発行時における送信先管理部31内の
デバッグコマンド送信先情報の更新から明らかなよう
に、その際のリクエスト送信先計算機である計算機10
-2が決定される。
は、デバッグコマンド入力部351により図7(b)の
デバッグコマンドが発行されると、送信先管理部31に
保持されているデバッグコマンド送信先情報から、デバ
ッグコマンドの送信先計算機を決定する。ここでは、先
の計算機10-1での(プログラムP1を起動するため
の)リクエストの発行時における送信先管理部31内の
デバッグコマンド送信先情報の更新から明らかなよう
に、その際のリクエスト送信先計算機である計算機10
-2が決定される。
【0110】この場合、図7(b)のデバッグコマンド
は、計算機10-1のコマンド送信部371により計算機
10-2に送信される。
は、計算機10-1のコマンド送信部371により計算機
10-2に送信される。
【0111】計算機10-1のコマンド送信部371によ
り計算機10-2に送信された(計算機10-1からの)デ
バッグコマンド(図7(b)参照)は、計算機10-2の
コマンド受信部372で受信され、当該計算機10-2の
コマンド送信先選択部36に渡される。
り計算機10-2に送信された(計算機10-1からの)デ
バッグコマンド(図7(b)参照)は、計算機10-2の
コマンド受信部372で受信され、当該計算機10-2の
コマンド送信先選択部36に渡される。
【0112】計算機10-2のコマンド送信先選択部36
は、コマンド受信部372からデバッグコマンドを受け
取ると、送信先管理部31に保持されているデバッグコ
マンド送信先情報から、デバッグコマンドの送信先計算
機を決定する。ここでは、先の計算機10-2での(プロ
グラムP2を起動するための)リクエスト発行時におけ
る送信先管理部31内のデバッグコマンド送信先情報の
更新から明らかなように、その際のリクエスト送信先計
算機である計算機10-nが決定される。
は、コマンド受信部372からデバッグコマンドを受け
取ると、送信先管理部31に保持されているデバッグコ
マンド送信先情報から、デバッグコマンドの送信先計算
機を決定する。ここでは、先の計算機10-2での(プロ
グラムP2を起動するための)リクエスト発行時におけ
る送信先管理部31内のデバッグコマンド送信先情報の
更新から明らかなように、その際のリクエスト送信先計
算機である計算機10-nが決定される。
【0113】この場合、計算機10-2のコマンド受信部
372で受信された計算機10-1からのデバッグコマン
ド(図7(b)参照)は、同じ計算機10-2のコマンド
送信部371により計算機10-nに送信される。
372で受信された計算機10-1からのデバッグコマン
ド(図7(b)参照)は、同じ計算機10-2のコマンド
送信部371により計算機10-nに送信される。
【0114】計算機10-2のコマンド送信部371によ
り計算機10-nに送信された(計算機10-1からの)デ
バッグコマンド(図7(b)参照)は、計算機10-nの
コマンド受信部372で受信され、当該計算機10-nの
コマンド送信先選択部36に渡される。
り計算機10-nに送信された(計算機10-1からの)デ
バッグコマンド(図7(b)参照)は、計算機10-nの
コマンド受信部372で受信され、当該計算機10-nの
コマンド送信先選択部36に渡される。
【0115】計算機10-nのコマンド送信先選択部36
は、コマンド受信部372からデバッグコマンド(図7
(b)参照)を受け取ると、送信先管理部31に保持さ
れているデバッグコマンド送信先情報から、デバッグコ
マンドの送信先計算機を決定する。ここでは、先に述べ
たプログラムP2を起動するためのリクエストの発行前
の前提条件から明らかなように、計算機10-n自身が決
定される。
は、コマンド受信部372からデバッグコマンド(図7
(b)参照)を受け取ると、送信先管理部31に保持さ
れているデバッグコマンド送信先情報から、デバッグコ
マンドの送信先計算機を決定する。ここでは、先に述べ
たプログラムP2を起動するためのリクエストの発行前
の前提条件から明らかなように、計算機10-n自身が決
定される。
【0116】この場合、計算機10-nのコマンド受信部
372で受信されたデバッグコマンド(図7(b)参
照)は、コマンド送信先選択部36により同じ計算機1
0-2内のデバッグ実行部34に渡される。
372で受信されたデバッグコマンド(図7(b)参
照)は、コマンド送信先選択部36により同じ計算機1
0-2内のデバッグ実行部34に渡される。
【0117】計算機10-nのデバッグ実行部34は、コ
マンド送信先選択部36から渡された(プログラムP2
をデバッグするための)図7(b)に示すデバッグコマ
ンドの指示に従い、(先に受け取った計算機10-2から
のデバッグ付きリクエストに従って)起動されているデ
バッグ対象プログラムP2のブレークポイントを設定す
る。
マンド送信先選択部36から渡された(プログラムP2
をデバッグするための)図7(b)に示すデバッグコマ
ンドの指示に従い、(先に受け取った計算機10-2から
のデバッグ付きリクエストに従って)起動されているデ
バッグ対象プログラムP2のブレークポイントを設定す
る。
【0118】計算機10-nのデバッグ実行部34は、図
7(b)に示すデバッグコマンドの指示に従ってデバッ
グ対象プログラムP2のブレークポイントを設定したこ
とにより、そのブレークポイントでデバッグ情報を得る
と、当該デバッグ情報をデバッグ情報送信先選択部39
に渡す。
7(b)に示すデバッグコマンドの指示に従ってデバッ
グ対象プログラムP2のブレークポイントを設定したこ
とにより、そのブレークポイントでデバッグ情報を得る
と、当該デバッグ情報をデバッグ情報送信先選択部39
に渡す。
【0119】計算機10-nのデバッグ情報送信先選択部
39は、デバッグ実行部34からデバッグ情報を受け取
ると、送信先管理部31に保持されているデバッグ情報
送信先情報から、デバッグ情報の送信先計算機を決定す
る。ここでは、先の計算機10-nでの(プログラムP2
を起動するための)リクエスト受信時における(デバッ
グ実行部34による)送信先管理部31内のデバッグ情
報送信先情報の更新から明らかなように、その際のリク
エスト発行元計算機である計算機10-2が決定される。
39は、デバッグ実行部34からデバッグ情報を受け取
ると、送信先管理部31に保持されているデバッグ情報
送信先情報から、デバッグ情報の送信先計算機を決定す
る。ここでは、先の計算機10-nでの(プログラムP2
を起動するための)リクエスト受信時における(デバッ
グ実行部34による)送信先管理部31内のデバッグ情
報送信先情報の更新から明らかなように、その際のリク
エスト発行元計算機である計算機10-2が決定される。
【0120】この場合、計算機10-nのデバッグ実行部
34から渡されたデバッグ情報は、同じ計算機10-nの
デバッグ情報送信部382により計算機10-2に送信さ
れる。
34から渡されたデバッグ情報は、同じ計算機10-nの
デバッグ情報送信部382により計算機10-2に送信さ
れる。
【0121】計算機10-nのデバッグ情報送信部382
により計算機10-2に送信されたデバッグ情報は、当該
計算機10-2のデバッグ情報受信部381で受信され、
同じ計算機10-2のデバッグ情報送信先選択部39に渡
される。
により計算機10-2に送信されたデバッグ情報は、当該
計算機10-2のデバッグ情報受信部381で受信され、
同じ計算機10-2のデバッグ情報送信先選択部39に渡
される。
【0122】計算機10-2のデバッグ情報送信先選択部
39は、デバッグ情報受信部381からデバッグ情報を
受け取ると、送信先管理部31に保持されているデバッ
グ情報送信先情報から、デバッグ情報の送信先計算機を
決定する。ここでは、先の計算機10-2での(プログラ
ムP1を起動するための)リクエストの受信時における
(デバッグ実行部34による)送信先管理部31内のデ
バッグ情報送信先情報の更新から明らかなように、その
際のリクエスト発行元計算機である計算機10-1が決定
される。
39は、デバッグ情報受信部381からデバッグ情報を
受け取ると、送信先管理部31に保持されているデバッ
グ情報送信先情報から、デバッグ情報の送信先計算機を
決定する。ここでは、先の計算機10-2での(プログラ
ムP1を起動するための)リクエストの受信時における
(デバッグ実行部34による)送信先管理部31内のデ
バッグ情報送信先情報の更新から明らかなように、その
際のリクエスト発行元計算機である計算機10-1が決定
される。
【0123】この場合、計算機10-2のデバッグ情報受
信部381で受信されたデバッグ情報は、同じ計算機1
0-2のデバッグ情報送信部382により計算機10-1に
送信される。
信部381で受信されたデバッグ情報は、同じ計算機1
0-2のデバッグ情報送信部382により計算機10-1に
送信される。
【0124】計算機10-2のデバッグ情報送信部382
により計算機10-1に送信されたデバッグ情報は、計算
機10-1のデバッグ情報受信部381で受信され、当該
計算機10-1のデバッグ情報送信先選択部39に渡され
る。
により計算機10-1に送信されたデバッグ情報は、計算
機10-1のデバッグ情報受信部381で受信され、当該
計算機10-1のデバッグ情報送信先選択部39に渡され
る。
【0125】計算機10-1のデバッグ情報送信先選択部
39は、デバッグ情報受信部381からデバッグ情報を
受け取ると、送信先管理部31に保持されているデバッ
グ情報送信先情報から、デバッグ情報の送信先計算機を
決定する。ここでは、先に述べたリクエスト発行前の前
提条件から明らかなように、計算機10-1自身が決定さ
れる。
39は、デバッグ情報受信部381からデバッグ情報を
受け取ると、送信先管理部31に保持されているデバッ
グ情報送信先情報から、デバッグ情報の送信先計算機を
決定する。ここでは、先に述べたリクエスト発行前の前
提条件から明らかなように、計算機10-1自身が決定さ
れる。
【0126】この場合、計算機10-1のデバッグ情報受
信部381で受信されたデバッグ情報は、デバッグ情報
送信先選択部39により同じ計算機10-1のデバッグ情
報表示部352に送られ、当該表示部352により表示
される。
信部381で受信されたデバッグ情報は、デバッグ情報
送信先選択部39により同じ計算機10-1のデバッグ情
報表示部352に送られ、当該表示部352により表示
される。
【0127】以上のように、リクエスト発行がプログラ
ムの制御に従って複数の計算機に渡ってリレー的に行わ
れる場合には、デバッグコマンドとデバッグ情報の転送
が各計算機に渡って繰り返されるため、効率的ではな
い。
ムの制御に従って複数の計算機に渡ってリレー的に行わ
れる場合には、デバッグコマンドとデバッグ情報の転送
が各計算機に渡って繰り返されるため、効率的ではな
い。
【0128】そこで、このデバッグコマンドとデバッグ
情報の転送を効率化するための手法について説明する。
ここでは、リクエスト発行に違いがあるだけなので、便
宜的に図5の構成を参照して、このリクエスト発行に関
する部分だけを説明する。
情報の転送を効率化するための手法について説明する。
ここでは、リクエスト発行に違いがあるだけなので、便
宜的に図5の構成を参照して、このリクエスト発行に関
する部分だけを説明する。
【0129】まず、計算機10-1から発行されたリクエ
ストにより計算機10-2のプログラムP1が起動された
後、このプログラムP1の実行に伴って計算機10-2か
ら計算機10-nのプログラムP2を起動する場合、先の
例では、計算機10-2のリクエスト生成部32におい
て、図6(d)に示したリクエストが生成されるものと
したが、ここでは、図6(e)に示すようなリクエスト
(デバッグ付きリクエスト)が生成されるようにする。
ストにより計算機10-2のプログラムP1が起動された
後、このプログラムP1の実行に伴って計算機10-2か
ら計算機10-nのプログラムP2を起動する場合、先の
例では、計算機10-2のリクエスト生成部32におい
て、図6(d)に示したリクエストが生成されるものと
したが、ここでは、図6(e)に示すようなリクエスト
(デバッグ付きリクエスト)が生成されるようにする。
【0130】この図6(e)のリクエストが、図6
(d)に示したリクエストと異なる点は、リクエストの
第3の要素であるデバッグ情報送信先情報として、リク
エストの発行元計算機10-2の識別子(計算機#2)に
代えて、当該リクエストの発行時点において(当該リク
エストの発行元の)計算機10-2の送信先管理部31に
保持されているデバッグ情報送信先計算機の識別子、即
ち最初のリクエストの発行元であるデバッグ操作を行う
計算機10-1の識別子(計算機#1)が用いられている
ことである。
(d)に示したリクエストと異なる点は、リクエストの
第3の要素であるデバッグ情報送信先情報として、リク
エストの発行元計算機10-2の識別子(計算機#2)に
代えて、当該リクエストの発行時点において(当該リク
エストの発行元の)計算機10-2の送信先管理部31に
保持されているデバッグ情報送信先計算機の識別子、即
ち最初のリクエストの発行元であるデバッグ操作を行う
計算機10-1の識別子(計算機#1)が用いられている
ことである。
【0131】さて、(計算機10-1からのリクエストに
より起動された計算機10-2上のプログラムP1から計
算機10-nのプログラムP2を起動するために)図6
(e)に示したリクエストが計算機10-2から計算機1
0-nに発行されると、計算機10-2のデバッグ実行部3
4は、デバッグ対象プログラムの動作している計算機が
(計算機10-2から)計算機10-nに変更になったこと
を通知するための情報を特定のデバッグ情報として生成
し、デバッグ情報送信先選択部39に渡す。
より起動された計算機10-2上のプログラムP1から計
算機10-nのプログラムP2を起動するために)図6
(e)に示したリクエストが計算機10-2から計算機1
0-nに発行されると、計算機10-2のデバッグ実行部3
4は、デバッグ対象プログラムの動作している計算機が
(計算機10-2から)計算機10-nに変更になったこと
を通知するための情報を特定のデバッグ情報として生成
し、デバッグ情報送信先選択部39に渡す。
【0132】計算機10-2のデバッグ情報送信先選択部
39は、デバッグ実行部34から上記特定のデバッグ情
報を受け取ると、送信先管理部31に保持されているデ
バッグ情報送信先情報から、デバッグ情報の送信先計算
機を決定する。ここでは、先の計算機10-2での(プロ
グラムP1を起動するための)リクエスト受信時におけ
る(デバッグ実行部34による)送信先管理部31内の
デバッグ情報送信先情報の更新から明らかなように、そ
の際のリクエスト発行元計算機である計算機10-1が決
定される。
39は、デバッグ実行部34から上記特定のデバッグ情
報を受け取ると、送信先管理部31に保持されているデ
バッグ情報送信先情報から、デバッグ情報の送信先計算
機を決定する。ここでは、先の計算機10-2での(プロ
グラムP1を起動するための)リクエスト受信時におけ
る(デバッグ実行部34による)送信先管理部31内の
デバッグ情報送信先情報の更新から明らかなように、そ
の際のリクエスト発行元計算機である計算機10-1が決
定される。
【0133】この場合、計算機10-2のデバッグ実行部
34から渡された特定のデバッグ情報(デバッグ対象プ
ログラムの動作している計算機の変更を通知するデバッ
グ情報)は、同じ計算機10-2のデバッグ情報送信部3
82により計算機10-1に送信される。
34から渡された特定のデバッグ情報(デバッグ対象プ
ログラムの動作している計算機の変更を通知するデバッ
グ情報)は、同じ計算機10-2のデバッグ情報送信部3
82により計算機10-1に送信される。
【0134】計算機10-2のデバッグ情報送信部382
により計算機10-1に送信された上記特定のデバッグ情
報は、計算機10-1のデバッグ情報受信部381で受信
され、当該計算機10-1のデバッグ情報送信先選択部3
9に渡される。
により計算機10-1に送信された上記特定のデバッグ情
報は、計算機10-1のデバッグ情報受信部381で受信
され、当該計算機10-1のデバッグ情報送信先選択部3
9に渡される。
【0135】計算機10-1のデバッグ情報送信先選択部
39は、デバッグ情報受信部381から上記特定のデバ
ッグ情報を受け取ると、当該情報からデバッグ対象プロ
グラムの動作している計算機が計算機10-nに変更され
たことを判断する。この場合、計算機10-1のデバッグ
情報送信先選択部39は、送信先管理部31に保持され
ているデバッグコマンド送信先情報を、上記デバッグ情
報で示される計算機10-nを示すように変更する。
39は、デバッグ情報受信部381から上記特定のデバ
ッグ情報を受け取ると、当該情報からデバッグ対象プロ
グラムの動作している計算機が計算機10-nに変更され
たことを判断する。この場合、計算機10-1のデバッグ
情報送信先選択部39は、送信先管理部31に保持され
ているデバッグコマンド送信先情報を、上記デバッグ情
報で示される計算機10-nを示すように変更する。
【0136】一方、計算機10-2から計算機10-nに対
して発行される図6(e)に示したリクエストは、計算
機10-nのリクエスト受信部332で受信され、当該計
算機10-nのデバッグ実行部34に渡される。
して発行される図6(e)に示したリクエストは、計算
機10-nのリクエスト受信部332で受信され、当該計
算機10-nのデバッグ実行部34に渡される。
【0137】計算機10-nのデバッグ実行部34は、リ
クエスト受信部332から渡された図6(e)のデバッ
グ付きリクエストから、図6(c)のオリジナルのリク
エスト(リクエストの原形)を復元して、デバッグ対象
プログラムP2を起動する。このときデバッグ実行部3
4は、プログラムP2をデバッグするために、そのプロ
グラムP2とデバッガとを結合する。
クエスト受信部332から渡された図6(e)のデバッ
グ付きリクエストから、図6(c)のオリジナルのリク
エスト(リクエストの原形)を復元して、デバッグ対象
プログラムP2を起動する。このときデバッグ実行部3
4は、プログラムP2をデバッグするために、そのプロ
グラムP2とデバッガとを結合する。
【0138】計算機10-nのデバッグ実行部34は更
に、リクエスト受信部332から渡された図6(e)の
リクエストの第3要素により示される計算機、即ちデバ
ッグ操作部35によりデバッグ操作を行う計算機10-1
がデバッグ情報の送信先となるように、送信先管理部3
1に保持されているデバッグ情報送信先情報を変更す
る。
に、リクエスト受信部332から渡された図6(e)の
リクエストの第3要素により示される計算機、即ちデバ
ッグ操作部35によりデバッグ操作を行う計算機10-1
がデバッグ情報の送信先となるように、送信先管理部3
1に保持されているデバッグ情報送信先情報を変更す
る。
【0139】以上の結果、デバッグ操作する計算機10
-1の(デバッグ操作部35が有する)デバッグコマンド
入力部351からのデバッグコマンドは、計算機10-n
からの特定デバッグ情報をもとに変更された当該計算機
10-1の送信先管理部51内のデバッグコマンド送信先
情報に従い、デバッグ対象プログラムP2が動作してい
る計算機10-nに直接送信される。
-1の(デバッグ操作部35が有する)デバッグコマンド
入力部351からのデバッグコマンドは、計算機10-n
からの特定デバッグ情報をもとに変更された当該計算機
10-1の送信先管理部51内のデバッグコマンド送信先
情報に従い、デバッグ対象プログラムP2が動作してい
る計算機10-nに直接送信される。
【0140】また、計算機10-nで得られたデバッグ情
報は、計算機10-2から計算機10-nに対して発行され
た図6(e)のリクエスト(に付加されているデバッグ
情報送信先情報)をもとに変更された当該計算機10-n
の送信先管理部51内のデバッグ情報送信先情報に従
い、直接計算機10-1に返されることになる。
報は、計算機10-2から計算機10-nに対して発行され
た図6(e)のリクエスト(に付加されているデバッグ
情報送信先情報)をもとに変更された当該計算機10-n
の送信先管理部51内のデバッグ情報送信先情報に従
い、直接計算機10-1に返されることになる。
【0141】このように、ある計算機からのリクエスト
で起動されたプログラムの実行により、他の計算機上の
別のプログラムを起動するリクエスト(深いリクエス
ト)を発行する場合に、そのリクエスト発行元計算機の
識別子ではなくて、その時点において送信先管理部31
に保持されているデバッグ情報送信先情報、即ちデバッ
グ操作を行う計算機(最初のリクエスト発行元計算機)
の識別子をそのままデバッグ情報の送信先情報として用
いると共に、この種のリクエストを発行した際に、デバ
ッグ対象プログラムが動作している計算機が変更となっ
たことと、その変更先の計算機とを通知する情報(特定
のデバッグ情報)をデバッグ操作を行う計算機に送信す
ることで、デバッグコマンドとデバッグ情報の転送効率
を向上することができる。
で起動されたプログラムの実行により、他の計算機上の
別のプログラムを起動するリクエスト(深いリクエス
ト)を発行する場合に、そのリクエスト発行元計算機の
識別子ではなくて、その時点において送信先管理部31
に保持されているデバッグ情報送信先情報、即ちデバッ
グ操作を行う計算機(最初のリクエスト発行元計算機)
の識別子をそのままデバッグ情報の送信先情報として用
いると共に、この種のリクエストを発行した際に、デバ
ッグ対象プログラムが動作している計算機が変更となっ
たことと、その変更先の計算機とを通知する情報(特定
のデバッグ情報)をデバッグ操作を行う計算機に送信す
ることで、デバッグコマンドとデバッグ情報の転送効率
を向上することができる。
【0142】この方式を適用する場合、デバッグコマン
ドとデバッグ情報の転送が各計算機に渡って繰り返され
ないで済むため、デバッグ操作を行わない計算機には、
デバッグ操作部55は勿論、コマンド送信先選択部3
6、コマンド送信部37及びデバッグ情報受信部381
を必ずしも設けておく必要はない。
ドとデバッグ情報の転送が各計算機に渡って繰り返され
ないで済むため、デバッグ操作を行わない計算機には、
デバッグ操作部55は勿論、コマンド送信先選択部3
6、コマンド送信部37及びデバッグ情報受信部381
を必ずしも設けておく必要はない。
【0143】[第3の実施例]次に、本発明の第3の実
施例につき図面を参照して説明する。
施例につき図面を参照して説明する。
【0144】まず、本実施例が前記第1の実施例と異な
る点は、分散処理装置内の各計算機の機能構成であり、
分散処理装置のシステム構成自体は変わらない。そこ
で、以下の説明では、図1の分散処理装置のシステム構
成を便宜的に参照し、図1中の各計算機10-i(i=1
〜n)の本実施例特有の機能構成を図8に示して、前記
第1の実施例における図2の機能構成と異なることを明
確にする。
る点は、分散処理装置内の各計算機の機能構成であり、
分散処理装置のシステム構成自体は変わらない。そこ
で、以下の説明では、図1の分散処理装置のシステム構
成を便宜的に参照し、図1中の各計算機10-i(i=1
〜n)の本実施例特有の機能構成を図8に示して、前記
第1の実施例における図2の機能構成と異なることを明
確にする。
【0145】本実施例における各計算機10-i(i=1
〜n)は、図8に示すように、プログラム管理部40、
プログラムコンパイル部42、リクエスト通信部43、
デバッグ実行部44、デバッグ操作部45、コマンド送
信先選択部46、コマンド通信部47、デバッグ情報通
信部48及びデバッグ情報送信先選択部49を有してい
る。
〜n)は、図8に示すように、プログラム管理部40、
プログラムコンパイル部42、リクエスト通信部43、
デバッグ実行部44、デバッグ操作部45、コマンド送
信先選択部46、コマンド通信部47、デバッグ情報通
信部48及びデバッグ情報送信先選択部49を有してい
る。
【0146】プログラム管理部40は、ソースプログラ
ムのインタフェース情報及び実装コードと、(ソースプ
ログラムをコンパイルして得られる)オブジェクトプロ
グラムと、デバッグ対象プログラムの存在場所(存在計
算機情報)を保持するものであり、主記憶または二次記
憶上に確保される。
ムのインタフェース情報及び実装コードと、(ソースプ
ログラムをコンパイルして得られる)オブジェクトプロ
グラムと、デバッグ対象プログラムの存在場所(存在計
算機情報)を保持するものであり、主記憶または二次記
憶上に確保される。
【0147】プログラムコンパイル部42は、ソースプ
ログラム内のプログラム起動命令に対応する通常実行リ
クエストとデバッグ付きリクエストを生成し、各リクエ
ストに対応する起動プログラムを生成するものである。
ログラム内のプログラム起動命令に対応する通常実行リ
クエストとデバッグ付きリクエストを生成し、各リクエ
ストに対応する起動プログラムを生成するものである。
【0148】リクエスト通信部43は、デバッグ実行部
44で生成されたリクエストを対象計算機に送信するリ
クエスト送信部431と、他の計算機からのデバッグ対
象プログラムを起動するリクエストを受信するリクエス
ト受信部432からなる。
44で生成されたリクエストを対象計算機に送信するリ
クエスト送信部431と、他の計算機からのデバッグ対
象プログラムを起動するリクエストを受信するリクエス
ト受信部432からなる。
【0149】デバッグ実行部44は、デバッグコマンド
の指示するデバッグ操作をデバッガにより実行するもの
であり、起動リクエストからデバッグ対象プログラムを
起動する操作を含んでいる。
の指示するデバッグ操作をデバッガにより実行するもの
であり、起動リクエストからデバッグ対象プログラムを
起動する操作を含んでいる。
【0150】デバッグ操作部45は、ユーザ(プログラ
マ)によるデバッグ作業のためのインタフェースをなす
もので、デバッグ対象プログラムに対するコマンド(デ
バッグコマンド)の発行を行うデバッグコマンド入力部
451と、デバッグ情報を表示するデバッグ情報表示部
452からなる。
マ)によるデバッグ作業のためのインタフェースをなす
もので、デバッグ対象プログラムに対するコマンド(デ
バッグコマンド)の発行を行うデバッグコマンド入力部
451と、デバッグ情報を表示するデバッグ情報表示部
452からなる。
【0151】コマンド送信先選択部46は、デバッグ対
象プログラムの動作する計算機をデバッグコマンドの送
信先として選択するものである。
象プログラムの動作する計算機をデバッグコマンドの送
信先として選択するものである。
【0152】コマンド通信部47は、デバッグ対象プロ
グラムが起動されている計算機に対してデバッグコマン
ドを送信するコマンド送信部471と、デバッグ要求元
計算機からのデバッグコマンドを受信するコマンド受信
部472からなる。
グラムが起動されている計算機に対してデバッグコマン
ドを送信するコマンド送信部471と、デバッグ要求元
計算機からのデバッグコマンドを受信するコマンド受信
部472からなる。
【0153】デバッグ情報通信部48は、デバッグ要求
先計算機からのデバッグ情報を受信するデバッグ情報受
信部481と、(デバッグ要求元計算機からのデバッグ
コマンドに従う)デバッグ実行部44でのデバッグ操作
により得られるデバッグ情報をデバッグ要求元計算機に
送信するデバッグ情報送信部482からなる。
先計算機からのデバッグ情報を受信するデバッグ情報受
信部481と、(デバッグ要求元計算機からのデバッグ
コマンドに従う)デバッグ実行部44でのデバッグ操作
により得られるデバッグ情報をデバッグ要求元計算機に
送信するデバッグ情報送信部482からなる。
【0154】デバッグ情報送信先選択部49は、デバッ
グ要求元計算機をデバッグ情報の送信先計算機として選
択するものである。
グ要求元計算機をデバッグ情報の送信先計算機として選
択するものである。
【0155】以上に述べた図8の構成は、前記第1の実
施例で述べた図2の構成におけるプログラム位置管理部
20、リクエスト生成部22及びデバッグ実行部24に
代えて、プログラム管理部40、プログラムコンパイル
部42及びデバッグ実行部44を設け、コンパイル時に
静的にリクエストを生成しておくことで、デバッグ操作
の高速化を図るようにしたものである。このため、他の
構成要素であるリクエスト通信部43(内のリクエスト
送信部431、リクエスト受信部432)、デバッグ操
作部45(内のデバッグコマンド入力部451、デバッ
グ情報表示部452)、コマンド送信先選択部46、コ
マンド通信部47(内のコマンド送信部471、コマン
ド受信部472)、デバッグ情報通信部48(内のデバ
ッグ情報受信部481、デバッグ情報送信部482)及
びデバッグ情報送信先選択部49については、図2中の
リクエスト通信部23(内のリクエスト送信部231、
リクエスト受信部232)、デバッグ操作部25(内の
デバッグコマンド入力部251、デバッグ情報表示部2
52)、コマンド送信先選択部26、コマンド通信部2
7(内のコマンド送信部271、コマンド受信部27
2)、デバッグ情報通信部28(内のデバッグ情報受信
部281、デバッグ情報送信部282)及びデバッグ情
報送信先選択部29と同様である。
施例で述べた図2の構成におけるプログラム位置管理部
20、リクエスト生成部22及びデバッグ実行部24に
代えて、プログラム管理部40、プログラムコンパイル
部42及びデバッグ実行部44を設け、コンパイル時に
静的にリクエストを生成しておくことで、デバッグ操作
の高速化を図るようにしたものである。このため、他の
構成要素であるリクエスト通信部43(内のリクエスト
送信部431、リクエスト受信部432)、デバッグ操
作部45(内のデバッグコマンド入力部451、デバッ
グ情報表示部452)、コマンド送信先選択部46、コ
マンド通信部47(内のコマンド送信部471、コマン
ド受信部472)、デバッグ情報通信部48(内のデバ
ッグ情報受信部481、デバッグ情報送信部482)及
びデバッグ情報送信先選択部49については、図2中の
リクエスト通信部23(内のリクエスト送信部231、
リクエスト受信部232)、デバッグ操作部25(内の
デバッグコマンド入力部251、デバッグ情報表示部2
52)、コマンド送信先選択部26、コマンド通信部2
7(内のコマンド送信部271、コマンド受信部27
2)、デバッグ情報通信部28(内のデバッグ情報受信
部281、デバッグ情報送信部282)及びデバッグ情
報送信先選択部29と同様である。
【0156】次に、図8の構成の計算機10-1〜10-n
を備えた図1の分散処理装置における動作を、ユーザ
(プログラマ)のいる計算機10-1からリクエストを発
行し、計算機10-2でプログラムP1を動作させてデバ
ッグを行う場合を例に、(1)コンパイル時と(2)リ
クエスト発行時と(3)デバッグ操作時に分けて説明す
る。
を備えた図1の分散処理装置における動作を、ユーザ
(プログラマ)のいる計算機10-1からリクエストを発
行し、計算機10-2でプログラムP1を動作させてデバ
ッグを行う場合を例に、(1)コンパイル時と(2)リ
クエスト発行時と(3)デバッグ操作時に分けて説明す
る。
【0157】(1)コンパイル時 まず、ソースプログラムは、プログラム間の(メッセー
ジ通信の)インタフェースを定義したインタフェース情
報と実行動作を記述した実行コードからなる。
ジ通信の)インタフェースを定義したインタフェース情
報と実行動作を記述した実行コードからなる。
【0158】図9は、以下の説明で使用するソースプロ
グラムP1の一例を示すものである。このプログラムP
1は、当該プログラムP1からプログラムP2を起動す
る命令“fork(P2(A1,…,AM))”を含ん
でいる。また、プログラムP1には、入力或いは出力の
データのタイプ等を定義するためのプログラムP1及び
P2のインタフェース情報が付されている。この図9に
示したソースプログラムP1をプログラムコンパイル部
42によりコンパイルするときには、当該プログラムP
1のインタフェース情報をプログラム管理部40に登録
する。
グラムP1の一例を示すものである。このプログラムP
1は、当該プログラムP1からプログラムP2を起動す
る命令“fork(P2(A1,…,AM))”を含ん
でいる。また、プログラムP1には、入力或いは出力の
データのタイプ等を定義するためのプログラムP1及び
P2のインタフェース情報が付されている。この図9に
示したソースプログラムP1をプログラムコンパイル部
42によりコンパイルするときには、当該プログラムP
1のインタフェース情報をプログラム管理部40に登録
する。
【0159】プログラムコンパイル部42は、実装コー
ドの中に含まれるプログラム起動命令に対しては、通常
のリクエストを発行するためのコードとデバッグ付きリ
クエストを発行するためのコード(リクエスト生成プロ
グラム)を、実装コード及びインタフェース情報を使用
し静的に生成する。更にプログラムコンパイル部42
は、これらのリクエストに対応したプログラムの起動コ
ード(リクエスト起動プログラム)を実装コード及びイ
ンタフェース情報を使用し静的に生成する。ここでは、
プログラムP1からプログラムP2を起動するものとす
る。
ドの中に含まれるプログラム起動命令に対しては、通常
のリクエストを発行するためのコードとデバッグ付きリ
クエストを発行するためのコード(リクエスト生成プロ
グラム)を、実装コード及びインタフェース情報を使用
し静的に生成する。更にプログラムコンパイル部42
は、これらのリクエストに対応したプログラムの起動コ
ード(リクエスト起動プログラム)を実装コード及びイ
ンタフェース情報を使用し静的に生成する。ここでは、
プログラムP1からプログラムP2を起動するものとす
る。
【0160】プログラムコンパイル部42により生成さ
れたコード(リクエスト生成プログラム及びリクエスト
起動プログラム)は、プログラム管理部40に保持され
る。更に、プログラムが保持されている(存在する)存
在計算機情報もプログラム管理部40に保持される。
れたコード(リクエスト生成プログラム及びリクエスト
起動プログラム)は、プログラム管理部40に保持され
る。更に、プログラムが保持されている(存在する)存
在計算機情報もプログラム管理部40に保持される。
【0161】ここで、プログラムコンパイル部42によ
るコンパイルを行う計算機と、コンパイルされたプログ
ラムが存在する(動作する)計算機とは必ずしも一致し
ていなくても構わないが、その場合には、コンパイルさ
れたプログラムを計算機間通信等により目的の計算機の
プログラム管理部40に転送して保持しておく必要があ
る。また、上記存在計算機情報は、各計算機10-1〜1
0-nのプログラム管理部40に保持しておく必要があ
る。勿論、この存在計算機情報を、各計算機10-1〜1
0-nが共有する構成とすることも可能である。
るコンパイルを行う計算機と、コンパイルされたプログ
ラムが存在する(動作する)計算機とは必ずしも一致し
ていなくても構わないが、その場合には、コンパイルさ
れたプログラムを計算機間通信等により目的の計算機の
プログラム管理部40に転送して保持しておく必要があ
る。また、上記存在計算機情報は、各計算機10-1〜1
0-nのプログラム管理部40に保持しておく必要があ
る。勿論、この存在計算機情報を、各計算機10-1〜1
0-nが共有する構成とすることも可能である。
【0162】(2)リクエスト発行時 本実施例におけるリクエストの発行は、プログラムの動
作時に他のプログラムを起動する命令(を実行するこ
と)によって行われる。以下の説明では、計算機10-1
からプログラムP1を起動するものとする。また、この
プログラムP1は前記第1及び第2実施例と同様に計算
機10-2上に存在するものとする。
作時に他のプログラムを起動する命令(を実行するこ
と)によって行われる。以下の説明では、計算機10-1
からプログラムP1を起動するものとする。また、この
プログラムP1は前記第1及び第2実施例と同様に計算
機10-2上に存在するものとする。
【0163】まず、計算機10-1のデバッグ実行部44
は、起動命令に対応するリクエスト生成コードをプログ
ラム管理部40から探し、これを実行することでリクエ
ストを生成する。このリクエスト生成コード(リクエス
ト生成プログラム)は、本実施例においては、プログラ
ム管理部40に保持されているプログラムP1の存在計
算機情報、即ち計算機10-2を示す識別子(計算機#
2)を取り出し、それをリクエスト送信先計算機の識別
子(計算機#2)として、図3(a)に示したプログラ
ムの起動を指定する命令“create”と起動対象と
なるプログラムP1の識別子(プログラム名)からなる
リクエストの原形に付加すると共に、その原形中のプロ
グラム識別子(P1)で示されるプログラムP1がデバ
ッグ対象プログラムであることを示す情報“debu
g”を更に付加して、デバッグ付きリクエストを生成す
るためのものである。したがって、このリクエスト生成
コードをデバッグ実行部44が実行することで、デバッ
グ対象プログラムP1を起動するための図3(b)に示
したデバッグ付きリクエストが生成される。
は、起動命令に対応するリクエスト生成コードをプログ
ラム管理部40から探し、これを実行することでリクエ
ストを生成する。このリクエスト生成コード(リクエス
ト生成プログラム)は、本実施例においては、プログラ
ム管理部40に保持されているプログラムP1の存在計
算機情報、即ち計算機10-2を示す識別子(計算機#
2)を取り出し、それをリクエスト送信先計算機の識別
子(計算機#2)として、図3(a)に示したプログラ
ムの起動を指定する命令“create”と起動対象と
なるプログラムP1の識別子(プログラム名)からなる
リクエストの原形に付加すると共に、その原形中のプロ
グラム識別子(P1)で示されるプログラムP1がデバ
ッグ対象プログラムであることを示す情報“debu
g”を更に付加して、デバッグ付きリクエストを生成す
るためのものである。したがって、このリクエスト生成
コードをデバッグ実行部44が実行することで、デバッ
グ対象プログラムP1を起動するための図3(b)に示
したデバッグ付きリクエストが生成される。
【0164】計算機10-1のデバッグ実行部44により
生成された図3(b)のリクエストは、当該リクエスト
に含まれるリクエスト送信先計算機識別子(計算機#
2)をもとに、リクエスト通信部43内のリクエスト送
信部431により当該識別子の計算機10-2に送信され
る。
生成された図3(b)のリクエストは、当該リクエスト
に含まれるリクエスト送信先計算機識別子(計算機#
2)をもとに、リクエスト通信部43内のリクエスト送
信部431により当該識別子の計算機10-2に送信され
る。
【0165】計算機10-1のリクエスト送信部431に
より計算機10-2に送信されたデバッグ付きリクエスト
は、当該計算機10-2のリクエスト受信部432で受信
され、同じ計算機10-2のデバッグ実行部44に渡され
る。
より計算機10-2に送信されたデバッグ付きリクエスト
は、当該計算機10-2のリクエスト受信部432で受信
され、同じ計算機10-2のデバッグ実行部44に渡され
る。
【0166】計算機10-2のデバッグ実行部44は、リ
クエスト受信部432から渡された図3(b)のデバッ
グ付きリクエストをもとに、これに対応するプログラム
P1を起動するためのコード(リクエスト起動プログラ
ム)を計算機10-2のプログラム管理部40から探し、
これを実行することで、デバッグ対象プログラムP1の
起動、実行を行う。このときデバッグ実行部34は、プ
ログラムP1をデバッグするために、そのプログラムP
1とデバッガとを結合する。
クエスト受信部432から渡された図3(b)のデバッ
グ付きリクエストをもとに、これに対応するプログラム
P1を起動するためのコード(リクエスト起動プログラ
ム)を計算機10-2のプログラム管理部40から探し、
これを実行することで、デバッグ対象プログラムP1の
起動、実行を行う。このときデバッグ実行部34は、プ
ログラムP1をデバッグするために、そのプログラムP
1とデバッガとを結合する。
【0167】(3)デバッグ操作時 次に、計算機10-1から計算機10-2上のプログラムP
1(先のデバッグ付きリクエストによって計算機10-2
において起動されているプログラムP1)をデバッグす
る場合の動作を説明する。
1(先のデバッグ付きリクエストによって計算機10-2
において起動されているプログラムP1)をデバッグす
る場合の動作を説明する。
【0168】ここでは、計算機10-1のデバッグ操作部
45が有するデバッグコマンド入力部451によりデバ
ッグ対象プログラムP1のデバッグ操作を行うものとす
る。
45が有するデバッグコマンド入力部451によりデバ
ッグ対象プログラムP1のデバッグ操作を行うものとす
る。
【0169】まず、計算機10-1のデバッグコマンド入
力部451により、デバッグ対象プログラムP1へのブ
レークポイントの設定を指示する図4に示したデバッグ
コマンドが発行されたものとする。
力部451により、デバッグ対象プログラムP1へのブ
レークポイントの設定を指示する図4に示したデバッグ
コマンドが発行されたものとする。
【0170】計算機10-1のコマンド送信先選択部46
は、デバッグコマンド入力部451により発行された図
4に示すデバッグコマンドの第2要素(の“P1”の部
分)からデバッグ対象プログラムP1を判断する。そし
てコマンド送信先選択部46は、プログラム位置管理部
40に保持されている存在計算機情報から、自身が判断
したデバッグ対象プログラムP1が存在する計算機10
-2を探し、その計算機10-2をデバッグコマンドの送信
先として決定する。
は、デバッグコマンド入力部451により発行された図
4に示すデバッグコマンドの第2要素(の“P1”の部
分)からデバッグ対象プログラムP1を判断する。そし
てコマンド送信先選択部46は、プログラム位置管理部
40に保持されている存在計算機情報から、自身が判断
したデバッグ対象プログラムP1が存在する計算機10
-2を探し、その計算機10-2をデバッグコマンドの送信
先として決定する。
【0171】この場合、デバッグコマンド入力部451
により発行された図4のデバッグコマンドは、計算機1
0-1のコマンド送信部471により計算機10-2に送信
される。
により発行された図4のデバッグコマンドは、計算機1
0-1のコマンド送信部471により計算機10-2に送信
される。
【0172】計算機10-1のコマンド送信部471によ
り計算機10-2に送信されたデバッグコマンドは、当該
計算機10-2のコマンド受信部472で受信され、同じ
計算機10-2のデバッグ実行部44に渡される。
り計算機10-2に送信されたデバッグコマンドは、当該
計算機10-2のコマンド受信部472で受信され、同じ
計算機10-2のデバッグ実行部44に渡される。
【0173】計算機10-2のデバッグ実行部44は、コ
マンド受信部472から渡された図4のデバッグコマン
ドの指示に従い、(先に受け取った計算機10-1からの
デバッグ付きリクエストに従って)起動されているデバ
ッグ対象プログラムP1のブレークポイントを設定す
る。
マンド受信部472から渡された図4のデバッグコマン
ドの指示に従い、(先に受け取った計算機10-1からの
デバッグ付きリクエストに従って)起動されているデバ
ッグ対象プログラムP1のブレークポイントを設定す
る。
【0174】また、計算機10-2のデバッグ実行部44
は、設定したブレークポイントに対するデバッグ情報を
デバッグ要求元計算機に返信するために、コマンド受信
部472から渡されたデバッグコマンドの発行元(送信
元)計算機10-1がデバッグ情報の返信先であることを
デバッグ情報送信先選択部49に通知して、そのデバッ
グ情報返信先(デバッグコマンド発行元)計算機情報を
内部に保持させる。
は、設定したブレークポイントに対するデバッグ情報を
デバッグ要求元計算機に返信するために、コマンド受信
部472から渡されたデバッグコマンドの発行元(送信
元)計算機10-1がデバッグ情報の返信先であることを
デバッグ情報送信先選択部49に通知して、そのデバッ
グ情報返信先(デバッグコマンド発行元)計算機情報を
内部に保持させる。
【0175】さて、計算機10-2のデバッグ実行部44
は、デバッグコマンドの指示に従ってデバッグ対象プロ
グラムP1のブレークポイントを設定したことにより、
そのブレークポイントでデバッグ情報を得ると、当該デ
バッグ情報をデバッグ情報送信先選択部49に渡す。
は、デバッグコマンドの指示に従ってデバッグ対象プロ
グラムP1のブレークポイントを設定したことにより、
そのブレークポイントでデバッグ情報を得ると、当該デ
バッグ情報をデバッグ情報送信先選択部49に渡す。
【0176】計算機10-2のデバッグ情報送信先選択部
49は、デバッグ実行部44によって当該選択部49内
部に保持されたデバッグ情報返信先(デバッグコマンド
発行元)計算機情報に従い、デバッグコマンドの発行元
計算機10-1をデバッグ情報の返信先として選択する。
この結果、上記デバッグ情報は、計算機10-2のデバッ
グ情報送信部482により計算機10-1に送信される。
49は、デバッグ実行部44によって当該選択部49内
部に保持されたデバッグ情報返信先(デバッグコマンド
発行元)計算機情報に従い、デバッグコマンドの発行元
計算機10-1をデバッグ情報の返信先として選択する。
この結果、上記デバッグ情報は、計算機10-2のデバッ
グ情報送信部482により計算機10-1に送信される。
【0177】計算機10-2のデバッグ情報送信部482
により計算機10-1に送信されたデバッグ情報は、当該
計算機10-1のデバッグ情報受信部481で受信され
る。この受信デバッグ情報は、計算機10-1のデバッグ
情報表示部452により表示される。
により計算機10-1に送信されたデバッグ情報は、当該
計算機10-1のデバッグ情報受信部481で受信され
る。この受信デバッグ情報は、計算機10-1のデバッグ
情報表示部452により表示される。
【0178】なお、以上の説明では、デバッグ操作部4
5、コマンド送信先選択部46、コマンド送信部47及
びデバッグ情報受信部481が各計算機10-1〜10-n
にそれぞれ設けられているものとしたが、デバッグ操作
を行う計算機だけに設けられているものであっても構わ
ない。
5、コマンド送信先選択部46、コマンド送信部47及
びデバッグ情報受信部481が各計算機10-1〜10-n
にそれぞれ設けられているものとしたが、デバッグ操作
を行う計算機だけに設けられているものであっても構わ
ない。
【0179】[第4の実施例]次に、本発明の第4の実
施例につき図面を参照して説明する。
施例につき図面を参照して説明する。
【0180】まず、本実施例が前記第1の実施例と異な
る点は、分散処理装置内の各計算機の機能構成であり、
分散処理装置のシステム構成自体は変わらない。そこ
で、以下の説明では、図1の分散処理装置のシステム構
成を便宜的に参照し、図1中の各計算機10-i(i=1
〜n)の本実施例特有の機能構成を図10に示して、前
記第1の実施例における図2の機能構成と異なることを
明確にする。
る点は、分散処理装置内の各計算機の機能構成であり、
分散処理装置のシステム構成自体は変わらない。そこ
で、以下の説明では、図1の分散処理装置のシステム構
成を便宜的に参照し、図1中の各計算機10-i(i=1
〜n)の本実施例特有の機能構成を図10に示して、前
記第1の実施例における図2の機能構成と異なることを
明確にする。
【0181】本実施例における各計算機10-i(i=1
〜n)は、図10に示すように、ププログラム管理部5
0、送信先管理部51、プログラムコンパイル部52、
リクエスト通信部53、デバッグ実行部54、デバッグ
操作部55、コマンド送信先選択部56、コマンド通信
部57、デバッグ情報通信部58及びデバッグ情報送信
先選択部59を有している。
〜n)は、図10に示すように、ププログラム管理部5
0、送信先管理部51、プログラムコンパイル部52、
リクエスト通信部53、デバッグ実行部54、デバッグ
操作部55、コマンド送信先選択部56、コマンド通信
部57、デバッグ情報通信部58及びデバッグ情報送信
先選択部59を有している。
【0182】プログラム管理部50は、ソースプログラ
ムのインタフェース情報及び実装コードと、(ソースプ
ログラムをコンパイルして得られる)オブジェクトプロ
グラムと、デバッグ対象プログラムの存在場所(存在計
算機情報)を保持するものであり、主記憶または二次記
憶上に確保される。
ムのインタフェース情報及び実装コードと、(ソースプ
ログラムをコンパイルして得られる)オブジェクトプロ
グラムと、デバッグ対象プログラムの存在場所(存在計
算機情報)を保持するものであり、主記憶または二次記
憶上に確保される。
【0183】送信先管理部51は、デバッグコマンドの
送信先の情報及びデバッグ情報の送信先の情報を保持す
るものであり、主記憶または二次記憶上に確保される。
送信先の情報及びデバッグ情報の送信先の情報を保持す
るものであり、主記憶または二次記憶上に確保される。
【0184】プログラムコンパイル部52は、ソースプ
ログラム内のプログラム起動命令に対応する通常実行リ
クエストとデバッグ付きリクエストを生成し、各リクエ
ストに対応する起動プログラムを生成するものである。
ログラム内のプログラム起動命令に対応する通常実行リ
クエストとデバッグ付きリクエストを生成し、各リクエ
ストに対応する起動プログラムを生成するものである。
【0185】リクエスト通信部53は、デバッグ実行部
54が生成したリクエストを対象計算機に送信するリク
エスト送信部531と、他の計算機からのデバッグ対象
プログラムを起動するリクエストを受信するリクエスト
受信部532からなる。
54が生成したリクエストを対象計算機に送信するリク
エスト送信部531と、他の計算機からのデバッグ対象
プログラムを起動するリクエストを受信するリクエスト
受信部532からなる。
【0186】デバッグ実行部54は、デバッグコマンド
の指示するデバッグ操作をデバッガにより実行するもの
であり、起動リクエストからデバッグ対象プログラムを
起動する操作を含んでいる。デバッグ実行部54は、リ
クエスト受信部532からリクエストを受け取った場合
に、そのリクエストに付されているデバッグ情報送信先
(返信先)情報を送信先管理部51に保持するようにな
っている。
の指示するデバッグ操作をデバッガにより実行するもの
であり、起動リクエストからデバッグ対象プログラムを
起動する操作を含んでいる。デバッグ実行部54は、リ
クエスト受信部532からリクエストを受け取った場合
に、そのリクエストに付されているデバッグ情報送信先
(返信先)情報を送信先管理部51に保持するようにな
っている。
【0187】デバッグ操作部55は、ユーザ(プログラ
マ)によるデバッグ作業のためのインタフェースをなす
もので、デバッグ対象プログラムに対するコマンド(デ
バッグコマンド)の発行を行うデバッグコマンド入力部
551と、デバッグ情報を表示するデバッグ情報表示部
552からなる。デバッグ情報表示部552は、他計算
機から送られたデバッグ情報をデバッグ情報送信先選択
部59から受け取るようになっている。
マ)によるデバッグ作業のためのインタフェースをなす
もので、デバッグ対象プログラムに対するコマンド(デ
バッグコマンド)の発行を行うデバッグコマンド入力部
551と、デバッグ情報を表示するデバッグ情報表示部
552からなる。デバッグ情報表示部552は、他計算
機から送られたデバッグ情報をデバッグ情報送信先選択
部59から受け取るようになっている。
【0188】コマンド送信先選択部56は、デバッグコ
マンドの送信先計算機を選択するものである。このデバ
ッグコマンドの送信先計算機は送信先管理部51内のデ
バッグコマンド送信先情報によって示され、計算機10
-i自身(自計算機)の場合もある。送信の対象となるデ
バッグコマンドは、デバッグ操作部55(内のデバッグ
コマンド入力部551)からのデバッグコマンドの場合
と、コマンド通信部57(内のコマンド受信部572)
で受信された他計算機からのデバッグコマンドの場合が
ある。
マンドの送信先計算機を選択するものである。このデバ
ッグコマンドの送信先計算機は送信先管理部51内のデ
バッグコマンド送信先情報によって示され、計算機10
-i自身(自計算機)の場合もある。送信の対象となるデ
バッグコマンドは、デバッグ操作部55(内のデバッグ
コマンド入力部551)からのデバッグコマンドの場合
と、コマンド通信部57(内のコマンド受信部572)
で受信された他計算機からのデバッグコマンドの場合が
ある。
【0189】コマンド通信部57は、デバッグ対象プロ
グラムが起動されている計算機に対してデバッグコマン
ドを送信するコマンド送信部571と、デバッグ要求元
計算機からのデバッグコマンドを受信するコマンド受信
部572からなる。コマンド送信部571は、受信した
デバッグコマンドをコマンド送信先選択部56に渡すよ
うになっている。
グラムが起動されている計算機に対してデバッグコマン
ドを送信するコマンド送信部571と、デバッグ要求元
計算機からのデバッグコマンドを受信するコマンド受信
部572からなる。コマンド送信部571は、受信した
デバッグコマンドをコマンド送信先選択部56に渡すよ
うになっている。
【0190】デバッグ情報通信部58は、デバッグ要求
先計算機からのデバッグ情報を受信するデバッグ情報受
信部581と、(デバッグ要求元計算機からのデバッグ
コマンドに従う)デバッグ実行部54でのデバッグ操作
により得られるデバッグ情報をデバッグ要求元計算機に
送信するデバッグ情報送信部582からなる。デバッグ
情報送信部582は、受信したデバッグ情報をデバッグ
情報送信先選択部59に渡すようになっている。
先計算機からのデバッグ情報を受信するデバッグ情報受
信部581と、(デバッグ要求元計算機からのデバッグ
コマンドに従う)デバッグ実行部54でのデバッグ操作
により得られるデバッグ情報をデバッグ要求元計算機に
送信するデバッグ情報送信部582からなる。デバッグ
情報送信部582は、受信したデバッグ情報をデバッグ
情報送信先選択部59に渡すようになっている。
【0191】デバッグ情報送信先選択部59は、デバッ
グ情報の送信先計算機を選択するものである。このデバ
ッグ情報の送信先計算機は送信先管理部51内のデバッ
グ情報送信先情報によって示される。
グ情報の送信先計算機を選択するものである。このデバ
ッグ情報の送信先計算機は送信先管理部51内のデバッ
グ情報送信先情報によって示される。
【0192】以上に述べた図10の構成は、前記第2の
実施例で述べた図5の構成におけるプログラム位置管理
部30、リクエスト生成部32及びデバッグ実行部34
に代えて、プログラム管理部50、プログラムコンパイ
ル部52及びデバッグ実行部54を設けることにより、
コンパイル時に静的にリクエストを生成しておくこと
で、前記第2の実施例の特徴である(深いリクエストの
発行時における)デバッグコマンドとデバッグ情報の転
送効率の良さを維持しながら、デバッグ操作の一層の高
速化を図るようにしたものである、このため、他の構成
要素である送信先管理部51、リクエスト通信部43
(内のリクエスト送信部531、リクエスト受信部53
2)、デバッグ操作部55(内のデバッグコマンド入力
部551、デバッグ情報表示部552)、コマンド送信
先選択部56、コマンド通信部57(内のコマンド送信
部571、コマンド受信部572)、デバッグ情報通信
部58(内のデバッグ情報受信部581、デバッグ情報
送信部582)及びデバッグ情報送信先選択部59につ
いては、図5中の送信先管理部31、リクエスト通信部
43(内のリクエスト送信部331、リクエスト受信部
332)、デバッグ操作部35(内のデバッグコマンド
入力部351、デバッグ情報表示部352)、コマンド
送信先選択部36、コマンド通信部37(内のコマンド
送信部371、コマンド受信部372)、デバッグ情報
通信部38(内のデバッグ情報受信部381、デバッグ
情報送信部382)及びデバッグ情報送信先選択部39
と同様である。また、プログラム管理部50及びプログ
ラムコンパイル部52は、前記第3の実施例で述べた図
8の構成におけるプログラム管理部40及びプログラム
コンパイル部42と同様である。
実施例で述べた図5の構成におけるプログラム位置管理
部30、リクエスト生成部32及びデバッグ実行部34
に代えて、プログラム管理部50、プログラムコンパイ
ル部52及びデバッグ実行部54を設けることにより、
コンパイル時に静的にリクエストを生成しておくこと
で、前記第2の実施例の特徴である(深いリクエストの
発行時における)デバッグコマンドとデバッグ情報の転
送効率の良さを維持しながら、デバッグ操作の一層の高
速化を図るようにしたものである、このため、他の構成
要素である送信先管理部51、リクエスト通信部43
(内のリクエスト送信部531、リクエスト受信部53
2)、デバッグ操作部55(内のデバッグコマンド入力
部551、デバッグ情報表示部552)、コマンド送信
先選択部56、コマンド通信部57(内のコマンド送信
部571、コマンド受信部572)、デバッグ情報通信
部58(内のデバッグ情報受信部581、デバッグ情報
送信部582)及びデバッグ情報送信先選択部59につ
いては、図5中の送信先管理部31、リクエスト通信部
43(内のリクエスト送信部331、リクエスト受信部
332)、デバッグ操作部35(内のデバッグコマンド
入力部351、デバッグ情報表示部352)、コマンド
送信先選択部36、コマンド通信部37(内のコマンド
送信部371、コマンド受信部372)、デバッグ情報
通信部38(内のデバッグ情報受信部381、デバッグ
情報送信部382)及びデバッグ情報送信先選択部39
と同様である。また、プログラム管理部50及びプログ
ラムコンパイル部52は、前記第3の実施例で述べた図
8の構成におけるプログラム管理部40及びプログラム
コンパイル部42と同様である。
【0193】次に、図10の構成の計算機10-1〜10
-nを備えた図1の分散処理装置における動作を、ユーザ
(プログラマ)のいる計算機10-1からリクエストを発
行し、計算機10-2でプログラムP1を動作させてデバ
ッグを行う場合を例に、(1)リクエスト発行時と
(2)デバッグ操作時に分けて説明する他、(3)深い
リクエストが発行される場合についても説明する。な
お、コンパイル時の動作については、前記第3の実施例
と同様であるため説明を省略する。必要があれば、前記
第3の実施例における(1)コンパイル時の動作の説明
で、プログラム管理部40及びプログラムコンパイル部
42を、それぞれプログラム管理部50及びプログラム
コンパイル部52に読み替えられたい。
-nを備えた図1の分散処理装置における動作を、ユーザ
(プログラマ)のいる計算機10-1からリクエストを発
行し、計算機10-2でプログラムP1を動作させてデバ
ッグを行う場合を例に、(1)リクエスト発行時と
(2)デバッグ操作時に分けて説明する他、(3)深い
リクエストが発行される場合についても説明する。な
お、コンパイル時の動作については、前記第3の実施例
と同様であるため説明を省略する。必要があれば、前記
第3の実施例における(1)コンパイル時の動作の説明
で、プログラム管理部40及びプログラムコンパイル部
42を、それぞれプログラム管理部50及びプログラム
コンパイル部52に読み替えられたい。
【0194】(1)リクエスト発行時 今、リクエスト(デバッグ付きリクエスト)発行前にお
いて、計算機10-1,10-2の送信先管理部51には、
デバッグコマンドの送信先及びデバッグ情報の送信先と
して、いずれも当該計算機10-1,10-2自身(自計算
機)を示す送信先情報が保持されているものとする。
いて、計算機10-1,10-2の送信先管理部51には、
デバッグコマンドの送信先及びデバッグ情報の送信先と
して、いずれも当該計算機10-1,10-2自身(自計算
機)を示す送信先情報が保持されているものとする。
【0195】本実施例におけるリクエストの発行は、プ
ログラムの動作時に他のプログラムを起動する命令(を
実行すること)によって行われる。以下の説明では、デ
バッグ対象プログラムP1を起動するものとする。
ログラムの動作時に他のプログラムを起動する命令(を
実行すること)によって行われる。以下の説明では、デ
バッグ対象プログラムP1を起動するものとする。
【0196】まず、計算機10-1のデバッグ実行部54
は、起動命令に対応するリクエスト生成コードをプログ
ラム管理部40から探し、これを実行することで、デバ
ッグ対象プログラムP1を起動するための図6(b)に
示したデバッグ付きリクエストを生成する。このリクエ
ストには、プログラム管理部40に保持されているプロ
グラムP1の存在計算機情報、即ち計算機10-2を示す
識別子(計算機#2)がリクエスト送信先計算機の識別
子(計算機#2)として付加される他、リクエストの発
行元計算機10-1の識別子(計算機#1)がデバッグ情
報の送信先(返信先)計算機を示す識別子(デバッグ情
報送信先情報)として付加されている。
は、起動命令に対応するリクエスト生成コードをプログ
ラム管理部40から探し、これを実行することで、デバ
ッグ対象プログラムP1を起動するための図6(b)に
示したデバッグ付きリクエストを生成する。このリクエ
ストには、プログラム管理部40に保持されているプロ
グラムP1の存在計算機情報、即ち計算機10-2を示す
識別子(計算機#2)がリクエスト送信先計算機の識別
子(計算機#2)として付加される他、リクエストの発
行元計算機10-1の識別子(計算機#1)がデバッグ情
報の送信先(返信先)計算機を示す識別子(デバッグ情
報送信先情報)として付加されている。
【0197】計算機10-1のデバッグ実行部54により
生成された図6(b)のリクエストは、当該リクエスト
に含まれるリクエスト送信先計算機識別子(計算機#
2)をもとに、リクエスト通信部53内のリクエスト送
信部531により当該識別子の計算機10-2に送信され
る。
生成された図6(b)のリクエストは、当該リクエスト
に含まれるリクエスト送信先計算機識別子(計算機#
2)をもとに、リクエスト通信部53内のリクエスト送
信部531により当該識別子の計算機10-2に送信され
る。
【0198】このとき計算機10-1のデバッグ実行部5
4は、自身の生成したリクエストの送信先計算機10-2
がデバッグコマンドの送信先となるように、送信先管理
部51に保持されているデバッグコマンド送信先情報を
(現在の計算機10-1を示す情報から)変更する。
4は、自身の生成したリクエストの送信先計算機10-2
がデバッグコマンドの送信先となるように、送信先管理
部51に保持されているデバッグコマンド送信先情報を
(現在の計算機10-1を示す情報から)変更する。
【0199】計算機10-1のリクエスト送信部531に
より計算機10-2に送信されたデバッグ付きリクエスト
は、当該計算機10-2のリクエスト受信部532で受信
され、同じ計算機10-2のデバッグ実行部54に渡され
る。
より計算機10-2に送信されたデバッグ付きリクエスト
は、当該計算機10-2のリクエスト受信部532で受信
され、同じ計算機10-2のデバッグ実行部54に渡され
る。
【0200】計算機10-2のデバッグ実行部54は、リ
クエスト受信部532から渡された図6(b)のデバッ
グ付きリクエストをもとに、これに対応するプログラム
P1を起動するためのコード(リクエスト起動プログラ
ム)を計算機10-2のプログラム管理部40から探し、
これを実行することで、デバッグ対象プログラムP1の
起動、実行を行う。このときデバッグ実行部34は、プ
ログラムP1をデバッグするために、そのプログラムP
1とデバッガとを結合する。
クエスト受信部532から渡された図6(b)のデバッ
グ付きリクエストをもとに、これに対応するプログラム
P1を起動するためのコード(リクエスト起動プログラ
ム)を計算機10-2のプログラム管理部40から探し、
これを実行することで、デバッグ対象プログラムP1の
起動、実行を行う。このときデバッグ実行部34は、プ
ログラムP1をデバッグするために、そのプログラムP
1とデバッガとを結合する。
【0201】計算機10-2のデバッグ実行部54は更
に、リクエスト受信部532から渡された図6(b)の
リクエストの第3要素であるデバッグ情報送信先情報
(ここでは計算機10-1の識別子)により示される計算
機、即ちリクエストの発行元の計算機10-1(ここでは
デバッグ操作部55によりデバッグ操作を行う計算機1
0-1)がデバッグ情報の送信先となるように、送信先管
理部51に保持されているデバッグ情報送信先情報を
(現在の計算機10-2自身を示す情報から)変更する。
に、リクエスト受信部532から渡された図6(b)の
リクエストの第3要素であるデバッグ情報送信先情報
(ここでは計算機10-1の識別子)により示される計算
機、即ちリクエストの発行元の計算機10-1(ここでは
デバッグ操作部55によりデバッグ操作を行う計算機1
0-1)がデバッグ情報の送信先となるように、送信先管
理部51に保持されているデバッグ情報送信先情報を
(現在の計算機10-2自身を示す情報から)変更する。
【0202】(2)デバッグ操作時 次に、計算機10-1から計算機10-2上のプログラムP
1(先のデバッグ付きリクエストによって計算機10-2
において起動されているプログラムP1)をデバッグす
る場合の動作を説明する。
1(先のデバッグ付きリクエストによって計算機10-2
において起動されているプログラムP1)をデバッグす
る場合の動作を説明する。
【0203】ここでは、計算機10-1のデバッグ操作部
55が有するデバッグコマンド入力部551によりデバ
ッグ対象プログラムP1のデバッグ操作を行うものとす
る。
55が有するデバッグコマンド入力部551によりデバ
ッグ対象プログラムP1のデバッグ操作を行うものとす
る。
【0204】まず、計算機10-1のデバッグ操作部55
が有するデバッグコマンド入力部551により、デバッ
グ対象プログラムP1へのブレークポイントの設定を指
示する図7(a)に示すようなデバッグコマンドが発行
されたものとする。
が有するデバッグコマンド入力部551により、デバッ
グ対象プログラムP1へのブレークポイントの設定を指
示する図7(a)に示すようなデバッグコマンドが発行
されたものとする。
【0205】計算機10-1のコマンド送信先選択部56
は、デバッグコマンド入力部551によりデバッグコマ
ンドが発行されると、送信先管理部51に保持されてい
るデバッグコマンド送信先情報から、当該デバッグコマ
ンドの送信先計算機を決定する。ここでは、先の計算機
10-1での(プログラムP1を起動するための)リクエ
スト発行時における送信先管理部51内のデバッグコマ
ンド送信先情報の更新から明らかなように、その際のリ
クエスト送信先計算機である計算機10-2が決定され
る。
は、デバッグコマンド入力部551によりデバッグコマ
ンドが発行されると、送信先管理部51に保持されてい
るデバッグコマンド送信先情報から、当該デバッグコマ
ンドの送信先計算機を決定する。ここでは、先の計算機
10-1での(プログラムP1を起動するための)リクエ
スト発行時における送信先管理部51内のデバッグコマ
ンド送信先情報の更新から明らかなように、その際のリ
クエスト送信先計算機である計算機10-2が決定され
る。
【0206】この場合、デバッグコマンド入力部551
により発行された図7(a)のデバッグコマンドは、計
算機10-1のコマンド送信部571により計算機10-2
に送信される。
により発行された図7(a)のデバッグコマンドは、計
算機10-1のコマンド送信部571により計算機10-2
に送信される。
【0207】計算機10-1のコマンド送信部571によ
り計算機10-2に送信されたデバッグコマンドは、当該
計算機10-2のコマンド受信部572で受信され、同じ
計算機10-2のコマンド送信先選択部56に渡される。
り計算機10-2に送信されたデバッグコマンドは、当該
計算機10-2のコマンド受信部572で受信され、同じ
計算機10-2のコマンド送信先選択部56に渡される。
【0208】計算機10-2のコマンド送信先選択部56
は、コマンド受信部572から図7(a)のデバッグコ
マンドを受け取ると、送信先管理部51に保持されてい
るデバッグコマンド送信先情報から、当該デバッグコマ
ンドの送信先計算機を決定する。ここでは、先に述べた
リクエスト発行前の前提条件から明らかなように、計算
機10-2自身が決定される。
は、コマンド受信部572から図7(a)のデバッグコ
マンドを受け取ると、送信先管理部51に保持されてい
るデバッグコマンド送信先情報から、当該デバッグコマ
ンドの送信先計算機を決定する。ここでは、先に述べた
リクエスト発行前の前提条件から明らかなように、計算
機10-2自身が決定される。
【0209】この場合、コマンド受信部572で受信さ
れたデバッグコマンドは当該コマンド送信先選択部56
により同じ計算機10-2内のデバッグ実行部54に渡さ
れる。
れたデバッグコマンドは当該コマンド送信先選択部56
により同じ計算機10-2内のデバッグ実行部54に渡さ
れる。
【0210】計算機10-2のデバッグ実行部54は、コ
マンド送信先選択部56から渡されたデバッグコマンド
(図7(a)参照)の指示に従い、(先に受け取った計
算機10-1からのデバッグ付きリクエストに従って)起
動されているデバッグ対象プログラムP1のブレークポ
イントを設定する。
マンド送信先選択部56から渡されたデバッグコマンド
(図7(a)参照)の指示に従い、(先に受け取った計
算機10-1からのデバッグ付きリクエストに従って)起
動されているデバッグ対象プログラムP1のブレークポ
イントを設定する。
【0211】計算機10-2のデバッグ実行部54は、デ
バッグコマンドの指示に従ってデバッグ対象プログラム
P1のブレークポイントを設定したことにより、そのブ
レークポイントでデバッグ情報を得ると、当該デバッグ
情報をデバッグ情報送信先選択部59に渡す。
バッグコマンドの指示に従ってデバッグ対象プログラム
P1のブレークポイントを設定したことにより、そのブ
レークポイントでデバッグ情報を得ると、当該デバッグ
情報をデバッグ情報送信先選択部59に渡す。
【0212】計算機10-2のデバッグ情報送信先選択部
59は、デバッグ実行部54からデバッグ情報を受け取
ると、送信先管理部51に保持されているデバッグ情報
送信先情報から、デバッグ情報の送信先計算機を決定す
る。ここでは、先の計算機10-2でのリクエスト受信時
における(デバッグ実行部54による)送信先管理部5
1内のデバッグ情報送信先情報の更新から明らかなよう
に、その際のリクエスト発行元計算機である計算機10
-1が決定される。
59は、デバッグ実行部54からデバッグ情報を受け取
ると、送信先管理部51に保持されているデバッグ情報
送信先情報から、デバッグ情報の送信先計算機を決定す
る。ここでは、先の計算機10-2でのリクエスト受信時
における(デバッグ実行部54による)送信先管理部5
1内のデバッグ情報送信先情報の更新から明らかなよう
に、その際のリクエスト発行元計算機である計算機10
-1が決定される。
【0213】この場合、デバッグ実行部54から渡され
たデバッグ情報は、計算機10-2のデバッグ情報送信部
582により計算機10-1に送信される。
たデバッグ情報は、計算機10-2のデバッグ情報送信部
582により計算機10-1に送信される。
【0214】計算機10-2のデバッグ情報送信部582
により計算機10-1に送信されたデバッグ情報は、当該
計算機10-1のデバッグ情報受信部581で受信され、
同じ計算機10-1のデバッグ情報送信先選択部59に渡
される。
により計算機10-1に送信されたデバッグ情報は、当該
計算機10-1のデバッグ情報受信部581で受信され、
同じ計算機10-1のデバッグ情報送信先選択部59に渡
される。
【0215】計算機10-1のデバッグ情報送信先選択部
59は、デバッグ情報受信部581からデバッグ情報を
受け取ると、送信先管理部51に保持されているデバッ
グ情報送信先情報から、デバッグ情報の送信先計算機を
決定する。ここでは、先に述べたリクエスト発行前の前
提条件から明らかなように、計算機10-1自身が決定さ
れる。
59は、デバッグ情報受信部581からデバッグ情報を
受け取ると、送信先管理部51に保持されているデバッ
グ情報送信先情報から、デバッグ情報の送信先計算機を
決定する。ここでは、先に述べたリクエスト発行前の前
提条件から明らかなように、計算機10-1自身が決定さ
れる。
【0216】この計算機10-1のデバッグ情報送信先選
択部59でのデバッグ情報送信先計算機の決定の結果、
デバッグ情報受信部581から渡されたデバッグ情報
は、計算機10-1のデバッグ情報表示部552に送ら
れ、当該表示部552により表示される。
択部59でのデバッグ情報送信先計算機の決定の結果、
デバッグ情報受信部581から渡されたデバッグ情報
は、計算機10-1のデバッグ情報表示部552に送ら
れ、当該表示部552により表示される。
【0217】(3)深いリクエストが発行される場合 次に、深いリクエストが発行される場合について説明す
る。
る。
【0218】例えば、計算機10-1からのリクエストに
より起動された計算機10-2上のプログラムP1の実行
により、計算機10-n上のプログラムP2が起動される
ものとする。また、このプログラムP2が起動される前
において、計算機10-nの送信先管理部51には、デバ
ッグコマンドの送信先及びデバッグ情報の送信先とし
て、いずれも当該計算機10-n自身(自計算機)を示す
送信先情報が保持されているものとする。
より起動された計算機10-2上のプログラムP1の実行
により、計算機10-n上のプログラムP2が起動される
ものとする。また、このプログラムP2が起動される前
において、計算機10-nの送信先管理部51には、デバ
ッグコマンドの送信先及びデバッグ情報の送信先とし
て、いずれも当該計算機10-n自身(自計算機)を示す
送信先情報が保持されているものとする。
【0219】さて、計算機10-2でのプログラムP1の
実行に伴って計算機10-n上のプログラムP2を起動す
る際には、計算機10-2のデバッグ実行部54により、
計算機10-n上のプログラムP2を起動するための図6
(d)に示したデバッグ付きリクエストが生成され、計
算機10-nに発行される。このリクエストには、プログ
ラム管理部40に保持されているプログラムP2の存在
計算機情報、即ち計算機10-nを示す識別子(計算機#
n)がリクエスト送信先計算機の識別子(計算機#n)
として付加される他、リクエストの発行元計算機10-2
の識別子(計算機#2)がデバッグ情報の送信先(返信
先)計算機を示す識別子(デバッグ情報送信先情報)と
して付加されている。
実行に伴って計算機10-n上のプログラムP2を起動す
る際には、計算機10-2のデバッグ実行部54により、
計算機10-n上のプログラムP2を起動するための図6
(d)に示したデバッグ付きリクエストが生成され、計
算機10-nに発行される。このリクエストには、プログ
ラム管理部40に保持されているプログラムP2の存在
計算機情報、即ち計算機10-nを示す識別子(計算機#
n)がリクエスト送信先計算機の識別子(計算機#n)
として付加される他、リクエストの発行元計算機10-2
の識別子(計算機#2)がデバッグ情報の送信先(返信
先)計算機を示す識別子(デバッグ情報送信先情報)と
して付加されている。
【0220】この計算機10-2から計算機10-nへの
(プログラムP2を起動するための)リクエスト発行時
の動作は、先に述べた計算機10-1から計算機10-2へ
の(プログラムP1を起動するための)リクエスト発行
時の動作と同様である。
(プログラムP2を起動するための)リクエスト発行時
の動作は、先に述べた計算機10-1から計算機10-2へ
の(プログラムP1を起動するための)リクエスト発行
時の動作と同様である。
【0221】したがって、プログラムP2を起動するた
めの図6(d)に示すリクエストの発行元計算機10-2
では、当該リクエストの送信先計算機10-nがデバッグ
コマンドの送信先となるように、送信先管理部51に保
持されているデバッグコマンド送信先情報が(現在の計
算機10-2を示す情報から)変更される。
めの図6(d)に示すリクエストの発行元計算機10-2
では、当該リクエストの送信先計算機10-nがデバッグ
コマンドの送信先となるように、送信先管理部51に保
持されているデバッグコマンド送信先情報が(現在の計
算機10-2を示す情報から)変更される。
【0222】同様に、計算機10-2からのリクエストの
受信側計算機10-nでは、当該リクエストの発行元(送
信先)計算機10-2がデバッグ情報の送信先となるよう
に、送信先管理部51に保持されているデバッグ情報送
信先情報が(現在の計算機10-nを示す情報から)変更
される。
受信側計算機10-nでは、当該リクエストの発行元(送
信先)計算機10-2がデバッグ情報の送信先となるよう
に、送信先管理部51に保持されているデバッグ情報送
信先情報が(現在の計算機10-nを示す情報から)変更
される。
【0223】以下では、このような状況の下でのデバッ
グ操作時の動作を、プログラムP1を起動した計算機1
0-1から(更に具体的に述べるならば、計算機10-1の
デバッグ操作部55が有するデバッグコマンド入力部5
51により)、計算機10-n上のデバッグ対象プログラ
ムP2をデバッグ操作する場合を例に説明する。
グ操作時の動作を、プログラムP1を起動した計算機1
0-1から(更に具体的に述べるならば、計算機10-1の
デバッグ操作部55が有するデバッグコマンド入力部5
51により)、計算機10-n上のデバッグ対象プログラ
ムP2をデバッグ操作する場合を例に説明する。
【0224】まず、計算機10-1のデバッグ操作部55
が有するデバッグコマンド入力部551により、デバッ
グ対象プログラムP2へのブレークポイントの設定を指
示する図7(b)に示したデバッグコマンドが発行され
たものとする。
が有するデバッグコマンド入力部551により、デバッ
グ対象プログラムP2へのブレークポイントの設定を指
示する図7(b)に示したデバッグコマンドが発行され
たものとする。
【0225】計算機10-1のコマンド送信先選択部56
は、デバッグコマンド入力部551により図7(b)の
デバッグコマンドが発行されると、送信先管理部51に
保持されているデバッグコマンド送信先情報から、デバ
ッグコマンドの送信先計算機を決定する。ここでは、先
の計算機10-1での(プログラムP1を起動するため
の)リクエストの発行時における送信先管理部51内の
デバッグコマンド送信先情報の更新から明らかなよう
に、その際のリクエスト送信先計算機である計算機10
-2が決定される。
は、デバッグコマンド入力部551により図7(b)の
デバッグコマンドが発行されると、送信先管理部51に
保持されているデバッグコマンド送信先情報から、デバ
ッグコマンドの送信先計算機を決定する。ここでは、先
の計算機10-1での(プログラムP1を起動するため
の)リクエストの発行時における送信先管理部51内の
デバッグコマンド送信先情報の更新から明らかなよう
に、その際のリクエスト送信先計算機である計算機10
-2が決定される。
【0226】この場合、図7(b)のデバッグコマンド
は、計算機10-1のコマンド送信部571により計算機
10-2に送信される。
は、計算機10-1のコマンド送信部571により計算機
10-2に送信される。
【0227】計算機10-1のコマンド送信部571によ
り計算機10-2に送信されたデバッグコマンド(図7
(b)参照)は、当該計算機10-2のコマンド受信部5
72で受信され、同じ計算機10-2のコマンド送信先選
択部56に渡される。
り計算機10-2に送信されたデバッグコマンド(図7
(b)参照)は、当該計算機10-2のコマンド受信部5
72で受信され、同じ計算機10-2のコマンド送信先選
択部56に渡される。
【0228】計算機10-2のコマンド送信先選択部56
は、コマンド受信部572からデバッグコマンドを受け
取ると、送信先管理部51に保持されているデバッグコ
マンド送信先情報から、デバッグコマンドの送信先計算
機を決定する。ここでは、先の計算機10-2での(プロ
グラムP2を起動するための)リクエスト発行時におけ
る送信先管理部51内のデバッグコマンド送信先情報の
更新から明らかなように、その際のリクエスト送信先計
算機である計算機10-nが決定される。
は、コマンド受信部572からデバッグコマンドを受け
取ると、送信先管理部51に保持されているデバッグコ
マンド送信先情報から、デバッグコマンドの送信先計算
機を決定する。ここでは、先の計算機10-2での(プロ
グラムP2を起動するための)リクエスト発行時におけ
る送信先管理部51内のデバッグコマンド送信先情報の
更新から明らかなように、その際のリクエスト送信先計
算機である計算機10-nが決定される。
【0229】この場合、計算機10-2のコマンド受信部
572で受信された計算機10-1からのデバッグコマン
ド(図7(b)参照)は、同じ計算機10-2のコマンド
送信部571により計算機10-nに送信される。
572で受信された計算機10-1からのデバッグコマン
ド(図7(b)参照)は、同じ計算機10-2のコマンド
送信部571により計算機10-nに送信される。
【0230】計算機10-2のコマンド送信部571によ
り計算機10-nに送信されたデバッグコマンド(図7
(b)参照)は、当該計算機10-nのコマンド受信部5
72で受信され、同じ計算機10-nのコマンド送信先選
択部56に渡される。
り計算機10-nに送信されたデバッグコマンド(図7
(b)参照)は、当該計算機10-nのコマンド受信部5
72で受信され、同じ計算機10-nのコマンド送信先選
択部56に渡される。
【0231】計算機10-nのコマンド送信先選択部56
は、コマンド受信部572からデバッグコマンド(図7
(b)参照)を受け取ると、送信先管理部51に保持さ
れているデバッグコマンド送信先情報から、デバッグコ
マンドの送信先計算機を決定する。ここでは、先に述べ
たプログラムP2を起動するためのリクエストの発行前
の前提条件から明らかなように、計算機10-n自身が決
定される。
は、コマンド受信部572からデバッグコマンド(図7
(b)参照)を受け取ると、送信先管理部51に保持さ
れているデバッグコマンド送信先情報から、デバッグコ
マンドの送信先計算機を決定する。ここでは、先に述べ
たプログラムP2を起動するためのリクエストの発行前
の前提条件から明らかなように、計算機10-n自身が決
定される。
【0232】この場合、計算機10-nのコマンド受信部
572で受信されたデバッグコマンド(図7(b)参
照)は、コマンド送信先選択部56により同じ計算機1
0-2内のデバッグ実行部54に渡される。
572で受信されたデバッグコマンド(図7(b)参
照)は、コマンド送信先選択部56により同じ計算機1
0-2内のデバッグ実行部54に渡される。
【0233】計算機10-nのデバッグ実行部54は、コ
マンド送信先選択部56から渡された(プログラムP2
をデバッグするための)図7(b)のデバッグコマンド
の指示に従い、(先に受け取った計算機10-2からのデ
バッグ付きリクエストに従って)起動されているデバッ
グ対象プログラムP2のブレークポイントを設定する。
マンド送信先選択部56から渡された(プログラムP2
をデバッグするための)図7(b)のデバッグコマンド
の指示に従い、(先に受け取った計算機10-2からのデ
バッグ付きリクエストに従って)起動されているデバッ
グ対象プログラムP2のブレークポイントを設定する。
【0234】計算機10-nのデバッグ実行部54は、図
7(b)のデバッグコマンドの指示に従ってデバッグ対
象プログラムP2のブレークポイントを設定したことに
より、そのブレークポイントでデバッグ情報を得ると、
当該デバッグ情報をデバッグ情報送信先選択部59に渡
す。
7(b)のデバッグコマンドの指示に従ってデバッグ対
象プログラムP2のブレークポイントを設定したことに
より、そのブレークポイントでデバッグ情報を得ると、
当該デバッグ情報をデバッグ情報送信先選択部59に渡
す。
【0235】計算機10-nのデバッグ情報送信先選択部
59は、デバッグ実行部54からデバッグ情報を受け取
ると、送信先管理部51に保持されているデバッグ情報
送信先情報から、デバッグ情報の送信先計算機を決定す
る。ここでは、先の計算機10-nでの(プログラムP2
を起動するための)リクエスト受信時における(デバッ
グ実行部54による)送信先管理部51内のデバッグ情
報送信先情報の更新から明らかなように、その際のリク
エスト発行元計算機である計算機10-2が決定される。
59は、デバッグ実行部54からデバッグ情報を受け取
ると、送信先管理部51に保持されているデバッグ情報
送信先情報から、デバッグ情報の送信先計算機を決定す
る。ここでは、先の計算機10-nでの(プログラムP2
を起動するための)リクエスト受信時における(デバッ
グ実行部54による)送信先管理部51内のデバッグ情
報送信先情報の更新から明らかなように、その際のリク
エスト発行元計算機である計算機10-2が決定される。
【0236】この場合、計算機10-nのデバッグ実行部
54から渡されたデバッグ情報は、同じ計算機10-nの
デバッグ情報送信部582により計算機10-2に送信さ
れる。
54から渡されたデバッグ情報は、同じ計算機10-nの
デバッグ情報送信部582により計算機10-2に送信さ
れる。
【0237】計算機10-nのデバッグ情報送信部582
により計算機10-2に送信されたデバッグ情報は、計算
機10-2のデバッグ情報受信部581で受信され、当該
計算機10-2のデバッグ情報送信先選択部59に渡され
る。
により計算機10-2に送信されたデバッグ情報は、計算
機10-2のデバッグ情報受信部581で受信され、当該
計算機10-2のデバッグ情報送信先選択部59に渡され
る。
【0238】計算機10-2のデバッグ情報送信先選択部
59は、デバッグ情報受信部581からデバッグ情報を
受け取ると、送信先管理部51に保持されているデバッ
グ情報送信先情報から、デバッグ情報の送信先計算機を
決定する。ここでは、先の計算機10-2での(プログラ
ムP1を起動するための)リクエストの受信時における
(デバッグ実行部54による)送信先管理部51内のデ
バッグ情報送信先情報の更新から明らかなように、その
際のリクエスト発行元計算機である計算機10-1が決定
される。
59は、デバッグ情報受信部581からデバッグ情報を
受け取ると、送信先管理部51に保持されているデバッ
グ情報送信先情報から、デバッグ情報の送信先計算機を
決定する。ここでは、先の計算機10-2での(プログラ
ムP1を起動するための)リクエストの受信時における
(デバッグ実行部54による)送信先管理部51内のデ
バッグ情報送信先情報の更新から明らかなように、その
際のリクエスト発行元計算機である計算機10-1が決定
される。
【0239】この場合、計算機10-2のデバッグ情報受
信部581で受信されたデバッグ情報は、同じ計算機1
0-2のデバッグ情報送信部582により計算機10-1に
送信される。
信部581で受信されたデバッグ情報は、同じ計算機1
0-2のデバッグ情報送信部582により計算機10-1に
送信される。
【0240】計算機10-2のデバッグ情報送信部582
により計算機10-1に送信されたデバッグ情報は、計算
機10-1のデバッグ情報受信部581で受信され、当該
計算機10-1のデバッグ情報送信先選択部59に渡され
る。
により計算機10-1に送信されたデバッグ情報は、計算
機10-1のデバッグ情報受信部581で受信され、当該
計算機10-1のデバッグ情報送信先選択部59に渡され
る。
【0241】計算機10-1のデバッグ情報送信先選択部
59は、デバッグ情報受信部581からデバッグ情報を
受け取ると、送信先管理部51に保持されているデバッ
グ情報送信先情報から、デバッグ情報の送信先計算機を
決定する。ここでは、先に述べたリクエスト発行前の前
提条件から明らかなように、計算機10-1自身が決定さ
れる。
59は、デバッグ情報受信部581からデバッグ情報を
受け取ると、送信先管理部51に保持されているデバッ
グ情報送信先情報から、デバッグ情報の送信先計算機を
決定する。ここでは、先に述べたリクエスト発行前の前
提条件から明らかなように、計算機10-1自身が決定さ
れる。
【0242】この場合、計算機10-1のデバッグ情報受
信部581で受信されたデバッグ情報は、デバッグ情報
送信先選択部59により計算機10-1のデバッグ情報表
示部552に送られ、当該表示部552により表示され
る。
信部581で受信されたデバッグ情報は、デバッグ情報
送信先選択部59により計算機10-1のデバッグ情報表
示部552に送られ、当該表示部552により表示され
る。
【0243】以上のように、深いリクエストが発行され
る場合には、デバッグコマンドとデバッグ情報の転送が
各計算機に渡って繰り返されるため、効率的ではない。
る場合には、デバッグコマンドとデバッグ情報の転送が
各計算機に渡って繰り返されるため、効率的ではない。
【0244】そこで、このデバッグコマンドとデバッグ
情報の転送を効率化するための手法について説明する。
ここでは、リクエスト発行に違いがあるだけなので、便
宜的に図10の構成を参照して、このリクエスト発行に
関する部分だけを説明する。
情報の転送を効率化するための手法について説明する。
ここでは、リクエスト発行に違いがあるだけなので、便
宜的に図10の構成を参照して、このリクエスト発行に
関する部分だけを説明する。
【0245】まず、計算機10-1から発行されたリクエ
ストにより計算機10-2のプログラムP1が起動された
後、このプログラムP1の実行に伴って計算機10-2か
ら計算機10-nのプログラムP2を起動する場合、計算
機10-2のデバッグ実行部54は、図6(d)に示した
リクエストではなくて、図6(e)に示すようなリクエ
スト(デバッグ付きリクエスト)を生成する。この図6
(e)のリクエストには、第3の要素であるデバッグ情
報送信先情報として、リクエストの発行元計算機10-2
の識別子(計算機#2)に代えて、当該リクエストの発
行時点において計算機10-2の送信先管理部51に保持
されているデバッグ情報送信先計算機の識別子、即ち最
初のリクエストの発行元であるデバッグ操作を行う計算
機10-1の識別子(計算機#1)が付加される。
ストにより計算機10-2のプログラムP1が起動された
後、このプログラムP1の実行に伴って計算機10-2か
ら計算機10-nのプログラムP2を起動する場合、計算
機10-2のデバッグ実行部54は、図6(d)に示した
リクエストではなくて、図6(e)に示すようなリクエ
スト(デバッグ付きリクエスト)を生成する。この図6
(e)のリクエストには、第3の要素であるデバッグ情
報送信先情報として、リクエストの発行元計算機10-2
の識別子(計算機#2)に代えて、当該リクエストの発
行時点において計算機10-2の送信先管理部51に保持
されているデバッグ情報送信先計算機の識別子、即ち最
初のリクエストの発行元であるデバッグ操作を行う計算
機10-1の識別子(計算機#1)が付加される。
【0246】さて、図6(e)のリクエストが計算機1
0-2から計算機10-nに発行されると、計算機10-2の
デバッグ実行部54は、デバッグ対象プログラムの動作
している計算機が(計算機10-2から)計算機10-nに
変更になったことを通知するための情報を特定のデバッ
グ情報として生成し、デバッグ情報送信先選択部59に
渡す。
0-2から計算機10-nに発行されると、計算機10-2の
デバッグ実行部54は、デバッグ対象プログラムの動作
している計算機が(計算機10-2から)計算機10-nに
変更になったことを通知するための情報を特定のデバッ
グ情報として生成し、デバッグ情報送信先選択部59に
渡す。
【0247】計算機10-2のデバッグ情報送信先選択部
59は、デバッグ実行部54から上記特定のデバッグ情
報を受け取ると、送信先管理部51に保持されているデ
バッグ情報送信先情報から、デバッグ情報の送信先計算
機を決定する。ここでは、先の計算機10-2での(プロ
グラムP1を起動するための)リクエスト受信時におけ
る(デバッグ実行部54による)送信先管理部51内の
デバッグ情報送信先情報の更新から明らかなように、そ
の際のリクエスト発行元計算機である計算機10-1が決
定される。
59は、デバッグ実行部54から上記特定のデバッグ情
報を受け取ると、送信先管理部51に保持されているデ
バッグ情報送信先情報から、デバッグ情報の送信先計算
機を決定する。ここでは、先の計算機10-2での(プロ
グラムP1を起動するための)リクエスト受信時におけ
る(デバッグ実行部54による)送信先管理部51内の
デバッグ情報送信先情報の更新から明らかなように、そ
の際のリクエスト発行元計算機である計算機10-1が決
定される。
【0248】この場合、計算機10-2のデバッグ実行部
54から渡された特定のデバッグ情報は、計算機10-2
のデバッグ情報送信部582により計算機10-1に送信
される。
54から渡された特定のデバッグ情報は、計算機10-2
のデバッグ情報送信部582により計算機10-1に送信
される。
【0249】計算機10-2のデバッグ情報送信部582
により計算機10-1に送信された上記特定のデバッグ情
報は、計算機10-1のデバッグ情報受信部581で受信
され、当該計算機10-1のデバッグ情報送信先選択部5
9に渡される。
により計算機10-1に送信された上記特定のデバッグ情
報は、計算機10-1のデバッグ情報受信部581で受信
され、当該計算機10-1のデバッグ情報送信先選択部5
9に渡される。
【0250】計算機10-1のデバッグ情報送信先選択部
59は、デバッグ情報受信部581から上記特定のデバ
ッグ情報を受け取ると、当該情報からデバッグ対象プロ
グラムの動作している計算機が計算機10-nに変更され
たことを判断する。この場合、計算機10-1のデバッグ
情報送信先選択部59は、送信先管理部51に保持され
ているデバッグコマンド送信先情報を、上記デバッグ情
報で示される計算機10-nを示すように変更する。
59は、デバッグ情報受信部581から上記特定のデバ
ッグ情報を受け取ると、当該情報からデバッグ対象プロ
グラムの動作している計算機が計算機10-nに変更され
たことを判断する。この場合、計算機10-1のデバッグ
情報送信先選択部59は、送信先管理部51に保持され
ているデバッグコマンド送信先情報を、上記デバッグ情
報で示される計算機10-nを示すように変更する。
【0251】一方、計算機10-2から計算機10-nに対
して発行される図6(e)に示したリクエストは、計算
機10-nのリクエスト受信部532で受信され、当該計
算機10-nのデバッグ実行部54に渡される。
して発行される図6(e)に示したリクエストは、計算
機10-nのリクエスト受信部532で受信され、当該計
算機10-nのデバッグ実行部54に渡される。
【0252】計算機10-nのデバッグ実行部54は、リ
クエスト受信部532から渡された図6(e)のデバッ
グ付きリクエストをもとに、これに対応するプログラム
P2を起動するためのコード(リクエスト起動プログラ
ム)を計算機10-nのプログラム管理部50から探し、
これを実行することで、デバッグ対象プログラムP2の
起動、実行を行う。このときデバッグ実行部54は、プ
ログラムP2をデバッグするために、そのプログラムP
2とデバッガとを結合する。
クエスト受信部532から渡された図6(e)のデバッ
グ付きリクエストをもとに、これに対応するプログラム
P2を起動するためのコード(リクエスト起動プログラ
ム)を計算機10-nのプログラム管理部50から探し、
これを実行することで、デバッグ対象プログラムP2の
起動、実行を行う。このときデバッグ実行部54は、プ
ログラムP2をデバッグするために、そのプログラムP
2とデバッガとを結合する。
【0253】計算機10-nのデバッグ実行部54は更
に、リクエスト受信部532から渡された図6(e)の
リクエストの第3要素により示される計算機、即ちデバ
ッグ操作部55によりデバッグ操作を行う計算機10-1
がデバッグ情報の送信先となるように、送信先管理部5
1に保持されているデバッグ情報送信先情報を変更す
る。
に、リクエスト受信部532から渡された図6(e)の
リクエストの第3要素により示される計算機、即ちデバ
ッグ操作部55によりデバッグ操作を行う計算機10-1
がデバッグ情報の送信先となるように、送信先管理部5
1に保持されているデバッグ情報送信先情報を変更す
る。
【0254】以上の結果、デバッグ操作する計算機10
-1の(デバッグ操作部55が有する)デバッグコマンド
入力部551からのデバッグコマンドは、当該計算機1
0-1の送信先管理部51に保持されている変更後のデバ
ッグコマンド送信先情報に従い、デバッグ対象プログラ
ムP2が動作している計算機10-nに直接送信される。
-1の(デバッグ操作部55が有する)デバッグコマンド
入力部551からのデバッグコマンドは、当該計算機1
0-1の送信先管理部51に保持されている変更後のデバ
ッグコマンド送信先情報に従い、デバッグ対象プログラ
ムP2が動作している計算機10-nに直接送信される。
【0255】また、計算機10-nで得られたデバッグ情
報は、当該計算機10-nの送信先管理部51に保持され
ている変更後のデバッグ情報送信先情報に従い、直接計
算機10-1に返されることになる。
報は、当該計算機10-nの送信先管理部51に保持され
ている変更後のデバッグ情報送信先情報に従い、直接計
算機10-1に返されることになる。
【0256】この方式を適用する場合、デバッグ操作を
行わない計算機には、デバッグ操作部55は勿論、コマ
ンド送信先選択部56、コマンド送信部57及びデバッ
グ情報受信部581を必ずしも設けておく必要はない。
行わない計算機には、デバッグ操作部55は勿論、コマ
ンド送信先選択部56、コマンド送信部57及びデバッ
グ情報受信部581を必ずしも設けておく必要はない。
【0257】
【発明の効果】以上詳述したように本発明によれば、デ
バッグ操作を行う計算機からデバッグ対象プログラムを
起動するときに、当該プログラムを起動してデバッグ可
能状態とするためのデバッグ付きリクエストが、当該プ
ログラムが実行される計算機宛てに送られることによ
り、その計算機において当該プログラムが起動されてデ
バッグ可能状態となり、この状態でデバッグ操作計算機
からデバッグ対象プログラムが起動されている計算機に
デバッグコマンドが送られることにより、当該プログラ
ムのデバッグが行われて、そのデバッグ情報がデバッグ
操作計算機に送られる構成としたので、分散処理装置上
の分散透過なプログラムのデバッグ操作を、実際のプロ
グラムの分散を意識することなく、プログラマがシステ
ムを起動した計算機だけで行うことができる。
バッグ操作を行う計算機からデバッグ対象プログラムを
起動するときに、当該プログラムを起動してデバッグ可
能状態とするためのデバッグ付きリクエストが、当該プ
ログラムが実行される計算機宛てに送られることによ
り、その計算機において当該プログラムが起動されてデ
バッグ可能状態となり、この状態でデバッグ操作計算機
からデバッグ対象プログラムが起動されている計算機に
デバッグコマンドが送られることにより、当該プログラ
ムのデバッグが行われて、そのデバッグ情報がデバッグ
操作計算機に送られる構成としたので、分散処理装置上
の分散透過なプログラムのデバッグ操作を、実際のプロ
グラムの分散を意識することなく、プログラマがシステ
ムを起動した計算機だけで行うことができる。
【0258】また、本発明によれば、ある計算機からの
デバッグ付きリクエストで起動されたプログラムの実行
により、他の計算機上の別のプログラムを起動するデバ
ッグ付きリクエスト(深いリクエスト)を発行する場合
に、そのリクエスト発行元計算機を示す情報ではなく
て、その計算機(内の送信先管理手段)に保持されてい
るデバッグ情報送信先情報をそのままデバッグ情報の送
信先情報として用いると共に、この種のリクエストを発
行した際に、デバッグ対象プログラムが動作している計
算機が変更となったことと、その変更先の計算機とを通
知する特定のデバッグ情報をデバッグ操作を行う計算機
に送信することにより、デバッグコマンドとデバッグ情
報の転送効率を向上することができる。
デバッグ付きリクエストで起動されたプログラムの実行
により、他の計算機上の別のプログラムを起動するデバ
ッグ付きリクエスト(深いリクエスト)を発行する場合
に、そのリクエスト発行元計算機を示す情報ではなく
て、その計算機(内の送信先管理手段)に保持されてい
るデバッグ情報送信先情報をそのままデバッグ情報の送
信先情報として用いると共に、この種のリクエストを発
行した際に、デバッグ対象プログラムが動作している計
算機が変更となったことと、その変更先の計算機とを通
知する特定のデバッグ情報をデバッグ操作を行う計算機
に送信することにより、デバッグコマンドとデバッグ情
報の転送効率を向上することができる。
【0259】また、本発明によれば、ソースプログラム
のコンパイル時に、当該プログラム中のインタフェース
情報及び実装コードをもとに、デバッグ対象プログラム
起動用のデバッグ付きリクエストを発行するためのリク
エスト生成プログラムと、そのリクエストに対応したプ
ログラム起動用のリクエスト起動プログラムを静的に生
成して、そのプログラムが存在する計算機を示す存在計
算機情報と共にプログラム管理手段に保持しておき、デ
バッグ対象プログラムを起動する際には、プログラム管
理手段に保持されている専用のリクエスト生成プログラ
ムを利用することでデバッグ付きリクエストの発行が速
やかに行え、デバッグ付きリクエストを受信した際に
は、プログラム管理手段に保持されている専用のリクエ
スト起動プログラムを利用することでデバッグ対象プロ
グラムを起動してデバッグ操作可能状態とする制御が速
やかに行える。
のコンパイル時に、当該プログラム中のインタフェース
情報及び実装コードをもとに、デバッグ対象プログラム
起動用のデバッグ付きリクエストを発行するためのリク
エスト生成プログラムと、そのリクエストに対応したプ
ログラム起動用のリクエスト起動プログラムを静的に生
成して、そのプログラムが存在する計算機を示す存在計
算機情報と共にプログラム管理手段に保持しておき、デ
バッグ対象プログラムを起動する際には、プログラム管
理手段に保持されている専用のリクエスト生成プログラ
ムを利用することでデバッグ付きリクエストの発行が速
やかに行え、デバッグ付きリクエストを受信した際に
は、プログラム管理手段に保持されている専用のリクエ
スト起動プログラムを利用することでデバッグ対象プロ
グラムを起動してデバッグ操作可能状態とする制御が速
やかに行える。
【図1】本発明の第1乃至第4の実施例で適用される分
散処理装置のシステム構成を示すブロック図。
散処理装置のシステム構成を示すブロック図。
【図2】本発明の第1の実施例に係る計算機の機能構成
を示すブロック図。
を示すブロック図。
【図3】同第1の実施例及び第3の実施例で適用される
リクエストの原形とデバッグ付きリクエストの例を示す
図。
リクエストの原形とデバッグ付きリクエストの例を示す
図。
【図4】同第1の実施例及び第3の実施例で適用される
デバッグコマンドの例を示す図。
デバッグコマンドの例を示す図。
【図5】本発明の第2の実施例に係る計算機の機能構成
を示すブロック図。
を示すブロック図。
【図6】同第2の実施例及び第4の実施例で適用される
リクエストの原形とデバッグ付きリクエストの例を示す
図。
リクエストの原形とデバッグ付きリクエストの例を示す
図。
【図7】同第2の実施例及び第4の実施例で適用される
デバッグコマンドの例を示す図。
デバッグコマンドの例を示す図。
【図8】本発明の第3の実施例に係る計算機の機能構成
を示すブロック図。
を示すブロック図。
【図9】同第3の実施例で適用されるソースプログラム
P1の例を示す図。
P1の例を示す図。
【図10】本発明の第4の実施例に係る計算機の機能構
成を示すブロック図。
成を示すブロック図。
10-1〜10-n,10-i…計算機、11…通信路、2
0,30…プログラム位置管理部、22…リクエスト生
成部、23,33,43,53…リクエスト通信部、2
4,44…デバッグ実行部、25,35,45,55…
デバッグ操作部、26,36,46,56…コマンド送
信先選択部、27,38,48,58…デバッグ情報通
信部、29,39,49,59…デバッグ情報送信先選
択部、31,51…送信先管理部、32…リクエスト生
成部(第1の変更手段)、34…デバッグ実行部(第2
の変更手段)、40,50…プログラム管理部、42,
52…プログラムコンパイル部、54…デバッグ実行部
(第1の変更手段、第2の変更手段)、231,33
1,431,531…リクエスト送信部、232,33
2,432,532…リクエスト受信部、251,35
1,451,551…デバッグコマンド入力部、25
2,352,452,552…デバッグ情報表示部、2
71,371,471,571…コマンド送信部、27
2,372,472,572…コマンド受信部、28
1,381,481,581…デバッグ情報受信部、2
82,382,482,582…デバッグ情報送信部。
0,30…プログラム位置管理部、22…リクエスト生
成部、23,33,43,53…リクエスト通信部、2
4,44…デバッグ実行部、25,35,45,55…
デバッグ操作部、26,36,46,56…コマンド送
信先選択部、27,38,48,58…デバッグ情報通
信部、29,39,49,59…デバッグ情報送信先選
択部、31,51…送信先管理部、32…リクエスト生
成部(第1の変更手段)、34…デバッグ実行部(第2
の変更手段)、40,50…プログラム管理部、42,
52…プログラムコンパイル部、54…デバッグ実行部
(第1の変更手段、第2の変更手段)、231,33
1,431,531…リクエスト送信部、232,33
2,432,532…リクエスト受信部、251,35
1,451,551…デバッグコマンド入力部、25
2,352,452,552…デバッグ情報表示部、2
71,371,471,571…コマンド送信部、27
2,372,472,572…コマンド受信部、28
1,381,481,581…デバッグ情報受信部、2
82,382,482,582…デバッグ情報送信部。
Claims (6)
- 【請求項1】 複数の計算機を備えた分散処理装置で実
行されるプログラムのデバッグ方法であって、 前記分散処理装置で実行されるプログラムが存在する計
算機を示す存在計算機情報をプログラム位置管理手段に
より保持しておき、 前記分散処理装置上のある計算機からデバッグ対象プロ
グラムを起動する際には、当該プログラムの起動を要求
するリクエストであるデバッグ付きリクエストを生成し
た後、 この生成したデバッグ付きリクエストを、前記プログラ
ム位置管理手段の保持情報の示す、当該リクエストによ
り要求される前記デバッグ対象プログラムが存在する計
算機に送信し、 前記デバッグ付きリクエストが送信された計算機では、
当該リクエストを受信して当該リクエストの要求するデ
バッグ対象プログラムを起動してデバッグ可能状態と
し、 前記デバッグ付きリクエストを送信した計算機では、当
該リクエストに従って起動されているデバッグ対象プロ
グラムのデバッグ操作のために、当該プログラムのデバ
ッグを指示するデバッグコマンドを発行して、プログラ
ム位置管理手段の保持情報の示す、当該コマンドにより
指示されるデバッグ対象プログラムが存在する計算機に
送信し、 前記デバッグコマンドが送信された計算機では、当該コ
マンドを受信して、前記デバッグ付きリクエストに従っ
て起動されているデバッグ対象プログラムに対して当該
コマンドにより指示されたデバッグ操作を行い、 このデバッグ操作により得られるデバッグ情報を前記デ
バッグコマンドの発行元計算機に送信し、 この送信されたデバッグ情報が前記発行元計算機で受信
されるようにしたことを特徴とする分散処理装置で実行
されるプログラムのデバッグ方法。 - 【請求項2】 複数の計算機を備えた分散処理装置で実
行されるプログラムのデバッグ方法であって、 前記分散処理装置で実行されるプログラムが存在する計
算機を示す存在計算機情報をプログラム位置管理手段に
より保持しておき、 前記分散処理装置上のある計算機からデバッグ対象プロ
グラムを起動する際には、当該プログラムが存在する計
算機を前記プログラム位置管理手段の保持情報をもとに
探し、その計算機を送信先として示す送信先情報が付さ
れた、当該プログラムの起動を要求するリクエストであ
るデバッグ付きリクエストを生成した後、 この生成したデバッグ付きリクエストを当該リクエスト
に付されている前記送信先情報の示す計算機に送信し、 前記デバッグ付きリクエストが送信された計算機では、
当該リクエストを受信して当該リクエストの要求するデ
バッグ対象プログラムを起動してデバッグ可能状態と
し、 前記デバッグ付きリクエストを送信した計算機では、当
該リクエストに従って起動されているデバッグ対象プロ
グラムのデバッグ操作のために、当該プログラムのデバ
ッグを指示するデバッグコマンドを発行し、 この発行したデバッグコマンドの指示する前記デバッグ
対象プログラムが存在する計算機を前記プログラム位置
管理手段の保持情報をもとに探して、その計算機に当該
コマンドを送信し、 前記デバッグコマンドが送信された計算機では、当該コ
マンドを受信して、前記デバッグ付きリクエストに従っ
て起動されているデバッグ対象プログラムに対して当該
コマンドにより指示されたデバッグ操作を行い、 このデバッグ操作により得られるデバッグ情報を前記デ
バッグコマンドの発行元計算機に送信し、 この送信されたデバッグ情報が前記発行元計算機で受信
されるようにしたことを特徴とする分散処理装置で実行
されるプログラムのデバッグ方法。 - 【請求項3】 複数の計算機を備えた分散処理装置で実
行されるプログラムのデバッグ方法であって、 前記分散処理装置で実行されるプログラムが存在する計
算機を示す存在計算機情報をプログラム位置管理手段に
より保持すると共に、プログラムのデバッグを指示する
デバッグコマンドの送信先計算機を示す情報及びデバッ
グ情報の送信先計算機を示す情報を送信先管理手段によ
り保持しておき、 前記分散処理装置上のある計算機からデバッグ対象プロ
グラムを起動する際には、当該プログラムが存在する計
算機を前記プログラム位置管理手段の保持情報をもとに
探し、その計算機を送信先として示す送信先情報及び自
身を発行元として示す発行元計算機情報が付された、当
該プログラムの起動を要求するリクエストであるデバッ
グ付きリクエストを生成した後、 この生成したデバッグ付きリクエストを当該リクエスト
に付されている前記送信先情報の示す計算機に送信する
と共に、当該リクエストの送信先計算機がデバッグコマ
ンドの送信先になるように前記送信先管理手段に保持さ
れているデバッグコマンド送信先情報を変更し、 前記デバッグ付きリクエストが送信された計算機では、
当該リクエストを受信して、当該リクエストの要求する
デバッグ対象プログラムを起動してデバッグ可能状態と
すると共に、当該リクエストに付されている発行元計算
機情報の示す計算機がデバッグ情報の送信先となるよう
に前記送信先管理手段に保持されているデバッグ情報送
信先情報を変更し、 前記デバッグ付きリクエストを送信した計算機では、当
該リクエストに従って起動されているデバッグ対象プロ
グラムのデバッグ操作のために、当該プログラムのデバ
ッグを指示するデバッグコマンドを発行し、 この発行したデバッグコマンドを、前記送信先管理手段
に保持されているデバッグコマンド送信先情報の示す計
算機に送信し、 前記デバッグコマンドが送信された計算機では、当該コ
マンドを受信して、前記デバッグ付きリクエストに従っ
て起動されているデバッグ対象プログラムに対して当該
コマンドにより指示されたデバッグ操作を行い、 このデバッグ操作により得られるデバッグ情報を前記送
信先管理手段に保持されているデバッグ情報送信先情報
の示す計算機に送信し、 この送信されたデバッグ情報が前記デバッグ情報送信先
情報の示す計算機で受信されるようにしたことを特徴と
する分散処理装置で実行されるプログラムのデバッグ方
法。 - 【請求項4】 複数の計算機を備えた分散処理装置で実
行されるプログラムのデバッグ方法であって、 前記分散処理装置で実行されるプログラムが存在する計
算機を示す存在計算機情報をプログラム位置管理手段に
より保持すると共に、プログラムのデバッグを指示する
デバッグコマンドの送信先計算機を示す情報及びデバッ
グ情報の送信先計算機を示す情報を送信先管理手段によ
り保持しておき、 前記分散処理装置上のある計算機からデバッグ対象プロ
グラムを起動する際には、当該プログラムが存在する計
算機を前記プログラム位置管理手段の保持情報をもとに
探し、その計算機を送信先として示す送信先情報が付さ
れると共に、前記送信先管理手段に保持されているデバ
ッグ情報送信先情報が付された、当該プログラムの起動
を要求するリクエストであるデバッグ付きリクエストを
生成した後、 この生成したデバッグ付きリクエストを当該リクエスト
に付されている前記送信先情報の示す計算機に送信する
と共に、当該リクエストの送信先計算機がデバッグコマ
ンドの送信先になるように前記送信先管理手段に保持さ
れているデバッグコマンド送信先情報を変更し、 前記デバッグ付きリクエストが送信された計算機では、
当該リクエストを受信して、当該リクエストの要求する
デバッグ対象プログラムを起動してデバッグ可能状態と
すると共に、当該リクエストに付されているデバッグ情
報送信先情報の示す計算機がデバッグ情報の送信先とな
るように前記送信先管理手段に保持されているデバッグ
情報送信先情報を変更し、 前記デバッグ対象プログラムを起動した計算機におい
て、当該プログラムの実行に伴って他の計算機上の別の
デバッグ対象プログラムを起動するために当該他計算機
宛てのデバッグ付きリクエストが生成されて当該他計算
機に送信された場合には、前記デバッグ対象プログラム
の動作している計算機が当該他計算機に変更されたこと
を通知するための情報を特定のデバッグ情報として生成
して、前記送信先管理手段に保持されているデバッグ情
報送信先情報の示す計算機に送信し、 前記デバッグ情報が送信された計算機では、当該デバッ
グ情報が前記特定のデバッグ情報の場合には、当該デバ
ッグ情報により通知される計算機がデバッグコマンドの
送信先になるように前記送信先管理手段に保持されてい
るデバッグコマンド送信先情報を変更し、 前記デバッグ付きリクエストを送信した計算機では、当
該リクエストに従って直接または間接に起動されている
デバッグ対象プログラムのデバッグ操作のために、当該
プログラムのデバッグを指示するデバッグコマンドを発
行し、 この発行したデバッグコマンドを、前記送信先管理手段
に保持されているデバッグコマンド送信先情報の示す計
算機に送信し、 前記デバッグコマンドが送信された計算機では、当該コ
マンドを受信して、前記デバッグ付きリクエストに従っ
て起動されているデバッグ対象プログラムに対して当該
コマンドにより指示されたデバッグ操作を行い、 このデバッグ操作により得られるデバッグ情報を前記送
信先管理手段に保持されているデバッグ情報送信先情報
の示す計算機に送信し、 この送信されたデバッグ情報が最初にデバッグ付きリク
エストを発行したデバッグ操作を行う計算機で受信され
るようにしたことを特徴とする分散処理装置で実行され
るプログラムのデバッグ方法。 - 【請求項5】 複数の計算機を備えた分散処理装置で実
行されるプログラムのデバッグ方法であって、 プログラムのインタフェースを定義したインタフェース
情報と実行動作を記述した実装コードからなるソースプ
ログラムをプログラム位置管理手段により保持すると共
に、プログラムコンパイル時には、前記プログラム位置
管理手段に保持されているソースプログラム中のインタ
フェース情報及び実装コードをもとに、デバッグ対象プ
ログラム起動用のデバッグ付きリクエストを発行するた
めのリクエスト生成プログラムと、そのリクエストに対
応したプログラム起動用のリクエスト起動プログラムを
生成して、そのプログラムが存在する計算機を示す存在
計算機情報と共に前記プログラム管理手段に保持してお
き、 前記分散処理装置上のある計算機からデバッグ対象プロ
グラムを起動する際には、前記プログラム管理手段から
前記リクエスト生成プログラムと共に当該デバッグ対象
プログラムが存在する計算機の存在計算機情報を探し、
そのリクエスト生成プログラム及び存在計算機情報をも
とに、その計算機情報が送信先情報として付された、当
該デバッグ対象プログラムの起動を要求するリクエスト
であるデバッグ付きリクエストを生成した後、 この生成したデバッグ付きリクエストを当該リクエスト
に付されている前記送信先情報の示す計算機に送信し、 前記デバッグ付きリクエストが送信された計算機では、
当該リクエストを受信して前記プログラム管理手段から
当該リクエストに対応する前記リクエスト起動プログラ
ムを探し、このリクエスト起動プログラムに従って指定
されたデバッグ対象プログラムを起動してデバッグ可能
状態とし、 前記デバッグ付きリクエストを送信した計算機では、当
該リクエストに従って起動されているデバッグ対象プロ
グラムのデバッグ操作のために、当該プログラムのデバ
ッグを指示するデバッグコマンドを発行し、 この発行したデバッグコマンドの指示する前記デバッグ
対象プログラムが存在する計算機を前記プログラム管理
手段の保持情報をもとに探して、その計算機に当該コマ
ンドを送信し、 前記デバッグコマンドが送信された計算機では、当該コ
マンドを受信して、前記デバッグ付きリクエストに従っ
て起動されているデバッグ対象プログラムに対して当該
コマンドにより指示されたデバッグ操作を行い、 このデバッグ操作により得られるデバッグ情報を前記デ
バッグコマンドの発行元計算機に送信し、 この送信されたデバッグ情報が前記発行元計算機で受信
されるようにしたことを特徴とする分散処理装置で実行
されるプログラムのデバッグ方法。 - 【請求項6】 複数の計算機を備えた分散処理装置で実
行されるプログラムのデバッグ方法であって、 プログラムのインタフェースを定義したインタフェース
情報と実行動作を記述した実装コードからなるソースプ
ログラムをプログラム位置管理手段により保持すると共
にプログラムのデバッグを指示するデバッグコマンドの
送信先計算機を示す情報及びデバッグ情報の送信先計算
機を示す情報を送信先管理手段により保持しておき、 プログラムコンパイル時には、前記プログラム位置管理
手段に保持されているソースプログラム中のインタフェ
ース情報及び実装コードをもとに、デバッグ対象プログ
ラム起動用のデバッグ付きリクエストを発行するための
リクエスト生成プログラムと、そのリクエストに対応し
たプログラム起動用のリクエスト起動プログラムを生成
して、そのプログラムが存在する計算機を示す存在計算
機情報と共に前記プログラム管理手段に保持し、 前記分散処理装置上のある計算機からデバッグ対象プロ
グラムを起動する際には、前記プログラム管理手段から
前記リクエスト生成プログラムと共に当該デバッグ対象
プログラムが存在する計算機の存在計算機情報を探し、
そのリクエスト生成プログラム及び存在計算機情報をも
とに、その計算機情報が送信先情報として付されると共
に、前記送信先管理手段に保持されているデバッグ情報
送信先情報が付された、当該プログラムの起動を要求す
るリクエストであるデバッグ付きリクエストを生成した
後、 この生成したデバッグ付きリクエストを当該リクエスト
に付されている前記送信先情報の示す計算機に送信する
と共に、当該リクエストの送信先計算機がデバッグコマ
ンドの送信先になるように前記送信先管理手段に保持さ
れているデバッグコマンド送信先情報を変更し、 前記デバッグ付きリクエストが送信された計算機では、
当該リクエストを受信して前記プログラム管理手段から
当該リクエストに対応する前記リクエスト起動プログラ
ムを探し、このリクエスト起動プログラムに従って指定
されたデバッグ対象プログラムを起動してデバッグ可能
状態とすると共に、当該リクエストに付されているデバ
ッグ情報送信先情報の示す計算機がデバッグ情報の送信
先となるように前記送信先管理手段に保持されているデ
バッグ情報送信先情報を変更し、 前記デバッグ対象プログラムを起動した計算機におい
て、当該プログラムの実行に伴って他の計算機上の別の
デバッグ対象プログラムを起動するために当該他計算機
宛てのデバッグ付きリクエストが生成されて当該他計算
機に送信された場合には、前記デバッグ対象プログラム
の動作している計算機が当該他計算機に変更されたこと
を通知するための情報を特定のデバッグ情報として生成
して、前記送信先管理手段に保持されているデバッグ情
報送信先情報の示す計算機に送信し、 前記デバッグ情報が送信された計算機では、当該デバッ
グ情報が前記特定のデバッグ情報の場合には、当該デバ
ッグ情報により通知される計算機がデバッグコマンドの
送信先になるように前記送信先管理手段に保持されてい
るデバッグコマンド送信先情報を変更し、 前記デバッグ付きリクエストを送信した計算機では、当
該リクエストに従って直接または間接に起動されている
デバッグ対象プログラムのデバッグ操作のために、当該
プログラムのデバッグを指示するデバッグコマンドを発
行し、 この発行したデバッグコマンドを、前記送信先管理手段
に保持されているデバッグコマンド送信先情報の示す計
算機に送信し、 前記デバッグコマンドが送信された計算機では、当該コ
マンドを受信して、前記デバッグ付きリクエストに従っ
て起動されているデバッグ対象プログラムに対して当該
コマンドにより指示されたデバッグ操作を行い、 このデバッグ操作により得られるデバッグ情報を前記送
信先管理手段に保持されているデバッグ情報送信先情報
の示す計算機に送信し、 この送信されたデバッグ情報が最初にデバッグ付きリク
エストを発行したデバッグ操作を行う計算機で受信され
るようにしたことを特徴とする分散処理装置で実行され
るプログラムのデバッグ方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP7077886A JPH08272644A (ja) | 1995-04-03 | 1995-04-03 | 分散処理装置で実行されるプログラムのデバッグ方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP7077886A JPH08272644A (ja) | 1995-04-03 | 1995-04-03 | 分散処理装置で実行されるプログラムのデバッグ方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH08272644A true JPH08272644A (ja) | 1996-10-18 |
Family
ID=13646562
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP7077886A Pending JPH08272644A (ja) | 1995-04-03 | 1995-04-03 | 分散処理装置で実行されるプログラムのデバッグ方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH08272644A (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001051871A (ja) * | 1999-08-09 | 2001-02-23 | Ricoh Co Ltd | リモートデバッグ装置 |
US6961926B2 (en) | 1999-12-15 | 2005-11-01 | Nec Corporation | System and method for distributed debugging and recording medium on which control programs are recorded |
WO2006137223A1 (ja) * | 2005-06-22 | 2006-12-28 | Nec Corporation | デバッグシステム、デバッグ方法、およびプログラム |
CN102279790A (zh) * | 2010-06-11 | 2011-12-14 | 国际商业机器公司 | 分布式调试方法和系统 |
JP2015148879A (ja) * | 2014-02-05 | 2015-08-20 | 三菱電機株式会社 | 組込み機器ソフトウェア開発試験装置 |
-
1995
- 1995-04-03 JP JP7077886A patent/JPH08272644A/ja active Pending
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001051871A (ja) * | 1999-08-09 | 2001-02-23 | Ricoh Co Ltd | リモートデバッグ装置 |
US6961926B2 (en) | 1999-12-15 | 2005-11-01 | Nec Corporation | System and method for distributed debugging and recording medium on which control programs are recorded |
WO2006137223A1 (ja) * | 2005-06-22 | 2006-12-28 | Nec Corporation | デバッグシステム、デバッグ方法、およびプログラム |
JP5163120B2 (ja) * | 2005-06-22 | 2013-03-13 | 日本電気株式会社 | デバッグシステム、デバッグ方法、およびプログラム |
US8589879B2 (en) | 2005-06-22 | 2013-11-19 | Nec Corporation | Debugging system, debugging method, and program |
CN102279790A (zh) * | 2010-06-11 | 2011-12-14 | 国际商业机器公司 | 分布式调试方法和系统 |
JP2011258185A (ja) * | 2010-06-11 | 2011-12-22 | International Business Maschines Corporation | デバッグ・プログラム、デバッグ・システム、および方法 |
US8856742B2 (en) | 2010-06-11 | 2014-10-07 | International Business Machines Corporation | Distributed debugging |
JP2015148879A (ja) * | 2014-02-05 | 2015-08-20 | 三菱電機株式会社 | 組込み機器ソフトウェア開発試験装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6216237B1 (en) | Distributed indirect software instrumentation | |
US6011920A (en) | Method and apparatus for debugging applications on a personality neutral debugger | |
US7216336B1 (en) | Sequential event monitoring module | |
US5630049A (en) | Method and apparatus for testing software on a computer network | |
JP3339482B2 (ja) | 分散デバッグ装置及びデバッグ方法並びに制御プログラムを記録した記録媒体 | |
US5819093A (en) | System and method for a distributed debugger for debugging distributed application programs | |
US6026362A (en) | Tool and method for diagnosing and correcting errors in a computer program | |
US6898735B2 (en) | Test tool and methods for testing a computer structure employing a computer simulation of the computer structure | |
US7111299B2 (en) | Method and device to assist in the execution of tasks of parallel jobs | |
JP3055970B2 (ja) | オブジェクト指向言語間インタフェース実現方法および装置 | |
US20120084758A1 (en) | Collaborative Software Debugging In A Distributed System With Client-Specific Variable Evaluation | |
US20030233634A1 (en) | Open debugging environment | |
US9009673B2 (en) | Collaborative software debugging in a distributed system with collaborative step over operation | |
US20100153786A1 (en) | Processor, multiprocessor, and debugging method | |
US7865883B1 (en) | Parallel and asynchronous debugger and debugging method for multi-threaded programs | |
US6775793B2 (en) | Data exchange system and method for processors | |
JPH08272644A (ja) | 分散処理装置で実行されるプログラムのデバッグ方法 | |
JPH07248941A (ja) | デバッグ支援装置 | |
JP3712984B2 (ja) | 業務進捗制御装置及びその方法と、業務進捗制御プログラム及びそのプログラムを記録した記録媒体 | |
JPH10334066A (ja) | 並列データ処理システムおよびその制御方法 | |
Daniel et al. | An object oriented approach to CAD tool control | |
CN112711527A (zh) | 一种实时进程的调试方法、装置、目标机和存储介质 | |
KR100406953B1 (ko) | 실시간 운영체제의 런타임 디버깅 방법 | |
JP2001318805A (ja) | 組み込みシステムのテスト方法及びテストシステム | |
Dadeau et al. | Online Testing of Dynamic Reconfigurations wrt Adaptation Policies |