Linux 2.6.19.x 內核編譯配置選項簡介
作者:金步國
版權聲明
本文作者是一位自由軟件愛好者,所以本文雖然不是軟件,但是本著 GPL 的精神發布。任何人都可以自由使用、轉載、復制和再分發,但必須保留作者署名,亦不得對聲明中的任何條款作任何形式的修改,也不得附加任何其它條件。您可以自由鏈接、下載、傳播此文檔,但前提是必須保證全文完整轉載,包括完整的版權信息和作譯者聲明。
BUG報告,切磋與探討
由于作者水平有限,因此不能保證作品內容準確無誤,請在閱讀中自行鑒別。如果你發現了作品中的錯誤,請您來信指出,哪怕是錯別字也好,任何提高作品質量的建議我都將虛心接納。如果你愿意就作品中的相關內容與我進行進一步切磋與探討,也歡迎你與我聯系。聯系方式:MSN: csfrank122@hotmail.com
Code maturity level options
代碼成熟度選項
- Prompt for development and/or incomplete code/drivers
- 顯示尚在開發中或尚未完成的代碼與驅動.除非你是測試人員或者開發者,否則請勿選擇
General setup
常規設置
- Local version - append to kernel release
- 在內核版本后面加上自定義的版本字符串(小于64字符),可以用"uname -a"命令看到 Automatically append version information to the version string
- 自動在版本字符串后面添加版本信息,編譯時需要有perl以及git倉庫支持 Support for paging of anonymous memory (swap)
- 使用交換分區或者交換文件來做為虛擬內存 System V IPC
- System V進程間通信(IPC)支持,許多程序需要這個功能.必選,除非你知道自己在做什么 IPC Namespaces
- IPC命名空間支持,不確定可以不選 POSIX Message Queues
- POSIX消息隊列,這是POSIX IPC中的一部分 BSD Process Accounting
- 將進程的統計信息寫入文件的用戶級系統調用,主要包括進程的創建時間/創建者/內存占用等信息 BSD Process Accounting version 3 file format
- 使用新的第三版文件格式,可以包含每個進程的PID和其父進程的PID,但是不兼容老版本的文件格式 Export task/process statistics through netlink
- 通過netlink接口向用戶空間導出任務/進程的統計信息,與BSD Process Accounting的不同之處在于這些統計信息在整個任務/進程生存期都是可用的 Enable per-task delay accounting
- 在統計信息中包含進程等候系統資源(cpu,IO同步,內存交換等)所花費的時間 UTS Namespaces
- UTS名字空間支持,不確定可以不選 Auditing support
- 審計支持,某些內核模塊(例如SELinux)需要它,只有同時選擇其子項才能對系統調用進行審計 Enable system-call auditing support
- 支持對系統調用的審計 Kernel .config support
- 把內核的配置信息編譯進內核中,以后可以通過scripts/extract-ikconfig腳本來提取這些信息 Enable access to .config through /proc/config.gz
- 允許通過/proc/config.gz訪問內核的配置信息 Cpuset support
- 只有含有大量CPU(大于16個)的SMP系統或NUMA(非一致內存訪問)系統才需要它 Kernel->user space relay support (formerly relayfs)
- 在某些文件系統上(比如debugfs)提供從內核空間向用戶空間傳遞大量數據的接口 Initramfs source file(s)
- initrd已經被initramfs取代,如果你不明白這是什么意思,請保持空白 Optimize for size (Look out for broken compilers!)
- 編譯時優化內核尺寸(使用"-Os"而不是"-O2"參數編譯),有時會產生錯誤的二進制代碼 Enable extended accounting over taskstats
- 收集額外的進程統計信息并通過taskstats接口發送到用戶空間 Configure standard kernel features (for small systems)
- 配置標準的內核特性(為小型系統) Enable 16-bit UID system calls
- 允許對UID系統調用進行過時的16-bit包裝 Sysctl syscall support
- 不需要重啟就能修改內核的某些參數和變量,如果你也選擇了支持/proc,將能從/proc/sys存取可以影響內核行為的參數或變量 Load all symbols for debugging/kksymoops
- 裝載所有的調試符號表信息,僅供調試時選擇 Include all symbols in kallsyms
- 在kallsyms中包含內核知道的所有符號,內核將會增大300K Do an extra kallsyms pass
- 除非你在kallsyms中發現了bug并需要報告這個bug才打開該選項 Support for hot-pluggable devices
- 支持熱插拔設備,如usb與pc卡等,Udev也需要它 Enable support for printk
- 允許內核向終端打印字符信息,在需要診斷內核為什么不能運行時選擇 BUG() support
- 顯示故障和失敗條件(BUG和WARN),禁用它將可能導致隱含的錯誤被忽略 Enable ELF core dumps
- 內存轉儲支持,可以幫助調試ELF格式的程序 Enable full-sized data structures for core
- 在內核中使用全尺寸的數據結構.禁用它將使得某些內核的數據結構減小以節約內存,但是將會降低性能 Enable futex support
- 快速用戶空間互斥體可以使線程串行化以避免競態條件,也提高了響應速度.禁用它將導致內核不能正確的運行基于glibc的程序 Enable eventpoll support
- 支持事件輪循的系統調用 Use full shmem filesystem
- 完全使用shmem來代替ramfs.shmem是基于共享內存的文件系統(可能用到swap),在啟用TMPFS后可以掛載為tmpfs供用戶空間使用,它比簡單的ramfs先進許多 Use full SLAB allocator
- 使用SLAB完全取代SLOB進行內存分配,SLAB是一種優秀的內存分配管理器,推薦使用 Enable VM event counters for /proc/vmstat
- 允許在/proc/vmstat中包含虛擬內存事件記數器
Loadable module support
可加載模塊支持
- Enable loadable module support
- 打開可加載模塊支持,如果打開它則必須通過"make modules_install"把內核模塊安裝在/lib/modules/中 Module unloading
- 允許卸載已經加載的模塊 Forced module unloading
- 允許強制卸載正在使用中的模塊(比較危險) Module versioning support
- 允許使用其他內核版本的模塊(可能會出問題) Source checksum for all modules
- 為所有的模塊校驗源碼,如果你不是自己編寫內核模塊就不需要它 Automatic kernel module loading
- 讓內核通過運行modprobe來自動加載所需要的模塊,比如可以自動解決模塊的依賴關系
Block layer
塊設備層
- Enable the block layer
- 塊設備支持,使用硬盤/USB/SCSI設備者必選 Support for Large Block Devices
- 僅在使用大于2TB的塊設備時需要 Support for tracing block io actions
- 塊隊列IO跟蹤支持,它允許用戶查看在一個塊設備隊列上發生的所有事件,可以通過blktrace程序獲得磁盤當前的詳細統計數據 Support for Large Single Files
- 僅在可能使用大于2TB的文件時需要 IO Schedulers
- IO調度器 Anticipatory I/O scheduler
- 假設一個塊設備只有一個物理查找磁頭(例如一個單獨的SATA硬盤),將多個隨機的小寫入流合并成一個大寫入流,用寫入延時換取最大的寫入吞吐量.適用于大多數環境,特別是寫入較多的環境(比如文件服務器) Deadline I/O scheduler
- 使用輪詢的調度器,簡潔小巧,提供了最小的讀取延遲和尚佳的吞吐量,特別適合于讀取較多的環境(比如數據庫) CFQ I/O scheduler
- 使用QoS策略為所有任務分配等量的帶寬,避免進程被餓死并實現了較低的延遲,可以認為是上述兩種調度器的折中.適用于有大量進程的多用戶系統 Default I/O scheduler
- 默認IO調度器
Processor type and features
中央處理器(CPU)類型及特性
- Symmetric multi-processing support
- 對稱多處理器支持,如果你有多個CPU或者使用的是多核CPU就選上.此時"Enhanced Real Time Clock Support"選項必須開啟,"Advanced Power Management"選項必須關閉 Subarchitecture Type
- 處理器的子架構,大多數人都應當選擇"PC-compatible" Processor family
- 處理器系列,請按照你實際使用的CPU選擇 Generic x86 support
- 通用x86支持,如果你的CPU能夠在上述"Processor family"中找到就別選 HPET Timer Support
- HPET是替代8254芯片的新一代定時器,i686及以上級別的主板都支持,可以安全的選上 Maximum number of CPUs
- 支持的最大CPU數,每增加一個內核將增加8K體積 SMT (Hyperthreading) scheduler support
- 支持Intel的超線程(HT)技術 Multi-core scheduler support
- 針對多核CPU進行調度策略優化 Preemption Model
- 內核搶占模式 No Forced Preemption (Server)
- 適合服務器環境的禁止內核搶占 Voluntary Kernel Preemption (Desktop)
- 適合普通桌面環境的自愿內核搶占 Preemptible Kernel (Low-Latency Desktop)
- 適合運行實時程序的主動內核搶占 Preempt The Big Kernel Lock
- 可以搶占大內核鎖,應用于實時要求高的場合,不適合服務器環境 Machine Check Exception
- 讓CPU檢測到系統故障時通知內核,以便內核采取相應的措施(如過熱關機等) Check for non-fatal errors on AMD Athlon/Duron / Intel Pentium 4
- 每5秒檢測一次這些cpu的非致命錯誤并糾正它們,同時記入日志 check for P4 thermal throttling interrupt
- 當P4的cpu過熱時顯示一條警告消息 Enable VM86 support
- 虛擬X86支持,在DOSEMU下運行16-bit程序或XFree86通過BIOS初始化某些顯卡的時候才需要 Toshiba Laptop support
- Toshiba筆記本模塊支持 Dell laptop support
- Dell筆記本模塊支持 Enable X86 board specific fixups for reboot
- 修正某些舊x86主板的重起bug,這種主板基本絕種了 /dev/cpu/microcode - Intel IA32 CPU microcode support
- 使用不隨Linux內核發行的IA32微代碼,你必需有IA32微代碼二進制文件,僅對Intel的CPU有效 /dev/cpu/*/msr - Model-specific register support
- 在多cpu系統中讓特權CPU訪問x86的MSR寄存器 /dev/cpu/*/cpuid - CPU information support
- 能從/dev/cpu/x/cpuid獲得CPU的唯一標識符(CPUID) Firmware Drivers
- 固件驅動程序 BIOS Enhanced Disk Drive calls determine boot disk
- 有些BIOS支持從某塊特定的硬盤啟動(如果BIOS不支持則可能無法啟動),目前大多數BIOS還不支持 BIOS update support for DELL systems via sysfs
- 僅適用于DELL機器 Dell Systems Management Base Driver
- 僅適用于DELL機器 High Memory Support
- 最高內存支持,總內存小于等于1G的選"off",大于4G的選"64G" Memory split
- 如果你不是絕對清楚自己在做什么,不要改動這個選項 Memory model
- 一般選"Flat Memory",其他選項涉及內存熱插拔 64 bit Memory and IO resources
- 使用64位的內存和IO資源 Allocate 3rd-level pagetables from highmem
- 在內存很多(大于4G)的機器上將用戶空間的頁表放到高位內存區,以節約寶貴的低端內存 Math emulation
- 數學協處理器仿真,486DX以上的cpu就不要選它了 MTRR (Memory Type Range Register) support
- 打開它可以提升PCI/AGP總線上的顯卡2倍以上的速度,并且可以修正某些BIOS錯誤 Boot from EFI support
- EFI是一種可代替傳統BIOS的技術(目前的Grub/LILO尚不能識別它),但是現在遠未普及 Enable kernel irq balancing
- 讓內核將irq中斷平均分配給多個CPU以進行負載均衡,但是要配合irqbanlance守護進程才行 Use register arguments
- 使用"-mregparm=3"參數編譯內核,將前3個參數以寄存器方式進行參數調用,可以生成更緊湊和高效的代碼 Enable seccomp to safely compute untrusted bytecode
- 只有嵌入式系統可以不選 Timer frequency
- 內核時鐘頻率,桌面推薦"1000 HZ",服務器推薦"100 HZ"或"250 HZ" kexec system call
- 提供kexec系統調用,可以不必重啟而切換到另一個內核 kernel crash dumps
- 被kexec啟動后產生內核崩潰轉儲 Physical address where the kernel is loaded
- 內核加載的物理地址,除非你知道自己在做什么,否則不要修改.在提供kexec系統調用的情況下可能要修改它 Support for hot-pluggable CPUs
- 對熱插拔CPU提供支持 Compat VDSO support
- 如果Glibc版本大于等于2.3.3就不選,否則就選上
Power management options
電源管理選項
- Power Management support
- 電源管理有APM和ACPI兩種標準且不能同時使用.即使關閉該選項,X86上運行的Linux也會在空閑時發出HLT指令將CPU進入睡眠狀態 Legacy Power Management API
- 傳統的電源管理API,比如軟關機和系統休眠等接口 Power Management Debug Support
- 僅供調試使用 Driver model /sys/devices/.../power/state files
- 內核幫助文檔反對使用該選項,即將被廢除 ACPI (Advanced Configuration and Power Interface) Support
- 必須運行acpid守護程序ACPI才能起作用.ACPI是為了取代APM而設計的,因此應該盡量使用ACPI而不是APM AC Adapter
- 如果你的系統可以在AC和電池之間轉換就可以選 Battery
- 通過/proc/acpi/battery向用戶提供電池狀態信息,用電池的筆記本可以選 Button
- 守護程序捕獲Power,Sleep,Lid按鈕事件,并根據/proc/acpi/event做相應的動作,軟件控制的poweroff需要它 Video
- 僅對集成在主板上的顯卡提供ACPI2.0支持,且不是所有集成顯卡都支持 Generic Hotkey
- 統一的熱鍵驅動,建議不選 Fan
- 允許通過用戶層的程序來對系統風扇進行控制(開,關,查詢狀態),支持它的硬件并不多 Dock
- 支持由ACPI控制的集線器(docking stations) Processor
- 讓ACPI處理空閑狀態,并使用ACPI C2和C3處理器狀態在空閑時節省電能,同時它還被cpufreq的"Performance-state drivers"選項所依賴 Thermal Zone
- 系統溫度過高時可以利用ACPI thermal zone及時調整工作狀態以避免你的CPU被燒毀 ASUS/Medion Laptop Extras
- ASUS筆記本專用,以提供額外按鈕的支持,用戶可以通過/proc/acpi/asus來打開或者關閉LCD的背光/調整亮度/定制LED的閃爍指示等功能 IBM ThinkPad Laptop Extras
- IBM ThinkPad專用 Toshiba Laptop Extras
- Toshiba筆記本專用 Disable ACPI for systems before Jan 1st this year
- 輸入四位數的年份,在該年的1月1日前不使用ACPI的功能("0"表示一直使用) Debug Statements
- 詳細的ACPI調試信息,不搞開發就別選 Power Management Timer Support
- 這個Timer在所有ACPI兼容的平臺上都可用,且不會受PM功能的影響,建議總是啟用它.如果你在kernel log中看到了'many lost ticks'那就必須啟用它 ACPI0004,PNP0A05 and PNP0A06 Container Driver
- 支持內存和CPU的熱插拔 Smart Battery System
- 支持依賴于I2C的"智能電池".這種電池非常老舊且罕見,還與當前的ACPI標準兼容性差 APM (Advanced Power Management) BIOS Support
- APM在SMP機器上必須關閉,一般來說當前的筆記本都支持ACPI,所以應盡量關閉該該選項 Ignore USER SUSPEND
- 只有NEC Versa M系列的筆記本才需要選擇這一項 Enable PM at boot time
- 系統啟動時即啟用APM,選上這個選項能讓系統自動的進行電源管理,但常常導致啟動時死機 Make CPU Idle calls when idle
- 系統空閑時調用空閑指令(halt),只有老式的CPU才需要選它,且對于SMP系統必須關閉 Enable console blanking using APM
- 在屏幕空白時關閉LCD背光,事實上對所有的筆記本都無效 RTC stores time in GMT
- 將硬件時鐘應該設為格林威治時間,否則視為本地時間.建議你使用GMT,這樣你無須為時區的改變而擔心 Allow interrupts during APM BIOS calls
- 允許APM的BIOS調用時中斷,IBM Thinkpad的一些新機器需要這項.如果休眠時掛機(包括睡下去就醒不來),可以試試它 Use real mode APM BIOS call to power off
- 此驅動為某些有Bug的BIOS準備,如果你的系統不能正常關機或關機時崩潰,可以試試它 CPU Frequency scaling
- 允許動態改變CPU主頻,達到省電和降溫的目的,必須同時啟用下面的一種governor才行 Enable CPUfreq debugging
- 允許對CPUfreq進行調試 CPU frequency translation statistics
- 通過sysfs文件系統輸出CPU頻率變換的統計信息 CPU frequency translation statistics details
- 輸出詳細的CPU頻率變換統計信息 Default CPUFreq governor
- 默認的CPU頻率調節器 'performance' governor
- '性能'優先,靜態的將頻率設置為cpu支持的最高頻率 'powersave' governor
- '節能'優先,靜態的將頻率設置為cpu支持的最低頻率 'userspace' governor for userspace frequency scaling
- 既允許手動調整cpu頻率,也允許用戶空間的程序動態的調整cpu頻率(需要額外的調頻軟件,比如cpufreqd) 'ondemand' cpufreq policy governor
- '立即響應',周期性的考察CPU負載并自動的動態調整cpu頻率(不需要額外的調頻軟件),適合臺式機 'conservative' cpufreq governor
- '保守',和'ondemand'相似,但是頻率的升降是漸變式的(幅度不會很大),更適合用于筆記本/PDA/AMD64環境 ACPI Processor P-States driver
- 將ACPI2.0的處理器性能狀態報告給CPUFreq processor drivers以決定如何調整頻率,該選項依賴于ACPI->Processor {省略的部分請按照自己實際使用的CPU選擇}/proc/acpi/processor/../performance interface
- 內核幫助文檔反對使用該選項,即將被廢除 Relaxed speedstep capability checks
- 放松對系統的speedstep兼容性檢查,僅在某些老舊的Intel系統上需要打開
Bus options (PCI, PCMCIA, EISA, MCA, ISA)
總線選項
- PCI support
- PCI支持,如果使用了PCI或PCI Express設備就必選 PCI access mode
- PCI訪問模式,強列建議選"Any"(系統將優先使用"MMConfig",然后使用"BIOS",最后使用"Direct"檢測PCI設備) PCI Express support
- PCI Express支持(目前主要用于顯卡和千兆網卡) PCI Express Hotplug driver
- 如果你的主板和設備都支持PCI Express熱插拔就可以選上 Use polling mechanism for hot-plug events
- 對熱插拔事件采用輪詢機制,僅用于測試目的 Root Port Advanced Error Reporting support
- 由PCI Express AER驅動程序處理發送到Root Port的錯誤信息 Message Signaled Interrupts (MSI and MSI-X)
- PCI Express支持兩類中斷:INTx使用傳統的IRQ中斷,可以與現行的PCI總線的驅動程序和操作系統兼容;MSI則是通過inbound Memory Write觸發和發送中斷,更適合多CPU系統.可以使用"pci=nomsi"內核引導參數關閉MSI PCI Debugging
- 將PCI調試信息輸出到系統日志里 Interrupts on hypertransport devices
- 允許本地的hypertransport設備使用中斷 ISA support
- 現在基本上沒有ISA的設備了,如果你有就選吧 MCA support
- 微通道總線,老舊的IBM的臺式機和筆記本上可能會有這種總線 NatSemi SCx200 support
- 在使用AMD Geode處理器的機器上才可能有 PCCARD (PCMCIA/CardBus) support
- PCMCIA卡(主要用于筆記本)支持 Enable PCCARD debugging
- 僅供調試 16-bit PCMCIA support
- 一些老的PCMCIA卡使用16位的CardBus 32-bit CardBus support
- 當前的PCMCIA卡基本上都是32位的CardBus CardBus yenta-compatible bridge support
- 使用PCMCIA卡的基本上都需要選擇這一項,子項請按照自己實際使用的PCMCIA卡選擇 {省略的部分請按照自己實際使用的PCMCIA卡選擇}PCI Hotplug Support
- PCI熱插拔支持,如果你有這樣的設備就到子項中去選吧
Executable file formats
可執行文件格式
- Kernel support for ELF binaries
- ELF是開放平臺下最常用的二進制文件格式,支持動態連接,支持不同的硬件平臺.除非你知道自己在做什么,否則必選 Kernel support for a.out and ECOFF binaries
- 早期UNIX系統的可執行文件格式,目前已經被ELF格式取代 Kernel support for MISC binaries
- 允許插入二進制的封裝層到內核中,使用Java,.NET,Python,Lisp等語言編寫的程序時需要它
Networking
網絡
- Networking options
- 網絡選項 Network packet debugging
- 在調試不合格的包時加上額外的附加信息,但在遇到Dos攻擊時你可能會被日志淹沒 Packet socket
- 這種Socket可以讓應用程序(比如tcpdump,iptables)直接與網絡設備通訊,而不通過內核中的其它中介協議 Packet socket: mmapped IO
- 讓Packet socket驅動程序使用IO映射機制以使連接速度更快 Unix domain sockets
- 一種僅運行于本機上的效率高于TCP/IP的Socket,簡稱Unix socket.許多程序都使用它在操作系統內部進行進程間通信(IPC),比如X Window和syslog Transformation user configuration interface
- 為IPsec(可在ip層加密)之類的工具提供XFRM用戶配置接口支持 Transformation sub policy support
- XFRM子策略支持,僅供開發者使用 PF_KEY sockets
- 用于可信任的密鑰管理程序和操作系統內核內部的密鑰管理進行通信,IPsec依賴于它 TCP/IP networking
- TCP/IP協議當然要選 IP: multicasting
- 群組廣播,似乎與網格計算有關,僅在使用MBONE的時候才需要 IP: advanced router
- 高級路由,如果想做一個路由器就選吧 IP: policy routing
- 策略路由 IP: equal cost multipath
- 用于路由的基于目的地址的負載均衡 IP: verbose route monitoring
- 顯示冗余的路由監控信息 IP: kernel level autoconfiguration
- 在內核啟動時自動配置ip地址/路由表等,需要從網絡啟動的無盤工作站才需要這個東西 IP: tunneling
- IP隧道,將一個IP報文封裝在另一個IP報文內的技術 IP: GRE tunnels over IP
- 基于IP的GRE(通用路由封裝)隧道 IP: multicast routing
- 多重傳播路由 IP: ARP daemon support
- 這東西尚處于試驗階段就已經被廢棄了 IP: TCP syncookie support
- 抵抗SYN flood攻擊的好東西,要啟用它必須同時啟用/proc文件系統和"Sysctl support",然后在系統啟動并掛載了/proc之后執行"echo 1 >/proc/sys/net/ipv4/tcp_syncookies"命令 IP: AH transformation
- IPsec驗證頭(AH)實現了數據發送方的驗證處理,可確保數據既對于未經驗證的站點不可用也不能在路由過程中更改 IP: ESP transformation
- IPsec封閉安全負載(ESP)實現了發送方的驗證處理和數據加密處理,用以確保數據不會被攔截/查看或復制 IP: IPComp transformation
- IPComp(IP靜荷載壓縮協議),用于支持IPsec IP: IPsec transport mode
- IPsec傳輸模式,常用于對等通信,用以提供內網安全.數據包經過了加密但IP頭沒有加密,因此任何標準設備或軟件都可查看和使用IP頭 IP: IPsec tunnel mode
- IPsec隧道模式,用于提供外網安全(包括虛擬專用網絡).整個數據包(數據頭和負載)都已經過加密處理且分配有新的ESP頭/IP頭和驗證尾,從而能夠隱藏受保護站點的拓撲結構 IP: IPsec BEET mode
- IPsec BEET模式 INET: socket monitoring interface
- socket監視接口,一些Linux本地工具(如:包含ss的iproute2)需要使用它 TCP: advanced congestion control
- 高級擁塞控制,如果沒有特殊需求(比如無線網絡)就別選了,內核會自動將默認的擁塞控制設為"Cubic"并將"Reno"作為候補 IP: Virtual Server Configuration
- IP虛擬服務器允許你基于多臺物理機器構建一臺高性能的虛擬服務器,不玩集群就別選了 The IPv6 protocol
- 你要是需要IPv6就選吧 NetLabel subsystem support
- NetLabel子系統為諸如CIPSO與RIPSO之類能夠在分組信息上添加標簽的協議提供支持,如果你看不懂就別選了 Security Marking
- 對網絡包進行安全標記,類似于nfmark,但主要是為安全目的而設計,如果你不明白的話就別選 Network packet filtering (replaces ipchains)
- Netfilter可以對數據包進行過濾和修改,可以作為防火墻("packet filter"或"proxy-based")或網關(NAT)或代理(proxy)或網橋使用.選中此選項后必須將"Fast switching"關閉,否則將前功盡棄 Network packet filtering debugging
- 僅供開發者調試Netfilter使用 Bridged IP/ARP packets filtering
- 如果你希望使用一個針對橋接的防火墻就打開它 Core Netfilter Configuration
- 核心Netfilter配置(當包流過Chain時如果match某個規則那么將由該規則的target來處理,否則將由同一個Chain中的下一個規則進行匹配,若不match所有規則那么最終將由該Chain的policy進行處理) Netfilter netlink interface
- 允許Netfilter在與用戶空間通信時使用新的netlink接口.netlink Socket是Linux用戶態與內核態交流的主要方法之一,且越來越被重視. Netfilter NFQUEUE over NFNETLINK interface
- 通過NFNETLINK接口對包進行排隊 Netfilter LOG over NFNETLINK interface
- 通過NFNETLINK接口對包記錄.該選項廢棄了ipt_ULOG和ebg_ulog機制,并打算在將來廢棄基于syslog的ipt_LOG和ip6t_LOG模塊 Layer 3 Independent Connection tracking
- 獨立于第三層的鏈接跟蹤,通過廣義化的ip_conntrack支持其它非IP協議的第三層協議 Netfilter Xtables support
- 如果你打算使用ip_tables,ip6_tables,arp_tables之一就必須選上 "CLASSIFY" target support
- 允許為包設置優先級,一些排隊規則(atm,cbq,dsmark,pfifo_fast,htb,prio)需要使用它 "CONNMARK" target support
- 類似于"MARK",但影響的是連接標記的值 "DSCP" target support
- 允許對ip包頭部的DSCP(Differentiated Services Codepoint)字段進行修改,該字段常用于Qos "MARK" target support
- 允許對包進行標記(通常配合ip命令使用),這樣就可以改變路由策略或者被其它子系統用來改變其行為 "NFQUEUE" target Support
- 用于替代老舊的QUEUE(iptables內建的target之一),因為NFQUEUE能支持最多65535個隊列,而QUEUE只能支持一個 "NOTRACK" target support
- 允許規則指定哪些包不進入鏈接跟蹤/NAT子系統 "SECMARK" target support
- 允許對包進行安全標記,用于安全子系統 "CONNSECMARK" target support
- 針對鏈接進行安全標記,同時還會將連接上的標記還原到包上(如果鏈接中的包尚未進行安全標記),通常與SECMARK target聯合使用 "comment" match support
- 允許你在iptables規則集中加入注釋 "connbytes" per-connection counter match support
- 允許針對單個連接內部每個方向(進/出)匹配已經傳送的字節數/包數 "connmark" connection mark match support
- 允許針對每個會話匹配先前由"CONNMARK"設置的標記值 "conntrack" connection tracking match support
- 連接跟蹤匹配,是"state"的超集,它允許額外的鏈接跟蹤信息,在需要設置一些復雜的規則(比如網關)時很有用 "DCCP" protocol match support
- DCCP是打算取代UDP的新傳輸協議,它在UDP的基礎上增加了流控和擁塞控制機制,面向實時業務 "DSCP" match support
- 允許對IP包頭的DSCP字段進行匹配 "ESP" match support
- 允許對IPSec包中的ESP頭進行匹配,使用IPsec的話就選上吧 "helper" match support
- 加載特定協議的連接跟蹤輔助模塊,由該模塊過濾所跟蹤的連接類型的包,比如ip_conntrack_ftp模塊 "length" match support
- 允許對包的長度進行匹配 "limit" match support
- 允許根據包的進出速率進行規則匹配,常和"LOG target"配合使用以抵抗某些Dos攻擊 "mac" address match support
- 允許根據以太網的MAC進行匹配,常用于無線網絡環境 "mark" match support
- 允許對先前由"MARK"標記的特定標記值進行匹配 IPsec "policy" match support
- 使用IPsec就選上吧 Multiple port match support
- 允許對TCP或UDP包同時匹配多個端口(通常情況下只能匹配一個端口) "physdev" match support
- 允許對到達的或將要離開的物理橋端口進行匹配 "pkttype" packet type match support
- 允許對封包目的地址類別(廣播/群播/直播)進行匹配 "quota" match support
- 允許對總字節數的限額值進行匹配 "realm" match support
- 允許對iptables中的路由子系統中的realm值進行匹配 "sctp" protocol match support
- 流控制傳輸協議(SCTP),十年以后也許能夠普及的東西 "state" match support
- 這是對包進行分類的有力工具,它允許利用連接跟蹤信息對連接中處于特定狀態的包進行匹配 "statistic" match support
- 允許根據一個給定的百分率對包進行周期性的或隨機性的匹配 "string" match support
- 允許根據包所承載的數據中包含的特定字符串進行匹配 "tcpmss" match support
- 允許根據TCP SYN包頭中的MSS(最大分段長度)選項的值進行匹配 IP: Netfilter Configuration
- 針對IPv4的Netfilter配置 Connection tracking (required for masq/NAT)
- 鏈接跟蹤.可用于報文偽裝或地址轉換,也可用于增強包過濾能力 Connection tracking flow accounting
- 允許針對每個連接記錄已經傳送的字節/包數,常用于connbytes match Connection mark tracking support
- 允許對連接進行標記,與針對單獨的包進行標記的不同之處在于它是針對連接流的.CONNMARK target和connmark match需要它的支持 Connection tracking security mark support
- 允許對連接進行安全標記,通常這些標記包(SECMARK)復制到其所屬連接(CONNSECMARK),再從連接復制到其關聯的包(SECMARK) Connection tracking events
- 連接跟蹤事件支持.如果啟用這個選項,連接跟蹤代碼將提供一個notifier鏈,它可以被其它內核代碼用來獲知連接跟蹤狀態的改變 Connection tracking netlink interface
- 支持基于netlink的用戶空間接口 SCTP protocol connection tracking support
- SCTP是IP網面向多媒體通信的新一代的流控制傳輸協議 FTP protocol support
- FTP協議 IRC protocol support
- IRC協議是一種用來實時聊天協議,用過mIRC的人應當不陌生 NetBIOS name service protocol support
- NetBIOS名字服務協議 TFTP protocol support
- TFTP是基于UDP的比FTP簡單的文件傳輸協議 Amanda backup protocol support
- Amanda備份協議 PPTP protocol support
- 點對點隧道協議(PPTP)是一種支持多協議虛擬專用網絡的網絡技術,ADSL用戶對它應該很熟悉 H.323 protocol support
- ITU-T提出的用于IP電話的協議 SIP protocol support
- IETE提出的用于IP電話的協議 IP Userspace queueing via NETLINK
- 已廢棄 IP tables support (required for filtering/masq/NAT)
- 要用iptables就肯定要選上 IP range match support
- 允許對ip地址的范圍進行匹配 TOS match support
- 允許對ip包頭的TOS(Type Of Service)字段進行匹配 recent match support
- 可以創建一個或多個剛剛使用過的ip地址列表,然后根據這些列表進行匹配 ECN match support
- 允許對TCP/IP包頭的ECN(Explicit Congestion Notification)字段進行匹配.ECN是一種顯式擁塞通知技術,它不但要求路由器支持而且要求端到端主機的支持,其基本思想是當路由器發生早期擁塞時不是丟棄包而是盡量對包進行標記,接收方接到帶有ECN提示的包時,通知發送方網絡即將發生擁塞,也就是它通過對包的標記提示TCP源即將發生擁塞,從而引發擁塞避免算法 AH match support
- 允許對IPSec包頭的AH字段進行匹配 TTL match support
- 允許對ip包頭的TTL(生存期)字段進行匹配 Owner match support
- 允許對本地生成的包按照其宿主(user,group,process,session)進行匹配 address type match support
- 允許對地址類型(單播,本地,廣播)進行匹配 hashlimit match support
- 是limit的升級,它基于你選擇的ip地址與/或端口動態的創建以limit為桶(bucket)的哈希表.它可以創建諸如"為每個特定的目標IP分配10kpps"或"允許每個特定的源IP分配500pps"之類的規則 Packet filtering
- 定義filter表以允許對包進行過濾 REJECT target support
- 允許返回一個ICMP錯誤而不是簡單的丟棄包 LOG target support
- 允許將符合條件的包頭信息通過syslog進行記錄 ULOG target support
- 透過netlink socket將符合條件的封包交給用戶空間的ulogd守護進程.反對使用該選項,因為它已經被NETFILTER_NETLINK_LOG代替 TCPMSS target support
- 允許修改TCP包頭中的MSS(最大分段長度)選項值 Full NAT
- 允許進行偽裝/端口轉發以及其它的NAT功能,僅在你需要使用iptables中的nat表時才需要選擇 Packet mangling
- 在iptables中啟用mangle表以便對包進行各種修改,常用于改變包的路由 raw table support (required for NOTRACK/TRACE)
- 在iptables中添加一個'raw'表,該表在netfilter框架中非常靠前,并在PREROUTING和OUTPUT鏈上有鉤子,從而可以對收到的數據包在連接跟蹤前進行處理 ARP tables support
- ARP表支持.只有在局域網中才有ARP欺騙問題,另外路由器也會遭到ARP欺騙 ARP packet filtering
- ARP包過濾.對于進入和離開本地的ARP包定義一個filter表,在橋接的情況下還可以應用于被轉發ARP包 ARP payload mangling
- 允許對ARP包的荷載部分進行修改,比如修改源和目標物理地址 IPv6: Netfilter Configuration
- 針對IPv6的Netfilter配置,需要的話可以參考前面IPv4的Netfilter配置進行選擇 DECnet: Netfilter Configuration
- 針對DECnet的Netfilter配置 Bridge: Netfilter Configuration
- 針對橋接的Netfilter配置 DCCP Configuration
- 數據報擁塞控制協議在UDP的基礎上增加了流控和擁塞控制機制,使數據報協議能夠更好地用于流媒體業務的傳輸 SCTP Configuration
- 流控制傳輸協議是一種新興的傳輸層協議.TCP協議一次只能連接一個IP地址而在SCTP協議一次可以連接多個IP地址且可以自動平衡網絡負載,一旦某一個IP地址失效會自動將網絡負載轉移到其他IP地址上 TIPC Configuration
- 透明內部進程間通信協議,以共享內存為基礎實現任務和資源的調度,專門用于內部集群通信 Asynchronous Transfer Mode (ATM)
- 異步傳輸模式(ATM)支持 802.1d Ethernet Bridging
- 802.1d以太網橋 802.1Q VLAN Support
- 802.1Q虛擬局域網 DECnet Support
- DECnet是一種很生僻的協議 ANSI/IEEE 802.2 LLC type 2 Support
- 看不懂可以不選 The IPX protocol
- IPX協議 Appletalk protocol support
- 與Mac機器通信的協議 CCITT X.25 Packet Layer
- 大約沒人需要這東西 LAPB Data Link Driver
- 大約沒人需要這東西 Acorn Econet/AUN protocols
- 一種被Acorn計算機使用的又老又慢的協議 WAN router
- 廣域網路由 QoS and/or fair queueing
- 如果你需要Qos或公平隊列就選吧 Network testing
- 網絡測試,僅供調試使用 Amateur Radio support
- 業余無線電支持 IrDA (infrared) subsystem support
- 紅外線支持,比如無線鼠標或無線鍵盤 Bluetooth subsystem support
- 藍牙支持 Generic IEEE 802.11 Networking Stack
- 通用無線局域網(IEEE 802.11系列協議)支持
Device Drivers
設備驅動程序
- Generic Driver Options
- 驅動程序通用選項 Select only drivers that don't need compile-time external firmware
- 只顯示那些不需要內核對外部設備的固件作map支持的驅動程序,除非你有某些怪異硬件,否則請選上 Prevent firmware from being built
- 不編譯固件.固件一般是隨硬件的驅動程序提供的,僅在更新固件的時候才需要重新編譯.建議選上 Userspace firmware loading support
- 提供某些內核之外的模塊需要的用戶空間固件加載支持,在內核樹之外編譯的模塊可能需要它 Driver Core verbose debug messages
- 讓驅動程序核心在系統日志中產生冗長的調試信息,僅供調試 Connector - unified userspace <-> kernelspace linker
- 統一的用戶空間和內核空間連接器,工作在netlink socket協議的頂層.不確定可以不選 Report process events to userspace
- 向用戶空間報告進程事件(fork,exec,id變化(uid,gid,suid) Memory Technology Devices (MTD)
- 特殊的存儲技術裝置,如常用于數碼相機或嵌入式系統的閃存卡 Parallel port support
- 并口支持(傳統的打印機接口) Plug and Play support
- 即插即用支持,若未選則應當在BIOS中關閉"PnP OS".這里的選項與PCI設備無關 PnP Debug Messages
- 該選項僅供調試使用 ISA Plug and Play support
- ISA設備即插即用支持 Plug and Play BIOS support
- Linux使用"Plug and Play BIOS"規范v1.0A(1994年)中定義的PNPBIOS自動檢測主板上的資源和設備,但是其中的某些特性目前尚未實現,比如:事件通知/擴展塢(Docking Station)信息/ISAPNP服務.如果你希望由內核檢測主板上的設備并為其分配資源(此時BIOS中的"PnP OS"必須開啟)可以選上,此外,PNPBIOS還有助于防止主板上的設備與其他總線設備沖突.不過需要注意的是ACPI將會逐漸取代PNPBIOS(雖然目前兩者可以共存),所以如果你的系統不使用ISA設備并且支持ACPI,建議你不要選中該選項并將BIOS中的"PnP OS"關閉 Plug and Play BIOS /proc interface
- 該選項僅供調試使用 Plug and Play ACPI support
- 讓Linux使用PNPACPI自動檢測主板上內建的設備并為其分配資源(即使這些設備已被BIOS禁用),它有助于避免設備之間的資源(如中斷)沖突 Block devices
- 塊設備 Normal floppy disk support
- 通用軟驅支持 XT hard disk support
- 古董級產品 Parallel port IDE device support
- 通過并口與計算機連接的IDE設備,比如某些老舊的外接光驅或硬盤之類 Compaq SMART2 support
- 基于Compaq SMART2控制器的磁盤陣列卡 Compaq Smart Array 5xxx support
- 基于Compaq SMART控制器的磁盤陣列卡 Mylex DAC960/DAC1100 PCI RAID Controller support
- 古董級產品 Micro Memory MM5415 Battery Backed RAM support
- 一種使用電池做后備電源的內存 Loopback device support
- Loopback是指拿文件來模擬塊設備,比如可以將一個iso9660鏡像文件掛成一個文件系統 Cryptoloop Support
- 使用系統提供的加密API對Loopback設備加密,但不能用于日志型文件系統 Network block device support
- 讓你的電腦成為網絡塊設備的客戶端 Promise SATA SX8 support
- 基于Promise公司的SATA SX8控制器的RAID卡 Low Performance USB Block driver
- 它不是用來支持U盤的,不懂的就別選 RAM disk support
- 內存中的虛擬磁盤,大小固定(由下面的選項決定,也可給內核傳遞"ramdisk_size=參數"來決定),它的功能和代碼都比shmem簡單許多 Default number of RAM disks
- 默認RAM disk的數量 Default RAM disk size (kbytes)
- 僅在你真正知道它的含義時才允許修改 Default RAM disk block size (bytes)
- 每一個RAM disk的默認塊大小,設為PAGE_SIZE的值時效率最高 Initial RAM filesystem and RAM disk (initramfs/initrd) support
- 如果啟動計算機所必須的模塊都在內核里的話可以不選此項 Packet writing on CD/DVD media
- CD/DVD刻錄支持 Free buffers for data gathering
- 用于收集寫入數據的緩沖區個數(每個占用64Kb內存),緩沖區越多性能越好 Enable write caching
- 為CD-R/W設備啟用寫入緩沖,目前這是一個比較危險的選項 ATA over Ethernet support
- 以太網ATA設備支持 Misc devices
- 雜項設備 ATA/ATAPI/MFM/RLL support
- 通常是IDE硬盤和ATAPI光驅.純SCSI系統且不使用這些接口可以不選 Max IDE interfaces
- 最大IDE接口數,兩個IDE插槽一般相當于4個接口 Enhanced IDE/MFM/RLL disk/cdrom/tape/floppy support
- EIDE支持是當然要選的,否則540MB以上的硬盤都不認識而且不支持主從設備 Support for SATA (deprecated; conflicts with libata SATA driver)
- 反對使用,該選項與libata SATA驅動有沖突 Use old disk-only driver on primary interface
- 沒人用這些古董了 Include IDE/ATA-2 DISK support
- ATA-2支持,除非你的硬盤是古董,否則必選 Use multi-mode by default
- 如果不確定就別選,除非出現幫助中指出的錯誤 PCMCIA IDE support
- 通過PCMCIA卡與計算機連接的IDE設備,比如某些外置硬盤或光驅 Include IDE/ATAPI CDROM support
- 有IDE光驅的就選 Include IDE/ATAPI TAPE support
- 有IDE磁帶的就選 Include IDE/ATAPI FLOPPY support
- 有IDE軟驅的就選 SCSI emulation support
- SCSI仿真,以前刻錄光碟時需要,現在不需要了 IDE Taskfile Access
- 對介質進行直接的原始訪問,它是一個復雜且有效的測試和校驗硬件的方案,可以在驅動層之下執行數據恢復工作 generic/default IDE chipset support
- 通用IDE芯片組支持 CMD640 chipset bugfix/support
- 586以前的主板上常用,毛病多多 PNP EIDE support
- 外接的即插即用EIDE卡支持 PCI IDE chipset support
- 基于PCI總線的IDE芯片組支持,幫助IDE驅動自動檢測和配置所有基于PCI的IDE接口 Sharing PCI IDE interrupts support
- 與其他PCI設備共享中斷,一來可能沖突,二來降低性能,不選為妙 Boot off-board chipsets first support
- 不使用外接IDE控制器的就別選,使用外接IDE控制器的注意看幫助 Generic PCI IDE Chipset Support
- 通用的PCI IDE芯片組支持,如果你的芯片組在下面能找到就別選 OPTi 82C621 chipset enhanced support
- OPTi 82C621 EIDE控制器 RZ1000 chipset bugfix/support
- 486/586年代的玩藝 Generic PCI bus-master DMA support
- 通用的PCI總線控制器DMA支持,586以上的系統都支持 Force enable legacy 2.0.X HOSTS to use DMA
- 歷史遺留問題,別管它,不選 Use PCI DMA by default when available
- 默認啟用DMA,586以上的系統都支持,建議選擇 Enable DMA only for disks
- 只對硬盤啟用DMA,若你的光驅不支持DMA就選上 {此處省略的部分按照自己主板上實際使用的芯片組進行選擇}Other IDE chipset support
- 其它IDE芯片組支持(多數需要在引導時指定特定的內核參數),如果你使用這樣的芯片組就按實際情況選擇子項吧 IGNORE word93 Validation BITS
- ATA-4和ATA-5規范中對于如何在80針的數據線上探測解釋的不明確,導致了兩種不同標準的產品同時出現,這可能導致ATA-66/100降低為ATA-33,若出現這個問題,可以打開這個選項忽略這種不同,但是又有可能導致另外的問題 Old hard disk (MFM/RLL/IDE) driver
- 舊版本的MFM/RLL/IDE驅動,不建議使用 SCSI device support
- SCSI設備 RAID Transport Class
- 用于SCSI設備的軟件RAID支持,需要配合外部工具 SCSI device support
- 有任何SCSI/SATA/USB/光纖/FireWire/IDE-SCSI仿真設備之一就必須選上 legacy /proc/scsi/ support
- 一些老的刻錄程序可能需要它 SCSI disk support
- SCSI硬盤或U盤 SCSI tape support
- SCSI磁帶 SCSI OnStream SC-x0 tape support
- 另一種SCSI磁帶 SCSI CDROM support
- SCSI CDROM Enable vendor-specific extensions
- 僅在古董級的SCSI CDROM設備上才需要 SCSI generic support
- 若有SCSI硬盤/CD-ROM/tape之外的SCSI設備才需要選擇 SCSI media changer support
- 一種SCSI備份設備 Probe all LUNs on each SCSI device
- 在每個SCSI設備上探測邏輯設備數.只在一個SCSI設備上有多個邏輯設備(模擬多個SCSI設備,比如多口讀卡器)時才需要選它,一般的SCSI設備不需要 Verbose SCSI error reporting
- 以易讀的方式報告SCSI錯誤,內核將會增大12K SCSI logging facility
- 啟用SCSI日志(默認并不開啟,需要在掛載/proc后執行echo "scsi log token [level]" > /proc/scsi/scsi命令才能打開日志),可用于跟蹤和捕獲SCSI設備的錯誤 SCSI Transports
- SCSI接口類型,下面的子項可以全不選,內核中若有其他部分依賴它,會自動選上 Parallel SCSI (SPI) Transport Attributes
- 傳統且常見的并行SCSI(Ultra320/160之類) FiberChannel Transport Attributes
- 光纖通道 iSCSI Transport Attributes
- iSCSI是利用TCP/IP網絡傳送SCSI命令和數據的I/O技術 SAS Transport Attributes
- 串行SCSI傳輸屬性支持(SAS對于的關系SPI猶如SATA對于ATA) SAS Domain Transport Attributes
- 為使用了SAS Domain的驅動程序提供幫助 Compile the SAS Domain Transport Attributes in debug mode
- 僅供調試使用 SCSI low-level drivers
- 底層SCSI驅動程序,按你實際使用的產品選擇 iSCSI Initiator over TCP/IP
- 用于iSCSI在TCP/IP網絡上傳播的起動程序 {此處省略的部分按照自己實際使用的控制器進行選擇,僅用一個例子解說子項}Adaptec AIC79xx U320 support
- 以基于PCI-X的Adaptec Ultra 320 SCSI控制器為例解說子項 Maximum number of TCQ commands per device
- 每個SCSI設備的標記指令隊列的最大長度(上限253).上限越高性能越好,但是對于SCSI設備較多的系統來說可能造成內存分配失敗.此值還可以通過tag_info內核引導參數指定 Initial bus reset delay in milli-seconds
- 初始總線reset之后的延時微秒數(默認5000) Enable Read Streaming for All Targets
- 對所有的標記隊列啟用Read Streaming(可以增強效能,但是在一些Adaptec早期的U320產品上有缺陷),此特性還可以通過rd_strm內核引導參數指定 Compile in Debugging Code
- 僅用于調試 Debug code enable mask (16383 for all debugging)
- 出錯代碼的掩碼,0表示禁止所有,16383表示打開所有 Decode registers during diagnostics
- 將出錯代碼的解釋內容編譯進去,這樣就不需要查看aic7xxx.reg中的出錯代碼表以確定出錯代碼的含意了 PCMCIA SCSI adapter support
- 通過PCMCIA卡與計算機連接的SCSI設備 Serial ATA and Parallel ATA drivers
- SATA與PATA設備 ATA device support
- SATA或PATA接口的硬盤或光驅等設備 AHCI SATA support
- SATA高級主機控制器接口.要使用NCQ功能就必須選中它,另外BIOS中的SATA工作模式亦要選AHCI模式 Generic ATA support
- 基于新的ATA層的通用ATA控制器驅動,僅在你的芯片組在列表中找不到時才需要 {此處省略的部分按照自己主板上實際使用的芯片組進行選擇}Old CD-ROM drivers (not SCSI, not IDE)
- 老舊的CD-ROM驅動,這種CD-ROM既不使用SCSI接口,也不使用IDE接口 Multi-device support (RAID and LVM)
- 多設備支持(RAID和LVM).RAID和LVM的功能是使多個物理設備組建成一個單獨的邏輯磁盤 RAID support
- 軟件RAID(需要使用外部工具),若你有硬件RAID控制器,可以不選 Linear (append) mode
- 追加模式(簡單的將一個分區追加在另一個分區之后) RAID-0 (striping) mode
- RAID-0(等量分割)模式 RAID-1 (mirroring) mode
- RAID-1(鏡像)模式 RAID-10 (mirrored striping) mode
- RAID 0+1模式 RAID-4/RAID-5/RAID-6 mode
- 這些模式比較復雜,一般不用 Support adding drives to a raid-5 array
- RAID-5陣列可以通過添加額外的驅動器進行擴展(restriping),這個選項允許在線進行這樣的操作,同時要求mdadm的版本大于2.4.1 Multipath I/O support
- 多路IO支持是指在服務器和存儲設備之間使用冗余的物理路徑組件創建"邏輯路徑",如果這些組件發生故障并造成路徑失敗,多路徑邏輯將為I/O使用備用路徑以使應用程序仍然可以訪問其數據 Faulty test module for MD
- 用于MD(Multi-device)的缺陷測試模塊 Device mapper support
- Device-mapper是一個底層的卷管理器,不用LVM就別選了 Fusion MPT device support
- Fusion MPT設備支持 IEEE 1394 (FireWire) support
- IEEE 1394(火線) I2O device support
- I2O(智能IO)設備使用專門的I/O處理器負責中斷處理/緩沖存取/數據傳輸等煩瑣任務以減少CPU占用,一般的主板上沒這種東西 Network device support
- 網絡設備 Network device support
- 網絡設備支持,當然要選啦 Intermediate Functional Block support
- 這是一個中間層驅動,可以用來靈活的配置資源共享,看不懂的可以不選 Dummy net driver support
- 啞接口網絡,使用SLIP或PPP傳輸協議(如ADSL用戶)的需要它 Bonding driver support
- 將多個以太網通道綁定為一個,也就是兩塊網卡具有相同的IP地址并且聚合成一個邏輯鏈路工作,可以用來實現負載均衡或硬件冗余 EQL (serial line load balancing) support
- 串行線路的負載均衡.如果有兩個MODEM和兩條電話線而且用SLIP或PPP協議,該選項可以讓您同時使用這兩個MODEM以達到雙倍速度(在網絡的另一端也要有同樣的設備) Universal TUN/TAP device driver support
- TUN/TAP可以為用戶空間提供包的接收和發送服務,比如可以用來虛擬一張網卡或點對點通道 General Instruments Surfboard 1000
- SURFboard 1000插卡式Cable Medem(ISA接口),這玩意大概早就絕種了 ARCnet devices
- 一般人沒有ARCnet類型的網卡 PHY device support
- 數據鏈路層芯片簡稱為MAC控制器,物理層芯片簡稱之為PHY,通常的網卡把MAC和PHY的功能做到了一顆芯片中,但也有一些僅含PHY的"軟網卡" Ethernet (10 or 100Mbit)
- 目前最廣泛的10/100M網卡 Ethernet (1000 Mbit)
- 目前已成裝機主流的1000M網卡 Ethernet (10000 Mbit)
- 萬兆網卡無福消受啦 Token Ring devices
- 令牌環網設備 Wireless LAN (non-hamradio)
- 無線LAN PCMCIA network device support
- PCMCIA或CardBus網卡 Wan interfaces
- WAN接口 ATM drivers
- 異步傳輸模式 FDDI driver support
- 光纖分布式數據接口 HIPPI driver support
- HIPPI(高性能并行接口)是一個在短距離內高速傳送大量數據的點對點協議 PLIP (parallel port) support
- 將并口映射成網絡設備,這樣兩臺機器即使沒有網卡也可以使用并口通過并行線傳輸IP數據包 PPP (point-to-point protocol) support
- 點對點協議,PPP已經基本取代SLIP了,用ADSL的可要仔細選擇了 PPP multilink support
- 多重鏈路協議(RFC1990)允許你將多個線路(物理的或邏輯的)組合為一個PPP連接一充分利用帶寬,這不但需要pppd的支持,還需要ISP的支持 PPP filtering
- 允許對通過PPP接口的包進行過濾 PPP support for async serial ports
- 通過標準異步串口(COM1,COM2)使用PPP,比如使用老式的外置modem(非同步modem或ISDN modem)上網 PPP support for sync tty ports
- 通過同步tty設備(比如SyncLink適配器)使用PPP,常用于高速租用線路(比如T1/E1) PPP Deflate compression
- 為PPP提供Deflate(等價于gzip壓縮算法)壓縮算法支持,需要通信雙方的支持才有效 PPP BSD-Compress compression
- 為PPP提供BSD(等價于LZW壓縮算法,沒有gzip高效)壓縮算法支持,需要通信雙方的支持才有效 PPP MPPE compression (encryption)
- 為PPP提供MPPE加密協議支持,它被用于微軟的P2P隧道協議中 PPP over Ethernet
- 這就是ADSL用戶最常見的PPPoE啦,也就是在以太網上跑的PPP協議 PPP over ATM
- 在ATM上跑的PPP SLIP (serial line) support
- 一個在串行線上(例如電話線)傳輸IP數據報的TCP/IP協議.小貓一族的通訊協議,與寬帶用戶無關 CSLIP compressed headers
- CSLIP協議比SLIP快,它將TCP/IP頭(而非數據)進行壓縮傳送,需要通信雙方的支持才有效 Keepalive and linefill
- 讓SLIP驅動支持RELCOM linefill和keepalive監視,這在信號質量比較差的模擬線路上是個好主意 Six bit SLIP encapsulation
- 這種線路非常罕見,不要選它 Fibre Channel driver support
- 光纖通道 Traffic Shaper
- 流量整形,已廢棄 Network console logging support
- 通過網絡記錄內核信息 Netpoll support for trapping incoming packets
- 不知道Netpoll是什么的可以不選 Netpoll traffic trapping
- 不知道Netpoll是什么的可以不選 ISDN subsystem
- 綜合業務數字網(Integrated Service Digital Network) Telephony Support
- VoIP支持 Input device support
- 輸入設備 Generic input layer (needed for keyboard,mouse...)
- 通用輸入層,要使用鍵盤鼠標的就必選 Support for memoryless force-feedback devices
- 游戲玩家使用的力反饋設備 Mouse interface
- 鼠標接口 Provide legacy /dev/psaux device
- 仍然支持作為傳統的/dev/psaux設備 Horizontal screen resolution
- 數字化轉換器或圖形輸入板的水平分辯率 Vertical screen resolution
- 數字化轉換器或圖形輸入板的垂直分辨率 Joystick interface
- 游戲桿 Touchscreen interface
- 觸摸屏 Event interface
- 能夠利用/dev/input/eventX來存取輸入設備的事件 Event debugging
- 該選項僅供調試 Keyboards
- 鍵盤驅動,一般選個AT鍵盤即可 Mouse
- 鼠標驅動,一般選個PS/2鼠標即可 Joysticks
- 游戲桿驅動 Touchscreens
- 觸摸屏驅動 Miscellaneous devices
- 其他雜項驅動,一般選個PC喇叭即可 Hardware I/O ports
- 硬件I/O端口 Serial I/O support
- 使用PS/2鍵盤或鼠標的就必選 i8042 PC Keyboard controller
- PS/2接口的鍵盤和鼠標 Serial port line discipline
- 串口鍵盤或鼠標 ct82c710 Aux port controller
- 一種德州儀器TravelMate筆記本上使用QuickPort接口的鼠標 Parallel port keyboard adapter
- 并口鍵盤或鼠標 PCI PS/2 keyboard and PS/2 mouse controller
- 接在移動式擴展塢(Docking station)上的鍵盤或鼠標 PS/2 driver library
- 為PS/2接口上的設備提供驅動(比如PS/2鼠標或標準AT鍵盤) Raw access to serio ports
- 不是hacker就別選了 Gameport support
- 就是早年"小霸王"游戲機上的那種手柄 Character devices
- 字符設備 Virtual terminal
- 虛擬終端.除非是嵌入式系統,否則必選 Support for console on virtual terminal
- 內核將一個虛擬終端用作系統控制臺(將諸如模塊錯誤/內核錯誤/啟動信息之類的警告信息發送到這里,通常是第一個虛擬終端).除非是嵌入式系統,否則必選 Support for binding and unbinding console drivers
- 虛擬終端是通過控制臺驅動程序與物理終端相結合的,但在某些系統上可以使用多個控制臺驅動程序(如framebuffer控制臺驅動程序),該選項使得你可以選擇其中之一 Non-standard serial port support
- 非標準串口支持.這樣的設備早就絕種了 Serial drivers
- 串口驅動.如果你有老式的串口鼠標或小貓之類的就選吧 Unix98 PTY support
- 偽終端(PTY)可以模擬一個終端,它由slave(等價于一個物理終端)和master(被一個諸如xterms之類的進程用來讀寫slave設備)兩部分組成的軟設備.使用telnet或ssh遠程登錄者必選 Legacy (BSD) PTY support
- 使用過時的BSD風格的/dev/ptyxx作為master,/dev/ttyxx作為slave,這個方案有一些安全問題,建議不選 Parallel printer support
- 并口打印機 Support for console on line printer
- 允許將內核信息輸出到并口,這樣就可以打印出來 Support for user-space parallel port device drivers
- /dev/parport設備支持,比如deviceid之類的程序需要使用它,大部分人可以關閉該選項 Texas Instruments parallel link cable support
- 德州儀器生產的一種使用并行電纜的圖形計算器,如果你不知道這是什么設備就別選了 IPMI
- 可以利用IPMI遠程監視服務器的物理特征(溫度,電壓,風扇,電源,機箱入侵),它是獨立于CPU,BIOS,OS的,只要接通電源就可以實現對服務器的監控 IPMI top-level message handler
- IPMI消息處理器,要啟用IPMI遠程監視這個就必選 Generate a panic event to all BMCs on a panic
- 當發生緊急情況(panic)時,IPMI消息處理器將會向每一個已注冊的底板管理控制器(BMC)接口生成一個描述該panic的IPMI事件,這些事件可以引發日志記錄/報警/重啟/關機等動作 Generate OEM events containing the panic string
- 當發生緊急情況(panic)時,IPMI消息處理器將會產生OEM類型的事件 Device interface for IPMI
- 為IPMI消息處理器提供一個IOCTL接口已便用戶空間的進程也可以使用IPMI IPMI System Interface handler
- 向系統提供接口(KCS,SMIC),一般你用了IPMI就需要選上 IPMI Watchdog Timer
- 啟用IPMI Watchdog定時器 IPMI Poweroff
- 允許IPMI消息處理器關閉機器 Watchdog Cards
- 能讓系統在出現致命故障后自動重啟,如果沒有硬件Watchdog,建議使用Hangcheck timer而不是軟件Watchdog Watchdog Timer Support
- 選中它并選中下面的一個Driver之后,再創建一個/dev/watchdog節點即可擁有一只Watchdog了.更多信息請參考內核幫助 Disable watchdog shutdown on close
- 一旦Watchdog啟動后就禁止將其停止 Software watchdog
- 軟件Watchdog,使用它不需要有任何硬件的支持,但是可靠性沒有硬件Watchdog高 {此處省略的硬件Watchdog部分請按照自己主板實際使用的芯片(可能在南橋中)進行選擇}Hardware Random Number Generator Core support
- 硬件隨機數發生器核心支持 Intel HW Random Number Generator support
- Intel芯片組的硬件隨機數發生器 AMD HW Random Number Generator support
- AMD芯片組的硬件隨機數發生器 AMD Geode HW Random Number Generator support
- AMD Geode LX的硬件隨機數發生器 VIA HW Random Number Generator support
- VIA芯片組的硬件隨機數發生器 /dev/nvram support
- 直接存取主板上CMOS的接口,太危險了!建議別選 Enhanced Real Time Clock Support
- 啟用該選項并創建/dev/rtc文件后就可以通過/proc/driver/rtc訪問系統的硬件時鐘(RTC),眾多功能依賴于它(如SMP,IRQ共享,定時器),建議選擇 Double Talk PC internal speech card support
- 由RC Systems公司制造的一種語音合成器 Siemens R3964 line discipline
- 與使用西門子R3964協議的設備同步通信,除非你有一些諸如PLC之類的特殊設備,否則別選 Applicom intelligent fieldbus card support
- Applicom international公司生產的用于現場總線連接卡 Sony Vaio Programmable I/O Control Device support
- Sony VAIO筆記本上的東西 Ftape, the floppy tape device driver
- 還使用磁帶的就選吧 /dev/agpgart (AGP Support)
- AGP總線支持,有AGP顯卡的還必須從子項中選取符合自己顯卡型號的驅動 Direct Rendering Manager
- DRI允許應用程序以高效安全的方式直接訪問圖形處理,主要用于硬件3D加速.桌面用戶建議選擇,同時還必須從子項中選取符合自己顯卡型號的驅動 PCMCIA character devices
- 使用PCMCIA接口的字符設備,如果你有這種設備就到子項中去選吧 ACP Modem (Mwave) support
- IBM Thinkpad上的一種軟貓,古董產品 NatSemi SCx200 GPIO Support
- 松下的一種通用輸入輸出(GPIO)芯片,常用于嵌入式系統 NatSemi PC8736x GPIO Support
- 松下的一種通用輸入輸出(GPIO)芯片,常用于嵌入式系統 NatSemi Base GPIO Support
- 松下的一種通用輸入輸出(GPIO)芯片,常用于嵌入式系統 AMD CS5535/CS5536 GPIO
- 常用于AMD Geode的一種通用輸入輸出(GPIO)芯片,常用于嵌入式系統 RAW driver (/dev/raw/rawN)
- 已廢棄 HPET - High Precision Event Timer
- 高精度事件定時器 Allow mmap of HPET
- 允許對HPET寄存器進行映射,建議選中 Hangcheck timer
- 宕機檢測定時器周期性地檢查系統任務調度程序以確定系統的運行狀況,如果超過閾值,計算機將重新啟動.它通常可以比Watchdog更好地解決可用性和可靠性問題 TPM devices
- 基于硬件的"可信賴平臺模塊",與數字霸權管理是一路貨,全不選 Telecom clock driver for MPBL0010 ATCA SBC
- 沒見過這種硬件,不選 I2C support
- I2C是Philips極力推動的微控制應用中使用的低速串行總線協議,可用于監控電壓/風扇轉速/溫度等.SMBus(系統管理總線)是I2C的子集.除硬件傳感器外"Video For Linux"也需要該模塊的支持 I2C device interface
- I2C設備接口,允許用戶空間的程序通過/dev/i2c-*設備文件使用I2C總線 I2C Algorithms
- I2C算法,可以全不選,若有其他部分依賴其子項時,會自動選上 I2C Hardware Bus support
- 按實際硬件情況選對應的子項即可 Miscellaneous I2C Chip support
- 其他不常見的產品,按需選擇 I2C Core debugging messages
- 僅供調試 I2C Algorithm debugging messages
- 僅供調試 I2C Bus debugging messages
- 僅供調試 I2C Chip debugging messages
- 僅供調試 SPI support
- 串行外圍接口(SPI)常用于微控制器(MCU)與外圍設備(傳感器,eeprom,flash,編碼器,模數轉換器)之間的通信,比如MMC和SD卡就通常需要使用SPI Dallas's 1-wire bus
- 一線總線 Hardware Monitoring support
- 當前主板大多都有一個監控硬件健康的設備用于監視溫度/電壓/風扇轉速等,請按照自己主板實際使用的芯片選擇相應的子項.另外,該功能還需要I2C的支持 Multimedia devices
- 多媒體設備 Video For Linux
- 要使用音頻/視頻設備或FM收音卡的就必選,此功能還需要I2C的支持 Enable Video For Linux API 1
- 使用老舊的V4L第一版API,反對使用 Enable Video For Linux API 1 compatible Layer
- 提供對第一版V4L的兼容,建議不選 Video Capture Adapters
- 視頻捕獲卡 Enable advanced debug functionality
- 該選項僅供調試 Autoselect pertinent encoders/decoders and other helper chips
- 為視頻卡自動選擇所需的編碼和解碼模塊,建議選擇 Virtual Video Driver
- 虛擬視頻卡,僅供測試視頻程序和調試 SAA5246A, SAA5281 Teletext processor
- 該選項僅對歐洲用戶有意義,中國用戶不需要 SAA5249 Teletext processor
- 該選項僅對歐洲用戶有意義,中國用戶不需要 {此處省略的硬件請按照自己實際使用的芯片進行選擇}V4L USB devices
- 使用USB接口的視頻卡,子項請按照自己實際使用的視頻卡選擇 Radio Adapters
- 音頻卡,子項請按照自己實際使用的音頻卡選擇 Digital Video Broadcasting Devices
- 數字視頻廣播設備(DVB卡或機頂盒),子項請按自己實際使用的硬件選擇 DABUSB driver
- USB接口的數字音頻廣播設備接收器 Graphics support
- 圖形設備/顯卡支持 Enable firmware EDID
- 允許訪問Video BIOS中的擴展顯示器識別數據(EDID),使用Matrox顯卡的建議關閉,建議桌面用戶選擇 Support for frame buffer devices
- 幀緩沖設備是為了讓應用程序使用統一的接口操作顯示設備而對硬件進行的抽象,建議桌面用戶選擇 Enable Video Mode Handling Helpers
- 使用GTF和EDID來幫助處理顯示模式,可以不選,若有其他選項依賴于它時,會自動選上 Enable Tile Blitting Support
- 可以不選,若有其他選項依賴于它時,會自動選上 VGA 16-color graphics support
- 16色VGA顯卡.如果你有這種古董就選吧 VESA VGA graphics support
- 符合VESA 2.0標準的顯卡的通用驅動,如果顯卡芯片在下面能夠找到就可以不選 {此處省略的硬件請按照自己實際使用的顯卡芯片進行選擇}Virtual Frame Buffer support
- 僅供調試使用 Console display driver support
- 控制臺顯示驅動 VGA text console
- 文本控制臺,必選 Enable Scrollback Buffer in System RAM
- 在內存中開辟額外的屏幕緩沖區,這將允許你回滾屏幕 Scrollback Buffer Size (in KB)
- 在內存中開辟的額外屏幕緩沖區大小 Video mode selection support
- 允許在內核啟動時使用"vga="選擇文本模式,如果你希望一行能夠顯示更多字符的話可以打開它 MDA text console (dual-headed)
- 如果你有古董級別的單色顯卡并且作為第二塊顯卡使用以實現雙頭顯示就選上吧 Framebuffer Console support
- 基于framebuffer的控制臺驅動,服務器可以不選 Framebuffer Console Rotation
- 顯示畫面旋轉,它可能大大降低顯示速度,建議不選 Select compiled-in fonts
- 選擇內建字體 VGA 8x8 font
- 高分辨率下的小字體 VGA 8x16 font
- 底分辨率下的大字體 {其它字體省略}Logo configuration
- 啟動時顯示linux的logo(一幅企鵝圖像),喜歡炫一下的就選吧 Backlight & LCD device support
- LCD顯示器支持,一般無需選擇 Sound
- 聲卡 Advanced Linux Sound Architecture
- 使用聲卡者必選 Sequencer support
- 音序器支持(MIDI必需),除非你確定不需要,否則請選上 Sequencer dummy client
- 除非你要同時連接到多個MIDI設備或應用程序,否則請不要選擇 OSS Mixer API
- OSS混音器API仿真,許多程序目前仍然需要使用它,建議選擇 OSS PCM (digital audio) API
- OSS數字錄音(PCM)API模擬,許多程序目前仍然需要使用它,建議選擇 OSS PCM (digital audio) API - Include plugin system
- 建議不選 OSS Sequencer API
- OSS音序器支持,許多程序目前仍然需要使用它,建議選擇 RTC Timer support
- 為ALSA啟用RTC定時器支持,建議選擇 Use RTC as default sequencer timer
- 將RTC當作默認的時序脈沖發生器 Dynamic device file minor numbers
- 僅供擁有多個聲卡的用戶選擇 Support old ALSA API
- 支持已被廢棄的老版本ALSA API Verbose procfs contents
- 僅供調試使用 Verbose printk
- 僅供調試使用 Debug
- 僅供調試使用 Generic devices
- 通用設備 Dummy (/dev/null) soundcard
- 僅供調試 Virtual MIDI soundcard
- 虛擬MIDI驅動,允許將使用原始MIDI設備的應用程序連接到音序器客戶端,如果你不知道MIDI是什么就別選 {此處省略的硬件請按照自己實際使用的聲卡芯片進行選擇}PCI devices
- PCI接口的聲卡,請按實際使用的聲卡選擇子項 USB devices
- USB接口的聲卡,請按實際使用的聲卡選擇子項 PCMCIA devices
- PCMCIA接口的聲卡,請按實際使用的聲卡選擇子項 Open Sound System
- 反對使用 USB support
- USB支持 Support for Host-side USB
- 主機端(Host-side)USB支持.通用串行總線(USB)是一個串行總線子系統規范,它比傳統的串口速度更快并且特性更豐富(供電,熱插拔,最多可接127個設備等),有望在將來一統PC外設接口.USB的"Host"(主機)被稱為"根"(也可以理解為是主板上的USB控制器),外部設備被稱為"葉子",而內部的節點則稱為"hub"(集線器).基本上只要你想使用任何USB設備都必須選中此項.另外,你還需要從下面選中至少一個"Host Controller Driver"(HCD),比如適用于USB1.1的"UHCI HCD support"或"OHCI HCD support",適用于USB2.0的"EHCI HCD (USB 2.0) support".如果你拿不準的話把他們全部選中一般也不會出問題.如果你的系統有設備端的USB接口(也就是你的系統可以作為"葉子"使用),請到"USB Gadget"中進行選擇. USB verbose debug messages
- 僅供調試使用 USB device filesystem
- 在/proc/bus/usb里列出當前連接的usb設備(mount -t usbfs none /proc/bus/usb),這樣用戶空間的程序就可以直接訪問這些USB設備,基本上你要使用USB設備的話就必須選中此項 Enforce USB bandwidth allocation
- 執行usb帶寬分配限制,禁止打開占用usb總線帶寬超過90%的設備,關閉該選項可能會導致某些設備無法正常工作 Dynamic USB minor allocation
- 除非你有超過16個同類型的USB設備,否則不要選擇 USB selective suspend/resume and wakeup
- usb設備的掛起和恢復,毛病多多且許多設備尚未支持它,建議不選 EHCI HCD (USB 2.0) support
- USB 2.0支持(大多數2002年以后的主板都支持).如果你選中了此項,一般來說你還需要選中OHCI或UHCI驅動 Full speed ISO transactions
- 由于USB 2.0支持低速(1.5Mbps)/全速(12Mbps)/高速(480Mbps)三種規格的外部設備,為了將全/低速設備對高速設備可用帶寬的影響減到最小,在USB2.0集線器中提供了一種事務轉換(Transaction Translator)機制,該機制支持在Hub連接的是全/低速設備的情況下,允許主控制器與Hub之間以高速傳輸所有設備的數據,從而節省不必要的等待.如果你沒有外置的USB集線器就無需選擇 Root Hub Transaction Translators
- 帶有USB 2.0接口的主板上都有一個"根集線器"(Root Hub)以允許在無需額外購買hub的情況下就可以提供多個USB插口,其中的某些產品還在其中集成了事務轉換(Transaction Translator)功能,這樣就不需要再額外使用一個兼容OHCI或UHCI的控制器來兼容USB 1.1,即使你不太清楚自己主板上的根集線器是否集成了事務轉換功能也可以安全的選中此項 Improved Transaction Translator scheduling
- 如果你有一個高速USB 2.0 hub并且某些接在這個hub上的低速或全速設備不能正常工作(顯示'cannot submit datapipe: error -28'或'error -71'錯誤),可以考慮選上 ISP116X HCD support
- ISP1160/ISP1161主機USB控制器,是符合USB2.0全速規范的單片主機控制器和設備控制器,支持OHCI標準 OHCI HCD support
- 開放主機控制接口(OHCI)是主要針對嵌入式系統的USB 1.1主機控制器規范 UHCI HCD (most Intel and VIA) support
- 通用主機控制器接口(UHCI)是主要針對PC機的USB 1.1主機控制器規范.另外,EHCI也可能需要它 Elan U132 Adapter Host Controller
- 如果你有這種硬件就選吧 SL811HS HCD support
- 如果你有這種硬件就選吧 USB Bluetooth TTY support
- USB藍牙TTY設備支持 USB MIDI support
- USB MIDI設備支持 USB Modem (CDC ACM) support
- USB接口的貓或ISDN適配器 USB Printer support
- USB打印機 USB Mass Storage support
- USB存儲設備(U盤,USB硬盤,USB軟盤,USB CD-ROM,USB磁帶,memory sticks,數碼相機,讀卡器等等).該選項依賴于'SCSI device support',且大部分情況下還依賴于'SCSI disk support'(比如U盤或USB硬盤) USB Mass Storage verbose debug
- 僅供調試使用 {省略的部分請按照自己實際使用的硬件選擇(事實上大部分人都沒有這些設備,可以全不選)}The shared table of common (or usual) storage devices
- 該模塊包含一張記錄了常用USB存儲設備及其驅動的表格,這樣你無需重新編譯模塊即可在切換這些設備時自動邦定對應的驅動(還需要對/etc/modprobe.conf進行相應的設置).不確定的建議不選 USB Human Interface Device (full HID) support
- USB人機界面設備(鼠標/鍵盤/游戲桿/手寫版等人操作計算機的設備),該驅動不能和"USB HID Boot Protocol drivers"同時使用 HID input layer support
- 如果你有USB接口的鼠標/鍵盤/游戲桿/手寫板等輸入設備就必選 Enable support for iBook/PowerBook special keys
- 蘋果iBooks/PowerBooks鍵盤上的Fn/Numlock等功能鍵支持 Force feedback support
- 力反饋設備 /dev/hiddev raw HID device support
- 如果你有USB監控裝置或不間斷電源(UPS)之類的非輸入設備就選上 USB HID Boot Protocol drivers
- 如果你有絕對的把握確信不為自己的鍵盤和鼠標使用通常的HID驅動,而要使用Boot Protocol模式的HID驅動(常見于嵌入式環境)就選吧 Aiptek 6000U/8000U tablet support
- 一種手寫板 Wacom Intuos/Graphire tablet support
- 一種手寫/繪圖板 Acecad Flair tablet support
- 一種數控繪圖板 KB Gear JamStudio tablet support
- 一種手寫/繪圖板 Griffin PowerMate and Contour Jog support
- 一種具有調節音量/滾動文本/視頻快進快退等功能的產品 USB Touchscreen Driver
- USB觸摸屏驅動 Yealink usb-p1k voip phone
- 一種VoIP電話 X-Box gamepad support
- X-Box游戲板 ATI / X10 USB RF remote control
- 一種usb遠程控制設備 ATI / Philips USB RF remote control
- 一種usb遠程控制設備 Keyspan DMR USB remote control
- 一種usb遠程控制設備 Apple USB Touchpad support
- 蘋果機上的觸摸板 USB Mustek MDC800 Digital Camera support
- 一種數碼相機 Microtek X6USB scanner support
- 一種掃描儀 USB Network Adapters
- USB網絡適配器,如果你有這種設備請按自己實際使用的硬件選擇子項 USB Monitor
- usb流量監控,一般沒必要選它 USS720 parport driver
- 一種USB接口轉并口的轉換設備 USB Serial Converter support
- USB接口轉串口的轉換設備 EMI 6|2m USB Audio interface support
- 一種USB音頻設備 EMI 2|6 USB Audio interface support
- 一種USB音頻設備 ADU devices from Ontrak Control Systems
- Ontrak Control Systems公司的一種自動撥號設備 USB Auerswald ISDN support
- 一種ISDN設備 USB Diamond Rio500 support
- 一種mp3播放機 USB Lego Infrared Tower support
- 一種無線發射機 USB LCD driver support
- USB液晶顯示器 USB LED driver support
- USB發光二極管 Cypress CY7C63xxx USB driver support
- 德國AK Modul-Bus Computer GmbH公司的一種產品,不知道是用來干什么的 Cypress USB thermometer driver support
- 一種溫度計?? USB Phidgets drivers
- 來自Phidgets公司的各種USB產品 Siemens ID USB Mouse Fingerprint sensor support
- 西門子公司的一種指紋傳感器 Elan PCMCIA CardBus Adapter USB Client
- Elan公司的一種USB轉PCMCIA的適配器 Apple Cinema Display support
- 蘋果公司的一種Cinema Display USB 2.0 SVGA dongle support (Net2280/SiS315)
- 一種軟件狗 USB LD driver
- USB LD驅動 PlayStation 2 Trance Vibrator driver support
- SONY的PS2上面的"入迷振蕩器"(類似于力反饋手柄) USB testing driver
- 測試中的驅動,別選 USB DSL modem support
- USB DSL貓 USB Gadget Support
- 其他各種雜七雜八的usb小玩藝 MMC/SD Card support
- MMC/SD卡支持 LED devices
- 發光二級管(LED)設備 InfiniBand support
- InfiniBand是一個通用的高性能I/O規范,它使得存儲區域網中以更低的延時傳輸I/O消息和集群通訊消息并且提供很好的伸縮性.用于Linux服務器集群系統 EDAC - error detection and reporting (RAS)
- 錯誤檢測與糾正(EDAC)的目標是發現并報告甚至糾正在計算機系統中發生的錯誤,這些錯誤是由CPU或芯片組報告的底層錯誤(內存錯誤/緩存錯誤/PCI錯誤/溫度過高,等等),建議選擇.如果這些代碼報告了一個錯誤,請到http://bluesmoke.sourceforge.net/和http://buttersideup.com/edacwiki查看更多信息 Debugging
- 僅供調試使用 Main Memory EDAC (Error Detection And Correction) reporting
- 一些系統能夠檢測和修正主內存中的錯誤,EDAC能夠報告這些信息(EDAC自己檢測到的或者根據ECC得到的).EDAC還會盡量檢測這些錯誤發生在哪里以便于替換損壞的內存.建議選擇并按照你實際使用的芯片組選取子項 Error detecting method
- 錯誤檢測方法,當前只有一個"Poll for errors"(錯誤輪詢)可用 Real Time Clock
- 所有的PC機主板都包含一個電池動力的實時時鐘芯片,以便在斷電后仍然能夠繼續保持時間,RTC通常與CMOS集成在一起,因此BIOS可以從中讀取當前時間 RTC class
- 通用RTC類支持,選中此項后你就可以在操作系統中使用一個或多個RTC設備(你還必須從下面啟用一個或多個RTC接口) Set system time from RTC on startup
- 系統啟動時使用從指定的RTC設備中讀取的時間來設定系統時間,通常這將有助于避免不必要的文件系統檢測程序(fsck)的運行,建議選擇 The RTC to read the time from
- 指定具體從哪個RTC設備中讀取時間 RTC debug support
- 僅供調試使用 sysfs
- 允許通過sysfs接口使用RTC,允許多個RTC設備,也就是/sys/class/rtc/rtc0~N proc
- 允許通過proc接口使用RTC,僅允許一個RTC設備,也就是/proc/driver/rtc dev
- 允許通過dev接口使用RTC,允許多個RTC設備,也就是"udev"設置的/dev/rtc0~N,建議你建立一個指向其中之一的軟連接/dev/rtc,某些程序(比如hwclock)需要使用/dev/rtc RTC UIE emulation on dev interface
- 如果底層rtc芯片驅動沒有提供RTC_UIE就仿真一個RTC_UIE.那些請求將產生每秒一次的更新請求以用來同步[這個選項的意思我也搞不清楚究竟時啥意思,翻譯的也可能有誤] {此處省略的RTC驅動請按照自己實際使用的RTC芯片進行選擇}DMA Engine support
- 從Intel Bensley雙核服務器平臺開始引入的數據移動加速(Data Movement Acceleration)引擎,它將某些傳輸數據的操作從CPU轉移到專用硬件,從而可以進行異步傳輸并減輕CPU負載.Intel已將此項技術變為開放的標準,將來應當會有更多的廠商支持 Network: TCP receive copy offload
- 通過在網絡棧中利用DMA引擎來減少接收數據包時的copy-to-user操作以釋放CPU資源,這是DMA引擎目前最主要的用途 Intel I/OAT DMA support
- Intel I/O加速技術(Intel I/O Acceleration Technology)中的DMA支持,基于Intel Bensley的新一代服務器平臺都支持它
File systems
文件系統
強烈建議在選擇之前先看看各種文件系統的比較
- Second extended fs support
- Ext2文件系統是Linux的標準文件系統,擅長處理稀疏文件 Ext2 extended attributes
- Ext2文件系統擴展屬性(與inode關聯的name:value對)支持 Ext2 POSIX Access Control Lists
- POSIX ACL(訪問控制列表)支持,可以更精細的針對每個用戶進行訪問控制,需要外部庫和程序的支持 Ext2 Security Labels
- 安全標簽允許選擇使用不同的安全模型實現(如SELinux)的訪問控制模型,如果你沒有使用需要擴展屬性的安全模型就別選 Ext2 execute in place support
- 程序在寫入存儲介質時就已經分配好運行時的地址,因此不需要載入內存即可在芯片內執行,一般僅在嵌入式系統上才有這種設備 Ext3 journalling file system support
- Ext3性能平庸,使用journal日志模式時數據完整性非常好(但怪異的是此時多線程并發讀寫速度卻最快) Ext3 extended attributes
- Ext3文件系統擴展屬性(與inode關聯的name:value對)支持 Ext3 POSIX Access Control Lists
- POSIX ACL(訪問控制列表)支持,可以更精細的針對每個用戶進行訪問控制,需要外部庫和程序的支持 Ext3 Security Labels
- 安全標簽允許選擇使用不同的安全模型實現(如SELinux)的訪問控制模型,如果你沒有使用需要擴展屬性的安全模型就別選 Ext4dev/ext4 extended fs support
- 尚處于開發狀態的Ext4 JBD (ext3) debugging support
- 僅供開發者使用 JBD2 (ext4dev/ext4) debugging support
- 僅供開發者使用 Reiserfs support
- 性能幾乎全面超越Ext2(處理稀疏文件比Ext2慢),小文件(小于4k)性能非常突出,創建和刪除文件速度最快,處理大量目錄和文件(5k-20k)時仍然非常迅速.日志模式建議使用Ordered,追求極速可使用Writeback模式,追求安全可使用Journal模式.建議使用noatime,notail選項掛載分區以提高速度和避免bug.用于NFS和磁盤限額時需要額外的補丁 Enable reiserfs debug mode
- 啟用ReiserFS調試模式,僅供開發者使用 Stats in /proc/fs/reiserfs
- 在/proc/fs/reiserfs文件中顯示Reiserfs文件系統的狀態,僅供開發者使用 ReiserFS extended attributes
- ReiserFS文件系統擴展屬性(與inode關聯的name:value對)支持 ReiserFS POSIX Access Control Lists
- POSIX ACL(訪問控制列表)支持,可以更精細的針對每個用戶進行訪問控制,需要外部庫和程序的支持 ReiserFS Security Labels
- 安全標簽允許選擇使用不同的安全模型實現(如SELinux)的訪問控制模型,如果你沒有使用需要擴展屬性的安全模型就別選了 JFS filesystem support
- IBM的JFS文件系統 XFS filesystem support
- 碎片最少,多線程并發讀寫最佳,大文件(>64k)性能最佳,創建和刪除文件速度較慢.由于XFS在內存中緩存盡可能多的數據且僅當內存不足時才會將數據刷到磁盤,所以應當僅在確保電力供應不會中斷的情況下才使用XFS Quota support
- XFS的磁盤配額支持 Security Label support
- 擴展的安全標簽支持.SElinux之類的安全系統會使用到這樣的擴展安全屬性 POSIX ACL support
- POSIX ACL(訪問控制列表)支持,可以更精細的針對每個用戶進行訪問控制,需要外部庫和程序的支持 Realtime support
- 實時子卷是專門存儲文件數據的卷,可以允許將日志與數據分開在不同的磁盤上 GFS2 file system support
- 一種用于集群的文件系統 OCFS2 file system support
- 一種用于集群的文件系統 Minix fs support
- 老古董文件系統 ROM file system support
- 用于嵌入式系統的內存文件系統的支持 Inotify file change notification support
- 新式的文件系統的變化通知機制,簡潔而強大,用于代替老舊的Dnotify Inotify support for userspace
- 用戶空間的Inotify支持 Quota support
- 磁盤配額支持,限制某個用戶或者某組用戶的磁盤占用空間,Ext2/Ext3/Reiserfs都支持它 Old quota format support
- 老式的配額格式支持 Quota format v2 support
- 新的v2格式允許使用32位的UID/GID Dnotify support
- 舊式的基于目錄的文件變化的通知機制(新機制是Inotify),目前仍然有一些程序依賴它 Kernel automounter support
- 內核自動加載遠程文件系統(v3,就算選也不選這個舊的) Kernel automounter version 4 support (also supports v3)
- 新的(v4)的內核自動加載遠程文件系統的支持,也支持v3 Filesystem in Userspace support
- FUSE允許在用戶空間實現一個文件系統,如果你打算開發一個自己的文件系統或者使用一個基于FUSE的文件系統就選吧 CD-ROM/DVD Filesystems
- CD-ROM/DVD文件系統 ISO 9660 CDROM file system support
- CD-ROM的標準文件系統 Microsoft Joliet CDROM extensions
- Microsoft對ISO 9660文件系統的Joliet擴展,允許在文件名中使用Unicode字符,也允許長文件名 Transparent decompression extension
- Linux對ISO 9660文件系統的擴展,允許將數據透明的壓縮存儲在CD上 UDF file system support
- 某些新式CD/DVD上的文件系統,很少見 DOS/FAT/NT Filesystems
- DOS/Windows的文件系統 MSDOS fs support
- 古老的MSDOS文件系統 VFAT (Windows-95) fs support
- 從Win95開始使用的VFAT文件系統 Default codepage for FAT
- 默認代碼頁 Default iocharset for FAT
- 默認字符集 NTFS file system support
- 從WinNT開始使用的NTFS文件系統 NTFS debugging support
- 僅供調試使用 NTFS write support
- NTFS寫入支持 Pseudo filesystems
- 偽文件系統 /proc file system support
- 顯示系統狀態的虛擬文件系統(irq設置,內存使用,加載的設備驅動器,網絡狀態等),許多程序依賴于它 /proc/kcore support
- 系統物理內存的映象 /proc/vmcore support
- 以ELF格式轉儲的已崩潰內核鏡像,僅供調試使用 Sysctl support (/proc/sys)
- 顯示各種不同的內核參數,并讓root用戶能交互地更改其中的某些內容 sysfs file system support
- 導出內核內部對象及其屬性和對象之間的相互關系的文件系統,它把連接在系統上的設備和總線以及驅動程序等組織成為一個分級的文件,內核啟動時依靠它掛載根分區,禁用sysfs后必須在內核引導參數中使用設備號指定根分區 Virtual memory file system support (former shm fs)
- tmpfs文件系統(以前叫shm[共享內存]文件系統)支持 Tmpfs POSIX Access Control Lists
- POSIX ACL(訪問控制列表)支持,可以更精細的針對每個用戶進行訪問控制,需要外部庫和程序的支持 HugeTLB file system support
- 大多數現代計算機體系結構提供對多種內存頁面大小的支持(比如IA-32結構支持4K和4M(PAE模式為2M)兩種頁面).TLB(Translation Lookaside Buffer)是虛擬地址到物理地址的翻譯緩沖區,這種緩沖區在處理器上是很寶貴的,操作系統總是嘗試將有限的TLB資源發揮到極致.特別是能夠輕松獲得若干G內存的時候(>4G),這種優化就顯得尤為關鍵.只有開啟此選項之后才能提供hugepage支持. Userspace-driven configuration filesystem
- configfs是用戶空間驅動的文件系統,提供與sysfs相反的功能 Miscellaneous filesystems
- 非主流的雜項文件系統 Network File Systems
- 網絡文件系統 Partition Types
- 高級磁盤分區類型,不確定可以全不選 Native Language Support
- 本地語言支持.如果你僅僅使用幾種主流的Linux文件系統(ext2/3/4,Reiserfs,JFS,XFS),就不需要這個東西.但是如果你需要使用FAT/NTFS分區的話,就需要這個東西了. Base native language support
- 如果你啟用了本地語言支持,那么這個必選 Default NLS Option
- 默認本地語言,建議使用UTF-8 {此處省略的部分請按需選擇,一般至少需要CP437,ASCII,ISO-8859-1}Distributed Lock Manager
- 通用的分布式鎖管理器,不明白就不選
Instrumentation Support
分析支持
- Profiling support
- 對系統的活動進行分析,僅供內核開發者使用 Kprobes
- 僅供內核開發者使用
Kernel hacking
內核hack選項
- Show timing information on printks
- 在printk的輸出中包含時間信息,可以用來分析內核啟動過程各步驟所用時間 Enable __must_check logic
- 在編譯內核的過程中使用"必須檢查"的邏輯,禁用它將不會顯示某些警告信息 Magic SysRq key
- 不懂的千萬別選 Enable unused/obsolete exported symbols
- 導出無用和廢棄的符號,這將使內核不必要的增大 Kernel debugging
- 不是內核開發者的別選 Debug Filesystem
- 不是內核開發者的別選 Compile the kernel with frame unwind information
- 不是內核開發者的別選 Run 'make headers_check' when building vmlinux
- 在編譯內核時運行'make headers_check'命令檢查內核頭文件,當你修改了與用戶空間相關的內核頭文件后建議啟用該選項 Linux Kernel Dump Test Tool Module
- 不是內核開發者的別選 Enable doublefault exception handler
- 允許捕獲非常罕見的導致系統無警告重啟的doublefault異常,對于調試非常重要
Security options
安全選項
這里的選項不明白的建議不要選,否則有可能弄巧成拙.
- Enable access key retention support
- 在內核中保留authentication token和access key Enable the /proc/keys file by which keys may be viewed
- 允許有權限的進程通過/proc/keys讀取所有的key Enable different security models
- 允許內核選擇不同的安全模型,如果未選中則內核將使用默認的安全模型 Socket and Networking Security Hooks
- 允許安全模型通過Security Hook對Socket與Networking進行訪問控制 XFRM (IPSec) Networking Security Hooks
- 啟用XFRM安全Hook Default Linux Capabilities
- 啟用與"默認"Linux的兼容性 Root Plug Support
- 一個簡單的Linux安全模塊,在特定的USB設備不存在時它簡單的禁止一切egid==0的進程運行 NSA SELinux Support
- 美國國家安全局(NSA)開發的安全增強Linux(SELinux),你還需要進行策略配置(checkpolicy)并且對文件系統進行標記(setfiles) NSA SELinux boot parameter
- 添加一個內核引導參數以允許在引導時使用'selinux=0'禁用SELinux或'selinux=1'啟用SELinux NSA SELinux boot parameter default value
- 上述參數的默認值 NSA SELinux runtime disable
- 允許在運行時禁用SELinux NSA SELinux Development Support
- SELinux開發支持 NSA SELinux AVC Statistics
- 搜集存取向量(access vector)緩沖區的統計信息并在/selinux/avc/cache_stats中顯示出來.這些信息可以用avcstat之類的工具查看 NSA SELinux checkreqprot default value
- checkreqprot標志的默認值 NSA SELinux enable new secmark network controls by default
- 默認啟用新的基于安全標記(secmark)的網絡 NSA SELinux maximum supported policy format version
- 允許將支持的最高策略格式版本設置為一個特定的數值 NSA SELinux maximum supported policy format version value
- 支持的最高策略格式版本的數值
Cryptographic options
加密選項
- Cryptographic API
- 提供核心的加密API支持.這里的加密算法被廣泛的應用于驅動程序通信協議等機制中.子選項可以全不選,內核中若有其他部分依賴它,會自動選上 Cryptographic algorithm manager
- 創建加密模版實例,必須要選 HMAC support
- 為IPSec所必須,可為PPPoE提供壓縮支持 Null algorithms
- NULL加密算法(什么也不做),用于IPsec協議的封裝安全載荷模塊(ESP) MD4 digest algorithm
- 老舊的摘要算法,已經過時 MD5 digest algorithm
- 主流摘要算法,128位(已被中國山東大學王小云攻破,可以快速找到碰撞) SHA1 digest algorithm
- 主流摘要算法,160位(已被中國山東大學王小云攻破,可以快速找到碰撞),速度與MD5相當 SHA256 digest algorithm
- 更好的摘要算法,256位,速度較SHA1稍慢 SHA384 and SHA512 digest algorithms
- 更好的摘要算法,384/512位,速度大約只有SHA1的40-50% Whirlpool digest algorithms
- 最安全的摘要算法,512位,已被列入ISO標準,目前最新版本為3.0(2003年發布) Tiger digest algorithms
- 號稱最快的摘要算法,192位,專門為64位CPU進行了優化 ECB support
- 電子密碼本,最簡單的加密方法 CBC support
- 密碼塊鏈,IPSec需要使用它 DES and Triple DES EDE cipher algorithms
- 老邁的(DES)和尚佳的(Triple DES)對稱加密算法 Blowfish cipher algorithm
- 又老又慢的對稱加密算法 Twofish cipher algorithm
- 很強的對稱加密算法,使用較廣 Twofish cipher algorithms (i586)
- 很強的對稱加密算法,使用較廣(針對i586的版本) Serpent cipher algorithm
- 很強的對稱加密算法 AES cipher algorithms
- 最佳的對稱加密算法(Rijndael),128/192/256位,強度最高,快速且節省內存 AES cipher algorithms (i586)
- 最佳的對稱加密算法(Rijndael),128/192/256位,強度最高,快速且節省內存(針對i586的版本) CAST5 (CAST-128) cipher algorithm
- 對稱加密算法 CAST6 (CAST-256) cipher algorithm
- 對稱加密算法 TEA, XTEA and XETA cipher algorithms
- 較弱的對稱加密算法 ARC4 cipher algorithm
- 脆弱的流對稱加密算法 Khazad cipher algorithm
- 對稱加密算法 Anubis cipher algorithm
- 對稱加密算法 Deflate compression algorithm
- 壓縮算法,當在IPSec中使用IPCOMP協議時才需要 Michael MIC keyed digest algorithm
- 摘要算法,僅僅用于校驗iSCSI設備傳輸的數據,因為算法本身比較脆弱 CRC32c CRC algorithm
- 摘要算法,可用于校驗iSCSI設備傳輸的數據 Testing module
- 快速且丑陋的測試模塊 Hardware crypto devices
- 僅有VIA C7系列處理器支持硬件加密(VIA PadLock高級加密引擎)
Library routines
庫子程序
僅有那些不包含在內核原碼中的第三方內核模塊才可能需要,可以全不選,內核中若有其他部分依賴它,會自動選上
- CRC-CCITT functions
- 傳送8-bit字符,歐洲標準 CRC16 functions
- 傳送8-bit字符,美國標準 CRC32 functions
- 用于點對點的同步數據傳輸中,傳輸網絡數據包所必須的 CRC32c (Castagnoli, et al) Cyclic Redundancy-Check
- 用于點對點的同步數據傳輸中,比如iSCSI設備
- Load an Alternate Configuration File
- 讀入一個外部配置文件 Save Configuration to an Alternate File
- 將配置保存到一個外部文件