JPH01251239A - デバッグ装置 - Google Patents

デバッグ装置

Info

Publication number
JPH01251239A
JPH01251239A JP63079075A JP7907588A JPH01251239A JP H01251239 A JPH01251239 A JP H01251239A JP 63079075 A JP63079075 A JP 63079075A JP 7907588 A JP7907588 A JP 7907588A JP H01251239 A JPH01251239 A JP H01251239A
Authority
JP
Japan
Prior art keywords
command
debug
debugging
subtask
main task
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP63079075A
Other languages
English (en)
Inventor
Tsuguichi Shibata
柴田 次一
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP63079075A priority Critical patent/JPH01251239A/ja
Publication of JPH01251239A publication Critical patent/JPH01251239A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Multi Processors (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、情報処理システムのプログラムデバッ″グ手
段に利用する。特に、密結合マルチプロセッサデータ処
理システム上で動作する利用者プログラムのデバッグ手
段に関する。
〔概要〕
本発明は、密結合マルチプロセッサデータ処理系の利用
者プログラムのデバッグ手段に右いて、主プロセツサと
並列に動作するプロセッサ上にもデバッガの一部を有し
、主プロセツサと他のプロセッサで共用するメモリにイ
ンタフェース用のテーブルを配置することにより、 プログラムの修正を行うことなくデバッグ作業を行うこ
とができるようにしたものである。
〔従来の技術〕
従来、一つのプログラムを部分的に分割して他と並列に
異なるプロセッサ上で動作するデータ処理システム上で
プログラムをデバッグするデバッガは存在しておらず、
作成したプログラムが予想と異なる動作をする場合は単
一のプロセッサ上で動作するように作り直してからデバ
ッグを行っていた。このようなプログラムをデバッグす
るデバッガが存在しなかった理由は、主にデバッガが主
プロセツサ上でのみ動作するために異なるプロセッサ上
のメモリにロードされたオブジェクトプログラムを参照
することができないことと、また、異なるプロセッサ上
で実行するサブルーチン群は他のタスクから動的に選択
される可能性があり、プログラムの実行前にはその名前
がわからないので、サブルーチンを実行するプロセッサ
以外ではあらかじめそのアドレスを知ることはできない
こととによる。
〔発明が解決しようとする問題点〕
このような従来例では、単一のプロセッサで実行するプ
ログラムの構造が複数のプロセッサで動作するプログラ
ムの構造とが異なることがあり、複数のプロセッサで動
作する場合に特に発生する問題点を調査することができ
ない欠点があった。
本発明は、密結合されたマルチプロセッサデータ処理シ
ステムで動作し、長時間にわたりCPUを使用する利用
者プログラムのターンアラウンドタイムを改善するため
に、オペレーティングシステムの提供するシステムサブ
ルーチンの呼び出しを行うことによって利用者プログラ
ムにサブタスクを生成し、これを複数のプロセッサに割
り当てて利用者プログラムの並列実行が可能な部分を主
タスクとは独立して異なる複数のプロセッサ上で実行さ
れるプログラムのデバッグが行えるデバッグ装置を提供
することを目的とする。
〔問題点を解決するための手段〕
本発明は、主タスクとサブタスクとを有し、このサブタ
スクが密結合したプロセッサの複数個で実行される利用
者プログラムのデバッグ装置において、上記主タスクの
実行時に動作する主タスク動作部、上記サブタスクの実
行時に動作するサブタスク動作部ならびに上記プロセッ
サの複数個に共用のメモリ上に領域を有するデバックコ
マンドテーブルおよびデバッグ結果格納テーブルを備え
、上記主タスク動作部は、上記利用者プログラムに対応
するデバッグコマンドを入力するコマンド人力部および
このデバッグコマンドを形式変換して上記デバッグコマ
ンドテーブルに与えるコマンドテーブル作成部を有し、
上記サブデータ動作部は、上記サブタスクに対応するデ
バッグコマンドを上記デバックコマンドテーブルから検
索するコマンド検索部およびこの検索されたデバックコ
マンドによる上記利用者プログラムの処理結果を上記デ
バック結果格納テーブルに与えるデバッグ結果格納部を
有することを特徴とする。
〔作用〕
コマンド人力部でデバッグコマンドを入力し、コマンド
テーブル作成部がデバッグコマンドテーブルにデバッグ
コマンドの内容を格納する。主タスクが動作するとサブ
タスクが生成され、サブタスクで実行されるサブルーチ
ン名に対応するデバッグコマンドがデバッグコマンドテ
ーブルから抽出されてコマンド処理を行い、デバッグ結
果をデバッグ格納テーブルに格納する。主タスクの終了
時にこのデバッグ結果は呼び出されて端末装置や5YS
OUTフアイルに出力される。
〔実施例〕
以下、本発明の一実施例について図面を参照して説明す
る。第1図はこの実施例の構成を示すブロック構成図で
ある。第2図は利用者プログラムの構成を示す構成図で
ある。
この実施例は、第1図に示すように、プロゲラムチバッ
グ装置1と、オペレーティングシステム16と、端末装
置17と、5YSINフアイル18と、5YSOUTフ
アイル19と、コンパイラが作成したプログラムのネー
ムテーブルがあらかじめ格納されるネームテーブル格納
ファイル20と、リンカにより出力されたアドレス変換
表が格納されるアドレス変換表格納ファイル21と、オ
ペレーティングシステム16から呼び出されプログラム
デバッグ装置1のデバッグ対象となるプログラムである
利用者プログラム22とを備える。ここで、プログラム
デバッグ装置1は、主タスクで動作する主タスク動作部
2と、サブタスクの実行時に動作するサブタスク動作部
3と、各プロセッサ間で共有するメモリ上におかれるデ
バッグコマンドテーブル14と、デバッグ結果格納テー
ブル15とを備え、さらに、主タスク動作部2は、利用
者の指示によりオペレーティングシステム16から呼び
出された主タスク制御部4と、コマンド人力部5と、デ
バッグ結果出力部6と、コマンドテーブル作成部7とを
備え、また、サブタスク動作部3は、利用者プログラム
22の動作する各プロセッサ上の各タスクで動作し、サ
ブタスク制御部8と、サブルーチン名取得部9と、コマ
ンド処理部10と、アドレス変換部11と、コマンド検
索部12と、デバッグ結果格納部13とを備え、また、
利用者プログラム22は、オペレーティングシステム1
6によってそれぞれ異なるプロセッサに割り当てられる
主タスク23および複数のサブタスク24を備える。す
なわち、この実施例は、主タスク23とサブタスク24
とを有し、このサブタスク24が密結合したプロセッサ
の複数個で実行される利用者プログラム22に結合され
、主タスク23の実行時に動作する主タスク動作部2と
、サブタスク24の実行時に動作するサブタスク動作部
3と、上記プロセッサの複数個に共用のメモリ上に領域
を有するデバックコマンドテーブル14およびデバッグ
結果格納テーブル15とを備え、ここで、主タスク動作
部2は、利用者プログラム22に対応するデバッグコマ
ンドを人力するコマンド人力B5と、このデバッグコマ
ンドを形式変換して上記デバッグコマンドテーブルに与
えるコマンドテーブル作成部7を有し、また、サブデー
タ動作部3は、サブタスク24に対応するデバッグコマ
ンドをデバックコマンドテーブル14から検索するコマ
ンド検索部12と、この検索されたデバックコマンドに
よる利用者プログラム22の処理結果をデバック結果格
納テーブル15に与えるデバッグ結果格納部13とを有
する。
次に、この実施例の動作を説明する。
主タスク動作部2はオペレーティングシステム16から
主タスク23の実行時に呼び出され、主タスク制御部4
が動作する。主タスク制御部4はコマンド人力部5を呼
び出し、端末装置17または5YSINフアイル18か
らデバッグコマンドを人力する。ひきつづき、コマンド
テーブル作成部7はコマンド入力部5の人力したコマン
ドとネームテーブル格納ファイル20からのコマンドと
を内部形式に変換してデバッグコマンドテーブル14に
格納する。
サブタスク動作部3は利用者プログラム22の動作する
各プロセッサ上の各タスクで動作し、各タスクの動作の
開始時に呼び出される。サブタスク制御部8はサブルー
チン名取得部9を呼び出し、自身が動作しているタスク
で実行されるサブルーチンの名前を取り出す。その後に
、コマンド検索部12に制御を渡しこのサブルーチンの
名前に対応するデバッグコマンドがデバッグコマンドテ
ーブル14に存在するか否かを調べる。デバッグコマン
ドが存在すれば、コマンド処理部10はアドレス変換部
11から実際のアドレスを取り出してコマンドの処理を
行い、デバッグ結果格納部13がデバッグ結果をデバッ
グ結果格納テーブル15に格納する。
ここで、アドレス変換部11はアドレス変換表格納ファ
イル21からのアドレス変換表に基づきデバッグコマン
ドテーブル14に格納されているコンパイル時のアドレ
スを実行時アドレスに変換する処理を行う。主タスク2
3の終了時にはオペレーティングシステム16から再び
主タスク動作部2が呼び出され、主タスク制御部4がデ
バッグ結果出力部6を呼び出し、サブタスクのデバッグ
結果をデバッグ結果格納テーブル15から取り出して端
末装置17または5YSOUTフアイル19へ出力する
次に、第2図に基づき利用者プログラム22の動作とデ
バッガとの関連を説明する。利用者プログラム22は、
第2図に示すように、オペレーティングシステム16が
提供するTASK INIT、TASKEXEC,TA
SKWAITおよびTASKTERMの4つのシステム
サブルーチンと、主タスクとサブタスク間の通信を行う
5TARTTASKと、ENDTASKのシステムサブ
ルーチンとを含む。ここで、TASKINITは、サブ
タスクを生成し、これにプロセッサを割り当てるサブル
ーチンである。TASKEXECは、TASKINIT
で生成したサブタスクに主タスクと並列に動作可能なサ
ブルーチンを割り当て、サブタスク上での動作開始を指
示するサブルーチンである。TASKWAITlt、T
ASKEXECによって動作したサブルーチンの終了を
待ち合わせるサブルーチンである。TASKTERMは
、TASKINITで生成したサブタスクとサブタスク
に割り当てたプロセッサを解放するサブルーチンである
。5TARTTASKは、TASKINITにて起動さ
れるサブタスク上に存在し、TASKEXECで指示さ
れたサブルーチンの実行を開始するサブルーチンである
。ENDTASKは、5TARTTASKと同一のサブ
タスク上に存在し、5TARTTASKによって実行し
たサブルーチンの終了時にTASKWAITにサブルー
チンの終了を通知するサブルーチンである。
利用者プログラム22をデバッグする場合に主タスク動
作部2は、オペレーティングシステム16から呼び出さ
れて動作し、コマンド入力部5でデバッグコマンドを入
力し、コマンドテーブル作成部7がデバッグコマンドテ
ーブル14にデバッグコマンドの内容を格納する。ひき
つづき、利用者プログラム22の主タスク23が動作し
、TASKINITおよびTASKEXECのシステム
サブルーチンを呼び出してサブタスク24が生成され動
作する。
サブタスク24が動作すると、サブタスク動作部3が5
TARTTASKから呼び出され、サブタスク制御部8
が動作し、サブルーチン名取得部9、コマンド処理部1
0、アドレス変換部11$よびコマンド検索部12の動
作後にデバッグ結果格納部13がデバッグ結果格納テー
ブル15にデバッグ結果を格納する。主タスク23の終
了時には再び主タスク動作部2が動作し、デバッグ結果
出力部6がデバッグ結果格納テーブル15を参照してデ
バッグ結果を端末装置17または5YSOUTフアイル
19に出力する。
〔発明の効果〕
本発明は、以上説明したように、密結合されたマルチプ
ロセッサデータ処理システムで動作する利用者プログラ
ムの中からオペレーティングシステムが提供するシステ
ムサブルーチンを呼び出して利用者プログラムにサブタ
スクを生成し、これを複数のサブプロセッサに割り当て
プログラムのデバッグ作業に用いるので、プログラムの
実行が正しく行われない場合にもプログラムの修正を行
うことなくデバッグ作業を行うことができ、プログラム
の開発作業を有効に支援できる効果がある。
【図面の簡単な説明】
第1図は本発明実施例の構成を示すブロック構成図。 第2図は利用者プログラムの構成を示す構成図。 1・・・プログラムデバッグ装置、2・・・主タスク動
作部、3・・・サブタスク動作部、4・・・主タスク制
御部、5・・・コマンド入力部、6・・・デバッグ結果
出力部、7・・・コマンドテーブル作成部、8・・・サ
ブタスク制御部、9・・・サブルーチン名取得部、10
・・・コマンド処理部、11・・・アドレス変換部、1
2・・・コマンド検索部、13・・・デバッグ結果格納
部、14・・・デバッグコマンドテーブル、15・・・
デバッグ結果格納テーブル、16・・・オペレーティン
グシステム、17・・・端末装置、18−3YS IN
7フイル、19−3 Y S OUTファイル、20・
・・ネームテーブル格納ファイル、21・・・アドレス
変換表格納ファイル、22・・・利用者プログラム、2
3・・・主タスク、24・・・サブタスク。

Claims (1)

  1. 【特許請求の範囲】 1、主タスク(23)とサブタスク(24)とを有し、
    このサブタスクが密結合したプロセッサの複数個で実行
    される利用者プログラム(22)のデバッグ装置におい
    て、 上記主タスクの実行時に動作する主タスク動作部(2)
    、上記サブタスクの実行時に動作するサブタスク動作部
    (3)ならびに上記プロセッサの複数個に共用のメモリ
    上に領域を有するデバックコマンドテーブル(14)お
    よびデバッグ結果格納テーブル(15)を備え、 上記主タスク動作部は、上記利用者プログラムに対応す
    るデバッグコマンドを入力するコマンド入力部(5)お
    よびこのデバッグコマンドを形式変換して上記デバッグ
    コマンドテーブルに与えるコマンドテーブル作成部(7
    )を有し、 上記サブデータ動作部は、上記サブタスクに対応するデ
    バッグコマンドを上記デバックコマンドテーブルから検
    索するコマンド検索部(12)およびこの検索されたデ
    バックコマンドによる上記利用者プログラムの処理結果
    を上記デバック結果格納テーブルに与えるデバッグ結果
    格納部(13)を有する ことを特徴とするデバッグ装置。
JP63079075A 1988-03-31 1988-03-31 デバッグ装置 Pending JPH01251239A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63079075A JPH01251239A (ja) 1988-03-31 1988-03-31 デバッグ装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63079075A JPH01251239A (ja) 1988-03-31 1988-03-31 デバッグ装置

Publications (1)

Publication Number Publication Date
JPH01251239A true JPH01251239A (ja) 1989-10-06

Family

ID=13679773

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63079075A Pending JPH01251239A (ja) 1988-03-31 1988-03-31 デバッグ装置

Country Status (1)

Country Link
JP (1) JPH01251239A (ja)

Similar Documents

Publication Publication Date Title
EP0406602B1 (en) Method and apparatus for debugging parallel programs by serialization
USRE38104E1 (en) Method and apparatus for resolving data references in generated code
JPH09237202A (ja) デバッグ処理実行方法
JPH01251239A (ja) デバッグ装置
JPS62113244A (ja) プログラムテスト装置
JPH08123699A (ja) 並行処理方法、並行処理システム及び並行処理用プログラムの変換ツール
EP0261247A1 (en) Method of executing emulation
JPS61206050A (ja) プログラムの動作解析方式
JP2004133827A (ja) core解析装置
JPH05127945A (ja) プログラム実行状況解析方式
JP2788353B2 (ja) タスクトレース方法
Kuang et al. Implementing java programming language on RTEMS operating system
JPS61180342A (ja) 高級言語のステツプ実行方式
JPH0315950A (ja) プログラム実行経路探査装置
JPS6020275A (ja) マルチプロセサの簡易プログラミングシステム
JPS63292338A (ja) 最適化プログラムデバツグ方式
JPH04333146A (ja) デバッグにおけるプログラムの実行制御方式
JPH0228749A (ja) データ処理装置
JPH0196741A (ja) デバッガにおける共通セクション方式
JPH02207343A (ja) デバッグ装置
JPH04101237A (ja) デバッグ処理方式
JPS62216041A (ja) コマンドによるコンパイラ起動処理方式
JPS61127044A (ja) プログラムの単体テスト方式
JPH01147738A (ja) デバツグ方式
JPH0997182A (ja) プログラム変換装置およびデバッグ装置