歡迎您光臨本站 註冊首頁

Linux環境中網卡設備的驅動

←手機掃碼閱讀     火星人 @ 2014-03-12 , reply:0
  Linux的網路功能非常強大(它幾乎包含了Unix所有的網路功能),並且具有出色的性能,同時,Linux還是一個免費的操作系統,這些優點使其受到越來越多的人的青睞。

  但是,在桌面系統上,Linux與Windows 在易用性上還存在一定的差距,主要表現在其使用上過於複雜,還不適合初級用戶,尤其是硬體的配置工作。比如,在Linux的安裝過程中,有一些特殊設備Linux系統不能自動識別(如某些網卡等),這就需要在系統安裝完成之後進行手工設置。本文以台灣Davicom公司的dm9102快速乙太網卡為例,介紹在Linux環境中設置網卡設備驅動的步驟。

  系統環境: TurboLinux4.0.2,網卡、顯卡、Modem均集成在主板上。

  1.下載驅動

  登錄到Davicom公司網站上(www.davicom.com.tw)下載Linux下的最新驅動程序,版本為2.0.10-20,源程序名為dmfe.c。

  2.編譯

  gcc -DMODULE -D_ _KERNEL_I/usr/src/linux/net /inet -Wall -Wstrict-prototypes O6 c dmfe.c

  gcc(GNU C Compiler)為編譯命令,編譯完成後,在當前目錄下產生目標文件dmfe.o。

  3.設置模式

  利用insmod命令設置模式,其常用的幾個命令如下表所示:

其中,insmod dmfe命令的主要輸出結果如下:

  ID=91021282 』 網卡ID號

  NAME=eth0 』 網卡名稱

  IO=e000 』 輸入輸出口地址

  IRQ=11』 中斷向量

  4.設置參數

  為網卡配置IP地址、子網掩碼、網關等參數:

  ifconfig eth0 *.*.*.*

  netmask 255.255.255.*

  broadcast *.*.*.*

  5.配置路由

  route add-net *.*.*.* eth0

  6.啟動網卡

  使用命令ifup eth0 啟動網卡即可。

  至此,我們已經成功配置了dm9102網卡。通過命令ping *.*.*.* (127.0.0.1為本機循環地址,可用於檢測網卡)可以檢測網卡是否正常工作,其中*.*.*.* 為該計算機網路能夠達到的機器的IP地址。如果配置正確,應該返迴響應時間、發送接受位元組數等信息; 若返回「request time out」等信息,則說明網卡沒有正常工作。

  上述4~6步也可以通過turbolnetcfg等工具進行配置。

  通過以上步驟,我們以手工方式驅動了網卡,但是在系統啟動時網卡尚不能馬上工作,需要重複執行上述3~6步。如果要在系統啟動期間使網卡設置自動生效,需要執行以下操作:

  首先,編寫shell程序。啟動vi,使用命令vi startnet:

  #!/bin/sh

  insmod dmfe

  ifup eth0

  保存文件startnet,並更改startnet文件屬性為可執行屬性:

  chmod +x startnet

  然後,將目標文件拷貝到/etc/rc.d目錄下:

  cp /dmfe.o /etc/rc.d/

  最後,修改inet文件:

  vi /etc/rc.d/init.d/inet

  在其中加入以下命令:

  /etc/rc.d/startnet (執行/etc/rc.d/目錄下的startnet文件)

  這樣,用reboot命令重新啟動機器后,在系統啟動過程中可以看到網卡被驅動起來。


[火星人 ] Linux環境中網卡設備的驅動已經有609次圍觀

http://coctec.com/docs/service/show-post-73806.html