私はデバッグ時にwindbgがどの程度強力であるのかを理解していますが、問題をデバッグするのに適切な時期はいつですか?それはより多くの問題、あるいは単に経験、直感、そしてそれを使用することが仕事を最も良くすることができるということを知っていますか?windbgを使用してデバッグするタイミング
答えて
これはすべてのことのうちの少しであり、多くの個人的な見解です。多くのWinDbgユーザーはWinDbgのみを使用しているため、デバッグに最適なものです。
WinDbgには、SOSのような優れた拡張機能もあります。したがって、ある特定の拡張機能は、別のデバッガーが持たない特定の情報を提供します。
特定の状況で異なるデバッガを使用する理由の1つは、デバッガが間違っていると思われる場合です。もちろんこれはまれです。例えば、スタックウォーキングのようなものの場合、デバッガはさまざまなメソッドを使用します。したがって、スタックを確認することができます。
大部分の問題については、要約しておきます。それはあなたが使用するのが最善であるものです。特定の問題については、その特定の問題に最も適しているツールを知っているということです。
Windbgはユーザーモードのデバッグのための優れたツールですが、カーネルモードのデバッグを終えると、これは本当に唯一の重大な選択です。
カーネルモードのデバッグシナリオには、2つのマシン、デバッガとデバッグ対象が含まれることがよくあります。シリアル接続、FirewireまたはUSB経由でデバッガに接続されているデバッガマシンでWindbgを実行します。このシナリオでは、ターゲットマシンを「フリーズ」し、実行中のすべてのものを完全に制御できます。多くの場合、デバッグ対象(ターゲット)はVMWareなどで実行されている仮想マシンになります。この場合、接続では通常、仮想シリアルポートも使用されます。
は、ここで仮想マシンのカーネルデバッグを設定する方法についてはVMWareからの命令です:
http://www.vmware.com/support/ws5/doc/ws_devices_serial_advanced_example_debugging.html
ます。また、セットアップが容易との接続もはるかに高速になりVirtualKD使用することができます。
をhttp://virtualkd.sysprogs.org/
ローカルカーネルのデバッグにWindbgを使用することもできます。この場合、実行中のカーネルにWindbgを接続するマシンは1つだけです。同じマシンでWindbgを動かすこともできますが、メモリの内容を分析するなど、マシンを「フリーズ」することはできません。
良い点。仮想カーネルデバッグのもう一つの良い解決策は、sysinternalsのLiveKdです。トータルシステムのクラッシュのためのカーネルモードのデバッグは
http://technet.microsoft.com/en-us/sysinternals/bb897415.aspx
- 1. WinDbgを使用してWinCEデバイス上の.NETアプリケーションでAccessViolationをデバッグする
- 2. デバッグにWINDBGデバッグツールを使用するには?
- 3. WinDBGによる事後デバッグ
- 4. Task.Runを使用するタイミングasync-awaitを使用するタイミングと組み合わせて使用するタイミング
- 5. のWinDbg/SOS:!System.Threading.ThreadインスタンスのWinDbgとSOSを使用して
- 6. デバッグと印刷のエラーでログオフfmtを使用するタイミングは?
- 7. windbgでのInternet Explorerのデバッグ
- 8. タスクを使用するタイミングとスレッドを使用するタイミング
- 9. undef_methodを使用するタイミングとremove_methodを使用するタイミングは?
- 10. viewDidLoadを使用するタイミングとawakeFromNibを使用するタイミング
- 11. assert()を使用するタイミングとtry catchを使用するタイミング
- 12. "return result"を使用するタイミングと "self.result"を使用するタイミング
- 13. コマンドウィンドウを使用するタイミング
- 14. ServletRequestListenerを使用するタイミング
- 15. WinDbgを使用して.NETダンプを解析する
- 16. クラッシュダンプ - WinDbgを使用して.NETアプリケーションでクラッシュダンプを解決する
- 17. WinDbgを使用してカーネルダンプを作成する方法
- 18. JDKを使用してアプリケーション(javaw.exe)を起動するタイミングと、JREを使用するタイミング
- 19. SilverlightでWINDBGを使用する4.0.60831.0
- 20. BackboneJS:フェッチを使用するタイミングと同期を使用するタイミング
- 21. ワンホットエンコーディングを使用するタイミングとダミー変数を使用するタイミング
- 22. Codeigniter redirect()を使用するタイミングと、$ this-> load-> viewを使用するタイミング
- 23. Requirejsを使用するタイミングとバンドルされたjavascriptを使用するタイミング
- 24. バイト配列を使用するタイミングとストリームを使用するタイミング
- 25. ES6クラスを使用するタイミングとjavacriptの機能を使用するタイミング
- 26. 既知のモジュールを使用したWinDbg
- 27. Windbgを使用したダンプ配列
- 28. windbgを使用した.NETダンプ解析
- 29. Windbgでのローカルカーネルモードのデバッグの制限?
- 30. 既存ブランチを使用するタイミングと新しいブランチを作成するタイミング
ですか? – Jon