![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
WinDbg
agan4014
只为自己收集学习。
展开
-
WinDbg 简单说明
WinDbg 简单说明 一、设置Symbols File Path “srv*c:/MySymbols*http://msdl.microsoft.com/download/symbols;c:/MySymbols;”,将其输入“Symbols Path”中,并将“Reload”选上,点击OK, 将立即更新Symbols。 说明:“c:/MySymbols”是Symbols原创 2008-03-14 05:12:00 · 3582 阅读 · 1 评论 -
Windows用户态程序高效排错 -- 排错的工具:调试器Windbg
这一部分主要介绍用户态调试相关的知识和工具。包括:汇编、异常(exception)、内存布局、堆(heap)、栈(stack)、CRT(C Runtime)、handle/Criticalsection/thread context/windbg/ dump/live debug和Dr Watson等。书中不会对知识点作全面的介绍,而是针对知识点在调试中过程中应该如何使用进行说明。知识点本身在转载 2008-03-20 13:30:00 · 6428 阅读 · 0 评论 -
Windows用户态程序高效排错 -- 异常(Exception)和通知(Debug Event)
理解操作系统对程序的反馈:异常(Exception)和通知(Debug Event)本小结首先介绍异常的原理和相关资料,再举例说明异常跟崩溃和调试是如何紧密联系在一起的。最后说明如何利用工具来监视异常,获取准确的信息。2.3.1 异常(Exception)的方方面面和一篇字字珠玑的文章异常是CPU,操作系统和应用程序控制代码流程的一种机制。正常情况下,代码是顺序执行的,比如下面两行转载 2008-03-20 13:34:00 · 5688 阅读 · 2 评论 -
Windows用户态程序高效排错 -- Heap和Stack
平坦内存空间中的层次结构:Heap和Stack本小结主要介绍Heap相关的崩溃和内存泄漏,和如何使用pageheap来排错。首先介绍heap的原理,不同层面的内存分配,接下来通过例子代码举例演示heap问题的严重性和欺骗性。最后介绍如何使用pageheap工具高效地对heap问题排错。2.4.1 Heap是对平坦空间的高效管理和利用内存是容纳代码和资料的空间。无论是stack,hea转载 2008-03-20 16:18:00 · 3874 阅读 · 0 评论 -
Windows用户态程序高效排错 -- 汇编,CPU执行指令的最小单元
读懂机器的语言:汇编,CPU执行指令的最小单元2.2.1 需要用汇编来排错的常见情况汇编是CPU执行指令的最小单元。下面一些情况下,汇编级别的分析通常是必要的:1. 阅读代码看不出问题,但是跑出来的结果就是不对,怀疑编译器甚至CPU有毛病。2. 没有源代码可以阅读。比如,调用某一个API的时候出问题,没有Windows的源代码,那就看汇编。3.转载 2008-03-20 16:24:00 · 1204 阅读 · 0 评论 -
Getting the right Exception Context from a Memory dump Fixed -- cnblogs
抓了一个minidump出现了:WARNING: Unable to verify timestamp for mscorwks.dll的错误。上次我在查看一个mini Dump的时候,ntdll.dll好像也出现过这个问题,当时把符号文件重新加载了一次就OK了。这次看到他出现了同样的问题,忍不住要看看到底是什么原因导致这个问题,很幸运在Junfeng Zhangs Windows Progra转载 2008-03-22 03:20:00 · 1076 阅读 · 0 评论 -
CLR探索系列:Windbg+SOS剖析揭示域世界 -- cnblog
在CLR的世界中,有一系列的令人Amazing的技术和架构。其中,CLR对应用程序在内存中内存分配,执行模型,程序之间的交互等一系列的技术,值得每一个致力于DotNet平台的技术人员深究。编程人员在开发的过程中,如果把程序集的加载(Assemblies Load),反射(Reflection),寄宿(Hosting),应用程序域(AppDomain),这四种技术结合起来使用的话,不仅能更好的使用C转载 2008-03-22 03:23:00 · 942 阅读 · 0 评论 -
CLR探索系列:Windbg+SOS动态调试分析托管代码 -- cnblog
在使用VS进行托管应用程序的调试的时候,有的时候总感觉有些力不从心。譬如查看一个托管堆或者计算堆栈的时候,VS就不能胜任了。这个时候,Windbg+SOS扩展调试模块就为我们提供了一个很好的解决方案。我们看一段代码:class Program { static void Main(string[] args) { Program b =转载 2008-03-22 03:27:00 · 770 阅读 · 0 评论 -
windbg中无法加载mscorwks.dll -- cnblog
//<![CDATA[Sys.WebForms.PageRequestManager._initialize(AjaxHolder$scriptmanager1, document.getElementById(Form1));Sys.WebForms.PageRequestManager.getInstance()._updateControls([tAjaxHolde转载 2008-03-22 04:02:00 · 3043 阅读 · 0 评论