JP3965142B2 - コンピュータ・プログラムをデバックするための方法、システムおよびソフトウェア・プロダクト - Google Patents
コンピュータ・プログラムをデバックするための方法、システムおよびソフトウェア・プロダクト Download PDFInfo
- Publication number
- JP3965142B2 JP3965142B2 JP2003298903A JP2003298903A JP3965142B2 JP 3965142 B2 JP3965142 B2 JP 3965142B2 JP 2003298903 A JP2003298903 A JP 2003298903A JP 2003298903 A JP2003298903 A JP 2003298903A JP 3965142 B2 JP3965142 B2 JP 3965142B2
- Authority
- JP
- Japan
- Prior art keywords
- time
- breakpoint
- program
- execution
- debugger
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Description
1.デバッガは、コンパイル時に生成されるデバッグ情報を使って、機械語命令をソース・コードに、またソース・コードを機械語にマップすることができる。
2.プロセスは、そうすることを選択した場合にはいつでも、別のプロセスの実行を一時停止することができる。この目的を達成するために、プロセスは、その別のプロセスに通知するためのメカニズムを使用する。例えば、プロセスは、別のプロセスに、オペレーティング・システムが提供する信号を使って通知することができる。
3.デバッガは、子プロセスを完全に制御することができる。これは、どの対話型デバッガにとっても基本的な要件である。
4.オペレーティング・システムは、インタフェースが呼び出すシステム・コールによって、またはプロセスが直接、ハードウェア・クロックと通信できるようにすることによって、タイミング情報をプロセスに提供する。
5.デバッガは、子プロセスのアドレス空間またはレジスタにアクセスし、変更することによって、ハードウェアまたはソフトウェア中にブレークポイントを挿入することができ、また、ハードウェアまたはソフトウェア中のブレークポイントを使用不能にすることができる。これは、直接、子のメモリ(またはレジスタ)を変更することによって、または、オペレーティング・システムにそうすることを要求することによって行うことができる。
前に述べたように、ブレークポイントを使用して対話型デバッガでプログラム実行を一時停止し、それによって、プログラマが、プログラムの状態および実行の流れを問い合わせることができるようにする。これは、ハードウェア中の特別なレジスタを設定することによって、またはソフトウェア中のメモリをパッチすることによって行われる。時間ベース・ブレークポイントの挿入は、タイマを開始すべき時を検出し、経過した時間を追跡し、次いで、適宜に子プログラムの実行を中断することを含む。
プログラマがユーザ・インタフェースを介してデバッガにコマンドを与えると、デバッガでプログラムが「実行」される。このコマンドは、デバッガによって提供される、コマンド上にタイプされた“run”や“go”であってよく、あるいは、ショートカット・キーやマウスのクリック動作といった形態であってもよい。プログラムが実行できる状態になると、デバッガは、上述のメカニズムによって、メモリ中で実行可能メモリにブレークポイントを設定する。
タイマは、トリガに最初に到達してから経過した時間を追跡する、時間ベース・ブレークポイントにおけるエンティティである。タイマは、直接、またはクロックとインタフェースをとるオペレーティング・システムを介して、外部クロックを使用して実施される。
(i)経過した時間の「ウォール・クロック」時間追跡。この時間計算は、外部のエンティティが正確なストップウォッチを使って経過した時間を計算しているかのように行われる。
(ii)プログラムが実行されている間に経過した時間に基づいて計算がなされる。これは、プロセスがタイム・スライスの自分の割当て分を得ている間のみ、時間計算が行われることを意味する。これは、(デバッグされている)プロセスにCPU時間が割り振られている場合にのみ実行する、外部の正確なストップウォッチと似ている。その他のプロセスがCPU時間を得ている場合、ストップウォッチは一時停止状態にある。
(iii)プログラムが実行している間に経過した時間、およびカーネルがプロセスのために要求を実行するのにかかる時間。カーネルはプロセスの要求を実行するために多くの低レベル・ジョブを行う。これは、低レベルの破損(メモリ、ハードディスク上のファイルなどの破損)を防ぐために、プロセスのために行われる。この技術は、技術(ii)と同様である。ただし、プロセスのためにカーネルが割り振られる時間が含まれる。
(iv)システムの「使用可能時間」に基づいて計算される時間。これは、システムがブートしてから経過した時間を表す。
図9は、本明細書に記載の技術を実施するプロセスにおいて、ステップを実施するために使用することができるコンピュータ・システム900を略図で表したものである。コンピュータ・システム900は、説明した技術を実施する際の支援となるようにプログラムされた、コンピュータ・ソフトウェアを実行するために提供されている。このコンピュータ・ソフトウェアは、コンピュータ・システム900上にインストールされた適切なオペレーティング・システムの下で実行する。
プログラムによっては、比較的長時間実行された後、性能上の問題を呈するものがある。プログラマは、指定した時間に到達したときにプログラム実行が停止するように、特定の関数にブレークポイントを置きたいと考えることがある。このような状況においては、時間ベース・ブレークポイントが望ましい。
時間ベース・ブレークポイントを提供する記載の技術を、ユーザ指定の時間が経過したときにブレークポイントが満了するように拡張する。これに伴う時間の計算は、上記と同様である。このような機能は、プログラムが実行を再開した時間から開始し、所定の時間が経過した後は、ブレークポイントに到達してもそれが必要ではないとユーザが判断できる場合には望ましい。この場合、タイマは、実行が再開されるときに開始され、ブレークポイントに最初に遭遇したときには開始されない。タイマは、プログラムが実行を再開してから経過した時間を追跡し、指定した時間内にブレークポイントにヒットしなかった場合には、そのブレークポイントは使用不能になる。これによって、プログラマは、それを使ってデバッグ・セッション中にブレークポイントの必要にアクセスするパラメータとして、時間を使用することにより、ブレークポイントを使用不能にすることができる。このようなブレークポイントの使用は、デバッグしているプログラムのロジックに依存する。
本明細書では、時間ベース・ブレークポイントを提供するデバッガという状況において、方法、コンピュータ・システム、およびコンピュータ・ソフトウェアを説明している。
デバッグされているコードの実行に関連付けられたブレークポイントに遭遇するステップと、
時間の測定を監視するためにタイマを起動するステップと、
前記タイマを監視して、監視されている時間が所定の長さの時間を超えたときを判断するステップと、
前記監視されている時間が前記所定の長さの時間を超えた場合に、所定の動作を実行するステップとを含む方法。
(2)前記監視されているタイマは、前記ブレークポイントに遭遇してから経過した時間を測定する、上記(1)に記載の方法。
(3)前記監視されているタイマは、前記ブレークポイントに遭遇してから、中央処理装置が関連するプロセスを実行している間に経過した時間を測定する、上記(1)に記載の方法。
(4)前記監視されているタイマは、前記ブレークポイントに遭遇してから、中央処理装置が関連するプロセス、およびオペレーティング・システムのカーネルを実行している間に経過した時間を測定する、上記(1)に記載の方法。
(5)前記所定の動作は、前記デバッグされているコードに関わる、関連するプロセスの実行を一時停止するステップを含む、上記(1)に記載の方法。
(6)前記所定の動作は、前記デバッグされているコードにさらなるブレークポイントを挿入するステップを含む、上記(1)に記載の方法。
(7)前記ブレークポイントに遭遇すると、前記デバッグされているコードに関わる、関連するプロセスの実行を一時停止するステップをさらに含む、上記(1)に記載の方法。
(8)前記所定の動作は、前記デバッグされているコードに関わる、前記一時停止されたプロセスの実行を再開するステップを含む、上記(7)に記載の方法。
(9)前記関連するプロセスの実行を一時停止するステップの後、前記一時停止された関連するプロセスの実行を再開するステップをさらに含む、上記(7)に記載の方法。
(10)前記監視されているタイマは、前記関連するプロセスの実行が再開されてから経過した時間を測定する、上記(9)に記載の方法。
(11)前記所定の動作は、
前記関連するプロセスの実行を再度一時停止するステップと、
前記デバッグされているコード中の前記遭遇したブレークポイントを非活動化するステップと、
前記遭遇したブレークポイントを非活動化した後、前記再度一時停止した関連するプロセスの実行を再開するステップとを含む、上記(10)に記載の方法。
(12)前記所定の動作は、
前記関連するプロセスの実行を再度一時停止するステップと、
前記デバッグされているコード中の前記遭遇したブレークポイントを除去するステップと、
前記遭遇したブレークポイントを非活動化した後、前記再度一時停止した関連するプロセスの実行を再開するステップとを含む、上記(10)に記載の方法。
(13)前記所定の動作は、前記監視されている時間内にユーザ入力を受け取らなかった場合にのみ実行される、上記(8)に記載の方法。
(14)コンピュータ・ソフトウェア・プログラムのデバッグの支援に適した時間ベース・ブレークポイントを使って、コンピュータ・プログラムをデバッグするための、媒体上に記録されたコンピュータ・ソフトウェア・プロダクトであって、
デバッグされているコードの実行に関連付けられたブレークポイントに遭遇するためのコード手段と、
時間の測定を監視するためにタイマを起動するためのコード手段と、
前記タイマを監視して、前記監視されている時間が所定の長さの時間を超えたときを判断するためのコード手段と、
前記監視されている時間が前記所定の長さの時間を超えた場合に、所定の動作を実行するためのコード手段とを含むコンピュータ・ソフトウェア・プロダクト。
(15)コンピュータ・ソフトウェア・プログラムのデバッグの支援に適した時間ベース・ブレークポイントを使って、コンピュータ・プログラムをデバッグするためのコンピュータ・システムであって、
デバッグされているコードの実行に関連付けられたブレークポイントに遭遇するための手段と、
時間の測定を監視するためにタイマを起動するための手段と、
前記タイマを監視して、前記監視されている時間が所定の長さの時間を超えたときを判断するための手段と、
前記監視されている時間が前記所定の長さの時間を超えた場合に、所定の動作を実行するための手段とを含むコンピュータ・システム。
910 入力装置、キーボード
915 入力装置、マウス
920 コンピュータ
930 バス
940 プロセッサ
945 ビデオ・インタフェース
950 メモリ・モジュール
955 記憶装置
960 入出力(I/O)インタフェース
965 入出力(I/O)インタフェース
980 ネットワーク
985 通信チャネル
990 ビデオ・ディスプレイ
Claims (11)
- コンピュータが、コンピュータ・ソフトウェア・プログラムのデバッグの支援に適した時間ベース・ブレークポイントを使ってデバッガを実行してコンピュータ・プログラムをデバッグする方法であって、
デバックするプログラムのコードの実行に関連付けられた第1のブレークポイントに遭遇したときに、カーネルのソフトウェアタイマを起動するステップと、
前記タイマを監視して、中央処理装置が前記コードに関連するプロセスを実行している間に経過した時間が前記第1のブレークポイントに対応づけて予め設定された満了時間を超えたときを判断するステップと、
前記設定された満了時間を超えた場合に、ハンドラ・プロシージャを呼び出して前記コードに関連するプロセスに対し、所定の動作を実行するよう通知するステップとを含み、
前記第1のブレークポイントに遭遇した後に第2のブレークポイントに遭遇した場合には、前記第2のブレークポイントに対応づけられた満了時間と前記第1のブレークポイントに対応づけられた満了時間とを比較して、前記設定された満了時間をより早い満了時間に変更するステップをさらに
含む方法。 - 前記所定の動作は、前記デバックするプログラムのコードに関連するプロセスの実行を一時停止するステップを含む、請求項1に記載の方法。
- 前記所定の動作は、前記デバックするプログラムのコードにさらなるブレークポイントを挿入するステップを含む、請求項1に記載の方法。
- 前記ブレークポイントに遭遇すると、前記デバックするプログラムのコードに関連するプロセスの実行を一時停止するステップをさらに含む、請求項1に記載の方法。
- 前記所定の動作は、前記デバックするプログラムのコードに関連する、前記一時停止されたプロセスの実行を再開するステップを含む、請求項4に記載の方法。
- 前記関連するプロセスの実行を一時停止するステップの後、前記一時停止された関連するプロセスの実行を再開するステップをさらに含む、請求項4に記載の方法。
- 前記監視されているタイマは、前記関連するプロセスの実行が再開されてから中央処理装置がデバックするプログラムのコードに関連するプロセスを実行している間に経過した時間を測定する、請求項6に記載の方法。
- 前記所定の動作は、
前記関連するプロセスの実行を再度一時停止するステップと、
前記デバックするプログラムのコード中の前記遭遇したブレークポイントを非活動化するステップと、
前記遭遇したブレークポイントを非活動化した後、前記再度一時停止した関連するプロセスの実行を再開するステップとを含む、請求項7に記載の方法。 - 前記所定の動作は、
前記関連するプロセスの実行を再度一時停止するステップと、
前記デバックするプログラムのコード中の前記遭遇したブレークポイントを除去するステップと、
前記遭遇したブレークポイントを非活動化した後、前記再度一時停止した関連するプロセスの実行を再開するステップとを含む、請求項7に記載の方法。 - 前記所定の動作は、前記監視されている時間内にユーザ入力を受け取らなかった場合にのみ実行される、請求項5に記載の方法。
- コンピュータに、請求項1〜10のいずれか1項に記載の方法を実行させるためのコンピュータ・プログラム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/229,186 US20040040013A1 (en) | 2002-08-26 | 2002-08-26 | Time-based breakpoints in debuggers |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004086910A JP2004086910A (ja) | 2004-03-18 |
JP3965142B2 true JP3965142B2 (ja) | 2007-08-29 |
Family
ID=31887642
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003298903A Expired - Fee Related JP3965142B2 (ja) | 2002-08-26 | 2003-08-22 | コンピュータ・プログラムをデバックするための方法、システムおよびソフトウェア・プロダクト |
Country Status (3)
Country | Link |
---|---|
US (2) | US20040040013A1 (ja) |
JP (1) | JP3965142B2 (ja) |
CN (1) | CN1277207C (ja) |
Families Citing this family (62)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7007268B2 (en) * | 2001-08-20 | 2006-02-28 | Sun Microsystems, Inc. | Method and apparatus for debugging in a massively parallel processing environment |
US6981248B2 (en) * | 2002-05-02 | 2005-12-27 | International Business Machines Corporation | Conditional breakpoint encountered indication |
US20040040013A1 (en) * | 2002-08-26 | 2004-02-26 | Mohit Kalra | Time-based breakpoints in debuggers |
US7028229B2 (en) * | 2002-09-30 | 2006-04-11 | Sun Microsystems, Inc. | Kernel event subscription and publication system and method |
US20040098639A1 (en) * | 2002-11-14 | 2004-05-20 | Liu Bao Gang | Debugging kernel-loadable modules and suspending and replacing functions in non-microkernel operating systems |
US7293267B1 (en) * | 2003-12-22 | 2007-11-06 | Sun Microsystems Inc | System and method for performing speculative initialization of application models for a cloned runtime system process |
US7222264B2 (en) * | 2004-03-19 | 2007-05-22 | Intel Corporation | Debug system and method having simultaneous breakpoint setting |
US7383470B2 (en) * | 2004-09-30 | 2008-06-03 | Microsoft Corporation | Method, system, and apparatus for identifying unresponsive portions of a computer program |
FR2880963B3 (fr) * | 2005-01-19 | 2007-04-20 | Atmel Corp | Points d'arrets logiciels destines a etre utilises avec des dispositifs a memoire |
US20090265582A1 (en) * | 2005-01-25 | 2009-10-22 | Nxp B.V. | Data processing system and method of debugging |
CN100365590C (zh) * | 2005-01-31 | 2008-01-30 | 浙江大学 | 在嵌入式***模拟器上调试应用程序的方法 |
US7840845B2 (en) * | 2005-02-18 | 2010-11-23 | Intel Corporation | Method and system for setting a breakpoint |
US20060200807A1 (en) * | 2005-03-03 | 2006-09-07 | International Business Machines Corporation | Breakpoint timers |
US7797686B2 (en) * | 2005-05-13 | 2010-09-14 | Texas Instruments Incorporated | Behavior of trace in non-emulatable code |
US7506206B2 (en) * | 2005-06-07 | 2009-03-17 | Atmel Corporation | Mechanism for providing program breakpoints in a microcontroller with flash program memory |
US8146056B1 (en) | 2005-08-04 | 2012-03-27 | American Megatrends, Inc. | Debugging a computer program by interrupting program execution in response to access of unused I/O port |
US8108840B2 (en) | 2006-01-12 | 2012-01-31 | International Business Machines Corporation | Method for enhancing debugger performance of hardware assisted breakpoints |
US8010774B2 (en) * | 2006-03-13 | 2011-08-30 | Arm Limited | Breakpointing on register access events or I/O port access events |
US20070226702A1 (en) * | 2006-03-22 | 2007-09-27 | Rolf Segger | Method for operating a microcontroller in a test environment |
JP4048382B1 (ja) * | 2006-09-01 | 2008-02-20 | 富士ゼロックス株式会社 | 情報処理システムおよびプログラム |
JP4905165B2 (ja) * | 2007-02-07 | 2012-03-28 | 富士通株式会社 | 監視支援プログラム、監視方法および監視システム |
GB0709105D0 (en) * | 2007-05-11 | 2007-06-20 | Univ Leicester | Debugging tool |
US8312309B2 (en) * | 2008-03-05 | 2012-11-13 | Intel Corporation | Technique for promoting determinism among multiple clock domains |
US20090254888A1 (en) * | 2008-04-07 | 2009-10-08 | International Business Machines Corporation | Debug tours for software debugging |
US8321842B2 (en) * | 2008-06-27 | 2012-11-27 | Vmware, Inc. | Replay time only functionalities in a virtual machine |
JP5297158B2 (ja) * | 2008-11-18 | 2013-09-25 | 株式会社Jsol | 情報処理装置、および制御プログラム |
JP5621232B2 (ja) * | 2009-09-11 | 2014-11-12 | 日本電気株式会社 | アウトオブオーダー実行プロセッサ |
US20120278791A1 (en) * | 2010-01-08 | 2012-11-01 | Daniel Geist | Utilizing temporal assertions in a debugger |
US9176845B2 (en) * | 2010-03-19 | 2015-11-03 | Red Hat, Inc. | Use of compiler-introduced identifiers to improve debug information pertaining to user variables |
US9201762B1 (en) * | 2010-04-21 | 2015-12-01 | Marvell International Ltd. | Processor implemented systems and methods for reversible debugging using a replicate process system call |
US8719797B2 (en) * | 2010-05-18 | 2014-05-06 | Blackberry Limited | System and method for debugging dynamically generated code of an application |
US20110289482A1 (en) * | 2010-05-24 | 2011-11-24 | Avaya Inc. | Performance detection and debugging of applications |
US20110321017A1 (en) * | 2010-06-29 | 2011-12-29 | International Business Machines Corporation | Computer code debugging method and apparatus providing exception breakpoints |
US9104795B2 (en) * | 2011-06-28 | 2015-08-11 | International Business Machines Corporation | Integrating compiler warnings into a debug session |
JP5785474B2 (ja) * | 2011-10-27 | 2015-09-30 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | プログラムのデバッグ方法、デバッグ装置、およびデバッグ支援gui |
US8832505B2 (en) * | 2012-06-29 | 2014-09-09 | Intel Corporation | Methods and apparatus to provide failure detection |
US9110682B2 (en) * | 2012-10-19 | 2015-08-18 | Microsoft Technology Licensing Llc | State machine control of a debugger |
US9489287B2 (en) * | 2013-08-23 | 2016-11-08 | Atmel Corporation | Breaking code execution based on time consumption |
US9898388B2 (en) * | 2014-05-23 | 2018-02-20 | Mentor Graphics Corporation | Non-intrusive software verification |
US9864675B2 (en) * | 2014-11-17 | 2018-01-09 | Sap Se | Regression testing with external breakpoints |
US9740593B2 (en) * | 2015-01-08 | 2017-08-22 | International Business Machines Corporation | Comparative program execution through control of two or more debug sessions to automatically determine execution differences |
JP6458626B2 (ja) | 2015-05-07 | 2019-01-30 | 富士通株式会社 | デバッグ回路、半導体装置及びデバッグ方法 |
US9672135B2 (en) * | 2015-11-03 | 2017-06-06 | Red Hat, Inc. | System, method and apparatus for debugging of reactive applications |
US11010505B2 (en) * | 2015-12-01 | 2021-05-18 | International Business Machines Corporation | Simulation of virtual processors |
US10073759B2 (en) | 2016-09-29 | 2018-09-11 | International Business Machines Corporation | Identification and handling of nested breakpoints during debug session |
CN108614763B (zh) * | 2016-12-09 | 2022-01-04 | 武汉斗鱼网络科技有限公司 | 一种应用的调试方法及装置 |
US20180203787A1 (en) * | 2017-01-17 | 2018-07-19 | International Business Machines Corporation | Detection of software errors |
US10353801B2 (en) | 2017-02-28 | 2019-07-16 | International Business Machines Corporation | Abnormal timing breakpoints |
JP6908827B2 (ja) | 2017-03-28 | 2021-07-28 | 富士通株式会社 | 試験装置、試験方法、試験プログラム及び試験システム |
US10540261B2 (en) | 2017-04-07 | 2020-01-21 | International Business Machines Corporation | Problem diagnosis technique of memory corruption based on regular expression generated during application compiling |
RU2659742C1 (ru) * | 2017-08-17 | 2018-07-03 | Акционерное общество "Лаборатория Касперского" | Способ эмуляции исполнения файлов, содержащих инструкции, отличные от машинных |
CN107678938A (zh) * | 2017-08-24 | 2018-02-09 | 阿里巴巴集团控股有限公司 | 一种应用程序的调试方法及设备 |
CN107608331A (zh) * | 2017-08-24 | 2018-01-19 | 北京龙鼎源科技股份有限公司 | 非随机中断的诊断方法和装置 |
US10379997B2 (en) * | 2017-09-19 | 2019-08-13 | International Business Machines Corporation | Expiring hooks for computer application discovery |
JP6874706B2 (ja) * | 2018-02-07 | 2021-05-19 | オムロン株式会社 | アプリケーションプログラムを生成する方法、装置、プログラム |
JP7167450B2 (ja) * | 2018-03-02 | 2022-11-09 | 株式会社リコー | 情報処理装置、情報処理方法、プログラム |
CN108549602B (zh) * | 2018-03-30 | 2022-03-08 | 深圳市江波龙电子股份有限公司 | 一种软件调试方法 |
CA3129145A1 (en) | 2019-03-08 | 2020-09-17 | Steve QUARRE | Device, system, and method for selecting a target analyte |
CN110659106B (zh) * | 2019-09-12 | 2022-03-22 | 北京浪潮数据技术有限公司 | 一种容器状态检查方法及装置 |
CN110865630B (zh) * | 2019-11-14 | 2022-07-05 | 深圳供电局有限公司 | 智能变电站内置程序的验收方法和*** |
JP7490394B2 (ja) * | 2020-03-06 | 2024-05-27 | 株式会社日立製作所 | 情報共有支援方法、及び情報共有支援システム |
CN113515729B (zh) * | 2021-04-26 | 2024-03-08 | 福建省天奕网络科技有限公司 | 一种安卓端自动化绕过反调试的方法和*** |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS57150046A (en) | 1981-03-12 | 1982-09-16 | Nec Corp | Data processing system |
JPS60222947A (ja) | 1984-04-20 | 1985-11-07 | Fujitsu Ltd | デ−タ入力制御方式 |
JPH02266441A (ja) | 1989-04-07 | 1990-10-31 | Hitachi Ltd | プロセス終了監視方式 |
JPH0340143A (ja) | 1989-07-07 | 1991-02-20 | Nec Corp | パイプライン方式計算機におけるデバッグ方式 |
JPH0535526A (ja) | 1991-07-25 | 1993-02-12 | Nec Corp | ターゲツトプログラムデバツグ方式 |
JP2737645B2 (ja) | 1994-03-30 | 1998-04-08 | 日本電気株式会社 | プログラム・デバッグ装置 |
US5799178A (en) * | 1996-04-19 | 1998-08-25 | Vlsi Technology, Inc. | System and method for starting and maintaining a central processing unit (CPU) clock using clock division emulation (CDE) during break events |
JPH1049401A (ja) | 1996-08-08 | 1998-02-20 | Meidensha Corp | プログラムのデバッグ方法 |
JP3133730B2 (ja) | 1998-11-13 | 2001-02-13 | 日本電気アイシーマイコンシステム株式会社 | 割り込み方法及び回路 |
US20040040013A1 (en) * | 2002-08-26 | 2004-02-26 | Mohit Kalra | Time-based breakpoints in debuggers |
-
2002
- 2002-08-26 US US10/229,186 patent/US20040040013A1/en not_active Abandoned
-
2003
- 2003-08-22 JP JP2003298903A patent/JP3965142B2/ja not_active Expired - Fee Related
- 2003-08-25 CN CN 03154956 patent/CN1277207C/zh not_active Expired - Fee Related
-
2010
- 2010-10-14 US US12/904,361 patent/US8839206B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN1277207C (zh) | 2006-09-27 |
CN1487415A (zh) | 2004-04-07 |
JP2004086910A (ja) | 2004-03-18 |
US20040040013A1 (en) | 2004-02-26 |
US20110029958A1 (en) | 2011-02-03 |
US8839206B2 (en) | 2014-09-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3965142B2 (ja) | コンピュータ・プログラムをデバックするための方法、システムおよびソフトウェア・プロダクト | |
US8327336B2 (en) | Enhanced thread stepping | |
US6708326B1 (en) | Method, system and program product comprising breakpoint handling mechanism for debugging and/or monitoring a computer instruction sequence | |
US6216237B1 (en) | Distributed indirect software instrumentation | |
US8201152B2 (en) | Method and system for debugging a program in a multi-thread environment | |
US6173417B1 (en) | Initializing and restarting operating systems | |
US7185320B2 (en) | System and method for processing breakpoint events in a child process generated by a parent process | |
US7536605B2 (en) | Injection of software faults into an operational system | |
US7797580B2 (en) | Determining that a routine has stalled | |
US8572577B2 (en) | Monitoring changes to data within a critical section of a threaded program | |
JP4222370B2 (ja) | デバッグ支援装置及びデバッグ処理方法をコンピュータに実行させるためのプログラム | |
JP3571976B2 (ja) | デバッグ装置及び方法並びにプログラム記録媒体 | |
JP5905904B2 (ja) | デバッグ例外生成の制御 | |
US7809985B2 (en) | Offline hardware diagnostic environment | |
WO2012016438A1 (zh) | 一种调试器及其调试方法 | |
JP2007128132A (ja) | スレッドデバッグ装置、スレッドデバッグ方法及びプログラム | |
US20040098639A1 (en) | Debugging kernel-loadable modules and suspending and replacing functions in non-microkernel operating systems | |
US20080127118A1 (en) | Method and system for dynamic patching of software | |
JP2006039763A (ja) | ゲストosデバッグ支援方法及び仮想計算機マネージャ | |
Lee et al. | Process resurrection: A fast recovery mechanism for real-time embedded systems | |
TWI663544B (zh) | 容錯操作方法與使用此方法的電子裝置 | |
Stodden et al. | Hardware instruction counting for log-based rollback recovery on x86-family processors | |
Starr et al. | Model Execution Domain | |
JP2007041887A (ja) | デバッグ装置、そのメモリアクセス方法およびメモリアクセス方法を実現するプログラム | |
Stewart et al. | Policy-independent real-time operating system mechanisms for timing error detection, handling and monitoring |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060127 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060207 |
|
RD12 | Notification of acceptance of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7432 Effective date: 20060228 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20060228 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060428 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20061003 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20061227 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070130 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070426 |
|
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: 20070522 |
|
RD14 | Notification of resignation of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7434 Effective date: 20070522 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070525 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110601 Year of fee payment: 4 |
|
LAPS | Cancellation because of no payment of annual fees |