閱讀397 返回首頁    go 阿裏雲 go 技術社區[雲棲]


Windows驅動開發工具 WDK 學習筆記(1)

目標:能夠把電腦當作一個集成有高性能處理器的開發板用起來,當然,還自帶了一個高級的操作係統Windows(必須的)。總之,就是在一個帶了操作係統的高性能開發板上的驅動程序開發。
性質:純屬業餘愛好
1、昨天下載了WDK 7.1.0 Free版(From MS的正版,需要注冊一個Windows Live ID,下載鏈接https://www.microsoft.com/downloads/en/confirmation.aspx?familyId=36a2630f-5d56-43b5-b996-7633f2ec14ff&displayLang=en)。今天才下載完成,大小619MB,格式ISO。
2、安裝時選擇了全部的安裝選項,因為是Free版,擔心可能少一些東西,加上本來對驅動開發不熟悉,幹脆全部裝上,以絕後患。
3、閱讀幫助文檔(help目錄下的“WDK document”文檔),貌似沒有中文版,閱讀速度緩慢。計劃以後慢慢翻譯閱讀過的內容,作為學習筆記。
4、按照我學習的習慣(興趣第一),找到一個example先找點感覺再說。學習的第一個例子就是IOCTL,這個最接近嵌入式應用,並且能夠自己控製一些東西還是很爽的,雖然隻是簡單的IO,當然,這讓我想起了當年完成的第一個8051實驗“跑馬燈”,可以帶來像初學C語言的人的“hello word”程序一樣興奮。
5、初識驅動開發(我的係統已經安裝VC6.0和VS2005):
當然代碼是MS寫好的。對著文檔我編譯了一下,並且運行成功而已。
(1)進入WDK安裝目錄"\WinDDK\7600.16385.1\src\general\ioctl"
(2)複製wdm文件夾到"D:\",作為實驗目錄。
(3)從“開始”->“所有程序”進入WDM目錄下的“Build environment->windows xp”啟動“x86 Free Build environment”工具,是基於Dos界麵的工具。
(4)進入第(2)步準備好的實驗目錄wdm,進入“sys”子目錄,運行“BLD”命令即可在“sys”目錄下生成一個文件夾“objfre_wxp_x86”,裏麵就有編譯後的結果“sioctl.sys”文件。
(5)再回到第(2)步準備好的實驗目錄wdm,進入“exe”目錄,同樣按照(4)的命令操作編譯程序,得到一個用於測試(4)的編譯結果的exe文件名稱為“ioctlapp.exe”,把它複製到步驟(4)“sioctl.sys”文件所在的目錄,並在dos窗口運行“sioctl.sys”,可以看到驅動程序的輸出結果。實驗完畢。
(6)閱讀步驟(4)實驗文件夾的源文件“sioctl.c”、“sioctl.h”,“MAKEFILE”和“sioctl.rc”,領會驅動程序的框架,準備繼續的學習(從頭開始讀手冊)。

運行結果:
Windows驅動開發工具 WDK 學習筆記(1) - 毛毛蟲 - 毛毛雨的刻薄

最後更新:2017-04-03 16:48:50

  上一篇:go linux 之 getopt_long()
  下一篇:go 華為----大有所“為”