JP4787551B2 - デバッグシステム、デバッグ方法およびプログラム - Google Patents
デバッグシステム、デバッグ方法およびプログラム Download PDFInfo
- Publication number
- JP4787551B2 JP4787551B2 JP2005182039A JP2005182039A JP4787551B2 JP 4787551 B2 JP4787551 B2 JP 4787551B2 JP 2005182039 A JP2005182039 A JP 2005182039A JP 2005182039 A JP2005182039 A JP 2005182039A JP 4787551 B2 JP4787551 B2 JP 4787551B2
- Authority
- JP
- Japan
- Prior art keywords
- program
- execution unit
- debug
- debugging
- interrupt
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 149
- 230000008569 process Effects 0.000 claims description 115
- 230000004913 activation Effects 0.000 claims description 83
- 238000004886 process control Methods 0.000 claims description 63
- 230000004044 response Effects 0.000 claims description 52
- 238000012545 processing Methods 0.000 claims description 14
- 230000008859 change Effects 0.000 claims description 10
- 238000004891 communication Methods 0.000 description 99
- 238000001514 detection method Methods 0.000 description 35
- 230000007547 defect Effects 0.000 description 32
- 238000006243 chemical reaction Methods 0.000 description 20
- 230000005540 biological transmission Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 12
- 230000000694 effects Effects 0.000 description 12
- 230000006870 function Effects 0.000 description 10
- 238000000605 extraction Methods 0.000 description 8
- 230000007257 malfunction Effects 0.000 description 8
- 230000002159 abnormal effect Effects 0.000 description 5
- 238000013519 translation Methods 0.000 description 5
- 238000012790 confirmation Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000002411 adverse Effects 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 2
- 230000010365 information processing Effects 0.000 description 2
- 230000000630 rising effect Effects 0.000 description 2
- 238000012356 Product development Methods 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 230000001627 detrimental effect Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Landscapes
- Debugging And Monitoring (AREA)
Description
(1)予めデバッグ用プログラムを起動させておくと通常動作プログラムのみを動作させた場合と動作タイミングが異なってしまい、デバッグ用プログラムの存在によって通常動作で生じる可能性がある不具合が発生しない、またこの逆に通常動作プログラムのみの実行では発生しないはずの不具合が生じる。
(2)デバッグ用プログラムを実行させる実行ユニットを予め設定しておく必要があるが、設定された実行ユニットの動作に影響を及ぼす不具合が発生した場合、その状況をデバッグすることができなくなる。
前記複数の実行ユニット毎に設けられ、デバッグ用プログラムの起動を指示するデバッグ用プログラム起動指示を受信すると、当該デバッグ用プログラム起動指示により指定されている実行ユニットに対して受信した前記デバッグ用プログラム起動指示を振り分ける起動指示振り分け手段と、
前記複数の実行ユニット毎に設けられ、前記起動指示振り分け手段により振り分けられたデバッグ用プログラム起動指示に基づいて、指定された実行ユニット上にデバッグ用プログラムを起動する複数のデバッグ用プログラム起動手段とを備え、
前記各実行ユニット上において、割り込みが発生した場合に該割り込みを処理するために最初に起動されるプログラムである割り込みハンドラによって他の実行ユニットからの割り込みが発生した際に、通常動作プログラムにより実行されたプロセスであって暴走している前記プロセスを停止させるプロセス制御手段と、前記プロセス制御手段によるプロセス制御が行われた後、得られたレジスタ、キャッシュメモリ、フラッシュメモリを含む予め設定されたメモリ内の情報を、前記割り込みを発生させた前記他の実行ユニットに対して送信する応答生成手段とが実現され、
前記各実行ユニットのいずれかにおいて起動されるデバッグ用プログラムによって、デバッグ対象の実行ユニットに対して割り込みを発生させる実行ユニット間割り込み生成手段と、デバッグ対象の前記実行ユニットにおける応答生成手段からの応答を受信する応答受信手段とが実現されている。
先ず、本発明の第1の実施形態のデバッグシステムを、図面を参照して説明する。本実施形態のデバッグシステムは、図1に示すように、2個の実行ユニットA、Bと、通信ポート1と、RAM(Random Access Memory)等により構成され書き換え可能な記憶手段2と、HDD(Hard Disk Drive)装置等により構成され各種プログラムが格納されたプログラム格納手段3とを備えている。そして、記憶手段2の記憶領域は、実行ユニットA用プログラム領域6と、実行ユニットB用プログラム領域7とから構成されている。
次に、本発明の第2の実施形態のデバッグシステムについて図面を参照して詳細に説明する。
次に、本発明の第3の実施形態のデバッグシステムについて図面を参照して詳細に説明する。
次に、本発明の第4の実施形態のデバッグシステムについて図面を参照して詳細に説明する。
次に、本発明の第5の実施形態について図10を参照して詳細に説明する。
次に、本発明の第6の実施形態のデバッグシステムについて図13を参照して詳細に説明する。
次に、本発明の第7の実施形態のデバッグシステムについて図17を参照して詳細に説明する。
次に、本発明の第8の実施形態のデバッグシステムについて図19を参照して詳細に説明する。
2 記憶手段
3 プログラム格納手段
4 実行ユニットA
5 実行ユニットB
6 実行ユニットA用プログラム領域
7 実行ユニットB用プログラム領域
8 実行ユニットC用プログラム領域
61、71、81 デバッグ用プログラム起動指示振り分け手段
62、72、82 デバッグ用プログラム起動手段
63、73、83 デバッグ用プログラム
64、74、84 通常動作プログラム
65、75、85 中継手段
66、76 ストール発生実行ユニット回避手段
67、77 デバッグ用プログラム
68、78 不具合検出手段
69、79 割り込みハンドラ
611、711 通信ポートからの受信手段
612、712 実行ユニット間通信の送信手段
613、713 通信ポートの通信対象変更手段
614、714 デバッグ用プログラム起動手段への指示送信手段
615、715 実行ユニット間通信の受信手段
631、731 実行ユニット間割り込み生成手段
632、732 応答受信手段
671、771 物理・仮想アドレス変換手段
672、772 情報抽出手段
691、791 応答生成手段
692、792 情報取得・制御手段
793 プロセス制御手段
801 演算プロセッサ群
802 メモリ装置
803 診断プロセッサ
821 演算プロセッサの内部情報
831 ストール検出手段
832 採集手段
833 演算プロセッサの内部状態一時保持手段
834 書込み手段
835 書込み報告手段
836 初期化手段
901 CPU−A
902 CPU−B
903 CPU制御回路
904 割り込み制御回路
905 バスとレース機能
906 ストラップ取込み回路
907 デバッグ制御回路
908 ストラップ設定手段
A、B 実行ユニット
Claims (15)
- 複数の実行ユニットが連携して動作するシステムにおいて実行されるプログラムのデバッグを行うためのデバッグシステムであって、
前記複数の実行ユニット毎に設けられ、デバッグ用プログラムの起動を指示するデバッグ用プログラム起動指示を受信すると、当該デバッグ用プログラム起動指示により指定されている実行ユニットに対して受信した前記デバッグ用プログラム起動指示を振り分ける起動指示振り分け手段と、
前記複数の実行ユニット毎に設けられ、前記起動指示振り分け手段により振り分けられたデバッグ用プログラム起動指示に基づいて、指定された実行ユニット上にデバッグ用プログラムを起動する複数のデバッグ用プログラム起動手段とを備え、
前記各実行ユニット上において、割り込みが発生した場合に該割り込みを処理するために最初に起動されるプログラムである割り込みハンドラによって他の実行ユニットからの割り込みが発生した際に、通常動作プログラムにより実行されたプロセスであって暴走している前記プロセスを停止させるプロセス制御手段と、前記プロセス制御手段によるプロセス制御が行われた後、得られたレジスタ、キャッシュメモリ、フラッシュメモリを含む予め設定されたメモリ内の情報を、前記割り込みを発生させた前記他の実行ユニットに対して送信する応答生成手段とが実現され、
前記各実行ユニットのいずれかにおいて起動されるデバッグ用プログラムによって、デバッグ対象の実行ユニットに対して割り込みを発生させる実行ユニット間割り込み生成手段と、デバッグ対象の前記実行ユニットにおける応答生成手段からの応答を受信する応答受信手段とが実現されたデバッグシステム。 - 前記プロセス制御手段は、オペレーティングシステム内に備えられたプロセス制御変更手段に対して、外部からの指示に基づいてプロセス変更指示を行うことにより前記暴走している前記プロセスを停止させる、請求項1記載のデバッグシステム。
- 前記プロセス制御手段は、前記の割り込みが発生した場合に、オペレーティングシステム内に備えられたAPI(Application Program Interface)、システムコールを含む所定の処理手順により、制御対象プロセスに対してプロセス制御シグナルを発行することにより前記暴走している前記プロセスを停止させる、請求項1記載のデバッグシステム。
- 前記プロセス制御手段は、前記割り込みが発生した場合に、記憶領域上に退避されている制御対象プロセスへの戻りアドレスを別のアドレスに変更して、不正アドレス参照例外を発生させることにより前記暴走している前記プロセスを停止させる、請求項1記載のデバッグシステム。
- 前記プロセス制御手段は、前記割り込みが発生した場合に、記憶領域上に退避されている制御対象プロセスへの戻りアドレスに存在する命令を、別の命令に変更して、例外を発生させることにより前記暴走している前記プロセスを停止させる、請求項1記載のデバッグシステム。
- 複数の実行ユニットが連携して動作するシステムにおいて実行されるプログラムのデバッグを行うためのデバッグ方法であって、
前記複数の実行ユニット毎に設けられた起動指示振り分け手段により、デバッグ用プログラムの起動を指示するデバッグ用プログラム起動指示を受信すると、当該デバッグ用プログラム起動指示により指定されている実行ユニットに対して受信した前記デバッグ用プログラム起動指示を振り分けるステップと、
前記複数の実行ユニット毎に設けられたデバッグ用プログラム起動手段により、振り分けられた前記デバッグ用プログラム起動指示に基づいてデバッグ対象実行ユニット上にデバッグ用プログラムを起動するステップと、
前記各実行ユニット上において、割り込みが発生した場合に該割り込みを処理するために最初に起動されるプログラムである割り込みハンドラによって実現されたプロセス制御手段により、他の実行ユニットからの割り込みが発生した際に、通常動作プログラムにより実行されたプロセスであって暴走している前記プロセスを停止させるステップと、
前記プロセス制御手段によるプロセス制御が行われた後、得られたレジスタ、キャッシュメモリ、フラッシュメモリを含む予め設定されたメモリ内の情報を、前記割り込みハンドラによって実現された応答生成手段が、前記割り込みを発生させた前記他の実行ユニットに対して送信するステップと、
デバッグ対象の前記実行ユニットからの応答を、デバッグ用プログラムによって実現された応答受信手段が受信するステップと、を備えたデバッグ方法。 - 前記プロセス制御を行うステップでは、オペレーティングシステム内に備えられたプロセス制御変更手段に対して、外部からの指示に基づいてプロセス変更指示を行うことにより前記暴走している前記プロセスを停止させる請求項6記載のデバッグ方法。
- 前記プロセス制御を行うステップでは、前記割り込みが発生した場合に、オペレーティングシステム内に備えられたAPI(Application Program Interface)、システムコールを含む所定の処理手順により、制御対象プロセスに対してプロセス制御シグナルを発行することにより前記暴走している前記プロセスを停止させる、請求項6記載のデバッグ方法。
- 前記プロセス制御を行うステップでは、前記割り込みが発生した場合に、記憶領域上に退避されている制御対象プロセスへの戻りアドレスを別のアドレスに変更して、不正アドレス参照例外を発生させることにより前記暴走している前記プロセスを停止させる、請求項6記載のデバッグ方法。
- 前記プロセス制御を行うステップでは、前記割り込みが発生した場合に、記憶領域上に退避されている制御対象プロセスへの戻りアドレスに存在する命令を、別の命令に変更して、例外を発生させることにより前記暴走している前記プロセスを停止させる、請求項6記載のデバッグ方法。
- 複数の実行ユニットが連携して動作するデバッグシステムにおいて実行されるプログラムのデバッグを行うためのデバッグ方法を前記実行ユニットに実行させるためのプログラムであって、
前記複数の実行ユニット毎に設けられた起動指示振り分け手段により、デバッグ用プログラムの起動を指示するデバッグ用プログラム起動指示を受信すると、当該デバッグ用プログラム起動指示により指定されている実行ユニットに対して受信した前記デバッグ用プログラム起動指示を振り分ける処理と、
前記複数の実行ユニット毎に設けられたデバッグ用プログラム起動手段により、振り分けられた前記デバッグ用プログラム起動指示に基づいてデバッグ対象実行ユニット上にデバッグ用プログラムを起動する処理と、
前記各実行ユニットのいずれかにおいて起動されるデバッグ用プログラムによって実現された実行ユニット間割り込み生成手段により、デバッグ対象の実行ユニットに対して割り込みを発生させる処理と、
前記各実行ユニット上において、割り込みが発生した場合に該割り込みを処理するために最初に起動されるプログラムである割り込みハンドラによって実現されたプロセス制御手段により、他の実行ユニットからの割り込みが発生した際に、通常動作プログラムにより実行されたプロセスであって暴走している前記プロセスを停止させる処理と、
前記割り込みハンドらによって実現された応答生成手段により、前記プロセス制御手段によるプロセス制御が行われた後、得られたレジスタ、キャッシュメモリ、フラッシュメモリを含む予め設定されたメモリ内の情報を、割り込みを発生させた実行ユニットに対して送信する処理、前記応答生成手段により、デバッグ対象の前記実行ユニットからの応答を、デバッグ用プログラムが起動された実行ユニットが受信する処理と、
を前記実行ユニットに実行させるためのプログラム。 - 前記プロセス制御を行う処理では、オペレーティングシステム内に備えられたプロセス制御変更手段に対して、外部からの指示に基づいてプロセス変更指示を行うことにより前記暴走している前記プロセスを停止させる、請求項11記載のプログラム。
- 前記プロセス制御を行う処理では、前記割り込みが発生した場合に、オペレーティングシステム内に備えられたAPI(Application Program Interface)、システムコールを含む所定の処理手順により、制御対象プロセスに対してプロセス制御シグナルを発行することにより前記暴走している前記プロセスを停止させる、請求項11記載のプログラム。
- 前記プロセス制御を行う処理では、前記割り込みが発生した場合に、記憶領域上に退避されている制御対象プロセスへの戻りアドレスを別のアドレスに変更して、不正アドレス参照例外を発生させることにより前記暴走している前記プロセスを停止させる、請求項11記載のプログラム。
- 前記プロセス制御を行う処理では、前記割り込みが発生した場合に、記憶領域上に退避されている制御対象プロセスへの戻りアドレスに存在する命令を、別の命令に変更して、例外を発生させることにより前記暴走している前記プロセスを停止させる、請求項11記載のプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005182039A JP4787551B2 (ja) | 2005-06-22 | 2005-06-22 | デバッグシステム、デバッグ方法およびプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005182039A JP4787551B2 (ja) | 2005-06-22 | 2005-06-22 | デバッグシステム、デバッグ方法およびプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007004365A JP2007004365A (ja) | 2007-01-11 |
JP4787551B2 true JP4787551B2 (ja) | 2011-10-05 |
Family
ID=37689949
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005182039A Expired - Fee Related JP4787551B2 (ja) | 2005-06-22 | 2005-06-22 | デバッグシステム、デバッグ方法およびプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4787551B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8239832B2 (en) * | 2007-05-25 | 2012-08-07 | Microsoft Corporation | In-process debugging using external debugging infrastructure |
WO2018123065A1 (ja) | 2016-12-29 | 2018-07-05 | 三菱電機株式会社 | プログラム解析システム、プログラム解析装置、プログラム解析方法および解析プログラム |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2522158B2 (ja) * | 1993-05-25 | 1996-08-07 | 日本電気株式会社 | マルチプロセッサシステムのプログラムデバッグ方法 |
JP2004164113A (ja) * | 2002-11-11 | 2004-06-10 | Nec Micro Systems Ltd | マルチcpuのリセット回路およびリセット方法 |
-
2005
- 2005-06-22 JP JP2005182039A patent/JP4787551B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2007004365A (ja) | 2007-01-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5579354B2 (ja) | 関連アプリケーションに対するトラック・データ・クロスリファレンスを保存する方法及び装置 | |
JP5163120B2 (ja) | デバッグシステム、デバッグ方法、およびプログラム | |
US9632860B2 (en) | Multicore processor fault detection for safety critical software applications | |
US8583960B2 (en) | Processor device and program | |
JP5277961B2 (ja) | 情報処理装置及びその故障隠蔽方法 | |
JP2011232986A (ja) | 情報処理装置及びメモリダンプ採取方法 | |
JP2007334403A (ja) | 計算機システム障害対応方式及び計算機システム障害対応方法 | |
JP5716830B2 (ja) | 情報処理装置及び方法、プログラム | |
JP4787551B2 (ja) | デバッグシステム、デバッグ方法およびプログラム | |
JP2007299213A (ja) | Raid制御装置および障害監視方法 | |
US20140040670A1 (en) | Information processing device and processing method for information processing device | |
JP4867896B2 (ja) | 情報処理システム | |
JP2006252429A (ja) | コンピュータシステム、コンピュータシステムの診断方法およびコンピュータシステムの制御プログラム | |
US20040268105A1 (en) | Resetting multiple cells within a partition of a multiple partition computer system | |
JP4633553B2 (ja) | デバッグシステム、デバッグ方法およびプログラム | |
CN101311909A (zh) | 诊断系统异样的方法 | |
JP4066950B2 (ja) | コンピュータシステムおよびその保守方法 | |
JP2008146148A (ja) | 計算機システム | |
JP2009276985A (ja) | 半導体集積回路装置 | |
JP2000276364A (ja) | 障害復旧方法、中央処理装置及び中央処理システム | |
JP4872934B2 (ja) | コンピュータシステム、クライアントコンピュータ、os終了方法およびos終了プログラム | |
US9342359B2 (en) | Information processing system and information processing method | |
JPH02122335A (ja) | Ras回路の試験方法 | |
JP2005258889A (ja) | プログラムトレース方法およびトレース処理システム | |
JP2008123129A (ja) | マルチプロセッサシステム、障害処理方法、プログラム及び記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080414 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100212 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20101215 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110214 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20110309 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110602 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20110607 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20110706 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110715 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 4787551 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140722 Year of fee payment: 3 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |