上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 40 下一页
摘要: 一:背景 1.讲故事 前几天 B 站上有位朋友让我从高级调试的角度来解读下 .NET7 新出来的 AOT,毕竟这东西是新的,所以这一篇我就简单摸索一下。 二:AOT 的几个问题 1. 如何在 .NET7 中开启 AOT 功能 在 .NET7 中开启 AOT 非常方便,先来段测试代码。 interna 阅读全文
posted @ 2022-11-16 10:42 一线码农 阅读(3966) 评论(10) 推荐(23) 编辑
摘要: 一:背景 1.讲故事 今天给大家带来一个入门级的 CPU 爆高案例,前段时间有位朋友找到我,说他的程序间歇性的 CPU 爆高,不知道是啥情况,让我帮忙看下,既然找到我,那就用 WinDbg 看一下。 二:WinDbg 分析 1. CPU 真的爆高吗 其实我一直都在强调,要相信数据,口说无凭,一定要亲 阅读全文
posted @ 2022-11-15 15:59 一线码农 阅读(3840) 评论(17) 推荐(19) 编辑
摘要: 一:背景 1.讲故事 有朋友咨询个问题,他每次在调试 WinDbg 的时候,进程初始化断点之前都会有一些 dll 加载到进程中,比如下面这样: Microsoft (R) Windows Debugger Version 10.0.25200.1003 X86 Copyright (c) Micro 阅读全文
posted @ 2022-11-09 14:27 一线码农 阅读(1007) 评论(0) 推荐(5) 编辑
摘要: 一:背景 1.讲故事 这篇文章起源于昨天的一位朋友发给我的dump文件,说它的程序出现了卡死,看了下程序的主线程栈,居然又碰到了 OnUserPreferenceChanged 导致的挂死问题,真的是经典中的经典,线程栈如下: 0:000:x86> !clrstack OS Thread Id: 0 阅读全文
posted @ 2022-11-08 08:33 一线码农 阅读(5669) 评论(9) 推荐(27) 编辑
摘要: 一:背景 1.讲故事 前段时间有位朋友在微信上找到我,说他对一个商业的 C# 程序用 WinDbg 附加不上去,每次附加之后那个 C# 程序就自动退出了,问一下到底是怎么回事?是不是哪里搞错了,有经验的朋友应该知道,其实这是 商业程序 的反调试机制捣鬼的,为了保护程序隐私,一般都不希望他人对自己做逆 阅读全文
posted @ 2022-11-02 08:29 一线码农 阅读(4152) 评论(14) 推荐(23) 编辑
摘要: 一:背景 1.讲故事 前段时间有位朋友在微信上找到我,说他的程序偶发性崩溃,让我帮忙看下怎么回事,上面给的压力比较大,对于这种偶发性崩溃,比较好的办法就是利用 AEDebug 在程序崩溃的时候自动抽一管血出来,看看崩溃点是什么,其实我的系列文章中,关于崩溃类的dump比较少,刚好补一篇上来,话不多说 阅读全文
posted @ 2022-10-25 14:39 一线码农 阅读(2664) 评论(15) 推荐(17) 编辑
摘要: 一:背景 1.讲故事 前段时间有位朋友加微信,说他的程序直接 CPU=100%,每次只能手工介入重启,让我帮忙看下到底怎么回事,哈哈,这种CPU打满的事故,程序员压力会非常大, 我让朋友在 CPU 高的时候抓 2 个 dump 下来,然后发给我分析。 二:WinDbg 分析 1. CPU 真的被打满 阅读全文
posted @ 2022-10-24 09:05 一线码农 阅读(1463) 评论(4) 推荐(10) 编辑
摘要: 一:背景 1.讲故事 最近遇到了好几起和 COM 相关的Dump,由于对 COM 整体运作不是很了解,所以分析此类dump还是比较头疼的,比如下面这个经典的 COM 调用栈。 0:044> ~~[138c]s win32u!NtUserMessageCall+0x14: 00007ffc`5c891 阅读全文
posted @ 2022-10-17 14:58 一线码农 阅读(5407) 评论(11) 推荐(27) 编辑
摘要: 一:背景 1.讲故事 前段时间有位朋友微信找到我,说他生产机器上的 Console 服务看起来像是卡死了,也不生成日志,对方也收不到我的httpclient请求,不知道程序出现什么情况了,特来寻求帮助。 哈哈,一般来说卡死的情况在窗体程序(WinForm,WPF) 上特别多,在 Console,We 阅读全文
posted @ 2022-10-14 08:27 一线码农 阅读(3703) 评论(13) 推荐(13) 编辑
摘要: 一:背景 1.讲故事 前段时间有位朋友微信找到我,说他的程序出现了 CPU 爆高,帮忙看下程序到底出了什么情况?图就不上了,我们直接进入主题。 二:WinDbg 分析 1. CPU 真的爆高吗? 要确认是否真的爆高,可以使用 !tp 观察。 0:000> !tp CPU utilization: 9 阅读全文
posted @ 2022-10-12 09:06 一线码农 阅读(4728) 评论(7) 推荐(27) 编辑
摘要: 一:背景 1.讲故事 前些天有位朋友微信找到我,说他的程序出现了CPU阶段性爆高,过了一会就下去了,咨询下这个爆高阶段程序内部到底发生了什么? 画个图大概是下面这样,你懂的。 按经验来说,这种情况一般是程序在做 CPU 密集型运算,所以让朋友在 CPU 高的时候间隔 5~10s 抓两个 dump 下 阅读全文
posted @ 2022-10-11 08:31 一线码农 阅读(2566) 评论(6) 推荐(18) 编辑
摘要: 一:背景 1.讲故事 最近分享了好几篇关于 非托管内存泄漏 的文章,有时候就是这么神奇,来求助的都是这类型的dump,一饮一啄,莫非前定。让我被迫加深对 NT堆, 页堆 的理解,这一篇就给大家再带来一篇内存泄漏。 前段时间有位朋友找到我,说他的程序出现了非托管泄漏,某一块的操作会导致非托管内存上涨的 阅读全文
posted @ 2022-10-09 10:45 一线码农 阅读(1405) 评论(1) 推荐(11) 编辑
摘要: 一:背景 1.讲故事 最近遇到一位朋友的程序崩溃,发现崩溃点在富编辑器 msftedit 上,这个不是重点,重点在于发现他已经开启了 页堆 ,看样子是做了最后的挣扎。 0:000> !analyze -v EXCEPTION_RECORD: (.exr -1) ExceptionAddress: 8 阅读全文
posted @ 2022-10-07 08:29 一线码农 阅读(2746) 评论(0) 推荐(10) 编辑
摘要: 一:背景 1.讲故事 在分析的众多dump中,经常会遇到各种奇葩的问题,仅通过dump这种快照形式还是有很多问题搞不定,而通过 perfview 这种粒度又太粗,很难找到问题之所在,真的很头疼,比如本篇的 短命线程 问题,参考图如下: 我们在 t2 时刻抓取的dump对查看 短命线程 毫无帮助,我根 阅读全文
posted @ 2022-10-06 08:09 一线码农 阅读(3031) 评论(4) 推荐(16) 编辑
摘要: 一:背景 1. 背景 前段时间有位朋友咨询说他的程序出现了非托管内存泄漏,说里面有很多的 HEAP_BLOCK 都被标记成了 Internal 状态,而且 size 都很大, 让我帮忙看下怎么回事? 比如下面这样。 1cbea000: 42000 . 42000 [101] - busy (41fe 阅读全文
posted @ 2022-10-03 10:30 一线码农 阅读(2616) 评论(0) 推荐(8) 编辑
上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 40 下一页