WINDOWS用户态程序高效排错怎么样

WINDOWS用户态程序高效排错怎么样,第1张

“这就是绝世武功的秘籍吗?” “不,这只是秘籍的目录!” 没错,看完这本书,我脑子里闪现的就是周星驰鹿鼎记中与陈家洛的这句对白。区区200来页,其包含的内容却是远胜于此。究其原因,恐怕是以下两个: 1. 书中列出了无数个链接,而有些链接过去的知识点,就够你研究好半天了。比如SEH的使用,CLR的原理等等 2. 书中大多讲解的,还是工具的使用,无数个命令,参数的确也是比较难记,要掌握好这些工具,不是一两个星期能搞定的事情。比如windbg, performance monitor等等。 由此可能会觉得,这本书作者自己的思想少了点,链接的内容,工具的使用占了较大的篇幅。但其实作者融汇贯通了如此多的知识,加上自己的思考与实践再呈现给大家,读起来相当的痛快,也是相当有用。 至此读完了一遍,但正如我前面所形容的,这是一本武功秘籍的目录,要想完全掌握书中的内容,还是要多阅读,多思考,多实践。并且,根据目录的提示去扩展阅读那些“绝世武功秘籍”。

首先,我觉得你需要明确自己的发展方向,你想学习的课程起码串联起来是个完整的体系,以后能够帮助你就业

书籍整理如下:

C++开发

1.《C++ Primer》:全面学习C++的必备书籍

2.《Thinking in C++》:了解C++背后的一些机bai制

3.《深度探索C++对象模型》:深入了解C++,也是学习COM的必经之路

Windows平台

入门

1.《Windows程序设计》:这本书主要讲的是Windows API的使用,是Windows编程入门书籍。上册涉及到的知识基本上就够用了,时间不充裕的话阅读上册即可。

2.《Win32多线程程序设计》:Windows下多线程编程必备

3.《Windows核心编程》:Window平台基础知识:消息机制,内存管理,多线程,动态链接库等

4.《Windows网络编程》:介绍Windows下各种网络协议的开发和并发处理模型。

进阶

1.《深入浅出MFC》:Windows下编程,MFC虽然有些过时,但其机制还是有学习的价值。重点学习书中提到的MFC 6大机制

2.《COM本质论》:COM是Windows构建用户态的重要技术之一,Windows开发必修课,本书对COM的设计动机作了深入阐述

3.《深入解析ATL》:ATL全名Active Templete Library,是用C++的模版封装了COM,这本书主要讲的是对源码分析

4.《WTL White Paper》:WTL源自微软,基于ATL的一套开源模版库,主要用于界面编程和工具类的使用

5.《代码大全》:这边书主要讲的是工程编码规范

高级

1.《深入解析Windows *** 作系统》:Windows大牛书籍,讲的主要是Windows *** 作系统的内核原理

调试技术

1.《软件调试》

2.《Windows高级调试》

3.《windows用户态程序高效排错》

Linux平台

Linux内核

1.《Linux Kernel Development》/《Linux内核设计与实现》:Robert Love的著作,不厚的一本书,深入浅出地将Linux内核娓娓道来

Linux使用和Shell编程

1.《sed &awk》/《sed与awk》:sed与awk都是Linux下常用的日志分析利器

Linux编程

1.《Beginning Linux Programming》/《Linux程序设计》:老牌的Linux编程入门书

2.《Advanced Programming in the Unix Environment》/《Unix环境高级编程》:对Unix编程环境做了细致的总结,涵盖了进程间通讯、网络通讯、文件系统等各方面的知识

网络编程

1.《TCP/IP Illustrated, Volume I》/《TCP/IP详解,卷一》:对理解TCP/IP协议的设计理念和协议细节有显著的帮助。

2.《Unix Network Programming》/《Unix网络编程》,卷一、卷二:网络编程方面难以逾越的著作,事无巨细、深入浅出,强烈推荐

对这些书目抱有100%的信心,全部掌握,融会贯通,即可打通奇经八脉,天下无双。

对了,你没有基础最好从c与c++基础开始。找些基础书开始看。

[C语言入门经典(第四版)].(美)霍顿.扫描版,《C++ Primer》就不错。

[序言]

很多人都对驱动开发有兴趣,但往往找不到正确的学习方式.当然这跟驱动开发的本土化资料少有关系.大多学的驱动开发资料都以英文为主,这样让很多驱动初学者很头疼.本人从事驱动开发时间不长也不短,大概也就3~4年时间.大多数人都认为会驱动开发的都是牛人,高手之类的.其实高手,牛人不是这样定义的.我们在学习驱动开发之前,一定要明白一个道理:术业有专攻,不要盲目跟风.

[本内容适用环境及工具]

1>Windows系统下

2>VS2003版本以上

3>Windows驱动开发包(DDK(老版本) WDK(新版本))

4>有能力着可以安装VMWare

[本内容适用群体]

1>具有C/C++语言基础的人

2>具有80x86汇编基础的人

3>具备高中以上文化水平的逻辑思维

[具备Windows系统理论书籍]

1>Windows核心编程

2>Win32多线程程序设计

3>深入解析Windows *** 作系统

4>Windows *** 作系统原理

FAQ1:为什么需要[具备Windows系统理论书籍]这4本书?

答:驱动是Windows系统的一个重要的组成部分,深入Windows系统核心的一个体系,就因为驱动跟系统内核联系得十分紧密,所以涉及了不少系统的基础理论以及原理.因此在学习驱动开发之前必须先明白Windows系统的基础开发理论,Windows系统的运作原理,Windows系统的架构体系.那么我提供的上面4本书是目前市面上我认为最经典最全面的书籍了.

[具备Windows驱动开发书籍]

1>Windows驱动开发技术详解

2>Windows设备驱动程序WDF开发

FAQ2:为什么需要[具备Windows驱动开发书籍]这2本书?

答:假设你对Windows系统的基础理论扎实了,也看完了所说的[Windows系统理论书籍]这4本书,而且你还从事开发过Windows程序或者大程序的经验者.那么你进入Windows驱动开发的时候,需要一本经典的驱动入门开发书籍即可正确入门.现在我提供了[Windows驱动开发书籍]这2本书完完全全针对Windows驱动开发入门而编写的书籍.当然我首要推荐<Windows驱动开发详解>这本书.本书的内容在目前来说,针对驱动开发的讲解时非常到位了.包含了驱动开发理论 配置 驱动体系 等等......是一本不可多得的好书.那么第2本,其实有点滥竽充数,但是他里面有少少涉及到WDF这个最新的驱动开发理论的讲解,大家也就凑合着吧.

[具备Windows调试基础理论书籍]

1>软件调试

2>Windows用户态程序高效排错

FAQ3:为什么需要[具备Windows调试基础理论书籍]这2本书?

答:在开发驱动的情况下,你少不了要调试驱动程序.那么如何调试驱动程序呢? Windows已为你考虑到这个问题了并开发了一套强有力的调试工具:Windbg .如何学习这个工具的调试呢?那么现在市面上只有这2本书针对Windbg讲解得还比较到位,至少针对调试命令的使用,已经用中文讲解了,大家可以通过2本书先大概了解Windbg的调试命令,然后再进一步进行GOOGLE搜索并深入学习.

[具备汇编基础理论书籍]

1>汇编语言 作者:王爽

2>80x86汇编语言程序设计教程[绿皮版 或者 黑皮版]

FAQ4:为什么需要[具备汇编基础理论书籍]这2本书?

答:由于在Windows环境下开发驱动,从而有个弊端,就是Windows的WDK,DDK文档少得可怜,很多说明多是模糊的.因此导致我们开发的驱动极其不稳定,这时就需要逆向Windows驱动的机制来加深理解.在一个由于驱动的不稳定性,会导致系统蓝屏,有时错误并不会直接定位到你的代码,这时就需要汇编来分析错误的缘由.就如我前面介绍的[具备Windows调试基础理论书籍]基本是用汇编语言来阐述调试技术.

[驱动开发扩展书籍]

1>寒江独钓-Windows内核安全编程

2>Windows内核原理与实现

3>Rootkit Windows内核安全防范

4>Windows内核情景分析

FAQ5:为什么需要[驱动开发扩展书籍]这4本书?

答:熟话说:学无止境,驱动开发领域是一个很庞大的体系,这归根于驱动框架多样化而决定的.驱动包含了:文件驱动,磁盘驱动,显卡驱动,网络驱动,等等不同的种类,每一种类就是一个领域,你决定你的能力需要扩展到多方面,那么你可以考虑先我这里提供的这4本书来学习,通过阅读这3本书,你会发现驱动可以做很多你意想不到的事情.本人从事开发驱动将近4年,也仅仅涉及 文件驱动,磁盘驱动以及一些小型驱动而已.这些的学习我也仅仅是根据需求来进行选择性学习.每个人都有自己的能力极限,大家要量力而行.

[推荐正确学习方式]

1>认真阅读我提供的参考书籍

2>多使用Google来解决你遇到的问题

3>多尝试用驱动写你自己喜欢的功能

4>提升你英文阅读能力,因为大部分有价值的资料来自于国外

5>不要急于求成,不要浮躁,不要把驱动开发技术当做一种炫耀


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7803288.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-10
下一篇 2023-04-10

发表评论

登录后才能评论

评论列表(0条)

保存