天天看點

戴文的Linux核心專題:19 配置核心 (15)

戴文的Linux核心專題:19 配置核心 (15)

你好!在這篇linux系列文章中,我們将繼續配置usb網絡驅動。接着我們将進入輸入裝置。

首先,我們可以啟用/禁用"multi-purpose usb networking framework",這允許連接配接筆記本到桌面系統上。

下面,可以啟用/禁用asix usb-to-ethernet擴充卡驅動(asix ax88xxx based usb 2.0 ethernet adapters)。

那麼,還有一個asix擴充卡驅動(asix ax88179/178a usb 3.0/2.0 to gigabit ethernet)。

注意:通常地,最好将擴充卡驅動作為子產品加入。

通信裝置類規範(communication device class specification)在這個驅動中提供(cdc ethernet support (smart devices such as cable modems))。這個規範用于usb數據機。linux系統可以将usb網絡接口識别為以太網網絡接口并且指定為"ethx",這裡的"x"是以太裝置編号。

下面是一個與上面類似的規範(cdc eem support)。cdc eem代表的是"communication device class ethernet emulation model"(通信裝置類以太網仿真模型)。

cdc網絡控制模型(ncm)同樣有一個驅動提供了規範(cdc ncm support)。

這個驅動提供了"cdc mbim (mobile broadband interface model)"規範同樣也在linux核心中(cdc mbim support)。

下面,有一些供貨商/裝置特定驅動用于不同的usb網絡裝置和晶片組。

在這之後,有一個用于usb網絡裝置的通用驅動,它不需要任何特殊的驅動(simple usb network links (cdc ethernet subset))。

再說一次,還有更多的驅動用于供貨商特定裝置。

"cdc phonet support"是用于使用phonet的nokia usb數據機。(譯注:phonet是nokia開發的面向資料包的通信協定,僅用于nokia maemo/meego産品)

現在,我們可以進入使用802.11規範的無線區域網路驅動了。

主要地,這裡有一個供貨商/裝置特定驅動清單。

"softled support"控制着關于wifi卡/裝置的led燈。

一些晶片組支援的sdio在這個驅動中(atheros ath6kl sdio support)。sdio是用于無線sd卡的sd(secure digital)規範的擴充。sdio代表的是"secure digital input/output"

核心開發者可能注意到一些無線裝置可以支援qos。qos代表"quality of service"(服務品質)。這個特性給予網絡傳輸優先級。假設需要通過網絡傳輸兩組資料。隻有一個可以先發送。qos會先發送最重要的資料。

wan卡需要"generic hdlc layer"。hdlc代表"high-level data link control"(進階資料鍊路控制)。這是一個資料鍊路層協定。

原生hdlc可以通過"raw hdlc support"驅動啟用。

"raw hdlc ethernet device support"驅動允許hdlc層模拟以太網。

chdlc驅動提供了一個hdlc的擴充,同樣也稱作cisco hdlc(cisco hdlc support)。

linux核心同樣也提供了一個hdlc的"frame relay support"(幀中繼)驅動。幀中繼是2層協定。

hdlc同樣支援ppp(synchronous point-to-point protocol (ppp) support)和x.25(x.25 protocol support)。

接下來,這個驅動提供了dlci下的幀中繼(frame relay dlci support)。

"lapb over ethernet driver"建立一個允許使用者在以太網上使用lapb的點到點連接配接到另一台計算機的裝置檔案。這個裝置檔案對于第一個此類裝置通常是/dev/lapb0。

用這個驅動,x.25幀可以通過電話線發送(x.25 async driver)。特别地,這個驅動允許x.25使用異步串行。

對于isa sbni12-xx有一種特殊的驅動(granch sbni12 leased line adapter support)。這種卡對于租用線路的數據機是一種便宜的替代。

下一個驅動允許使用并行連接配接攜帶已安排的流量(multiple line feature support)。這允許linux系統更加有效地在sbni12擴充卡上管理并行連接配接。一些linux使用者聲稱這個驅動雙倍加速了他們的速度。然而,這個我沒有親身測試了解。

接下來,可以配置"ieee 802.15.4 drivers"。這個是對于慢速wan裝置。這是一個控制媒體和無線網絡實體層的标準。這個規範在不同的大洲使用不同的頻率。不如,在歐洲,這類無線裝置會使用868.0-868.6mhz的頻率。

這個目錄中的第一個設定是fake lr-wpan驅動(fake lr-wpan driver with several interconnected devices)。lr-wpan代表"low-rate wireless personal area network"(低速無線個人網絡)。

有趣的事實:目前核心中隻有大約2%的代碼是由linus torvalds寫的。

vmware使用vmxnet3虛拟以太網需要這個驅動(vmware vmxnet3 ethernet driver)。當在為大量使用者編譯核心時,最好将這個啟用為一個子產品,因為一些人可能并不希望在vmware上使用以太網。

hyper-v虛拟網絡需要這個驅動(microsoft hyper-v virtual network driver)。你可能想知道這個是否與微軟的hyper-v相同?是的,linux支援hyper-v。

數字電話服務isdn由這個驅動提供(isdn support)。isdn代表"integrated services digital network"(ISDN)。在法國,isdn被稱為rnis,代表" réseau numérique à intégration de services"。有一台isdn擴充卡,計算機可以開始并接收語音呼叫。這允許計算機用來做因待機或者其他一些電話服務裝置。isdn同樣也可以攜帶視訊資訊。

現在,我們可以進入輸入裝置了(input device support)。這些是給計算機資訊的裝置。滑鼠和鍵盤是最常被使用和了解的輸入裝置。掃描器是另外一種輸入裝置的例子。

首先是一個支援不同觸覺回報裝置的驅動(support for memoryless force-feedback devices)。比如,許多遊戲控制器的震動就是一種觸覺回報。

一些輸入裝置會檢測硬體的狀态(polled input device skeleton)。這類行為需要這個驅動。

使用稀疏鍵盤映射的輸入裝置需要這個驅動(sparse keymap support library)。鍵盤映射是鍵盤的布局資訊。

下面,是另外一種鍵盤映射(matrix keymap support library)。

注意:當為廣泛的使用者組編譯核心時,包含大多數或者全部輸入裝置作為子產品,因為通常不知道使用者可能插到計算機上的裝置類型。

"mouse interface"對于滑鼠建立了兩個不同的裝置檔案。這兩個裝置檔案是/dev/input/mousex 和 /dev/input/mice。

下一個驅動建立了一個psaux裝置檔案并且它是/dev/input/mice的别名 (provide legacy /dev/psaux device)。psaux裝置檔案是/dev/psaux。

如果系統有一塊數位闆,那麼需要設定水準分辨率(horizontal screen resolution)和垂直分辨率(vertical screen resolution)。數位闆是一種支援允許使用者繪畫的觸控筆的觸摸屏。另外的觸摸屏無法支援如此複雜的輸入。

下一個驅動支援操縱杆和遊戲搖桿(joystick interface)。這個驅動會建立/dev/input/jsx檔案。

"event interface"驅動允許輸入裝置通過dev/input/eventx通路。

"event debugging"驅動會輸出所有的輸入事件到系統日志中。除了要調試系統否則不要以任何理由啟用它。顯然地,這麼做為了性能原因,但是我這麼建議禁用的主要原因是安全目的。所有的按鍵都會被明文記錄下來包括密碼。

下面,列出了不同的鍵盤(keyboards)配置驅動,接下來是滑鼠(mice)驅動和操縱杆和遊戲搖桿(joystick/gamepad)驅動。

在這之後,列出了不同特定的平闆硬體/供貨商的不同驅動(tablets)。在這之後是觸摸屏的驅動清單。

最後一組輸入裝置驅動是對于特定硬體和供貨商的雜項驅動清單(miscellaneous devices)。

這個系列的下一篇文章會讨論輸入端口。不要忘記閱讀這個系列的其他文章和這個網站。謝謝!

原文釋出時間為:2014-03-31

本文來自雲栖社群合作夥伴“linux中國”

繼續閱讀