学逆向论坛

找回密码
立即注册

只需一步,快速开始

发新帖

2万

积分

41

好友

1157

主题

[图书资料] Windows高级调试

发表于 2020-10-11 09:45:46 | 查看: 5114| 回复: 3

Windows高级调试

Windows高级调试
调试,是通过尝试运行程序找到问题根源的过程。这和测试不同,测试是发现问题的过程,但不深究问题产生的位置、原因。调试是开发人员必须具备的能力,即便是在分工很细致的大企业中——设计、开发、测试往往由不同的工程师完成——调试这项工作却常常(甚至是必须)由开发人员自己进行。
调试有两个层面,一种是基本调试,是我们每天都在接触的。通常,一个完善的集成开发环境通常都自带有调试器;而如今开发人员的开发习惯,也是写完一段语法完整的代码后就顺手启动调试器调试一下。这类调试通常是特定语言的、源代码级别的、用户态的,对于上层的逻辑错误通常是足够的;但如果遇到更深层次的问题,仅仅通过基本调试就无能为力了。
另一种是高级调试,这种调试通常使用独立的调试器(未与开发环境集成),并能脱离源代码进行调试;甚至可以调试操作系统的底层问题(内核调试)。高级调试并不是开发人员所必需具备的能力(甚至很多开发人员并不熟练掌握高级调试),但掌握高级调试可以大幅提高自身功力,对于开发技术的进阶是必不可少的。
《Windows高级调试》(以下简称《AWD》)一书正是讲解如何在Windows操作系统上进行高级调试的。其实“高级调试”不过是“另一种调试方法”而已,它也有自己的入门、进阶、精通等程度。而《AWD》一书,在老刘看来应该是属于“入门”和“进阶”这两个级别的,特别适合于掌握了一定的开发技术和基本调试技术,想学习高级调试的朋友。
《AWD》分为三部分,第一部分主要介绍高级调试应具备的基本工具,包括调试器和符号文件等。虽然在第一章中介绍了很多种调试器,但整本书用得最多的还是windbg.exe。
第二部分则从实践的角度介绍了多种调试场景,如内存、资源、进程间通信和同步等。这一部分是整本书的核心,细读下来不仅能掌握高级调试的基本方法,还能对操作系统原理有更加深刻的掌握。
第三部分则是高级调试中的高级主题,这一部分内容对于大多数开发人员来说可能并不是必须的,甚至日常工作根本用不到。但对于对调试技术非常着迷的朋友,或者是系统开发者,这部分却是必不可少的。正如Raymond McCollum所说,大多数书籍在涉及到如此高级的主题时,往往“留给读者练习”或“请参阅其他高级参考书”,而本书则属于那些“高级参考书”。
前面提到本书属于“入门”和“进阶”的级别,并非看轻此书。高级调试技术本身就是相对复杂的,但本书却没有故弄玄虚,而是从多种常见的调试场景入手,介绍如何使用调试器来完成特定的调试任务。这样新进入调试领域的开发者就能很快地上手,实际感受到调试的快感和乐趣。而即便是经常使用调试器的熟手,也可以将本书作为参考,快速查找各种场景中的调试命令。
《AWD》一书的遗憾在于,并没有非常详尽地介绍每种调试器,所以读者朋友不得不“参与其他文章或书籍”来掌握各种调试器的基本操作。当然,如果不是这样的话,您手中的书可就不是500余页这么简单了。
(完)

Windows高级调试.pdf (46.56 MB, 下载次数: 8)

游客,如果您要查看本帖隐藏内容请回复
温馨提示:
1.如果您喜欢这篇帖子,请给作者点赞评分,点赞会增加帖子的热度,评分会给作者加学币。(评分不会扣掉您的积分,系统每天都会重置您的评分额度)。
2.回复帖子不仅是对作者的认可,还可以获得学币奖励,请尊重他人的劳动成果,拒绝做伸手党!
3.发广告、灌水回复等违规行为一经发现直接禁言,如果本帖内容涉嫌违规,请点击论坛底部的举报反馈按钮,也可以在【投诉建议】板块发帖举报。
论坛交流群:672619046

    发表于 2020-11-27 15:17:17
    啥也不说了,加入收藏!

      发表于 2021-10-26 13:38:11
      太给力了,这么多好东西!

        发表于 2021-10-27 06:59:20
        谢谢分享谢谢分享

        小黑屋|手机版|站务邮箱|学逆向论坛 ( 粤ICP备2021023307号 )|网站地图

        GMT+8, 2024-4-26 10:46 , Processed in 1.200053 second(s), 61 queries .

        Powered by Discuz! X3.4

        Copyright © 2001-2021, Tencent Cloud.

        快速回复 返回顶部 返回列表