`
weiyuhu
  • 浏览: 235837 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

Linux 2.6.19.x 内核编译配置选项简介

阅读更多
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
        还使用
分享到:
评论

相关推荐

    Linux 2.6.19.x内核编译配置选项简介

    Linux 2.6.19.x 内核编译配置选项是决定内核功能和性能的关键步骤,对于系统管理员和开发者来说,理解这些选项至关重要。本文将深入探讨这些配置选项,帮助你更好地定制你的内核。 首先,"Code maturity level ...

    Linux2.6.19.x内核编译配置选项简介

    本文档基于“Linux2.6.19.x内核编译配置选项简介”,详细介绍了内核编译过程中的关键配置选项及其作用。 #### 二、代码成熟度选项 **Codematurityleveloptions** 这部分选项用于控制是否启用尚处于开发阶段或未完全...

    Linux 2.6.19.x 内核编译配置选项简介【作者:金步国】

    ### Linux 2.6.19.x 内核编译配置选项详解 #### 一、引言 在深入探讨Linux 2.6.19.x内核编译配置选项之前,我们先简单回顾一下内核编译配置的重要性。内核是操作系统的核心部分,负责管理和协调硬件资源,并为应用...

    Linux 2.6.19.x 内核编译配置选项简介.doc

    ### Linux 2.6.19.x 内核编译配置选项详解 #### 一、代码成熟度选项(Codematurityleveloptions) 这部分主要涉及内核中处于开发阶段或者未完全成熟的代码和驱动。 - **显示尚在开发中或尚未完成的代码与驱动**:...

    linux-2.6.19.x内核编译配置选项简介.pdf

    Linux 2.6.19.x内核作为一个较早期的稳定版本,其编译配置选项非常丰富。以下将详细介绍部分核心配置选项的知识点: ### 1. 代码成熟度选项 (Codematurityleveloptions) - **Promptfordevelopmentand/...

    Linux 2.6.19.x 内核编译配置选项详解

    本文作者是一位自由软件爱好者,所以本文虽然不是软件,但是本着 GPL 的精神发布。任何人都可以自由使用、转载、复制和再分发,但必须保留作者署名,亦不得对声明中的任何条款作任何形式的修改,也不得附加任何其它...

    kernel_options__Linux_2.6.19.x_内核编译配置

    Linux 2.6.19.x版本是一个较为老旧的Linux内核版本,但是了解其编译配置选项对熟悉Linux内核的发展历程及深入理解Linux系统仍有很大帮助。 ### 内核编译配置基础 内核编译配置主要分为三个步骤:配置、编译、安装...

    linux2.6内核编译配置选项简介

    本文将详细介绍Linux 2.6.19.x内核编译配置选项,帮助开发者优化定制自己的内核。 一、内核配置过程 1. 获取内核源码:首先,你需要从官方网站或者通过Git克隆获取Linux内核源码。例如,你可以使用命令`git clone ...

    linux_内核编译配置选项

    本文将深入解析《Linux 2.6.19.x内核编译配置选项简介》中提及的重要配置选项,帮助读者理解每个选项的作用及应用场景,为定制化内核编译提供指导。 #### 代码成熟度选项(Code maturity level options) - **...

    Linux内核编译配置选项简介

    ### Linux 2.6.19.x 内核编译配置选项详解 #### 一、引言 在深入探讨Linux 2.6.19.x内核编译配置选项之前,我们先简单回顾一下内核编译配置的重要性。内核是操作系统的核心组件,负责管理和协调计算机硬件资源以及...

    Linux 2_6_19_x 内核编译配置选项简介【作者:金步国】

    ### Linux 2.6.19.x 内核编译配置选项详解 #### 一、概览 在本文中,我们将深入探讨Linux 2.6.19.x内核编译过程中的一些关键配置选项,特别是menuconfig选项。这对于那些希望自定义编译内核的用户来说是一个非常...

    uclinux内核配置与裁减-基于blackfin

    在文档《Linux 2.6.19.x 内核编译配置选项简介.doc》中,可能会详细讲解Linux 2.6.19.x版本的内核配置选项,包括内核编译的基本流程、编译选项的解释以及如何根据特定需求定制内核。这些信息对于理解内核配置过程至...

Global site tag (gtag.js) - Google Analytics