JPH05151021A - 常駐領域組み込み型デバツガによるデバツグ方式 - Google Patents

常駐領域組み込み型デバツガによるデバツグ方式

Info

Publication number
JPH05151021A
JPH05151021A JP3339425A JP33942591A JPH05151021A JP H05151021 A JPH05151021 A JP H05151021A JP 3339425 A JP3339425 A JP 3339425A JP 33942591 A JP33942591 A JP 33942591A JP H05151021 A JPH05151021 A JP H05151021A
Authority
JP
Japan
Prior art keywords
debugger
program
special key
resident area
input
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
JP3339425A
Other languages
English (en)
Inventor
Takashi Igarashi
高司 五十嵐
Masaharu Mori
正晴 森
Hiroshi Kikuchi
寛 菊地
Hiroshige Suzuki
浩慈 鈴木
Yoshitomo Takei
祥知 武井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Engineering Corp
Original Assignee
Toshiba Engineering Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Engineering Corp filed Critical Toshiba Engineering Corp
Priority to JP3339425A priority Critical patent/JPH05151021A/ja
Publication of JPH05151021A publication Critical patent/JPH05151021A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】 本発明の目的は通常のプログラム実行環境下
でプログラム実行最中にプログラムの不稼働、不具合等
の問題点が発生した時、その問題が発生したそのままの
状態を直接解析できる常駐領域組み込み型デバッガによ
るデバッグ方式を提供することにある。 【構成】 デバッガ5とあらかじめ設定済みの特殊キー
とこの特殊キーが入力装置から入力されたかどうかを監
視する特殊キー入力監視手段10と、この特殊キー入力
監視手段10による特殊キーの入力認識によりデバッガ
5の起動をかけるデバッガ起動手段11とをシステム立
ち上げ時に電子計算機の主メモリ1上の常駐領域Aに組
み込んだ常駐領域組み込み型デバッガによるデバッグ方
式。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、プログラムの論理的な
誤り(バグ)の検出、診断、修正を行うデバッグをデバ
ッグ補助ル−チン(以下このルーチンをデバッガとい
う)を用いて、電子計算機上でソフトウェアプログラム
を実行しながら行うマシンデバッグ作業をデバッガの環
境下ではなく、通常のプログラム実行時の環境下で行え
るデバッグ方式に関する。
【0002】
【従来の技術】従来の技術を「図4 従来の技術の構成
図」を用いて説明する。
【0003】従来は、プログラムの論理的な誤り(バ
グ)の検出、診断、修正を行うデバッグをデバッガを用
いて電子計算機上でプログラムを実行しながら行うマシ
ンデバッグ作業は下記の手順にて行っていた。
【0004】プログラマが入出力装置3からデバッガ5
の起動命令を入力すると、入力制御手段4が受付けて転
送制御手段6に指令し、補助記憶装置2からデバッガ5
を主メモリ1の非常駐領域Bにロードする。このロード
したデバッガ5内の命令から補助記憶装置2に存在する
指定のデバッグ対象となるプログラム7が同じく非常駐
領域Bにロードされる。この後、プログラマはデバッガ
5内で提供されているコマンドを用いて、常にデバッガ
5を介しながらデバッグ対象とするプログラム7を実行
させて、その論理的な誤り(バグ)の検出、診断、修正
を行っていた。このため、通常プログラムの実行中に突
然問題が発生した場合、一度プログラムの実行を終了さ
せて補助記憶装置2にアンロードしてから、改めてデバ
ッガ5を起動させ、デバッガ5からデバッグ対象とする
プログラム7を起動させる必要があった。
【0005】以上のとうり従来は、デバッガ5を常駐領
域Aに置くという考え方がなく、デバッガ5とデバッグ
対象とするプログラム7との両方を非常駐領域Bに置い
ていたため、マシンデバッグ作業はデバッガ5の動作環
境下でのみ実行可能であり、デバッグ対象とするプログ
ラム7が本来動く環境下でのデバッグ作業は不可能だっ
た。
【0006】
【発明が解決しようとする課題】上記のとうり従来の技
術によると、デバッグするためにはデバッガを起動して
特別な環境を設定しなければならなかった。このため、
実際通常のプログラム実行中に発生した問題を解析する
ためには、ひとまず実行中のプログラムを終わらせてか
ら、改めてデバッガを起動させ、デバッガからデバッグ
対象とするプログラムを実行させて解析するという様
に、デバッガの実行環境下で再び問題を発生させる必要
があった。問題が発生した時と同じ環境を作り、同じ問
題を発生させる事はとても困難である上、不可能な場合
もあった。また、デバッガ環境下ではデバッガしか実行
できず、他のタスクの実行ができないため他のタスクか
ら不具合原因を調べられなかった。
【0007】本発明の目的は通常のプログラム実行環境
下でプログラム実行最中に、プログラムの不稼働、不具
合等の問題点が発生した時、その問題が発生したそのま
まの状態を直接解析できる常駐領域組み込み型デバッガ
によるデバッグ方式を提供することにある。
【0008】
【課題を解決するための手段】本発明による常駐領域組
み込み型デバッガによるデバッグ方式は、ソフトウェア
プログラムの開発あるいは保守で、正しく問題をとらえ
ていない結果発生する論理的な誤り(バグ)の検出、診
断、修正を行うデバッグ作業を、デバッガを使用して、
電子計算機上でデバッグ対象のプログラムを実行しなが
ら前記デバッグ作業を行うマシンデバッグ方式におい
て、電子計算機上でプログラム実行中、プログラムの誤
りが発生した場合に、このプログラムの実行を中止し、
制御をデバッガに渡すことを認識するために設定する特
殊キーと、この特殊キーが入力装置から入力されたかど
うかを監視する特殊キー入力監視手段と、この特殊キー
入力監視手段による特殊キーの入力認識によりデバッガ
の起動をかけるデバッガ起動手段とを備え、システム立
ち上げ時に前記特殊キー入力監視手段と、前記デバッガ
起動手段と、デバッガを電子計算機の主メモリ上の常駐
領域に組み込むことを特徴とする。
【0009】
【作用】従来からプログラム開発支援システムにより提
供されている、対象とするプログラムを電子計算機上で
実行しながらデバッグを行うことのできるデバッガと、
設定済みの特殊キーが入力されたかどうかを監視する特
殊キー入力監視手段と、前記特殊キーの入力によりデバ
ッガの起動をかけるデバッガ起動手段とで構成する常駐
領域組み込み型デバッガを、一般のアプリケーションプ
ログラムの実行等を監視制御するオペレーティングシス
テムと同様、主メモリの常駐領域に常駐させる。プログ
ラマはプログラム実行中にプログラムの誤り等の問題点
が発生した場合、実行中のプログラムを終了させずに、
入出力装置から特殊キーを入力することにより、受け付
けた常駐領域組み込み型デバッガ内の特殊キー入力監視
手段がデバッガ起動手段に命令を送り、デバッガを起動
させる。デバッガが起動されると、従来直接デバッガが
起動されたのと同様、デバッガ内で提供されている各種
コマンドを用いて、プログラムの論理的な誤り(バグ)
の検出、診断、修正を行うデバッグ作業をすることがで
きる。
【0010】本発明では、実行中のプログラムを中止し
てその制御を常駐領域のデバッガに渡すため、通常のプ
ログラム実行環境下で問題点の発生等に応じて、任意に
デバッガによるマシンデバッグ作業を行うことができ
る。
【0011】
【実施例】以下本発明の一実施例を図面を参照して説明
する。
【0012】まず「図1 本発明の全体構成図」を用い
て、発明の構成を説明する。
【0013】電子計算機の主メモリ1はシステムを立ち
上げる際、オペレーティングシステム等の各監視制御プ
ログラムを格納するための常駐領域Aと、通常は補助記
憶装置2に格納してある一般のアプリケーションプログ
ラムを、実行する度に補助記憶装置2からロードして格
納するための非常駐領域Bとに割り当てられる。
【0014】常駐領域Aに存在する4は、各種入出力装
置3から入力を受け付ける入力制御手段であり、10は
入力されたもののうちあらかじめ設定済みの特殊キーの
入力かどうか判断する特殊キー入力監視手段である。本
実施例ではこの特殊キーをctlキーとaltキーとd
elキーの同時入力を示すが、ファンクションキーの入
力や特定な文字配列の入力(メッセージ入力)に設定す
ることも可能である。
【0015】5はデバッグ作業を支援する各種コマンド
をもつデバッガ、11はデバッガ5の起動命令をかける
デバッガ起動手段である。以下この特殊キー入力監視手
段10、デバッガ5、デバッガ起動手段11を合わせ
て、常駐領域組み込み型デバッガ12という。6は特殊
キー以外の入力の場合(通常の入力の場合)に、入力さ
れた命令に応じて補助記憶装置2から指定のプログラム
を非常駐領域Bに転送する転送制御手段であり、8は前
記デバッガ5やプログラムからの命令により、データを
入出力装置3に出力する出力制御手段である。非常駐領
域Bの7と9は、前記転送制御手段6からの命令により
補助記憶装置2からロードされたプログラムである。
【0016】次に、「図1 本発明の全体構成図」と
「図2 処理の流れ図」を併用して具体的な処理の流れ
を説明する。
【0017】初めに通常の処理の流れとして、オペレー
タが指定のプログラム9を実行する場合の処理の流れを
説明する。
【0018】パソコンの電源をONにする。電源ONと
同時に主メモリ1の常駐領域Aにオペレーティングシス
テムがロードされ、システムの立ち上げ処理が始まる
(S1)。入出力装置3から、システム立ち上げ時、常
駐領域組み込み型デバッガ12の常駐領域Aへの組み込
みを指定すると、外部記憶装置13に保存されている常
駐領域組み込み型デバッガ12が主メモリ1の常駐領域
Aに組み込まれる(S2)。この時、オペレーティング
システムと同様、各種割り込みが入ったときに実行する
各ルーチンの先頭アドレスが格納されるシステムで提供
されているアドレステーブルにデバッガ5のアドレスが
格納される。
【0019】オペレータは入出力装置3から指定のプロ
グラム9の起動命令を入力する。入力制御手段4は、特
殊キー以外の入力であるので、転送制御手段6に指令
し、指定されたプログラム9を補助記憶装置2から非常
駐領域Bにロードし、ロードされたプログラム9はその
命令を実行する(S3)。
【0020】プログラム9の実行中、特殊キーの入力が
ない限りは、プログラム9の全ての命令を実行する(S
11)。プログラム9が終了すると、転送制御手段6
は、プログラム9を非常駐領域Bから補助記憶装置2に
アンロードして、処理は完了する。
【0021】次にプログラマがプログラム実行中に、正
常にプログラムが実行されているかどうか確認する場合
と、問題点が発生した場合のデバッグ処理の流れを説明
する。
【0022】プログラマは前記の通常の処理の流れと同
様にシステム立ち上げ後、デバッグ対象のプログラム7
の起動命令を行う。入力制御手段4は、プログラム7の
起動命令の入力であるので、転送制御手段6に指令し、
デバッグ対象のプログラム7を補助記憶装置2から非常
駐領域Bにロードする(S3)。ロードされたプログラ
ム7はその命令の実行を開始する。プログラム7が正常
に実行されているかどうかの動作確認をするため、プロ
グラマは特殊キーを入力する(S4)。
【0023】特殊キーの入力を特殊キー入力監視手段1
0が受け付けると、実行中のプログラム7は特殊キーを
受け付けた時に実行中のアドレスでその実行を中止し
(S5)、特殊キー入力監視手段10はデバッガ起動手
段11に指令を送る。デバッガ起動手段11が命令を受
け付けると、システム立ち上げ時に組み込まれているデ
バッガ5を起動する(S6)。これにより、制御はデバ
ッグ対象のプログラム7からデバッガ5に渡され、従来
デバッガ5が起動されたのと同様、デバッガ5内のコマ
ンド入力待ち状態になる。
【0024】デバッガ5内のコマンド入力待ち状態にな
ったら、命令実行が正常に動作しているかどうか確認す
るため、デバッグ対象のプログラム7内の任意の指定し
たアドレスで実行を一時的に中止させるデバッガ5内の
コマンドで、止めたいアドレスを指定する。指定したア
ドレスに止まったら、命令実行後のステータスをチェッ
クするため、指定のアドレスの示す領域の内容を入出力
装置3に表示するコマンドで確認する。内容確認後、デ
バッガ5内コマンドのデバッグ終了コマンドを入力する
こと(S7)によりデバッガ5から本来のデバッグ対象
のプログラム7に制御が移り、デバッグ対象のプログラ
ム7の実行状態に戻る(S10)。デバッガ5から制御
が移った後、デバッグ対象のプログラム7の再実行中に
エラーが発生した場合、プログラマは再び特殊キーを入
力する(S9)。これにより、デバッガ起動手段11か
らデバッガ5に制御が渡される。デバッグ対象プログラ
ム7の実行が中止されたら(S5)、どこのアドレスで
エラーが発生したのかをデバッガ内コマンドで確認し、
エラ−発生に至るまでの原因を解析するために、エラー
が発生したと思われるアドレスで実行を一時的に中止さ
せるコマンドで止めたいアドレスを指定し、その前後か
ら再びデバッグ対象のプログラム7を実行させる。指定
したアドレスに止まったら、1命令を実行した後に一時
的に中止させ、その命令の実行過程を確認することがで
きるデバッガ5内コマンドにより1命令ずつ実行させ、
エラーが発生するかどうか確認する。
【0025】バグの検出、診断、修正等のデバッグ処理
(S9)が終了した後、デバッガ5内のデバッグ対象プ
ログラム終了コマンドを入力することにより(S8)、
デバッガ5もデバッグ対象のプログラム7も実行を終了
し(S11)、同時にデバッグ対象のプログラム7は非
常駐領域Bから補助記憶装置2にアンロードされる。常
駐領域組み込み型デバッガ12は常駐領域Aに常駐のま
ま、特殊キーによる割り込み待ち状態になる。
【0026】次に、「図3 制御の移動図」を用いて、
常駐領域組み込み型デバッガ12とデバッグ対象のプロ
グラム7との間の制御の動きについて説明する。図3に
おいて、縦線を引いた部分は現時点の制御プログラムを
意味し、図中の番号は「図2 処理の流れ図」と同じ動
作を示す部分は同じ番号を付している。
【0027】前述のとうりシステムが立ち上げられ(S
1)、デバッガ5の組み込みが指定されると、常駐領域
Aにデバッガ5が組み込まれる(S2)。指定のプログ
ラム7が起動されると(S3)、転送制御手段6からの
命令で補助記憶装置2からプログラム7が非常駐領域B
にロードされ(20)、プログラム7の実行状態にな
る。プログラム7の実行中、特殊キーを入力すると(2
1)、今までプログラム7にあった制御(縦線部分)
が、常駐領域Aに待機中であったデバッガ5に移動し
(22)、デバッガ5の起動状態となる(S6)。デバ
ッガ5に制御が移った後、デバッグ処理中に、デバッガ
5内のデバッグ終了コマンドを入力すると(23)、制
御はデバッグ対象のプログラム7に移動して(24)、
デバッグ対象プログラム7の実行が再開される(S1
0)。デバッグ対象のプログラム7実行中に問題点発生
等により、再び特殊キーを入力すると(25)、制御は
デバッガ5に移動し(26)、デバッグ処理が開始され
る(S9)。デバッガ5に制御が移動した後、デバッグ
処理中にデバッグ対象のプログラム7を終了させるコマ
ンドを入力すると(27)、デバッガ5もデバッグ対象
のプログラム7も実行を終了中断し(28)、デバッグ
対象のプログラム7は非常駐領域Bから転送制御手段6
により補助記憶装置2にアンロードされる(29)。デ
バッガ5は、システムが終了するまで、常駐領域Aで特
殊キーによる割り込み待ち状態となる(30)。
【0028】以上のように、実行中のプログラムに対し
任意のタイミングでエラー発生原因の解析や動作確認の
ためにデバッガ5に制御を移し、デバッガ5内で提供さ
れている各コマンドにより、指定のレジスタの内容や指
定アドレスのメモリ内容の参照、トレース処理、エラー
発生のため途中でエラー終了してしまうプログラムの最
後の命令までの実行確認ができない場合にレジスタ内容
や指定アドレスのメモリの内容を書き替える等のデバッ
グ作業を行うことができる。
【0029】本実施例はパソコンで実施しているが、そ
の他ミニコンピュータ等、どのような電子計算機でも実
施可能である。また、システムに常駐であるため、オペ
レーティングシステムのデバッグも実施可能である。
【0030】
【発明の効果】以上のように本発明によれば、プログラ
ム実行時の問題点発生に際して、実行中のプログラム環
境下で直接問題を解析するためのマシンデバッグを開始
・終了することができる。
【図面の簡単な説明】
【図1】 本発明の全体構成図。
【図2】 処理の流れ図。
【図3】 制御の移動図。
【図4】 従来の技術の構成図。
【符号の説明】
1 ・・・ 主メモリ、 2 ・・・ 補助記憶装置、 3 ・・・ 入出力装置、 4 ・・・ 入力制御手段、 5 ・・・ デバッガ、 6 ・・・ 転送制御手段、 7 ・・・ デバッグ対象のプログラム、 8 ・・・ 出力制御手段、 9 ・・・ プログラム、 10 ・・・ 特殊キー入力監視手段、 11 ・・・ デバッガ起動手段、 12 ・・・ 常駐領域組み込み型デバッガ、 A ・・・ 常駐領域、 B ・・・ 非常駐領域。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 鈴木 浩慈 神奈川県川崎市幸区堀川町66番2 東芝エ ンジニアリング株式会社内 (72)発明者 武井 祥知 神奈川県川崎市幸区堀川町66番2 東芝エ ンジニアリング株式会社内

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】ソフトウェアプログラムの開発あるいは保
    守で、正しく問題をとらえていない結果発生する論理的
    な誤り(バグ)の検出、診断、修正を行うデバッグ作業
    を、デバッガを使用して、電子計算機上でデバッグ対象
    のプログラムを実行しながら前記デバッグ作業を行うマ
    シンデバッグ方式において、 電子計算機上でプログラム実行中、プログラムの誤りが
    発生した場合に、このプログラムの実行を中止し、制御
    をデバッガに渡すことを認識するために設定する特殊キ
    ーと、 この特殊キーが入力装置から入力されたかどうかを監視
    する特殊キー入力監視手段と、 この特殊キー入力監視手段による特殊キーの入力認識に
    よりデバッガの起動をかけるデバッガ起動手段とを備
    え、システム立ち上げ時に前記特殊キー入力監視手段
    と、前記デバッガ起動手段と、デバッガを電子計算機の
    主メモリ上の常駐領域に組み込むことを特徴とする、常
    駐領域組み込み型デバッガによるデバッグ方式。
JP3339425A 1991-11-29 1991-11-29 常駐領域組み込み型デバツガによるデバツグ方式 Pending JPH05151021A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3339425A JPH05151021A (ja) 1991-11-29 1991-11-29 常駐領域組み込み型デバツガによるデバツグ方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3339425A JPH05151021A (ja) 1991-11-29 1991-11-29 常駐領域組み込み型デバツガによるデバツグ方式

Publications (1)

Publication Number Publication Date
JPH05151021A true JPH05151021A (ja) 1993-06-18

Family

ID=18327348

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3339425A Pending JPH05151021A (ja) 1991-11-29 1991-11-29 常駐領域組み込み型デバツガによるデバツグ方式

Country Status (1)

Country Link
JP (1) JPH05151021A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010140240A (ja) * 2008-12-11 2010-06-24 Renesas Electronics Corp プロセッサ、マルチプロセッサ、及び、デバッグ方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010140240A (ja) * 2008-12-11 2010-06-24 Renesas Electronics Corp プロセッサ、マルチプロセッサ、及び、デバッグ方法

Similar Documents

Publication Publication Date Title
US5680599A (en) Program counter save on reset system and method
US5257269A (en) Error controller for use in debugging microprocessor
JPH05151021A (ja) 常駐領域組み込み型デバツガによるデバツグ方式
JP3192229B2 (ja) 装置周辺部の診断機能を持つ情報処理装置
JP2684966B2 (ja) 入出力処理装置のデバッグ装置
KR920003909B1 (ko) 디버깅지원회로
JPS5835648A (ja) プログラム実行制御方式
JP2659366B2 (ja) デバッグ方法及びその装置
JPS6091458A (ja) マイクロプロセツサのプログラムデバツグ装置
JPH0395638A (ja) デバッグ装置
JP2835896B2 (ja) テストプログラムの実行制御方式
JP2954006B2 (ja) エミュレーション装置およびエミュレーション方法
JPS62194549A (ja) Cpu―io並列動作シミュレーション方法
JPH0635760A (ja) トレース機能付バッファ装置
JPH03209534A (ja) プログラム開発支援装置
JPH0664569B2 (ja) マイクロプログラムローディング方法
JPH08161195A (ja) アドレストレース格納装置及びアドレストレース生成方法
JPH0149975B2 (ja)
JPH05282167A (ja) 障害処理方法
JPH01161544A (ja) プログラムトレース方式
JPS63104148A (ja) マイクロコンピユ−タ装置の開発装置
JPH02122335A (ja) Ras回路の試験方法
JPS61267137A (ja) 割込み動作制御方式
JPH03225485A (ja) マイクロプロセッサ
JPS6167146A (ja) 擬似障害発生方式