最近嘗試去了解WINDOWS下的驅動開發,現在總結一下最近看到的資料。
1.首先,先從基礎的東西說起,開發WINDOWS下的驅動程式,需要一個專門的開發包,如:開發JAVA程式,我們可能需要一個JDK,開發WINDOWS應用程式,我們需要WINDOWS的SDK,現在開發WINDOWS下的驅動程式,我們需要一個DDK/WDK。
2.DDK(Driver Developer Kit)和WDK(Windows Driver Kit)的差別:
這個要說說驅動相關的一些曆史:
1).95/98/ME下,驅動模型為:Vxd,相關資料可以看《程式設計高手箴言》的前幾個章節,裡面有很詳細的介紹,雖然這個東西已經過時,但大概看看還是會增長見識的。
2).2000/XP/2003下,Windows采用WDM驅動模型(Windows Driver Model),開發2000/XP/2003的驅動開發包為:DDK。
3).Vista及以後版本,采用了WDF驅動模型(Windows Driver Foudation),對應的開發包:WDK。
其實WDK可以看做是DDK的更新版本,現在一般的WDK是包含以前DDK相關的功能,現在XP下也可以用WDK開發驅動,WDK能編譯出2000-2008的各種驅動。
3.Vxd驅動檔案擴充名為:.vxd。
WDM和WDF驅動檔案擴充名為:.sys。
參考資料:
1.http://topic.csdn.net/u/20071225/13/bbb7eeba-7abf-483d-8724-abb76aa4e22c.html
2.http://topic.csdn.net/u/20090104/16/9d09f896-fd4b-4b6b-807c-990ddc63c35b.html
3.http://topic.csdn.net/u/20080204/19/2ca8d266-f384-4d8f-865c-c16a33aa97b0.html