Linux中國

戴文的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))。

再說一次,還有更多的驅動用於供貨商特定設備。

有趣的事實:Linux被用於製作James Cameron的電影"泰坦尼克"的特效。

"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會先發送最重要的數據。

有趣的事實:技術上來說,Linux並不是一個操作系統。Linux是一種內核而GNU/Linux才是操作系統。

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被稱為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)。

注意:當為廣泛的用戶組編譯內核時,包含大多數或者全部輸入設備作為模塊,因為通常不知道用戶可能插到計算機上的設備類型。

有趣的事實:Vanilla內核就是Linux自己的原始內核,是未改變的狀態。

"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)。

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

致粉絲: 謝謝你們的郵件告訴我你們對這些文章的喜愛。

via: http://www.linux.org/threads/the-linux-kernel-configuring-the-kernel-part-15.4793/

譯者:geekpi 校對:wxy

本文由 LCTT 原創翻譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的電子郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國