電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>通信網(wǎng)絡>RTL8139網(wǎng)卡驅(qū)動程序分析

RTL8139網(wǎng)卡驅(qū)動程序分析

2008-10-19 | rar | 666 | 次下載 | 5積分

資料介紹

對多數(shù)驅(qū)動程序開發(fā)的學習者來說,總是感覺很難?門,不能從
整體上把握驅(qū)動程序是如何驅(qū)動硬件設備?作的。本文以Linux內(nèi)
核中8139網(wǎng)卡驅(qū)動為例,對驅(qū)動程序的?作過程進行詳細的分析,
為初學者撥開迷霧,走出霧里看花的迷茫。本文雖然以Linux驅(qū)動
為例,但是技術總是相通的,為了給Windows驅(qū)動初學者同樣的啟
發(fā),我有意的借用了許多Windows驅(qū)動中的名詞,同時順便略述了
Windows驅(qū)動中的?些容易讓初學者感到迷惑的概念。

Rtl8139是?個PCI網(wǎng)卡,老式的設備地址是固定的,對設備的擴充通
常通過跳線等方式來更改地址以避免地址沖突,例如通過跳線來設置IED
主盤,從盤。PCI總線設備可以通過軟件編程靈活的設置各個設備的地
址。在操作系統(tǒng)啟動的時候,系統(tǒng)根據(jù)PCI總線協(xié)議規(guī)范對主板上的PCI
進行掃描,同時為發(fā)現(xiàn)的設備配置相關資源,包括中斷請求號,地址空
間等。每?個PCI設備上有?個配置空間,配置空間中包含了設備的基本
信息,例如設備類別ID,?商ID,設備板載存儲空間等信息,操作系統(tǒng)
在掃描所有的PCI設備后,可以根據(jù)這些信息統(tǒng)?分配地址資源以避免
地址沖突。系統(tǒng)通過在PCI設備中的基地址寄存器中寫??個分配到的
基地址,之后CPU在指令執(zhí)行的時候給出?個地址,這個地址首先送到
Host-PCI橋,就是我們通常所說的北橋,北橋判斷出這個地址是落在內(nèi)
存或是PCI等設備的地址空間上1,如果落在PCI空間地址中,則北橋通過
PCI總線仲裁申請,把地址送到PCI總線上,總線上的每?個PCI設備會根
據(jù)自?的存儲空間??以及基地址寄存器中的值來比較,如果被尋址的
地址落在自?的地址空間范圍內(nèi),則該設備會作為PCI從設備響應完成數(shù)
據(jù)傳輸。這就是說,系統(tǒng)上的設備都有自?的地址空間,以總線帶寬為
32位的系統(tǒng)為例,可以容納的地址空間為4G,CPU在這4G的地址空間?部
分劃分到內(nèi)存空間,還有以部分很可能劃分給PCI等外部設備,這通常取
決于硬件系統(tǒng)設計者。PCI設備靈活的配置方式也不可避免的帶來了復雜
性。PCI協(xié)議對設備的枚舉,檢測,配置的過程是復雜的,通常操作系統(tǒng)
提供了PCI總線協(xié)議驅(qū)動程序,并在啟動的時候完成了這?復雜的過程,
這樣??減?了PCI設備驅(qū)動程序開發(fā)者的?作量。這就好像平時?家
網(wǎng)絡程序開發(fā)的時候都沒必要自?實現(xiàn)TCP/IP協(xié)議?樣。用Windows的
術語來說,對PCI設備的枚舉由總線驅(qū)動程序完成,而具體的對PCI設備
的控制是功能驅(qū)動程序的?作。本文要描述的是Rtl8139網(wǎng)卡功能驅(qū)動程序。對PCI協(xié)議有?定了解是必要的。關于PCI總線驅(qū)動程序的知識可以閱讀《Linux內(nèi)核情景分析》。

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1電子電路原理第七版PDF電子教材免費下載
  2. 0.00 MB  |  1489次下載  |  免費
  3. 2單片機典型實例介紹
  4. 18.19 MB  |  91次下載  |  1 積分
  5. 3S7-200PLC編程實例詳細資料
  6. 1.17 MB  |  27次下載  |  1 積分
  7. 4筆記本電腦主板的元件識別和講解說明
  8. 4.28 MB  |  18次下載  |  4 積分
  9. 5開關電源原理及各功能電路詳解
  10. 0.38 MB  |  9次下載  |  免費
  11. 6基于AT89C2051/4051單片機編程器的實驗
  12. 0.11 MB  |  4次下載  |  免費
  13. 7基于單片機和 SG3525的程控開關電源設計
  14. 0.23 MB  |  3次下載  |  免費
  15. 8基于單片機的紅外風扇遙控
  16. 0.23 MB  |  3次下載  |  免費

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234313次下載  |  免費
  3. 2PADS 9.0 2009最新版 -下載
  4. 0.00 MB  |  66304次下載  |  免費
  5. 3protel99下載protel99軟件下載(中文版)
  6. 0.00 MB  |  51209次下載  |  免費
  7. 4LabView 8.0 專業(yè)版下載 (3CD完整版)
  8. 0.00 MB  |  51043次下載  |  免費
  9. 5555集成電路應用800例(新編版)
  10. 0.00 MB  |  33562次下載  |  免費
  11. 6接口電路圖大全
  12. 未知  |  30319次下載  |  免費
  13. 7Multisim 10下載Multisim 10 中文版
  14. 0.00 MB  |  28588次下載  |  免費
  15. 8開關電源設計實例指南
  16. 未知  |  21539次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935053次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537791次下載  |  免費
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420026次下載  |  免費
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234313次下載  |  免費
  9. 5Altium DXP2002下載入口
  10. 未知  |  233045次下載  |  免費
  11. 6電路仿真軟件multisim 10.0免費下載
  12. 340992  |  191183次下載  |  免費
  13. 7十天學會AVR單片機與C語言視頻教程 下載
  14. 158M  |  183277次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138039次下載  |  免費