[序言]
很多人都對驅(qū)動開發(fā)有興趣,但往往找不到正確的學(xué)習(xí)方式.當(dāng)然這跟驅(qū)動開發(fā)的本土化資料少有關(guān)系.大多學(xué)的驅(qū)動開發(fā)資料都以英文為主,這樣讓很多驅(qū)動初學(xué)者很頭疼.本人從事驅(qū)動開發(fā)時(shí)間不長也不短,大概也就3~4年時(shí)間.大多數(shù)人都認(rèn)為會驅(qū)動開發(fā)的都是牛人,高手之類的.其實(shí)高手,牛人不是這樣定義的.我們在學(xué)習(xí)驅(qū)動開發(fā)之前,一定要明白一個道理:術(shù)業(yè)有專攻,不要盲目跟風(fēng).
[本內(nèi)容適用環(huán)境及工具]
1> Windows系統(tǒng)下
2> VC6.0以及VS2003版本以上
3> Windows驅(qū)動開發(fā)包(DDK(老版本) WDK(新版本))
4> 有能力著可以安裝VMWare
[本內(nèi)容適用群體]
1> 具有C/C++語言基礎(chǔ)的人
2> 具備高中以上文化水平的邏輯思維
[具備Windows系統(tǒng)理論書籍]
1> Windows核心編程
2> Win32多線程程序設(shè)計(jì)
3> 深入解析Windows操作系統(tǒng)
4> Windows操作系統(tǒng)原理
FAQ1:為什么需要[具備Windows系統(tǒng)理論書籍]這4本書?
答:驅(qū)動是Windows系統(tǒng)的一個重要的組成部分,深入Windows系統(tǒng)核心的一個體系,就因?yàn)轵?qū)動跟系統(tǒng)內(nèi)核聯(lián)系得十分緊密,所以涉及了不少系統(tǒng)的基礎(chǔ)理論以及原理.因此在學(xué)習(xí)驅(qū)動開發(fā)之前必須先明白Windows系統(tǒng)的基礎(chǔ)開發(fā)理論,Windows系統(tǒng)的運(yùn)作原理,Windows系統(tǒng)的架構(gòu)體系.那么我提供的上面4本書是目前市面上我認(rèn)為最經(jīng)典最全面的書籍了.
[具備Windows驅(qū)動開發(fā)書籍]
1> Windows驅(qū)動開發(fā)詳解
2> Windows設(shè)備驅(qū)動程序WDF開發(fā)
FAQ2:為什么需要[具備Windows驅(qū)動開發(fā)書籍]這2本書?
答:假設(shè)你對Windows系統(tǒng)的基礎(chǔ)理論扎實(shí)了,也看完了所說的[Windows系統(tǒng)理論書籍]這4本書,而且你還從事開發(fā)過Windows程序或者大程序的經(jīng)驗(yàn)者.那么你進(jìn)入Windows驅(qū)動開發(fā)的時(shí)候,需要一本經(jīng)典的驅(qū)動入門開發(fā)書籍即可正確入門.現(xiàn)在我提供了[Windows驅(qū)動開發(fā)書籍]這2本書完完全全針對Windows驅(qū)動開發(fā)入門而編寫的書籍.當(dāng)然我首要推薦<Windows驅(qū)動開發(fā)詳解>這本書.本書的內(nèi)容在目前來說,針對驅(qū)動開發(fā)的講解時(shí)非常到位了.包含了驅(qū)動開發(fā)理論 配置 驅(qū)動體系 等等......是一本不可多得的好書.那么第2本,其實(shí)有點(diǎn)濫竽充數(shù),但是他里面有少少涉及到WDF這個最新的驅(qū)動開發(fā)理論的講解,大家也就湊合著吧.
[具備Windows調(diào)試基礎(chǔ)理論書籍]
1> 軟件調(diào)試
2> Windows用戶態(tài)程序高效排錯
FAQ3:為什么需要[具備Windows調(diào)試基礎(chǔ)理論書籍]這2本書?
答:在開發(fā)驅(qū)動的情況下,你少不了要調(diào)試驅(qū)動程序.那么如何調(diào)試驅(qū)動程序呢? Windows已為你考慮到這個問題了并開發(fā)了一套強(qiáng)有力的調(diào)試工具:Windbg .如何學(xué)習(xí)這個工具的調(diào)試呢?那么現(xiàn)在市面上只有這2本書針對Windbg講解得還比較到位,至少針對調(diào)試命令的使用,已經(jīng)用中文講解了,大家可以通過2本書先大概了解Windbg的調(diào)試命令,然后再進(jìn)一步進(jìn)行GOOGLE搜索并深入學(xué)習(xí).
[驅(qū)動開發(fā)擴(kuò)展書籍]
1> 寒江獨(dú)釣-Windows內(nèi)核安全編程
2> Windows內(nèi)核原理與實(shí)現(xiàn)
3> Rootkit Windows內(nèi)核安全防范
FAQ4:為什么需要[驅(qū)動開發(fā)擴(kuò)展書籍]這2本書?
答:熟話說:學(xué)無止境,驅(qū)動開發(fā)領(lǐng)域是一個很龐大的體系,這歸根于驅(qū)動框架多樣化而決定的.驅(qū)動包含了:文件驅(qū)動,磁盤驅(qū)動,顯卡驅(qū)動,網(wǎng)絡(luò)驅(qū)動,等等不同的種類,每一種類就是一個領(lǐng)域,你決定你的能力需要擴(kuò)展到多方面,那么你可以考慮先我這里提供的這3本書來學(xué)習(xí),通過閱讀這3本書,你會發(fā)現(xiàn)驅(qū)動可以做很多你意想不到的事情.本人從事開發(fā)驅(qū)動將近4年,也僅僅涉及 文件驅(qū)動,磁盤驅(qū)動以及一些小型驅(qū)動而已.這些的學(xué)習(xí)我也僅僅是根據(jù)需求來進(jìn)行選擇性學(xué)習(xí).每個人都有自己的能力極限,大家要量力而行.
備注:網(wǎng)友可以推薦其他好書
[推薦學(xué)習(xí)資源站點(diǎn)]
1> http://forum.driverdevelop.com/ 國內(nèi)唯一個知識點(diǎn)比較全的驅(qū)動交流網(wǎng)站
2> http://www.osronline.com/ 國外著名的驅(qū)動開發(fā)社區(qū)
3> http://www.microsoft.com/whdc/default.mspx 微軟官方驅(qū)動開發(fā)技術(shù)支持
[推薦正確學(xué)習(xí)方式]
1> 認(rèn)真閱讀我提供的參考書籍
2> 多使用Google來解決你遇到的問題
3> 多嘗試用驅(qū)動寫你自己喜歡的功能
4> 提升你英文閱讀能力,因?yàn)榇蟛糠钟袃r(jià)值的資料來自于國外
5> 不要急于求成,不要把驅(qū)動開發(fā)技術(shù)當(dāng)做一種炫耀
[修改補(bǔ)充]
如果你有什么建議和補(bǔ)充的話,請留言跟帖,好讓我更加完善這篇文章,以造福更多的初學(xué)者。
本文來自CSDN博客,轉(zhuǎn)載請標(biāo)明出處:http://blog.csdn.net/Code_GodFather/archive/2010/10/30/5975901.aspx