JP2001222447A - 実動作環境下のデバッグ方法及びデバッグ対象装置 - Google Patents

実動作環境下のデバッグ方法及びデバッグ対象装置

Info

Publication number
JP2001222447A
JP2001222447A JP2000038021A JP2000038021A JP2001222447A JP 2001222447 A JP2001222447 A JP 2001222447A JP 2000038021 A JP2000038021 A JP 2000038021A JP 2000038021 A JP2000038021 A JP 2000038021A JP 2001222447 A JP2001222447 A JP 2001222447A
Authority
JP
Japan
Prior art keywords
debug
target
instruction
program
memory
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
JP2000038021A
Other languages
English (en)
Inventor
Takeshi Horiuchi
毅 堀内
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2000038021A priority Critical patent/JP2001222447A/ja
Publication of JP2001222447A publication Critical patent/JP2001222447A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 【課題】 組込みシステムの実動作環境下でそのプログ
ラムをデバッグする場合に、ソースプログラム中に挿入
されるデバッグステートメントの変更に伴うデバッグ準
備作業を排し、デバッグ効率を向上させる。 【解決手段】 機器102上のデバッグ指示部103
は、端末120からの指示に従って対象プログラム10
6中の対象命令108の命令アドレス及び対象データ1
10のデータアドレスをデバッグ管理テーブル104に
設定し、対象命令108をデバッグ管理テーブル104
に退避し、対象命令108をデバッグ処理部105への
分岐命令に書き換える。対象プログラム106が実行さ
れたとき、制御を受けたデバッグ処理部105は、デバ
ッグ管理テーブル104を参照して対象データ110の
値を端末120に出力し、書き換えられた分岐命令を対
象命令108に書き戻す。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、計算機プログラム
のデバッグに係り、特に組込みシステムの実動作環境下
で対象プログラムを効率よくデバッグする方法及びデバ
ッグ対象装置に関する。
【0002】
【従来の技術】計算機プログラムのデバッグ方法とし
て、一般的にデバッグの対象とするプログラムが実行さ
れたときの変数やレジスタの値をプログラム実行の流れ
に沿って追跡する方法が行われている。そのため一般の
デバッガでは、プログラムの任意の位置にブレークポイ
ントを設定してプログラムの動作を中断する機能、その
中断時に変数やメモリ領域やレジスタの値を参照したり
設定したりする機能、さらに中断したプログラムを継続
再開する機能が提供されており、良く利用されている。
【0003】一方各種の機器に組み込まれてマイクロプ
ロセッサによりその制御を行うコンピュータシステムの
ことを一般的に機器組込み制御システム、それを略して
組込みシステムと呼んでいる。組込みシステムに搭載さ
れるプログラムをデバッグするに際しては、一般に組込
みシステムには汎用のOSを搭載できないこと、メモリ
容量の制約が厳しいこと、キーボード/ディスプレイの
ような入出力装置が接続されない場合も多いことなどの
理由によって、機器の実動作環境下でプログラムをデバ
ッグするとき市販のデバッガを使用できない。そのため
対象プログラムの変数の値を表示装置やファイルに出力
するか又は内部メモリに書き込むようなデバッグルーチ
ンを自前で開発し、対象プログラム中に組み込んでアセ
ンブル/コンパイルした後に実行し、処理の流れやデー
タの変化を追うことが多かった。このようなデバッグル
ーチンは、最終的に製品をリリースする時には削除され
るか、コンパイルフラグで切換えられるようにし、最終
的なオブジェクトからは除くというような方法が取られ
ていた。
【0004】なおプログラムデバッグ装置やプログラム
デバッグ方法については、特開平11−110256号
公報など各種の特許公開公報に記載されている。また
「情報処理」38巻10号(1997年10月発行)の
P886〜P891には、「組込みシステムのデバッグ
手法」について記載されている。
【0005】
【発明が解決しようとする課題】上記従来の組込みシス
テムのデバッグ技術によれば、デバッグの観点を変えた
り、プログラム中のデバッグ対象とする変数を変えるご
とにプログラム中のデバッグステートメントを変更して
再コンパイル/リンクする必要があり、開発効率が悪く
なるという問題があった。またデバッグを終了しても、
最終的なオブジェクトを得るためには、デバッグルーチ
ンを取り除くか無効にするかして、再度コンパイル/リ
ンクをしなければならないという問題があった。さらに
デバッグのために何度もソースコードを修正していると
バグの発生原因になる可能性があるという問題があっ
た。一般に組込みシステム内でコンパイラを走行させる
ことができないため、他のホストコンピュータでソース
プログラムをコンパイル/リンクした後にそのホストコ
ンピュータを対象とする機器に接続し、作成したオブジ
ェクトプログラムを対象機器にダウンロードするなど、
プログラムデバッグを開始する前の準備作業が必要とな
る。このため再コンパイル/リンクのたびにこのような
準備作業が生じ、再コンパイルの回数の増加に従ってデ
バッグ効率がより悪くなる。
【0006】本発明の目的は、デバッグ制御のために対
象とするソースプログラムを修正することをなくし、実
動作環境下でのプログラムのデバッグ効率を向上させる
ことにある。
【0007】
【課題を解決するための手段】本発明は、メモリ上に設
定された命令アドレスに基づいてデバッグの対象プログ
ラムの中でデバッグのタイミングとなる対象命令をメモ
リ上に退避し、この対象命令をデバッグ処理部への分岐
命令に書き換え、書き換えられた対象プログラムを実行
し、上記の分岐命令が実行されたとき制御を受けるデバ
ッグ処理部によって、メモリ上に設定されたデータアド
レスに基づいて対象とする変数の値を参照してメモリ上
の所定の領域に指定された変数の値を書き込み、対象プ
ログラム中の上記分岐命令を上記対象命令に書き戻し、
対象プログラム中の書き戻された対象命令に制御を戻す
デバッグ方法を特徴とする。またこのようなデバッグ方
法を適用するデバッグ対象装置を特徴とする。
【0008】
【発明の実施の形態】以下、本発明の一実施形態につい
て図面により説明する。なお本実施形態によって本発明
が限定されるものではない。
【0009】図1は、本発明のデバッグ方法を実現する
一実施形態の全体構成を示す図である。機器102は、
デバッグの対象とするプログラム及びデバッガが搭載さ
れたボード又は装置であり、ハードウェア的にはマイク
ロプロセッサのようなCPU、ROM、RAM、セン
サ、スイッチ、専用の制御機構、I/Oポートなど、デ
バッグの対象とするか又はデバッグ時に使用するハード
ウェア機構を搭載するか、またはアクセス可能とする。
すなわち機器102によって対象とする組込みシステム
の実動作環境を構成する。対象プログラム106は、デ
バッグの対象とするオブジェクトプログラムであり、論
理的にはメモリ空間上に、物理的にはRAM上に格納さ
れる。対象プログラム106は、命令領域(コードエリ
ア)107と変数領域(データエリア)109から構成
される。命令領域107中の対象命令108は、変数の
参照や設定のタイミングとなる対象の命令である。変数
領域109中の対象データ110は、値の参照や設定の
対象となるデータである。デバッグ管理テーブル104
は、RAM上に設定され、デバッグに必要な情報を格納
する。デバッグ指示部103は、本実施形態ではRAM
又はROM上に格納され、デバッグ情報をデバッグ管理
テーブル104に設定するなど主にデバッグの前処理を
行うプログラムである。なおデバッグ指示部103は、
機器102のRAMの内容を設定するだけなので、機器
102内に設ける必要はなく、機器102の外部に設け
てもよい。デバッグ処理部105は、RAM又はROM
上に格納され、デバッグ管理テーブル104を参照して
対象データ110の参照や値の設定を行うプログラムで
ある。
【0010】機器102のI/Oポートには、信号線1
40を介して端末120やホストコンピュータ130を
接続可能である。端末120はデバッグ指示部103を
介してデバッグ情報を入力したりデバッグ指示部103
からのデバッグ情報を出力する装置であり、キーボード
/ディスプレイのような装置でもよいし、デバッグ指示
部103との間でデバッグ情報を入出力するメモリカー
ド等のリーダ/ライタでもよい。あるいはデバッグ管理
テーブル104に直接デバッグ情報を書き込んだりデバ
ッグ管理テーブル104上のデバッグ情報を直接読み出
すコンソールであってもよい。ホストコンピュータ13
0は、対象プログラム106の元となるソースプログラ
ムをアセンブル/コンパイルしたり、リンク後のオブジ
ェクトプログラムを機器102にダウンロードするため
のパーソナルコンピュータ/ワークステーションなどの
計算機である。端末120の代わりにホストコンピュー
タ130を使用してデバッグ情報を入出力してもよい。
またネットワークを介してホストコンピュータ130と
機器102とを接続し、ネットワーク経由で機器102
とホストコンピュータ130との間の情報転送を行って
もよい。
【0011】図2は、デバッグ管理テーブル104のデ
ータ構成を示す図である。「対象命令アドレス」は対象
命令108のアドレス、「対象命令」はその実行直前に
デバッガが介入するタイミングとなる対象命令108を
退避する領域、「対象データアドレス」は対象データ1
10のアドレス、「対象データ長」は対象データ110
のデータ長(バイト数)である。「対象データ長」とと
もに変数の型に関する情報を保持してもよい。「処理区
分」は対象データ110の値を参照(R)するのか、設
定(W)するのかの区分である。「設定する値」は処理
区分がWの場合に対象データ110に設定するデータ値
である。「値格納領域」は処理区分がRの場合であって
参照した対象データ110の値を後で端末120から読
み取るような実行環境の場合に値を保存する領域であ
る。
【0012】図3は、デバッグ指示部103の処理手順
を示すフローチャートである。デバッグ指示部103
は、端末120又はホストコンピュータ130からデバ
ッグ指示を受けた後、端末120又はホストコンピュー
タ130から入力された対象命令108のアドレス、対
象データ110のアドレス、対象データ長、処理区分、
処理区分がWの場合に設定する値などのデバッグ情報を
デバッグ管理テーブル104に書き込む(ステップ20
1)。端末120がデバッグ情報を直接デバッグ管理テ
ーブル104に書き込む場合には、端末120によるデ
バッグ情報の書き込み後にデバッグ指示部103がデバ
ッグ指示を受けることになる。次にデバッグ指示部10
3は、「対象命令アドレス」で指定された対象プログラ
ム106中の対象命令108をデバッグ管理テーブル1
04の「対象命令」の欄に格納する(ステップ20
2)。次にデバッグ指示部103は、対象命令108を
デバッグ処理部105への分岐命令に書き換える(ステ
ップ203)。
【0013】デバッグのために開始コマンド等によって
対象プログラム106の実行が指示されると、対象プロ
グラム106の実行が開始される。対象命令108に代
わって書き換えられた分岐命令が実行されると、制御は
デバッグ処理部105に移り、デバッグ処理部105の
実行が開始される。
【0014】図4は、デバッグ処理部105の処理手順
を示すフローチャートである。デバッグ処理部105
は、デバッグ処理部105が使用するレジスタ等をメモ
リに退避する(ステップ204)。次にデバッグ管理テ
ーブル104を参照し、「対象データアドレス」によっ
て指定される変数領域109内の対象データ110を参
照して端末120に直接出力するか、または指定された
値を対象データ110に設定する(ステップ205)。
処理区分がRであって参照した値を後で端末120から
読み出す場合には、参照した対象データ110の値を
「値格納領域」に格納する。次にデバッグ管理テーブル
104を参照して「対象命令」に退避された対象命令1
08を命令領域107の元の格納場所に書き戻し(ステ
ップ206)、メモリに退避したレジスタ等を回復する
(ステップ207)。こうすることによって対象プログ
ラム106は、デバッグプログラムが実行される前の元
の状態に戻る。最後に分岐元のアドレス、つまり対象命
令108のアドレスへ分岐し、制御を元の対象プログラ
ム106に戻す(ステップ208)。
【0015】なお図4に示す処理手順は単純な実施例で
あるが、デバッグ管理テーブル104に対象命令108
の実行回数を計数するカウンタを設け、対象命令108
を所定回数実行した後に対象データ110の値を参照す
るか又は指定した値を設定するような処理手順でもよ
い。その場合には、ステップ204とステップ205と
の間にデバッグ管理テーブル104を参照してカウンタ
の値が所定回数に達しているか否かを判定するステップ
を挿入する。カウンタの値が所定回数に達していなけれ
ば、カウンタの値を1だけ増減し、退避したレジスタ等
を回復し、デバッグ管理テーブル104上に退避された
対象命令108をデバッグ処理部105内で実行してか
ら対象プログラム106の次の命令のアドレスに制御を
戻す。カウンタの値が所定回数に達していれば、ステッ
プ205へ行く。
【0016】図5は、ホストコンピュータ130に搭載
されるアセンブラ/コンパイラ302と関連するファイ
ルの関係を示す図である。ソースプログラム301は、
対象プログラム106の元となり、アセンブラ/コンパ
イラ302への入力ファイルとなるソースプログラムの
ファイル、デバッガ303は、デバッグ指示部103お
よびデバッグ処理部105の元となり、アセンブラ/コ
ンパイラ302への入力ファイルとなるソースプログラ
ムのファイルである。オブジェクトプログラム304
は、対象プログラム106となるアセンブラ/コンパイ
ラ302の出力ファイルである。シンボル情報ファイル
305は、アセンブラ/コンパイラ302の出力ファイ
ルであり、ソースプログラム301のステートメント/
データとオブジェクトプログラム304の命令アドレス
/データアドレスとの対応を示す情報である。シンボル
情報ファイル305を利用すれば、ソースファイルのス
テートメント行や変数名から命令/データのアドレスを
計算するのが容易になる。ソースプログラム301とシ
ンボル情報ファイル305をホストコンピュータ130
の表示装置上に表示し、ユーザが両者を参照することに
よってソースプログラムのステートメント行や変数名を
対象プログラム106上の命令アドレス/データアドレ
スに変換し、それによってデバッグ情報をデバッグ指示
部103に指示してもよい。ソースプログラム301と
デバッガ303を一緒にアセンブル/コンパイルし、両
者を1つのオブジェクトファイルとしてまとめることも
可能である。両者は機能的には全く独立したプログラム
であり、この状態のままではデバッグ指示部103を介
して何らかの指示をしない限り対象プログラム106の
実行には何の影響も与えない。このようにして作成され
たオブジェクトプログラム304を機器102へダウン
ロードすると、図1に示すようにこれらのオブジェクト
プログラムが機器102に搭載されることになる。また
必要に応じてデバッガを機器102のROMに搭載(R
OM化)してもよい。
【0017】図6は、デバッグ指示部103の他の実施
形態を示すブロック図である。機器102に端末120
が接続される場合、デバッグ指示部103は、端末12
0を介してユーザによって指示されたデバッグ情報をデ
バッグ管理テーブル104に設定する。デバッグ指示部
103が必要とするのは、対象命令108や対象データ
110のRAM上の物理アドレスであるが、ユーザが直
接これらの値を指定するのは非能率的である。図6に示
す実施形態は、デバッグ指示部103がソースプログラ
ム301及びシンボル情報ファイル305を参照できる
ように構成し、ユーザがデバッグ情報を指示するとき、
ソースプログラム301上の行番号や変数名で指示でき
るようにしたものである。デバッグ指示部103は、ソ
ースプログラム301及びシンボル情報ファイル305
を参照して指定された行番号や変数名を命令アドレス/
データアドレスに変換した後にデバッグ情報をデバッグ
管理テーブル104に設定する。機器102をこのよう
に構成することによって、ユーザはより一層デバッグ作
業の効率を上げることができる。ソースプログラム30
1及びシンボル情報ファイル305は、機器102のC
PUがアクセス可能なディスク装置のような記憶装置上
に格納されてもよいし、ホストコンピュータ130から
ダウンロードされてRAM上に格納されたファイルであ
ってもよい。また対象プログラム106がオブジェクト
ファイルの形式で記憶装置上に格納されたものであって
もよい。その場合にはデバッグ指示部103は、オブジ
ェクトファイル上の対象命令108に対して分岐命令へ
の書き換えを行う。オブジェクトファイル上の対象プロ
グラム106がRAM上にロードされて実行された後に
デバッグ処理部105はオブジェクトファイル上の書き
換えられた分岐命令を元の対象命令108に戻す。
【0018】図7は、本デバッガの機能をより具体的に
説明するために、ソースプログラム301とメモリ上に
割り当てられた対象プログラム106内の対象命令10
8及び対象データ110との対応を示す図である。ただ
しRAM上に割り当てられたときの対象データ110を
ソースイメージで表現している。いまソースプログラム
301をデバッグするものとする。一般的にプログラム
をデバッグする時には、プログラム中の特定の場所の命
令を実行している時点での特定変数の値を知りたいと思
うことが多くある。例として元のソースプログラムが3
01に簡単に示したような形をしているとし、その10
0行目に実行が来る直前に変数Vの値を探るものとす
る。デバッグ指示部103が図6に示す機能を備えてい
る場合には、ユーザは端末120を介してデバッグ指示
部103に「100行目実行前の変数Vの値を参照す
る」旨の指示を行う。次にデバッグ指示部103は、ソ
ースプログラム301とそれをコンパイルしてできるシ
ンボル情報ファイル305の情報からまず100行目に
対応するオブジェクトプログラムの物理アドレス及び変
数Vが配置されている物理アドレスを算出する。図7に
示すようにソースプログラム301の100行目はメモ
リ上の対象プログラム106では0x2000番地に、変数V
は0x8000番地に割当てられているとする。組込みシステ
ムにおいては、オブジェクトプログラムはメモリの固定
アドレスに配置されることが多い。デバッグ指示部10
3はメモリ領域に配置後の対象プログラム106を走査
して、そのアドレスにある命令がLoad命令であることを
知る。以上の取得した情報によってデバッグ管理テーブ
ル104の「対象命令アドレス」を0x2000、「対象命
令」をLoad、対象データとして変数Vのアドレスを0x80
00、その変数の「対象データ長」を4バイト、処理区分
をRに設定する。さらにステップ203により、メモリ
上に配置された対象プログラム106の0x2000番地の命
令をデバッグ処理部105への分岐命令(例えばJump 0
xE000)に書き換える。ここまでがデバッグ作業の前処
理であり、デバッグ対象のプログラムと独立に動作する
デバッグ指示部103によって実現される。
【0019】そのような前処理を行った後、対象プログ
ラム106を実行させると、デバッグ処理部105への
分岐命令に変更した部分に到達するまでは何ら影響を受
けないが、ソースプログラム301の100行目、つま
り物理アドレスで0x2000番地に到達すると、本来の命令
(Load)の代わりに前処理で設定されたデバッグ処理部
105の分岐命令(Jump 0xE000)が実行され、制御が
デバッグ処理部105に移る。デバッグ処理部105
は、図4に示す通り、デバッグ処理部105が必要なレ
ジスタやスタックの状態を退避し(ステップ204)、
デバッグ管理テーブル104を参照して0x8000番地から
4バイトの値を端末120に出力する(ステップ20
5)。なおデバッグ管理テーブル104にある処理区分
が書き込み(W)となっていれば、対象となっている変
数の値をデバッグ管理テーブル104の「設定する値」
によって書き換える。そして0x2000番地に元の命令であ
るLoadを書き戻し(ステップ206)、ステップ204
で退避したレジスタ等を回復(ステップ207)した
後、分岐元のアドレス0x2000番地へ分岐する(ステップ
208)。ここは具体的には「Jump 0x2000」の実行と
なる。そして対象プログラム106の元の処理ステップ
を続行する。この時点で元の対象プログラム106は何
の手も加えられていない状態に戻っており、その後の処
理には一切影響を与えない。別の見方をすれば、本発明
のデバッグ方法を用いるために、機器102にデバッグ
指示部103やデバッグ処理部105を搭載しても、デ
バッグ指示部103が何もしなければ、対象プログラム
106の実行に何の影響も与えないことを意味する。
【0020】以上述べたようにデバッグ後の対象プログ
ラム106は、変数の値を変更する場合を除いて元の状
態に戻っている。また変更した変数の値は必要に応じて
元の値に戻しておけばよい。このため別の観点から対象
プログラム106をデバッグしたり、デバッグの対象と
する変数を変更するような場合にソースプログラム30
1に埋め込んだデバッグステートメントを修正してホス
トコンピュータ130で再コンパイルし、ホストコンピ
ュータ130を機器102に接続し、再コンパイル後の
対象プログラム106を機器102に再びダウンロード
してから次のデバッグを行うような準備作業は不要とな
り、デバッグ管理テーブル104のデバッグ情報を再設
定するだけで次のデバッグを開始でき、デバッグ効率の
向上は大きい。
【0021】
【発明の効果】以上説明したように本発明によれば、特
別なハードウェアを用いたり、アセンブラ/コンパイラ
等に手を加えたりすることなく、一般的な実動作環境に
おいて、しかも対象プログラムを修正することも必要と
せずに、デバッグ対象プログラムの任意の実行位置での
任意の変数の値の参照や設定ができるようになる。その
ため従来必要であったデバッグ制御の変更によって生じ
るソースプログラムの再アセンブル/コンパイルとそれ
に伴うデバッグ前の準備作業が不要となり、デバッグ効
率が向上する。また何度ものソースプログラム修正によ
ってバグが入り込む可能性が低くなるという効果も得ら
れる。
【図面の簡単な説明】
【図1】実施形態の全体構成を示す図である。
【図2】実施形態のデバッグ管理テーブル104のデー
タ構成を示す図である。
【図3】実施形態のデバッグ指示部103の処理手順を
示すフローチャートである。
【図4】実施形態のデバッグ処理部105の処理手順を
示すフローチャートである。
【図5】実施形態のアセンブラ/コンパイラ302と関
連するファイルの関係を示す図である。
【図6】デバッグ指示部103の他の実施形態を示すブ
ロック図である。
【図7】ソースプログラム301とそれに対応する対象
プログラム106を例示する図である。
【符号の説明】
102…機器、103…デバッグ指示部、104…デバ
ッグ管理テーブル、105…デバッグ処理部、106…
対象プログラム

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】実動作環境下でプログラムをデバッグする
    方法において、メモリ上に設定された命令アドレスに基
    づいてデバッグの対象プログラムの中でデバッグのタイ
    ミングとなる対象命令をメモリ上に退避し、前記対象命
    令をデバッグ処理部への分岐命令に書き換え、書き換え
    られた前記対象プログラムを実行し、前記分岐命令が実
    行されたとき制御を受ける前記デバッグ処理部によっ
    て、メモリ上に設定されたデータアドレスに基づいて対
    象とする変数の値を参照してメモリ上の所定の領域に前
    記変数の値を書き込み、前記対象プログラム中の前記分
    岐命令を前記対象命令に書き戻し、前記対象プログラム
    中の書き戻された前記対象命令に制御を戻すことを特徴
    とするデバッグ方法。
  2. 【請求項2】前記対象プログラムに対応するソースプロ
    グラム中のステートメント行及び変数名が指定されたと
    き、前記ソースプログラムをコンパイルしたコンパイラ
    の出力したシンボリック情報を参照して前記ステートメ
    ント行及び変数名をそれぞれ前記命令アドレス及び前記
    データアドレスに変換し、前記メモリ上に設定すること
    を特徴とする請求項1記載のデバッグ方法。
  3. 【請求項3】メモリ上に設定された命令アドレスに基づ
    いてデバッグの対象プログラムの中でデバッグのタイミ
    ングとなる対象命令をメモリ上に退避し、前記対象命令
    をデバッグ処理手段への分岐命令に書き換えるデバッグ
    指示手段と、書き換えられた前記対象プログラムが実行
    されるとき制御を受け、メモリ上に設定されたデータア
    ドレスに基づいて対象とする変数の値を参照してメモリ
    上の所定の領域に前記変数の値を書き込み、前記対象プ
    ログラム中の前記分岐命令を前記対象命令に書き戻し、
    前記対象プログラム中の書き戻された前記対象命令に制
    御を戻すデバッグ処理手段とを有することを特徴とする
    実動作環境下のデバッグ対象装置。
JP2000038021A 2000-02-09 2000-02-09 実動作環境下のデバッグ方法及びデバッグ対象装置 Pending JP2001222447A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000038021A JP2001222447A (ja) 2000-02-09 2000-02-09 実動作環境下のデバッグ方法及びデバッグ対象装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000038021A JP2001222447A (ja) 2000-02-09 2000-02-09 実動作環境下のデバッグ方法及びデバッグ対象装置

Publications (1)

Publication Number Publication Date
JP2001222447A true JP2001222447A (ja) 2001-08-17

Family

ID=18561827

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000038021A Pending JP2001222447A (ja) 2000-02-09 2000-02-09 実動作環境下のデバッグ方法及びデバッグ対象装置

Country Status (1)

Country Link
JP (1) JP2001222447A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006268833A (ja) * 2005-03-24 2006-10-05 Microsoft Corp 制限的な呼び出し規約を有するコードをインストルメントする方法
JP2011090511A (ja) * 2009-10-22 2011-05-06 Fujitsu Ltd 実行プログラム、コンパイラ、実行プログラム動作修正装置及び実行プログラム動作修正方法
JP2015176363A (ja) * 2014-03-14 2015-10-05 株式会社Pfu デバッグ対象装置、制御方法及び制御プログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006268833A (ja) * 2005-03-24 2006-10-05 Microsoft Corp 制限的な呼び出し規約を有するコードをインストルメントする方法
JP2011090511A (ja) * 2009-10-22 2011-05-06 Fujitsu Ltd 実行プログラム、コンパイラ、実行プログラム動作修正装置及び実行プログラム動作修正方法
JP2015176363A (ja) * 2014-03-14 2015-10-05 株式会社Pfu デバッグ対象装置、制御方法及び制御プログラム

Similar Documents

Publication Publication Date Title
US6564179B1 (en) DSP emulating a microcontroller
US6219832B1 (en) System and method of using annotations to optimize dynamically translated code in the presence of signals
JP3602857B2 (ja) 多機種対応型情報処理システム、および、方法
US5920721A (en) Compiler generating functionally-alike code sequences in an executable program intended for execution in different run-time environments
JP4050764B2 (ja) コンパイルシステム
US7533246B2 (en) Application program execution enhancing instruction set generation for coprocessor and code conversion with marking for function call translation
US9672133B2 (en) Systems and methods for debugging applications using dual code generation
JP2004164554A (ja) プログラム実行監視装置および方法
JP2513417B2 (ja) 情報処理装置
JP2004086837A (ja) データ処理装置
CN111324948A (zh) 模拟方法及模拟系统
JP2001222447A (ja) 実動作環境下のデバッグ方法及びデバッグ対象装置
WO2024069730A1 (ja) デバッグ装置及びデバッグ方法
JPH08272770A (ja) マイクロコントローラディベロップメントシステム
US11630757B1 (en) System and method for developing, testing and debugging software for microcontrollers
Davies et al. Mable: A technique for efficient machine simulation
JP3064331B2 (ja) 言語処理プログラムの処理方式
JPH02186448A (ja) デバッグ環境を備えた集積回路
JPS6152747A (ja) マイクロプロセツサ
US20060165094A1 (en) Encapsulation of large native operating system functions as enhancements of the instruction set in an emulated central processor system
JP2002366378A (ja) プログラムのデバッグ装置及びデバッグ方法、並びに記憶媒体
JP2003140921A (ja) データ処理システム及びデータ処理方法、並びに記憶媒体
KR0175469B1 (ko) 칠프로그램 변수의 가시성 제어방법
Feriozi AC programming model for OS/2 device drivers
Hawkins Real-time processing with the Philips LPC ARM microcontroller; using GCC and the MicroC/OS-II RTOS.