我說下Windows驅動程序的編寫(一)
2007/1/23 22:23:38
編寫驅動程序的人不多,而且驅動程序通常都工作在內核模式,因此驅動程序一直被很多人看的很神秘。Windows Vista馬上就要出來了, 它的驅動程序模型肯定會有比較大的變動,但是作為微軟長期的一個實踐準則,那就是各個版本之間能夠兼容,應該不會變。最重要的,那幫人的思想應該不會發生大的變化。我知道很多人對于寫驅動程序還是覺得比較陌生,我看到很多介紹驅動程序的書寫得也比較難懂,這里我就拋磚引玉,用一個實例來說一下在Windows下面編寫驅動程序的方法。
Windows下面編寫驅動程序比Linux驅動程序入門要難一些,剛開始很多人看著一大堆的概念都迷糊了。這篇文章就不說這些煩瑣的概念了,我知道不清楚的時候大家都會用google的。。本文用一個虛擬串口的驅動程序作為例子,來說說Windows下面的驅動程序的開發方法。這個虛擬串口的驅動程序是在驅動之家的一個貼子里面發現的,有空我把作者的名字找出來,給大家敬佩敬佩。
本文打算分為2個部分,第一個部分介紹編寫和編譯驅動程序需要準備的環境以及我將要介紹的這個驅動程序的大體思路。第二個部分將主要對驅動程序的實現進行仔細說明。
在Windows下面開發驅動程序需要兩個東西,一個是Windows Driver Development Kit,也就是傳說中的DDK,我采用的是Windows 2000的DDK,比較容易下載,在Web迅雷里面一搜一大堆,Vista都已經出來了,當然現在已經有更高版本的DDK了。另外一個工具就是編譯器,VC6.0,VS哪個版本都可以。不過我用的W2K DDK只跟VC6.0一起用了,其它的我不能擔保了。
都裝好了之后,在開始菜單就會有一個DDK的菜單欄,里面有一個checked 和一個 free,Checked就是我們平時寫程序的debug版本,free的那個就是release版本。剛開始分不清楚,隨便點一個都成,進去之后就是一個DOS窗口,里面可以編譯我們的驅動程序。找一個DDK的例子,敲Build試試編譯一下。
然后說一下我們的虛擬串口驅動程序,傳說windows的內核驅動程序分為3種——總線驅動、過濾器驅動和功能驅動。總線驅動很明顯,就是驅動總線的。負責發現設備,通知設備管理器。過濾器驅動是什么呢?就相當于我們設計模式里面說的Adapter,他可以為總線上的設備變更設備的接口,至于功能驅動嘛,就是真正實現設備功能的驅動啦。
我們要做一個虛擬的串口驅動程序,大家就很清楚,這個設備是一個虛擬的,虛擬的就不能在任何總線上面了。這樣子,我們就先虛擬一個總線出來,然后設備管理器,這里有一個串口,哈哈,設備管理器傻乎乎的就把串口的功能驅動帶過來給我用了,然后操作系統就會以為我們這里有一個串口了。
所以這個虛擬的串口驅動程序,實際上就由一個總線驅動、過濾器驅動構成。總線驅動負責說這里有幾個串口,過濾器驅動就把這個假串口告訴PNP說這是一個串口,然后串口驅動就會過來進行訪問了,它訪問的時候,這個過濾器驅動就裝成是一個串口的樣子,瞞過操作系統,也一樣可以瞞過超級終端。
這里就有一個問題,我要虛擬幾個串口出來呢?什么時候報告設備管理器新的串口呢?
這個虛擬串口驅動程序是這么解決的,另外再搞一個應用程序,這個應用程序通知這個虛擬總線說,來,加一個串口,就相當于一個中斷,這個虛擬總線就向我們的設備管理器進行報告,一路下去就OK了。
原理差不多就是這樣子了,主要是我也是剛剛粗略瀏覽了一下這個虛擬串口的源代碼,下一篇文章就詳細介紹實現方法。小弟才疏學淺,希望各位路過的高手指點指點。
在文章最后,無恥的宣傳一下剛買的域名,www.freasy.cn。現在就是一個wiki,介紹我最近的工作。呵呵,域名剛剛生效,蠻好玩的。
返回列表
返回首頁
主站蜘蛛池模板:
两个小姨子韩国|
亚洲熟妇少妇任你躁在线观看|
国产亚洲欧美在在线人成|
在线观看黄色毛片|
美国式禁忌4桥矿超棒|
国产极品美女高潮无套|
91麻豆精品国产自产在线|
开心色99×xxxx|
久久99精品久久久久久齐齐
|
国产精品亚洲欧美大片在线看
|
99热在线精品观看|
本道久久综合88全国最大色|
四虎影院一级片|
91av电影在线观看|
好男人好影视在线观看视频|
中文字幕激情视频|
日韩免费观看视频|
亚洲国产av无码精品|
欧美野外多人交3|
伊人久久大香线蕉av色婷婷色
|
最近中文字幕2019|
亚洲宅男天堂a在线|
波多野结衣和邻居老人|
免费午夜爽爽爽WWW视频十八禁|
美女扒开小内裤|
国产三级av在线播放|
99re在线视频观看|
好吊色永久免费视频大全|
中国xxx69视频|
插B内射18免费视频|
久久久成人影院|
日韩大片在线永久免费观看网站|
人妻中文无码久热丝袜|
精品处破视频在线观看|
国产91热爆ts人妖在线|
超碰色偷偷男人的天堂|
国产成人在线电影|
欧美激情另类自拍|
夜夜添狠狠添高潮出水|
www.色亚洲|
好男人资源网在线看片|