戴文的Linux內核專題:14 配置內核 (10)
使用WiMAX協議的無線寬頻設備可以啟用這個(WiMAX Wireless Broadband support)。這個類型的無線連接通常需由服務供應商提供的連接服務才能工作(這與3G/4G的概念相同)。WiMAX代表"Worldwide Interoperability for Microwave Access"(微波存取全球互通)。WiMAX的目的是代替DSL。寬頻指的是寬的帶寬和大量信號的傳輸。
射頻開關被用於許多Wifi和藍牙卡中(RF switch subsystem support)。"RF"代表"Radio Frequency"。RF開關路由高頻信號。
RF開關輸入支持同樣也在內核中支持(RF switch input support)。
內核可以控制並請求無線傳輸(Generic rfkill regulator driver)。啟用這個生成一個設備文件(/dev/rfkill)。這個設備文件作為無線設備的介面。
Linux內核支持9P2000協議(Plan 9 Resource Sharing Support (9P2000))。這個網路協議有時稱作Styx。Plan 9的窗口系統(Rio)的Styx和Linux的X11都使用Unix網路套接字。Linux系統可能使用Styx在Styx網路中。Plan 9和Linux可以在一個網路中使用Styx
"9P Virtio Transport"(9P 虛擬io傳輸)系統提供了在虛擬系統上客戶機和主機分區間的傳輸。
內核同樣支持RDMA傳輸(9P RDMA Transport (Experimental))。RDMA代表的是"Remote Direct Memory Access"(遠程內存直接訪問)。這個Plan9上訪問遠程計算機內存的協議。
9P系統與其他內核組件一樣有調試特性(Debug information)。
"CAIF support"支持同樣可以在內核中啟用。CAIF代表" Communication CPU to Application CPU Interface"(通信CPU到應用CPU介面)。這是一個使用數據包的多路復用(MUX)協議並被用於ST-Ericsson(意法愛立信)數據機中。ST-Ericsson是開發這個協議的公司(是的,MeeGo和Android是Linux系統,並且我正在討論Google的Andorid)。MUX協議就是多路復用(multiplexing)協議。多路復用在前面的文章中已經提到過。
下面,cephlib可以加入內核,它可以用於rados塊設備(rbd)h和Ceph文件系統(Ceph核心庫)(譯註:Ceph是一種分散式文件系統)。cephlib是是Ceph的完整核心庫。Ceph是存儲平台。CephFs(Ceph文件系統)是運行在另外一個文件系統的頂部。通常,CephFs運行在EXT2、ZFS、XFS或者BTRFS上面。Rados設備是使用CephFs的塊存儲單元。
ceph的調試特性會損害內核性能,所以只在需要的時候啟用(Include file:line in ceph debug output)。 當啟用這個選項(Use in-kernel support for DNS lookup),CONFIGDNSRESOLVER設施會執行DNS查詢。
近場通信(Near Field Communication (NFC))設備在Linux內核中也被支持(NFC subsystem support)。
如果上面的特性被啟用,那麼NFC控制器介面(NFC Controller Interface (NCI))也應該啟用(NCI protocol support)。這允許主機和NFC控制器相互通信。
NFC要處理HCI幀需要啟用下面一個特性(NFC HCI implementation)。
一些HCI驅動需要一個SHDLC鏈路層(SHDLC link layer)(SHDLC link layer for HCI based NFC drivers)。SHDLC是檢測完整性和管理HCI幀順序的協議。
如果NFC特性啟用了,那麼通常也啟用"NFC LLCP support"(就像上面那樣)。
接下來有一些為特別的NFC設備的驅動。第一個是"NXP PN533 USB driver"。
下一個NFC驅動支持TI的BT/FM/GPS/NFC設備(Texas Instruments NFC WiLink driver)。
下面的是"NXP PN544 NFC driver"。
對於Inside Secure(譯註:法國一家非接觸半導體晶元廠商)生產的microread NFC晶元驅動同樣在內核中支持(Inside Secure microread NFC driver)。
現在,我們將繼續配置與網路無關的驅動。首先我們可以選擇uevent幫助程序的路徑(path to uevent helper)。如今許多計算機不在需要這個特性因為一個uevent幫助程序會在每次執行時fork一個進程處理。這回很快地消耗資源。
在啟動時,內核會創建一個tmpfs/ramfs 文件系統(Maintain a devtmpfs filesystem to mount at /dev)。這個提供了完整的/dev目錄系統。在這兩個文件系統中(tmpfs和ramfs),ramfs兩者中最簡單。"tmpfs"代表"temporary filesystem"(臨時文件系統),而"ramfs"代表"ram filesystem"(內存文件系統)。
下一個設置是devtmpfs文件系統的代碼,它同樣掛載在/dev下(Automount devtmpfs at /dev, after the kernel mounted the rootfs)。
下面的特性允許模塊載入到用戶空間(Userspace firmware loading support)。
為了"Include in-kernel firmware blobs in kernel binary"(譯註:將固件編譯進內核)(這會增加專有固件到內核中),就啟用這個特性。
一些二進位專有驅動需要在啟動時使用。這個特性允許這類軟體這麼做(External firmware blobs to build into the kernel binary)。一些計算機有些引導設備需要只包含專有二進位文件的特殊固件。這個特性不啟用,系統將無法引導。
啟用"Fallback user-helper invocation for firmware loading",允許user-helper(用戶助手) (udev)作為內核載入固件驅動失敗的後備手段載入固件。udev可以載入駐留在非標準路徑的固件。
管理驅動的不跟內核如果被允許就可以生成調試信息(Driver Core verbose debug messages)。
下一步,如果啟用這個特性(Managed device resources verbose debug messages),devres.log文件就可以使用。這是一個用於設備資源的調試系統。
下面一個特性會通過netlink套接字生成一條用戶空間和內核空間的連接(Connector - unified userspace kernelspace linker)。這個套接字使用netlink協議。這是另外一個Linux系統即使在沒有物理網路情況下仍需要網路特性的例子。
用戶空間可以通過套接字得到進城時間的通知(Report process events to userspace)。一些報告事件包含了ID改變、fork、和退出狀態。一些先前啟用的內核特性可能需要這個。最好按配置工具建議的那樣設置。
使用固態硬碟的系統需要MTD的支持(Memory Technology Device (MTD) support)。MTD設備是固態存儲設備。典型的存儲設備與固態硬碟(SSD)不同。用於磁碟單元的標準常規不適用於SSD(讀、寫、擦除)。
大多數會桌面電腦帶有並口(一個有25個洞的連接器),所以他們需要這個特性(Parallel port support)。並口在其他許多鮮為人知的應用中通常用於印表機和ZIP驅動器。並口有25針。
對IBM兼容計算機啟用這個特性(PC-style hardware)。它們是不同類型的計算機。除了IBM計算機(通常運行Windows),還有蘋果計算機。Linxu可以運行在幾乎所有類型的計算機上。
Linux同樣支持Multi-IO PCI卡(Multi-IO cards (parallel and serial))。Multi-IO PCI卡同時擁有並口和串口。串口每次發送或接收1位數據。
下一個特性允許內核"Use FIFO/DMA if available"。這用於特定的並口卡來加速列印。FIFO代表"First In, First Out"(先入先出)。DMA是先前提過的直接內存訪問(Direct Memory Access)。
下面一個特性用於探測Super-IO卡(SuperIO chipset support)。這些探針會發信中斷號、DMA通道和其他類型設備的地址/數量。Super-IO是一種集成IO控制器類型。
PCMCIA的並口支持可以啟用(Support for PCMCIA management for PC-style ports)。
注意:對於許多特性來說,你最好按照配置工具的建議除非你有特別的理由不這麼做。通常地,如果你是交叉編譯或者編譯一個通用內核,那麼你應該熟悉你想要支持的並做出相應的選擇。
在AX88796網路控制器的並口需要這個支持(AX88796 Parallel Port)。
"IEEE 1284 transfer modes"在並口上支持增強型並口(Enhanced Parallel Port (EPP))和增強功能口(Enhanced Capability Port (ECP))並支持印表機狀態回讀。狀態回讀是檢索印表機的狀態。
即插即用("Plug and Play support" (PnP))應該啟用。這允許用戶在系統開機狀態下插入設備並能馬上使用它們。沒有這個特性,用戶不能使用USB設備、印表機或者其他沒有執行特殊任務的設備。系統會自動管理複位(譯註:原文是 "The system will manage the rest automatically")。
下面,用戶可以啟用塊設備(Block devices)。這是一個應該啟用的特性,因為塊設備很常見。
軟碟機也是可以啟用的塊設備(Normal floppy disk support)。
連接到並口的IDE設備也同樣支持(Parallel port IDE device support)。一些外部CD-ROM設備也能通過並口連接。
外部IDE存儲設備單元同樣可以連接到並口(Parallel port IDE disks)。
連接到並口的ATA包介面(ATA Packet Interface (ATAPI)) CD-ROM需要這個驅動(Parallel port ATAPI CD-ROMs)。ATAPI是用於並行ATA(PATA)設備的ATA協議擴展。
還有一個ATAPI磁碟設備可以插到並口中(Parallel port ATAPI disks)。這個驅動會除了支持CD-ROM外還支持其他類型的磁碟。
內核同樣支持通過並口連接ATAPI磁帶設備(Parallel port ATAPI tapes)。
還有許多其他的ATAPI設備可以連接到並口中。結果就是,一個通用驅動被用於管理前面提到過的驅動不支持的設備(Parallel port generic ATAPI devices)。
連接到並口上的IDE設備需要一個特殊的協議用於通信。有很多這樣的協議,其中一個是"ATEN EH-100 protocol"。
一個可選的用於並行IDE設備的協議是"MicroSolutions backpack (Series 5) protocol"。
這裡仍有另外一個並口IDE設備協議(DataStor Commuter protocol)和另一個(DataStor EP-2000 protocol)還有(FIT TD-2000 protocol)。
再提一次,這裡有另外一個協議,但是這個強烈建議用在更新的插在並口上的CD-ROM和PD/CD設備(FIT TD-3000 protocol)。
下面的協議主要用於SyQuest、Avatar、Imation和HP生產的並口設備(Shuttle EPAT/EPEZ protocol)。
Imation SuperDisks需要Shuttle EP1284晶元的支持(Support c7/c8 chips)。
一些其他的並行IDE協議可以啟用,包括:
- Shuttle EPIA protocol
- Freecom IQ ASIC-2 protocol - (用於Maxell Superdisks)
- FreeCom power protocol
- KingByte KBIC-951A/971A protocols
- KT PHd protocol - (用於2.5英寸外置並口硬碟)
- OnSpec 90c20 protocol
- OnSpec 90c26 protocol
注意:這些協議以及支持的插入並口的設備意味著這些都類似於熱插拔設備,就像USB設備插入USB埠一樣。USB和火線人仍舊是使用最流行的埠,因為它們的大小和速度。一個並口設備單元大於USB快閃記憶體因為並口大於USB埠。
下一步,我們有一個對於Micron PCIe的SSD驅動(Block Device Driver for Micron PCIe SSDs)。
你可能已經猜到了- 下面的文章會討論更多的配置.
via: http://www.linux.org/threads/the-linux-kernel-configuring-the-kernel-part-10.4613/
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive