【資源收集】關於WINCE網卡開發的知識收集

這篇文章主要爲了臨時抱佛腳,收到威盛的面試邀請,職位是wince的網卡驅動開發,對於wince的驅動開發可以說還是做過一些,說道網卡這真還是一個死角,因爲車載上並不牽涉到網卡這個部分,所做的幾個項目在網卡上基本上都是被省略了,硬件上都沒有網卡這個部分,所以臨時包下佛腳。補補課。

 

1.什麼是NDIS,這個是一個比較知識性的問題。

http://baike.baidu.com/view/1033533.htm

WINCE上有關於這個部分的驅動,wince在2.0開始有這個部分的內容

http://msdn.microsoft.com/en-us/library/ms834435.aspx msdn的參考

2.wince下如何添加intel82559er的網卡驅動?來一個具體的例子學習

參考文章:

http://blog.ednchina.com/stephen100/231442/message.aspx

主要思路是先下載現有的cec也就是bsp加入第三方BSP中,然後進行註冊表的修改。

3.如何將網卡添加到wince上呢

http://social.microsoft.com/Forums/zh-TW/windowsembeddedcezhchs/thread/7552cf2a-2d54-4537-9853-0a338145c863

雖然很簡單的文章,也是一個基本驅動開發的流程,但是始終感覺網卡驅動並非和一般驅動開發那樣簡單修改一下bib和reg就了事了。其中於OS之間的配合是一個大問題。

http://topic.csdn.net/u/20091221/16/B100AD74-9A48-4596-826D-F5241429E7FC.html

這個文章做了一個問題的集中描述,其中比較經典的回覆如下:

#13樓 得分:5回覆於:2009-12-21 17:26:51

NDIS是微軟爲了統一開發而弄出來的一個東西,也就是小驅動。說白了就是封包常用的東西,然後分層,你只要把你的數據處理和調用,按規定接到上面即可。這麼說吧,原來是你的上層直接調用你的下層,現在呢,你的上層要調用你的下層時,必須通過NDIS,你的下層向上層通信,也必須傳給NDIS,就這麼個意思,可能有的表達不準確,希望不要誤導別人。

個人觀點:

這樣看來NDIS是一箇中間的連接器,換一種思路,wince的驅動可以有分層的和不分層的,這裏來說,網卡驅動是一個分層的,首先是有一個PDD,也就是對網卡的一個驅動,其次,就是MMD,也就是NDIS的一個驅動,而NDIS的驅動主要是爲了方便上層和下層通訊做出來一個接口。

--------------------------------------------------------------------------------------

#37樓 得分:0回覆於:2009-12-21 20:03:57

引用 35 樓 huabinsir 的回覆:驅動是有模型的。 網卡驅動 有 網卡驅動的模型.

恩,那個分層我看了,在外部驅動裏面專門羅列了兩個驅動,一個是USB驅動,一個就是網卡驅動。其中我看了下網卡驅動的大概步驟,因爲它是分三層的:
NDIS驅動程序是使網絡協議生效的驅動程序模型,例如TCP/IP和PPP等數據通信協議,NDIS驅動程序採用了windows NT操作系統的驅動程序標準,與網卡驅動程序的具體細節無關。NDIS網絡驅動程序分爲三類:
(1)NDIS Miniport NIC Driver: 底層的微端口NIC驅動,這就是網絡設備的物理的驅動程序
(2)NDIS Protocol Driver: 高層的協議驅動,用來實現某個具體的協議棧,  並向上導出TDI接口。
(3)NDIS Intermediate Driver: 中間層驅動,位於Miniport Driver和Protocol Driver之間。
    在WinCE中,開發網卡驅動就是寫一個Miniport Driver,導出相應的Miniport接口函數,調用NDIS的接口訪問底層硬件。
    Miniport driver直接管理硬件網卡,它使用NDIS Library中的接口函數讀寫硬件網卡,同時對上層導出Miniport接口函數,這樣上層通過該接口可以配置網卡,發送和接收網絡數據包。

個人觀點:

分層開發的代表。很明顯的看出來這個驅動開發需要注意的細節問題。

 

4.一些問題集錦

wince 下網卡驅動開發問題求救[問題點數:200分,結帖人:Seven_zhangxw]

http://topic.csdn.net/u/20081027/19/3F0A9112-A377-4F31-9184-3BDEA075A65C.html

WinCE 網卡驅動求助已解決

http://bbs.driverdevelop.com/read.php?tid-83689.html 

wince平臺加載網卡驅動後聯機異常

http://simplaman.itpub.net/post/2120/269779 

http://blog.csdn.net/Ricky_hu/archive/2010/02/21/5315320.aspx 

S3C2440 WINCE 5.0上SD接口的WIFI驅動移植上去了,可以檢測到網卡,但是搜不到網絡[問題點數:100分,結帖人:thisway_diy]

http://topic.csdn.net/u/20090413/22/A1948C63-0D90-459F-9DEF-C826BCB24ECE.html

如何添加自己的網卡驅動 ?[問題點數:20分,結帖人:xxjoyjn]

http://topic.csdn.net/u/20080422/16/9076791C-F6FC-4196-9325-8094F8DB1012.html

目前收集到這些,搜索了下csdn上wince+網卡關鍵字,30頁以後的都沒有多大價值了。其他的就是msdn上的一些文檔描述。還是需要回頭去讀下現有的bsp看看現成的代碼是如何實現網卡驅動的。繼續學習。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章