JP2003015904A - デバッガ処理方法および記録媒体 - Google Patents
デバッガ処理方法および記録媒体Info
- Publication number
- JP2003015904A JP2003015904A JP2001200253A JP2001200253A JP2003015904A JP 2003015904 A JP2003015904 A JP 2003015904A JP 2001200253 A JP2001200253 A JP 2001200253A JP 2001200253 A JP2001200253 A JP 2001200253A JP 2003015904 A JP2003015904 A JP 2003015904A
- Authority
- JP
- Japan
- Prior art keywords
- debugger
- application software
- target system
- symbol
- host computer
- 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)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】
【課題】 アプリケーションソフトウェアのデバッグを
シンボリックに効率良く実行することができるデバッガ
処理方法および記録媒体を提供する。 【解決手段】 デバッガ202のシンボル参照機能を利
用して、実メモリ13を直接に参照することにより、タ
ーゲットシステム1と通信可能に接続されたホストコン
ピュータ2上のデバッガ202が、アプリケーションソ
フトウエア14の挙動を正確に追尾もしくは制御する。
シンボリックに効率良く実行することができるデバッガ
処理方法および記録媒体を提供する。 【解決手段】 デバッガ202のシンボル参照機能を利
用して、実メモリ13を直接に参照することにより、タ
ーゲットシステム1と通信可能に接続されたホストコン
ピュータ2上のデバッガ202が、アプリケーションソ
フトウエア14の挙動を正確に追尾もしくは制御する。
Description
【0001】
【発明の属する技術分野】本発明は、ソフトウエア開発
の際にその開発対象のアプリケーションソフトウェアを
デバッグするデバッガ処理方法およびそのデバッガプロ
グラムを記録した記録媒体に関するものである。
の際にその開発対象のアプリケーションソフトウェアを
デバッグするデバッガ処理方法およびそのデバッガプロ
グラムを記録した記録媒体に関するものである。
【0002】
【従来の技術】従来から、ソフトウェアを開発する場合
には、MMU(Memory Management
Unit)を含むタイプのCPUが、そのメモリアクセ
ス処理をMMUを用いて動的管理するオペレーティング
システム(以下、OS)に従い、アプリケーションソフ
トウェア(以下、APL)を実行するコンピュータシス
テムを、ターゲットシステムとして、そのターゲットシ
ステム上で動作するアプリケーションソフトウェア(以
下、APL)を、シンボリックにデバッグするためのマ
ルチタスクシステムに用いるシンボリックデバッグシス
テムを有するソフトウェア開発システムが利用されてい
る。
には、MMU(Memory Management
Unit)を含むタイプのCPUが、そのメモリアクセ
ス処理をMMUを用いて動的管理するオペレーティング
システム(以下、OS)に従い、アプリケーションソフ
トウェア(以下、APL)を実行するコンピュータシス
テムを、ターゲットシステムとして、そのターゲットシ
ステム上で動作するアプリケーションソフトウェア(以
下、APL)を、シンボリックにデバッグするためのマ
ルチタスクシステムに用いるシンボリックデバッグシス
テムを有するソフトウェア開発システムが利用されてい
る。
【0003】なお一般的に、MMUは、メモリ空間を命
令コード領域やデータ領域などに分割し、CPUが該当
する領域に異常なアクセス(例えば、命令コード領域に
データを書こうとする)をした場合、割り込みを発生
し、CPUに対して異常なアクセスであることを知らせ
るというように、CPUからのメモリへのアクセス状態
を常に監視することにより、CPUからの異常なメモリ
アクセスによるデータの破壊からメモリを保護する。
令コード領域やデータ領域などに分割し、CPUが該当
する領域に異常なアクセス(例えば、命令コード領域に
データを書こうとする)をした場合、割り込みを発生
し、CPUに対して異常なアクセスであることを知らせ
るというように、CPUからのメモリへのアクセス状態
を常に監視することにより、CPUからの異常なメモリ
アクセスによるデータの破壊からメモリを保護する。
【0004】上記のCPUからの異常なメモリアクセス
として、アプリケーションソフトウェアのプログラムミ
スや、ノイズによるCPUの暴走などのためにメモリを
正常にアクセスしない場合が挙げられる。
として、アプリケーションソフトウェアのプログラムミ
スや、ノイズによるCPUの暴走などのためにメモリを
正常にアクセスしない場合が挙げられる。
【0005】以上のように、MMUは、メモリのマッピ
ングや保護を目的としたメモリ管理のためのハードウエ
アであり、MMUを用いると、まず、アプリケーション
などのソフトウエアから見える論理的なアドレス空間
と、物理的なメモリを別々に扱うことができアドレス変
換ができる。つまり、MMUは、物理的なメモリをペー
ジまたはセグメントと呼ばれるブロックごとに分割して
管理し、これを論理アドレス空間に割り当てる(マッピ
ング)ことができる。この機能を応用すると、物理的な
メモリより大きな仮想的なメモリ空間をソフトウエアに
供給できる。
ングや保護を目的としたメモリ管理のためのハードウエ
アであり、MMUを用いると、まず、アプリケーション
などのソフトウエアから見える論理的なアドレス空間
と、物理的なメモリを別々に扱うことができアドレス変
換ができる。つまり、MMUは、物理的なメモリをペー
ジまたはセグメントと呼ばれるブロックごとに分割して
管理し、これを論理アドレス空間に割り当てる(マッピ
ング)ことができる。この機能を応用すると、物理的な
メモリより大きな仮想的なメモリ空間をソフトウエアに
供給できる。
【0006】また、個々のアプリケーションやOS本体
を別々の論理アドレス空間で実行することにより、セキ
ュリティを高めることもできる。つまり、MMUのもう
1つの機能としてのメモリ保護であり、このメモリ保護
とは、プログラムによってアクセスできるメモリ領域を
制限することである。例えば、OS本体などが格納され
ているシステム領域にアプリケーションがアクセスでき
ると、システムの破壊を招いてしまうので、システム領
域はアプリケーションからアクセスできないようMMU
で制限してしまうようにしている。これにより上記のよ
うに、アプリケーションが暴走してもシステムへの影響
を最小限に抑えることができるように機能する。
を別々の論理アドレス空間で実行することにより、セキ
ュリティを高めることもできる。つまり、MMUのもう
1つの機能としてのメモリ保護であり、このメモリ保護
とは、プログラムによってアクセスできるメモリ領域を
制限することである。例えば、OS本体などが格納され
ているシステム領域にアプリケーションがアクセスでき
ると、システムの破壊を招いてしまうので、システム領
域はアプリケーションからアクセスできないようMMU
で制限してしまうようにしている。これにより上記のよ
うに、アプリケーションが暴走してもシステムへの影響
を最小限に抑えることができるように機能する。
【0007】以上のようなソフトウェア開発システムに
ついて、以下に説明する。特開平6−103088号公
報には、ターゲットシステムに内蔵のデバッグタスクを
使用し、前記内蔵デバッガがシンボルから仮想アドレス
への変換処理を含む技術が提案されている。これは、タ
ーゲットシステム上のソフトウェアはシンボルに対応す
る仮想アドレスのみを用い、実アドレスを使用しない方
式である。
ついて、以下に説明する。特開平6−103088号公
報には、ターゲットシステムに内蔵のデバッグタスクを
使用し、前記内蔵デバッガがシンボルから仮想アドレス
への変換処理を含む技術が提案されている。これは、タ
ーゲットシステム上のソフトウェアはシンボルに対応す
る仮想アドレスのみを用い、実アドレスを使用しない方
式である。
【0008】また、特開平10−254729号公報に
は、デバッグ対象タスクのプログラムを、通信可能に接
続されたホストコンピュータに送信しデバッガの制御を
行う技術が提案されている。これも同様に、ターゲット
システム上のソフトウェアはシンボルに対応する仮想ア
ドレスのみを用い、実アドレスを使用しない方式であ
る。
は、デバッグ対象タスクのプログラムを、通信可能に接
続されたホストコンピュータに送信しデバッガの制御を
行う技術が提案されている。これも同様に、ターゲット
システム上のソフトウェアはシンボルに対応する仮想ア
ドレスのみを用い、実アドレスを使用しない方式であ
る。
【0009】
【発明が解決しようとする課題】しかしながら上記のよ
うな特開平6−103088号公報および特開平10−
254729号公報に記載のデバッグシステムでは、タ
ーゲットシステム上のCPUが参照するメモリは仮想メ
モリであり、外部バスを経由しての外部デバイスが参照
するメモリは実メモリであり、このターゲットシステム
内で、仮想メモリ上の仮想アドレスと実メモリ上の実ア
ドレスとの対応は、オペレーティングシステムによって
動的に管理されるマッピングテーブルで対応付けられ、
オペレーティングシステムによってその対応は動的に変
化する。
うな特開平6−103088号公報および特開平10−
254729号公報に記載のデバッグシステムでは、タ
ーゲットシステム上のCPUが参照するメモリは仮想メ
モリであり、外部バスを経由しての外部デバイスが参照
するメモリは実メモリであり、このターゲットシステム
内で、仮想メモリ上の仮想アドレスと実メモリ上の実ア
ドレスとの対応は、オペレーティングシステムによって
動的に管理されるマッピングテーブルで対応付けられ、
オペレーティングシステムによってその対応は動的に変
化する。
【0010】そのため、デバッガで、シンボルの指す関
数や変数等の実メモリの正確なアドレスを知ることがで
きず、例えばロジックアナライザを用いてCPUの外部
バスのトレース採取を行うような場合は実アドレスでの
み観測可能であり、DMAで外部デバイスからメモリを
参照するような場合も実アドレスであるため、このよう
な場合に対して、実アドレスで扱えない場合には不都合
となり、良好にデバッグすることができないという問題
点を有していた。
数や変数等の実メモリの正確なアドレスを知ることがで
きず、例えばロジックアナライザを用いてCPUの外部
バスのトレース採取を行うような場合は実アドレスでの
み観測可能であり、DMAで外部デバイスからメモリを
参照するような場合も実アドレスであるため、このよう
な場合に対して、実アドレスで扱えない場合には不都合
となり、良好にデバッグすることができないという問題
点を有していた。
【0011】本発明は、上記従来の問題点を解決するも
ので、アプリケーションソフトウェアのデバッグを、動
的に変化する仮想アドレスと実アドレスとの間の対応を
考慮することなく、シンボリックに効率良く実行するこ
とができるデバッガ処理方法および記録媒体を提供す
る。
ので、アプリケーションソフトウェアのデバッグを、動
的に変化する仮想アドレスと実アドレスとの間の対応を
考慮することなく、シンボリックに効率良く実行するこ
とができるデバッガ処理方法および記録媒体を提供す
る。
【0012】
【課題を解決するための手段】上記の課題を解決するた
めに本発明のデバッガ処理方法は、ソフトウェアを開発
するに際し、ターゲットシステムに搭載された前記開発
対象のアプリケーションソフトウェアに対して、前記タ
ーゲットシステムと通信可能に接続されたホストコンピ
ュータに搭載されたデバッガによりデバッグするデバッ
ガ処理方法であって、前記ターゲットシステム内で、M
MUを含むCPUが前記アプリケーションソフトウェア
を実行するために、そのメモリアクセス処理をMMUを
用いて動的管理するとともに、前記アプリケーションソ
フトウェアに対するデバッグ処理を管理するオペレーテ
ィングシステムを通じて、前記デバッガにより、前記M
MUに対するマッピング情報を動的に保持するために前
記ホストコンピュータ内に設けられたマッピングテーブ
ルを参照しつつ、前記アプリケーションソフトウェアに
対して、シンボル参照によるシンボリックデバッグ処理
を実行する方法としたことを特徴とする。
めに本発明のデバッガ処理方法は、ソフトウェアを開発
するに際し、ターゲットシステムに搭載された前記開発
対象のアプリケーションソフトウェアに対して、前記タ
ーゲットシステムと通信可能に接続されたホストコンピ
ュータに搭載されたデバッガによりデバッグするデバッ
ガ処理方法であって、前記ターゲットシステム内で、M
MUを含むCPUが前記アプリケーションソフトウェア
を実行するために、そのメモリアクセス処理をMMUを
用いて動的管理するとともに、前記アプリケーションソ
フトウェアに対するデバッグ処理を管理するオペレーテ
ィングシステムを通じて、前記デバッガにより、前記M
MUに対するマッピング情報を動的に保持するために前
記ホストコンピュータ内に設けられたマッピングテーブ
ルを参照しつつ、前記アプリケーションソフトウェアに
対して、シンボル参照によるシンボリックデバッグ処理
を実行する方法としたことを特徴とする。
【0013】また本発明の記録媒体は、ソフトウェアを
開発するに際し、ターゲットシステムに搭載された前記
開発対象のアプリケーションソフトウェアに対して、前
記ターゲットシステムと通信可能に接続されたホストコ
ンピュータに搭載されたデバッガによりデバッグするた
めのデバッガプログラムを記録した記録媒体であって、
前記ターゲットシステム内で、MMUを含むCPUが前
記アプリケーションソフトウェアを実行するために、そ
のメモリアクセス処理をMMUを用いて動的管理すると
ともに、前記アプリケーションソフトウェアに対するデ
バッグ処理を管理するオペレーティングシステムを通じ
て、前記デバッガにより、前記MMUに対するマッピン
グ情報を動的に保持するために前記ホストコンピュータ
内に設けられたマッピングテーブルを参照しつつ、前記
アプリケーションソフトウェアに対して、シンボル参照
によるシンボリックデバッグ処理を実行するためのデバ
ッガプログラムを記録したものとしたことを特徴とす
る。
開発するに際し、ターゲットシステムに搭載された前記
開発対象のアプリケーションソフトウェアに対して、前
記ターゲットシステムと通信可能に接続されたホストコ
ンピュータに搭載されたデバッガによりデバッグするた
めのデバッガプログラムを記録した記録媒体であって、
前記ターゲットシステム内で、MMUを含むCPUが前
記アプリケーションソフトウェアを実行するために、そ
のメモリアクセス処理をMMUを用いて動的管理すると
ともに、前記アプリケーションソフトウェアに対するデ
バッグ処理を管理するオペレーティングシステムを通じ
て、前記デバッガにより、前記MMUに対するマッピン
グ情報を動的に保持するために前記ホストコンピュータ
内に設けられたマッピングテーブルを参照しつつ、前記
アプリケーションソフトウェアに対して、シンボル参照
によるシンボリックデバッグ処理を実行するためのデバ
ッガプログラムを記録したものとしたことを特徴とす
る。
【0014】以上により、デバッガのシンボル参照機能
を利用して、実メモリを直接に参照することにより、タ
ーゲットシステムと通信可能に接続されたホストコンピ
ュータ上のデバッガが、アドレスの概念をなくしシンボ
ル情報のみにより、アプリケーションソフトウェアの挙
動を正確に追尾もしくは制御することができる。
を利用して、実メモリを直接に参照することにより、タ
ーゲットシステムと通信可能に接続されたホストコンピ
ュータ上のデバッガが、アドレスの概念をなくしシンボ
ル情報のみにより、アプリケーションソフトウェアの挙
動を正確に追尾もしくは制御することができる。
【0015】
【発明の実施の形態】本発明の請求項1に記載のデバッ
ガ処理方法は、ソフトウェアを開発するに際し、ターゲ
ットシステムに搭載された前記開発対象のアプリケーシ
ョンソフトウェアに対して、前記ターゲットシステムと
通信可能に接続されたホストコンピュータに搭載された
デバッガによりデバッグするデバッガ処理方法であっ
て、前記ターゲットシステム内で、MMUを含むCPU
が前記アプリケーションソフトウェアを実行するため
に、そのメモリアクセス処理をMMUを用いて動的管理
するとともに、前記アプリケーションソフトウェアに対
するデバッグ処理を管理するオペレーティングシステム
を通じて、前記デバッガにより、前記MMUに対するマ
ッピング情報を動的に保持するために前記ホストコンピ
ュータ内に設けられたマッピングテーブルを参照しつ
つ、前記アプリケーションソフトウェアに対して、シン
ボル参照によるシンボリックデバッグ処理を実行する方
法とする。
ガ処理方法は、ソフトウェアを開発するに際し、ターゲ
ットシステムに搭載された前記開発対象のアプリケーシ
ョンソフトウェアに対して、前記ターゲットシステムと
通信可能に接続されたホストコンピュータに搭載された
デバッガによりデバッグするデバッガ処理方法であっ
て、前記ターゲットシステム内で、MMUを含むCPU
が前記アプリケーションソフトウェアを実行するため
に、そのメモリアクセス処理をMMUを用いて動的管理
するとともに、前記アプリケーションソフトウェアに対
するデバッグ処理を管理するオペレーティングシステム
を通じて、前記デバッガにより、前記MMUに対するマ
ッピング情報を動的に保持するために前記ホストコンピ
ュータ内に設けられたマッピングテーブルを参照しつ
つ、前記アプリケーションソフトウェアに対して、シン
ボル参照によるシンボリックデバッグ処理を実行する方
法とする。
【0016】請求項2に記載のデバッガ処理方法は、請
求項1に記載のデバッガにより、ターゲットシステムの
起動時およびアプリケーションソフトウェアのブレーク
時に、前記ターゲットシステム内のオペレーティングシ
ステムが管理するマッピングテーブルの内容に基づい
て、前記デバッガが前記アプリケーションソフトウェア
に対するシンボリックデバッグ処理の際に参照するホス
トコンピュータ内のマッピングテーブルを更新する方法
とする。
求項1に記載のデバッガにより、ターゲットシステムの
起動時およびアプリケーションソフトウェアのブレーク
時に、前記ターゲットシステム内のオペレーティングシ
ステムが管理するマッピングテーブルの内容に基づい
て、前記デバッガが前記アプリケーションソフトウェア
に対するシンボリックデバッグ処理の際に参照するホス
トコンピュータ内のマッピングテーブルを更新する方法
とする。
【0017】請求項3に記載のデバッガ処理方法は、請
求項1または請求項2に記載のデバッガにより、アプリ
ケーションソフトウェアに対するシンボリックデバッグ
処理の際に、ホストコンピュータ内のマッピングテーブ
ルを参照し、ターゲットシステム側の仮想空間中である
ときは、その仮想空間がページ割付けされているかを判
定し、ページ割付けされている場合に前記仮想空間にお
ける仮想アドレスを実アドレスに変換する方法とする。
求項1または請求項2に記載のデバッガにより、アプリ
ケーションソフトウェアに対するシンボリックデバッグ
処理の際に、ホストコンピュータ内のマッピングテーブ
ルを参照し、ターゲットシステム側の仮想空間中である
ときは、その仮想空間がページ割付けされているかを判
定し、ページ割付けされている場合に前記仮想空間にお
ける仮想アドレスを実アドレスに変換する方法とする。
【0018】請求項4に記載のデバッガ処理方法は、請
求項1または請求項2または請求項3に記載のデバッガ
により、アプリケーションソフトウェアに対するシンボ
リックデバッグ処理の際に、前記アプリケーションソフ
トウェアのシンボル参照を行う処理の後に、シンボル情
報として、仮想アドレスと前記シンボル参照処理により
アドレス変換した実アドレスとの双方を表示する方法と
する。
求項1または請求項2または請求項3に記載のデバッガ
により、アプリケーションソフトウェアに対するシンボ
リックデバッグ処理の際に、前記アプリケーションソフ
トウェアのシンボル参照を行う処理の後に、シンボル情
報として、仮想アドレスと前記シンボル参照処理により
アドレス変換した実アドレスとの双方を表示する方法と
する。
【0019】請求項5に記載の記録媒体は、ソフトウェ
アを開発するに際し、ターゲットシステムに搭載された
前記開発対象のアプリケーションソフトウェアに対し
て、前記ターゲットシステムと通信可能に接続されたホ
ストコンピュータに搭載されたデバッガによりデバッグ
するためのデバッガプログラムを記録した記録媒体であ
って、前記ターゲットシステム内で、MMUを含むCP
Uが前記アプリケーションソフトウェアを実行するため
に、そのメモリアクセス処理をMMUを用いて動的管理
するとともに、前記アプリケーションソフトウェアに対
するデバッグ処理を管理するオペレーティングシステム
を通じて、前記デバッガにより、前記MMUに対するマ
ッピング情報を動的に保持するために前記ホストコンピ
ュータ内に設けられたマッピングテーブルを参照しつ
つ、前記アプリケーションソフトウェアに対して、シン
ボル参照によるシンボリックデバッグ処理を実行するた
めのデバッガプログラムを記録したものとする。
アを開発するに際し、ターゲットシステムに搭載された
前記開発対象のアプリケーションソフトウェアに対し
て、前記ターゲットシステムと通信可能に接続されたホ
ストコンピュータに搭載されたデバッガによりデバッグ
するためのデバッガプログラムを記録した記録媒体であ
って、前記ターゲットシステム内で、MMUを含むCP
Uが前記アプリケーションソフトウェアを実行するため
に、そのメモリアクセス処理をMMUを用いて動的管理
するとともに、前記アプリケーションソフトウェアに対
するデバッグ処理を管理するオペレーティングシステム
を通じて、前記デバッガにより、前記MMUに対するマ
ッピング情報を動的に保持するために前記ホストコンピ
ュータ内に設けられたマッピングテーブルを参照しつ
つ、前記アプリケーションソフトウェアに対して、シン
ボル参照によるシンボリックデバッグ処理を実行するた
めのデバッガプログラムを記録したものとする。
【0020】請求項6に記載の記録媒体は、請求項5に
記載のデバッガにより、ターゲットシステムの起動時お
よびアプリケーションソフトウェアのブレーク時に、前
記ターゲットシステム内のオペレーティングシステムが
管理するマッピングテーブルの内容に基づいて、前記デ
バッガが前記アプリケーションソフトウェアに対するシ
ンボリックデバッグ処理の際に参照するホストコンピュ
ータ内のマッピングテーブルを更新するためのデバッガ
プログラムを記録したものとする。
記載のデバッガにより、ターゲットシステムの起動時お
よびアプリケーションソフトウェアのブレーク時に、前
記ターゲットシステム内のオペレーティングシステムが
管理するマッピングテーブルの内容に基づいて、前記デ
バッガが前記アプリケーションソフトウェアに対するシ
ンボリックデバッグ処理の際に参照するホストコンピュ
ータ内のマッピングテーブルを更新するためのデバッガ
プログラムを記録したものとする。
【0021】請求項7に記載の記録媒体は、請求項5ま
たは請求項6に記載のデバッガにより、アプリケーショ
ンソフトウェアに対するシンボリックデバッグ処理の際
に、ホストコンピュータ内のマッピングテーブルを参照
し、ターゲットシステム側の仮想空間中であるときは、
その仮想空間がページ割付けされているかを判定し、ペ
ージ割付けされている場合に前記仮想空間における仮想
アドレスを実アドレスに変換するためのデバッガプログ
ラムを記録したものとする。
たは請求項6に記載のデバッガにより、アプリケーショ
ンソフトウェアに対するシンボリックデバッグ処理の際
に、ホストコンピュータ内のマッピングテーブルを参照
し、ターゲットシステム側の仮想空間中であるときは、
その仮想空間がページ割付けされているかを判定し、ペ
ージ割付けされている場合に前記仮想空間における仮想
アドレスを実アドレスに変換するためのデバッガプログ
ラムを記録したものとする。
【0022】請求項8に記載の記録媒体は、請求項5ま
たは請求項6または請求項7に記載のデバッガにより、
アプリケーションソフトウェアに対するシンボリックデ
バッグ処理の際に、前記アプリケーションソフトウェア
のシンボル参照を行う処理の後に、シンボル情報とし
て、仮想アドレスと前記シンボル参照処理によりアドレ
ス変換した実アドレスとの双方を表示するためのデバッ
ガプログラムを記録したものとする。
たは請求項6または請求項7に記載のデバッガにより、
アプリケーションソフトウェアに対するシンボリックデ
バッグ処理の際に、前記アプリケーションソフトウェア
のシンボル参照を行う処理の後に、シンボル情報とし
て、仮想アドレスと前記シンボル参照処理によりアドレ
ス変換した実アドレスとの双方を表示するためのデバッ
ガプログラムを記録したものとする。
【0023】これらの方法および構成によると、デバッ
ガのシンボル参照機能を利用して、実メモリを直接に参
照することにより、ターゲットシステムと通信可能に接
続されたホストコンピュータ上のデバッガが、アドレス
の概念をなくしシンボル情報のみにより、アプリケーシ
ョンソフトウェアの挙動を正確に追尾もしくは制御す
る。
ガのシンボル参照機能を利用して、実メモリを直接に参
照することにより、ターゲットシステムと通信可能に接
続されたホストコンピュータ上のデバッガが、アドレス
の概念をなくしシンボル情報のみにより、アプリケーシ
ョンソフトウェアの挙動を正確に追尾もしくは制御す
る。
【0024】以下、本発明の実施の形態を示すデバッガ
処理方法および記録媒体について、図面を参照しながら
具体的に説明する。 (実施の形態1)本発明の実施の形態1のデバッガ処理
方法を説明する。
処理方法および記録媒体について、図面を参照しながら
具体的に説明する。 (実施の形態1)本発明の実施の形態1のデバッガ処理
方法を説明する。
【0025】図1は本実施の形態1のデバッガ処理方法
を実現するソフトウエア開発システムの構成を示すブロ
ック図である。このソフトウエア開発システムにおい
て、図1に示すように、ターゲットシステム1は、MM
U121を含むCPU12と、実メモリ13とから構成
され、実メモリ13中には、アプリケーションソフトウ
ェア14と、仮想メモリ(図示せず)の実メモリ13へ
のマッピング状態を管理するターゲット側マッピングテ
ーブル15と、ターゲットシステム1のオペレーティン
グシステム16(以後、OSと称す)と、モニタプログ
ラム17と、通信インタフェース18とが配置される。
なお、アプリケーションソフトウェア14内のタスク
(a)14a、タスク(b)14b、タスク(c)14
cは、アプリケーションソフトウェア14を構成する任
意個の並行処理ソフトウェアの構成単位である。
を実現するソフトウエア開発システムの構成を示すブロ
ック図である。このソフトウエア開発システムにおい
て、図1に示すように、ターゲットシステム1は、MM
U121を含むCPU12と、実メモリ13とから構成
され、実メモリ13中には、アプリケーションソフトウ
ェア14と、仮想メモリ(図示せず)の実メモリ13へ
のマッピング状態を管理するターゲット側マッピングテ
ーブル15と、ターゲットシステム1のオペレーティン
グシステム16(以後、OSと称す)と、モニタプログ
ラム17と、通信インタフェース18とが配置される。
なお、アプリケーションソフトウェア14内のタスク
(a)14a、タスク(b)14b、タスク(c)14
cは、アプリケーションソフトウェア14を構成する任
意個の並行処理ソフトウェアの構成単位である。
【0026】一方、ホストコンピュータ2上には、ホス
ト側マッピングテーブル201およびデバッガ202を
含むデバッガソフトウェア21と、ホスト側オペレーテ
ィングシステム22と、通信インタフェース23とが配
置される。通信インタフェース23は、その通信インタ
フェース23にホスト側オペレーティングシステム22
を通じて接続されたデバッガ202とモニタプログラム
17との間の通信のために使用される。
ト側マッピングテーブル201およびデバッガ202を
含むデバッガソフトウェア21と、ホスト側オペレーテ
ィングシステム22と、通信インタフェース23とが配
置される。通信インタフェース23は、その通信インタ
フェース23にホスト側オペレーティングシステム22
を通じて接続されたデバッガ202とモニタプログラム
17との間の通信のために使用される。
【0027】なお、アプリケーションソフトウェア14
とオペレーティングシステム16およびモニタプログラ
ム17は、実メモリ13上にあって、CPU12により
実行されるソフトウェアである。
とオペレーティングシステム16およびモニタプログラ
ム17は、実メモリ13上にあって、CPU12により
実行されるソフトウェアである。
【0028】図2は本実施の形態におけるマッピングテ
ーブル15と実メモリ13空間および仮想メモリ空間と
の対応説明図、および実行形式ファイル5中にあるシン
ボルテーブル5aの構成例を示す模式図であり、図2
(a)は、MMU121を用いてOS16によって管理
されるターゲット側マッピングテーブル15と、ターゲ
ット側メモリ空間(仮想空間)中のページとの関係の一
例を示している。一般に、実メモリ13のサイズは仮想
メモリ(図1中に非図示)における仮想空間のサイズに
較べて小さいため、OS16が、マッピングテーブル1
5に対し、アプリケーションソフトウェア14の実行に
必要なページを設定する。このように、マッピングテー
ブル15は、MMU121を用いてOS16によって管
理されている。
ーブル15と実メモリ13空間および仮想メモリ空間と
の対応説明図、および実行形式ファイル5中にあるシン
ボルテーブル5aの構成例を示す模式図であり、図2
(a)は、MMU121を用いてOS16によって管理
されるターゲット側マッピングテーブル15と、ターゲ
ット側メモリ空間(仮想空間)中のページとの関係の一
例を示している。一般に、実メモリ13のサイズは仮想
メモリ(図1中に非図示)における仮想空間のサイズに
較べて小さいため、OS16が、マッピングテーブル1
5に対し、アプリケーションソフトウェア14の実行に
必要なページを設定する。このように、マッピングテー
ブル15は、MMU121を用いてOS16によって管
理されている。
【0029】ターゲット側およびホスト側のマッピング
テーブル15、201の役割は、実メモリにおけるペー
ジ群の仮想メモリへの対応を行うことである。具体的な
マッピングテーブルの構成および内容は、メモリのアド
レス幅やページサイズ等によって異なり、さらにページ
保護等の属性情報が付加されることもある。マッピング
テーブルにないページは非マップすなわちページ割り当
てがされていないページとなる。
テーブル15、201の役割は、実メモリにおけるペー
ジ群の仮想メモリへの対応を行うことである。具体的な
マッピングテーブルの構成および内容は、メモリのアド
レス幅やページサイズ等によって異なり、さらにページ
保護等の属性情報が付加されることもある。マッピング
テーブルにないページは非マップすなわちページ割り当
てがされていないページとなる。
【0030】APL14に対するシンボリックデバッグ
処理を行うため、デバッガ202は、図1の実行形式フ
ァイル5中にあるシンボルテーブル5aを用いる。この
シンボルテーブル5aは、図2(b)のように、APL
14の実行形式ファイル5中に表形式のデータ構造で格
納され、APL14の中で使用されるシンボルと仮想ア
ドレスとの対応を保持する。
処理を行うため、デバッガ202は、図1の実行形式フ
ァイル5中にあるシンボルテーブル5aを用いる。この
シンボルテーブル5aは、図2(b)のように、APL
14の実行形式ファイル5中に表形式のデータ構造で格
納され、APL14の中で使用されるシンボルと仮想ア
ドレスとの対応を保持する。
【0031】図3および図4は本実施の形態のデバッガ
処理方法を実現するソフトウエア開発システムにおける
デバッガのシンボル参照によるシンボリックデバッグ処
理の手順を示すフローチャートである。
処理方法を実現するソフトウエア開発システムにおける
デバッガのシンボル参照によるシンボリックデバッグ処
理の手順を示すフローチャートである。
【0032】まず、図3に示すように、ホストコンピュ
ータ2におけるデバッガソフトウェア21上のデバッガ
202の処理の要素であるシンボル参照処理は、実行形
式ファイル5内のシンボルテーブル5aを検索し、シン
ボルから仮想アドレスに変換し(ステップS100)、
次に、ターゲットシステム1における実メモリ13上の
モニタプログラム17に対し、マッピングテーブル15
の更新があったかを照会する(ステップS101)。
ータ2におけるデバッガソフトウェア21上のデバッガ
202の処理の要素であるシンボル参照処理は、実行形
式ファイル5内のシンボルテーブル5aを検索し、シン
ボルから仮想アドレスに変換し(ステップS100)、
次に、ターゲットシステム1における実メモリ13上の
モニタプログラム17に対し、マッピングテーブル15
の更新があったかを照会する(ステップS101)。
【0033】モニタプログラム17は、デバッガ202
からのコマンド待ち状態で前記の照会を受け(ステップ
S110、ステップS111、ステップS112)、マ
ッピングテーブル15の更新照会を行い(ステップS1
13、ステップS114)、更新があったかなかったか
をホスト側のデバッガ202に返信通知する(ステップ
S115、ステップS116)。もし更新があった場合
は、デバッガ202に対し、マッピングテーブル15に
格納されたデータを送信する(ステップS117)。
からのコマンド待ち状態で前記の照会を受け(ステップ
S110、ステップS111、ステップS112)、マ
ッピングテーブル15の更新照会を行い(ステップS1
13、ステップS114)、更新があったかなかったか
をホスト側のデバッガ202に返信通知する(ステップ
S115、ステップS116)。もし更新があった場合
は、デバッガ202に対し、マッピングテーブル15に
格納されたデータを送信する(ステップS117)。
【0034】デバッガ202は、マッピングテーブル1
5の更新があった場合(ステップS102)には、その
マッピングテーブル15を受信して、ホスト側マッピン
グテーブル201の更新を行い(ステップS103)、
更新されたホスト側マッピングテーブル201を基に、
シンボルから仮想アドレスおよび実アドレスへの変換を
行う(ステップS104)。以上のような処理ステップ
に従って、デバッガ202はシンボル参照処理を実行す
る。
5の更新があった場合(ステップS102)には、その
マッピングテーブル15を受信して、ホスト側マッピン
グテーブル201の更新を行い(ステップS103)、
更新されたホスト側マッピングテーブル201を基に、
シンボルから仮想アドレスおよび実アドレスへの変換を
行う(ステップS104)。以上のような処理ステップ
に従って、デバッガ202はシンボル参照処理を実行す
る。
【0035】この中で、ステップS101のマッピング
テーブル更新紹介の処理は、一例としては、OS16が
マッピング変更を行う際にフラグ設定するようにし、そ
のフラグを参照することにより、実現可能となる。
テーブル更新紹介の処理は、一例としては、OS16が
マッピング変更を行う際にフラグ設定するようにし、そ
のフラグを参照することにより、実現可能となる。
【0036】デバッガ202は、さらに、前述のシンボ
ル参照処理を用いて、図4に示す処理ステップで、シン
ボルの参照・表示処理を行う。このデバッガ202によ
るシンボルの参照・表示処理について、以下に説明す
る。
ル参照処理を用いて、図4に示す処理ステップで、シン
ボルの参照・表示処理を行う。このデバッガ202によ
るシンボルの参照・表示処理について、以下に説明す
る。
【0037】まず、前記のシンボル参照処理を行う(ス
テップS200)。次に、ホスト側マッピングテーブル
201の情報を参照し、該シンボルのアドレスがマップ
されているか、あるいはマップされていないかを判定す
る(ステップS201)。マップされている場合は、モ
ニタプログラム17に対し、実アドレスを用いてメモリ
内容を照会する(ステップS202)。
テップS200)。次に、ホスト側マッピングテーブル
201の情報を参照し、該シンボルのアドレスがマップ
されているか、あるいはマップされていないかを判定す
る(ステップS201)。マップされている場合は、モ
ニタプログラム17に対し、実アドレスを用いてメモリ
内容を照会する(ステップS202)。
【0038】モニタプログラム17は、デバッガ202
からのコマンド待ち状態(ステップS210)から前記
照会を受け、メモリ内容照会のコマンドである場合(ス
テップS211)、該メモリ内容を取得し(ステップS
213)送信する(ステップS214)。
からのコマンド待ち状態(ステップS210)から前記
照会を受け、メモリ内容照会のコマンドである場合(ス
テップS211)、該メモリ内容を取得し(ステップS
213)送信する(ステップS214)。
【0039】デバッガ202は、モニタプログラム17
により送信されたメモリ内容を受信する(ステップS2
03)。ステップ201でマップされていない判定とな
った場合には、ステップS202とステップS203の
ステップは迂回される。
により送信されたメモリ内容を受信する(ステップS2
03)。ステップ201でマップされていない判定とな
った場合には、ステップS202とステップS203の
ステップは迂回される。
【0040】次に、デバッガ202は、シンボル情報と
して、シンボル名、マップ・非マップ表示、仮想アドレ
ス、実アドレス、メモリ内容を、入出力装置3の表示装
置に表示する(ステップS204)。これらの表示の様
態の一例を図6に示す。
して、シンボル名、マップ・非マップ表示、仮想アドレ
ス、実アドレス、メモリ内容を、入出力装置3の表示装
置に表示する(ステップS204)。これらの表示の様
態の一例を図6に示す。
【0041】以上説明したように、APL14のブレー
ク時すなわち停止時に、デバッガ202が、そのシンボ
ル参照のため使用するマッピングテーブル201を、現
在のターゲット側マッピングテーブル15の内容に更新
し、デバッガ202からモニタプログラム17に対し
て、実アドレスでメモリ値を要求・取得し、入出力装置
3の表示装置への表示を行う。これにより、ユーザは仮
想空間中で使用されるシンボルの仮想アドレス・実アド
レスとその内容とを得ることができる。
ク時すなわち停止時に、デバッガ202が、そのシンボ
ル参照のため使用するマッピングテーブル201を、現
在のターゲット側マッピングテーブル15の内容に更新
し、デバッガ202からモニタプログラム17に対し
て、実アドレスでメモリ値を要求・取得し、入出力装置
3の表示装置への表示を行う。これにより、ユーザは仮
想空間中で使用されるシンボルの仮想アドレス・実アド
レスとその内容とを得ることができる。
【0042】デバッガ202とCPU12が実行する上
記一連の処理動作の時系列における推移の例を図5に示
す。図5においては、APL14の中でのタスクとし
て、タスク(a)14a、タスク(b)14b、タスク
(c)14cの3つが存在する場合を例とし、最初にデ
バッガ202からモニタプログラム17に対してAPL
14の実行開始の指示が通知され、モニタプログラム1
7からOS16およびタスク(a)14a、タスク
(c)14cと実行遷移し、さらにタスク(a)14a
に遷移したところで、ブレークポイントへの到達すなわ
ちAPL14の実行が停止したことを想定する。
記一連の処理動作の時系列における推移の例を図5に示
す。図5においては、APL14の中でのタスクとし
て、タスク(a)14a、タスク(b)14b、タスク
(c)14cの3つが存在する場合を例とし、最初にデ
バッガ202からモニタプログラム17に対してAPL
14の実行開始の指示が通知され、モニタプログラム1
7からOS16およびタスク(a)14a、タスク
(c)14cと実行遷移し、さらにタスク(a)14a
に遷移したところで、ブレークポイントへの到達すなわ
ちAPL14の実行が停止したことを想定する。
【0043】まず、時刻T0において、デバッガ202
はモニタプログラム17に対し、APL14の実行開始
の指示を発行し、モニタプログラム17はOS16に復
帰する。
はモニタプログラム17に対し、APL14の実行開始
の指示を発行し、モニタプログラム17はOS16に復
帰する。
【0044】次に、時刻T1において、ターゲット側マ
ッピングテーブル15の更新を行った後、タスク(a)
14aに実行遷移する。次に、イベント発生等の要因に
よってタスク(a)14aの実行権が奪われてOS16
に実行権が戻り、そこで時刻T2において再度、ターゲ
ット側マッピングテーブル15が更新される。
ッピングテーブル15の更新を行った後、タスク(a)
14aに実行遷移する。次に、イベント発生等の要因に
よってタスク(a)14aの実行権が奪われてOS16
に実行権が戻り、そこで時刻T2において再度、ターゲ
ット側マッピングテーブル15が更新される。
【0045】次に、タスク(c)14cが実行権を得て
遷移し、再びOS16に戻ったところで、時刻T3にお
いて再度、ターゲット側マッピングテーブル15が更新
される。
遷移し、再びOS16に戻ったところで、時刻T3にお
いて再度、ターゲット側マッピングテーブル15が更新
される。
【0046】次に、タスク(a)14aが実行再開した
ところで、タスク(a)14aが時刻T4において、予
め設定されたブレークポイントに到達すると、モニタプ
ログラム17がその処理に割り込む。モニタプログラム
17は、デバッガ202へ、APL14の実行が停止し
たことを、時刻T5において通知する。
ところで、タスク(a)14aが時刻T4において、予
め設定されたブレークポイントに到達すると、モニタプ
ログラム17がその処理に割り込む。モニタプログラム
17は、デバッガ202へ、APL14の実行が停止し
たことを、時刻T5において通知する。
【0047】デバッガ202は、時刻T6でターゲット
側マッピングテーブル15の更新有無を確認を依頼し、
モニタプログラム17が時刻T7で、ターゲット側マッ
ピングテーブル15の更新の有無と更新があった場合に
はターゲット側マッピングテーブル15に格納されてい
るデータを送信する。
側マッピングテーブル15の更新有無を確認を依頼し、
モニタプログラム17が時刻T7で、ターゲット側マッ
ピングテーブル15の更新の有無と更新があった場合に
はターゲット側マッピングテーブル15に格納されてい
るデータを送信する。
【0048】次に、時刻T8で、デバッガ202は、モ
ニタプログラム17に対し、実アドレスを用いてメモリ
内容を照会し、モニタプログラム17は、メモリ内容の
取得後、デバッガ202に送信する。
ニタプログラム17に対し、実アドレスを用いてメモリ
内容を照会し、モニタプログラム17は、メモリ内容の
取得後、デバッガ202に送信する。
【0049】最後に、時刻T9において、デバッガ20
2は、APL14の実行再開をモニタプログラム17に
指示し、モニタプログラム17は割り込み元すなわちタ
スク(a)14aに復帰する。
2は、APL14の実行再開をモニタプログラム17に
指示し、モニタプログラム17は割り込み元すなわちタ
スク(a)14aに復帰する。
【0050】この一連の動作の例に示すように、ターゲ
ット側マッピングテーブル15の更新は、OS16によ
るタスク切り替えの毎に行われるが、その内容のホスト
側への送信は、デバッガ202が参照を必要とするとき
のみに限定される。
ット側マッピングテーブル15の更新は、OS16によ
るタスク切り替えの毎に行われるが、その内容のホスト
側への送信は、デバッガ202が参照を必要とするとき
のみに限定される。
【0051】以上のようにして、本実施の形態のデバッ
ガ処理方法を実現するソフトウエア開発システムにおけ
るデバッガのシンボル参照によるシンボリックデバッグ
動作が完了する。 (実施の形態2)本発明の実施の形態2のデバッガ処理
方法および記録媒体を説明する。
ガ処理方法を実現するソフトウエア開発システムにおけ
るデバッガのシンボル参照によるシンボリックデバッグ
動作が完了する。 (実施の形態2)本発明の実施の形態2のデバッガ処理
方法および記録媒体を説明する。
【0052】本実施の形態2のデバッガ処理方法を実現
するデバッガプログラムを記録した記録媒体を用いたソ
フトウエア開発システムの構成として、図1に示すブロ
ック図において、実施の形態1で説明した構成に加え
て、ホストコンピュータ2のデバッガソフトウェア21
内のデバッガ202上に書き込まれるデバッガプログラ
ム、およびターゲットシステム1内の実メモリ13上に
書き込まれるモニタプログラム17のいずれか、又は両
方のプログラムを記録する記録媒体4を備える。
するデバッガプログラムを記録した記録媒体を用いたソ
フトウエア開発システムの構成として、図1に示すブロ
ック図において、実施の形態1で説明した構成に加え
て、ホストコンピュータ2のデバッガソフトウェア21
内のデバッガ202上に書き込まれるデバッガプログラ
ム、およびターゲットシステム1内の実メモリ13上に
書き込まれるモニタプログラム17のいずれか、又は両
方のプログラムを記録する記録媒体4を備える。
【0053】これらのプログラムのうち、デバッガプロ
グラムは、記録媒体4からホスト側オペレーティングシ
ステム22によってホストコンピュータ2のデバッガソ
フトウェア21内のデバッガ202上に読み込まれ、
又、モニタプログラム17は、ターゲット側オペレーテ
ィングシステム16によってターゲットシステム1内の
実メモリ13上に読み込まれ、それぞれ必要に応じて実
行される。なお、モニタプログラム17は、ターゲット
システム1の中で、不揮発性メモリ(図示せず)に格納
されることもある。
グラムは、記録媒体4からホスト側オペレーティングシ
ステム22によってホストコンピュータ2のデバッガソ
フトウェア21内のデバッガ202上に読み込まれ、
又、モニタプログラム17は、ターゲット側オペレーテ
ィングシステム16によってターゲットシステム1内の
実メモリ13上に読み込まれ、それぞれ必要に応じて実
行される。なお、モニタプログラム17は、ターゲット
システム1の中で、不揮発性メモリ(図示せず)に格納
されることもある。
【0054】この後、デバッガ202上のデバッガプロ
グラムおよび実メモリ13上のモニタプログラム17に
より、実施の形態1の場合と同様のデバッガ処理が実行
され、本実施の形態2のデバッガ処理が完了する。
グラムおよび実メモリ13上のモニタプログラム17に
より、実施の形態1の場合と同様のデバッガ処理が実行
され、本実施の形態2のデバッガ処理が完了する。
【0055】
【発明の効果】以上のように本発明によれば、デバッガ
のシンボル参照機能を利用して、実メモリを直接に参照
することにより、ターゲットシステムと通信可能に接続
されたホストコンピュータ上のデバッガが、アドレスの
概念をなくしシンボル情報のみにより、アプリケーショ
ンソフトウェアの挙動を正確に追尾もしくは制御するこ
とができる。
のシンボル参照機能を利用して、実メモリを直接に参照
することにより、ターゲットシステムと通信可能に接続
されたホストコンピュータ上のデバッガが、アドレスの
概念をなくしシンボル情報のみにより、アプリケーショ
ンソフトウェアの挙動を正確に追尾もしくは制御するこ
とができる。
【0056】そのため、アプリケーションソフトウェア
のデバッグを、動的に変化する仮想アドレスと実アドレ
スとの間の対応を考慮することなく、シンボリックに効
率良く実行することができる。
のデバッグを、動的に変化する仮想アドレスと実アドレ
スとの間の対応を考慮することなく、シンボリックに効
率良く実行することができる。
【図面の簡単な説明】
【図1】本発明の実施の形態のデバッガ処理方法を実現
するデバッガプログラムを記録した記録媒体を用いたソ
フトウエア開発システムの構成を示すブロック図
するデバッガプログラムを記録した記録媒体を用いたソ
フトウエア開発システムの構成を示すブロック図
【図2】同実施の形態におけるマッピングテーブルと実
メモリ空間および仮想空間との対応説明図およびシンボ
ルテーブルの構成例を示す模式図
メモリ空間および仮想空間との対応説明図およびシンボ
ルテーブルの構成例を示す模式図
【図3】同実施の形態におけるデバッガのシンボル参照
処理の手順を示すフローチャート
処理の手順を示すフローチャート
【図4】同実施の形態におけるデバッガのシンボル参照
処理の手順を示すフローチャート
処理の手順を示すフローチャート
【図5】同実施の形態におけるデバッガの動作およびモ
ニタプログラムの実行の流れを示すタイミングチャート
ニタプログラムの実行の流れを示すタイミングチャート
【図6】同実施の形態におけるデバッガ変数の表示例を
示す概略図
示す概略図
1 ターゲットシステム
12 CPU
121 MMU
13 実メモリ
14 アプリケーションソフトウェア
14a タスク(a)
14b タスク(b)
14c タスク(c)
15 ターゲット側マッピングテーブル
16 ターゲット側オペレーティングシステム
17 モニタプログラム
18 通信インタフェース
2 ホストコンピュータ
21 デバッガソフトウェア
201 ホスト側マッピングテーブル
202 デバッガ
22 ホスト側オペレーティングシステム
23 通信インタフェース
3 入出力装置
4 記録媒体
5 実行形式ファイル
Claims (8)
- 【請求項1】 ソフトウェアを開発するに際し、ターゲ
ットシステムに搭載された前記開発対象のアプリケーシ
ョンソフトウェアに対して、前記ターゲットシステムと
通信可能に接続されたホストコンピュータに搭載された
デバッガによりデバッグするデバッガ処理方法であっ
て、前記ターゲットシステム内で、MMUを含むCPU
が前記アプリケーションソフトウェアを実行するため
に、そのメモリアクセス処理をMMUを用いて動的管理
するとともに、前記アプリケーションソフトウェアに対
するデバッグ処理を管理するオペレーティングシステム
を通じて、前記デバッガにより、前記MMUに対するマ
ッピング情報を動的に保持するために前記ホストコンピ
ュータ内に設けられたマッピングテーブルを参照しつ
つ、前記アプリケーションソフトウェアに対して、シン
ボル参照によるシンボリックデバッグ処理を実行するこ
とを特徴とするデバッガ処理方法。 - 【請求項2】 デバッガにより、ターゲットシステムの
起動時およびアプリケーションソフトウェアのブレーク
時に、前記ターゲットシステム内のオペレーティングシ
ステムが管理するマッピングテーブルの内容に基づい
て、前記デバッガが前記アプリケーションソフトウェア
に対するシンボリックデバッグ処理の際に参照するホス
トコンピュータ内のマッピングテーブルを更新すること
を特徴とする請求項1に記載のデバッガ処理方法。 - 【請求項3】 デバッガにより、アプリケーションソフ
トウェアに対するシンボリックデバッグ処理の際に、ホ
ストコンピュータ内のマッピングテーブルを参照し、タ
ーゲットシステム側の仮想空間中であるときは、その仮
想空間がページ割付けされているかを判定し、ページ割
付けされている場合に前記仮想空間における仮想アドレ
スを実アドレスに変換することを特徴とする請求項1ま
たは請求項2に記載のデバッガ処理方法。 - 【請求項4】 デバッガにより、アプリケーションソフ
トウェアに対するシンボリックデバッグ処理の際に、前
記アプリケーションソフトウェアのシンボル参照を行う
処理の後に、シンボル情報として、仮想アドレスと前記
シンボル参照処理によりアドレス変換した実アドレスと
の双方を表示することを特徴とする請求項1または請求
項2または請求項3に記載のデバッガ処理方法。 - 【請求項5】 ソフトウェアを開発するに際し、ターゲ
ットシステムに搭載された前記開発対象のアプリケーシ
ョンソフトウェアに対して、前記ターゲットシステムと
通信可能に接続されたホストコンピュータに搭載された
デバッガによりデバッグするためのデバッガプログラム
を記録した記録媒体であって、前記ターゲットシステム
内で、MMUを含むCPUが前記アプリケーションソフ
トウェアを実行するために、そのメモリアクセス処理を
MMUを用いて動的管理するとともに、前記アプリケー
ションソフトウェアに対するデバッグ処理を管理するオ
ペレーティングシステムを通じて、前記デバッガによ
り、前記MMUに対するマッピング情報を動的に保持す
るために前記ホストコンピュータ内に設けられたマッピ
ングテーブルを参照しつつ、前記アプリケーションソフ
トウェアに対して、シンボル参照によるシンボリックデ
バッグ処理を実行するためのデバッガプログラムを記録
したことを特徴とする記録媒体。 - 【請求項6】 デバッガにより、ターゲットシステムの
起動時およびアプリケーションソフトウェアのブレーク
時に、前記ターゲットシステム内のオペレーティングシ
ステムが管理するマッピングテーブルの内容に基づい
て、前記デバッガが前記アプリケーションソフトウェア
に対するシンボリックデバッグ処理の際に参照するホス
トコンピュータ内のマッピングテーブルを更新するため
のデバッガプログラムを記録したことを特徴とする請求
項5に記載の記録媒体。 - 【請求項7】 デバッガにより、アプリケーションソフ
トウェアに対するシンボリックデバッグ処理の際に、ホ
ストコンピュータ内のマッピングテーブルを参照し、タ
ーゲットシステム側の仮想空間中であるときは、その仮
想空間がページ割付けされているかを判定し、ページ割
付けされている場合に前記仮想空間における仮想アドレ
スを実アドレスに変換するためのデバッガプログラムを
記録したことを特徴とする請求項5または請求項6に記
載の記録媒体。 - 【請求項8】 デバッガにより、アプリケーションソフ
トウェアに対するシンボリックデバッグ処理の際に、前
記アプリケーションソフトウェアのシンボル参照を行う
処理の後に、シンボル情報として、仮想アドレスと前記
シンボル参照処理によりアドレス変換した実アドレスと
の双方を表示するためのデバッガプログラムを記録した
ことを特徴とする請求項5または請求項6または請求項
7に記載の記録媒体。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2001200253A JP2003015904A (ja) | 2001-07-02 | 2001-07-02 | デバッガ処理方法および記録媒体 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2001200253A JP2003015904A (ja) | 2001-07-02 | 2001-07-02 | デバッガ処理方法および記録媒体 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2003015904A true JP2003015904A (ja) | 2003-01-17 |
Family
ID=19037400
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2001200253A Pending JP2003015904A (ja) | 2001-07-02 | 2001-07-02 | デバッガ処理方法および記録媒体 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2003015904A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR101517893B1 (ko) * | 2013-10-28 | 2015-05-06 | (주) 제이앤디테크 | 임베디드 소프트웨어 검사 장치 및 임베디드 소프트웨어 검사 방법 |
-
2001
- 2001-07-02 JP JP2001200253A patent/JP2003015904A/ja active Pending
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR101517893B1 (ko) * | 2013-10-28 | 2015-05-06 | (주) 제이앤디테크 | 임베디드 소프트웨어 검사 장치 및 임베디드 소프트웨어 검사 방법 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3659062B2 (ja) | 計算機システム | |
| JP4519738B2 (ja) | メモリアクセス制御装置 | |
| US12541464B2 (en) | Secure memory access in a virtualized computing environment | |
| US8856742B2 (en) | Distributed debugging | |
| US8416253B2 (en) | Apparatus, method, and recording medium for detecting update of image information | |
| US20100125554A1 (en) | Memory Recovery Across Reboots of an Emulated Operating System | |
| US8516186B2 (en) | Method of accelerating access to primary storage and storage system adopting the method | |
| US20190227918A1 (en) | Method for allocating memory resources, chip and non-transitory readable medium | |
| US20100082929A1 (en) | Memory protection method, information processing apparatus, and computer-readable storage medium that stores memory protection program | |
| US20040111707A1 (en) | Debugger for multiple processors and multiple debugging types | |
| JP4157771B2 (ja) | 組込み制御環境におけるリモート入出力機能への効率的なアクセスのための方法およびシステム | |
| US6606697B1 (en) | Information processing apparatus and memory control method | |
| CN115658321A (zh) | 一种汽车仪表故障信息获取方法、装置、电子设备及存储介质 | |
| JP3260999B2 (ja) | ディスク制御装置の制御方法 | |
| US7043717B2 (en) | Debugging apparatus and method | |
| CN112711527A (zh) | 一种实时进程的调试方法、装置、目标机和存储介质 | |
| JP2005122334A (ja) | メモリダンプ方法、メモリダンプ用プログラム及び仮想計算機システム | |
| US7293207B2 (en) | Method for testing memory in a computer system utilizing a CPU with either 32-bit or 36-bit memory addressing | |
| CN120315872A (zh) | 内核转储方法、装置、电子设备及可读存储介质 | |
| JP2003015904A (ja) | デバッガ処理方法および記録媒体 | |
| JP2001290678A (ja) | 非同期メモリダンプ実行方式 | |
| JPH11134204A (ja) | スタック保護装置 | |
| US7934067B2 (en) | Data update history storage apparatus and data update history storage method | |
| KR101352512B1 (ko) | 효율적인 메모리 사용을 위한 스택 관리 장치 및 방법 | |
| CN114327980B (zh) | 获取线程崩溃地址的方法及装置 |