Linux内核配置详解

更新时间:2024-02-27 15:23:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

Linux内核配置详解

首先对内核进行菜单配置, 代码:

1. cd /usr/src/linux 2. make menuconfig

代码成熟度选项 代码:

1. Code maturity level options ---> 2. [*] Prompt for development and/or incomplete code/drivers

3. [*] Select only drivers expected to compile cleanly

Prompt for development and/or incomplete code/drivers 显示尚在开发中或尚未完成的代码与驱动.除非你是测试人员或者开发者,否则请勿选择打开使用开发中、不完全的代码/驱动会让内核配置多出很多选项,由于我们需要使用一些正在开发中的功能,因此必需打开这一选项。

通用设置选项 代码:

1. General setup --->

2. () Local version - append to kernel release

3. [*] Support for paging of anonymous memory (swap)

4. [*] System V IPC

5. [*] POSIX Message Queues 6. [*] BSD Process Accounting

7. [*] BSD Process Accounting version 3 file format

8. [*] Sysctl support 9. [ ] Auditing support

10. (15) Kernel log buffer size (16 => 64KB, 17 => 128KB)

11. [*] Support for hot-pluggable devices 12. [*] Kernel Userspace Events 13. [*] Kernel .config support

14. [*] Enable access to .config through /proc/config.gz

15. [*] Configure standard kernel features (for small systems) --->

16. --- Configure standard kernel features (for small systems)

17. [ ] Load all symbols for

1 / 52

debugging/kksymoops

18. [*] Enable futex support 19. [*] Enable eventpoll support 20. [*] Optimize for size

21. [*] Use full shmem filesystem 22. (0) Function alignment 23. (0) Label alignment 24. (0) Loop alignment 25. (0) Jump alignment

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:表示系统5 的Inter ProcessCommunication,它用于处理器在程序之间同步和交换信息,如果不选这项,很多程序运行不起来的。

POSIX Message Queues:这是POSIX 的消息队列,它同样是一种IPC。建议你最好将它选上。 BSD Process Accounting:这是充许用户进程访问内核将账户信息写入文件中的。这通常被认为是个好主意,建议你最好将它选上。

BSD Process Accounting version 3 file format:使用新的第三版文件格式,可以包含每个进程的PID 和其父进程的PID,但是不兼容老版本的文件格式。 Export task/process statistics through netlink:通过netlink接口向用户空间导出任务/进程的统计信息,与BSD ProcessAccounting 的不同之处在于这些统计信息在整个任务/进程生存期都是可用的。

Enable per-task delay accounting:在统计信息中包含进程等候系统资源(cpu,IO 同步,内存交换等)所花费的时间。

UTS Namespaces:UTS名字空间支持,不确定可以不选。

Enable system-call auditing support:支持对系统调用的审计。 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!):编译时优化内核尺寸(使用\而不是\参数编译),有时会产生错误的二进制代码。

Enable extended accounting over taskstats:收集额外的进程统计信息并通过taskstats接口发送到用户空间。

Enable 16-bit UID system calls:允许对UID系统调用进行过时的16-bit包装。 Include all symbols in kallsyms:在kallsyms中包含内核知道的所有符号,

2 / 52

内核将会增大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 SLAB allocator:使用SLAB完全取代SLOB进行内存分配,SLAB是一种优秀的内存分配管理器,推荐使用。

Enable VM event counters for /proc/vmstat:允许在/proc/vmstat中包含虚拟内存事件记数器。 Sysctl support:这个选项能不重新编译内核修改内核的某些参数和变量,如果你也选择了支持/proc,将能从/proc/sys 存取可以影响内核的参数或变量。建议你最好将它选上。 Auditing support:审记支持,用于和内核的某些子模块同时工作,例如SELinux。只有选择此项及它的子项,才能调用有关审记的系统调用。

Kernel log buffer size:内核日志缓存的大小,12 =>4 KB,13 => 8 KB,14 => 16 KB 单处理器,15 => 32 KB 多处理器,16 => 64 KB forx86 NUMAQ or IA-64,17=> 128 KB for S/390。

Support for hot-pluggable devices:是否支持热插拔的选项,肯定要选上。不然USB、PCMCIA 等这些设备都用不了。

Kernel Userspace Events:内核中分为系统区和用户区,这里系统区和用户区进行通讯的一种方式,选上。 Kernel .config support:将.config 配置信息保存在内核中,选上它及它的子项使得其它用户能从/proc 中得到内核的配置。还记得另一篇贴子我是如何取得启动光盘的内核配置信息,并在此基础上配置新的内核吗?

Configure standard kernel features (for smallsystems):这是为了编译某些特殊的内核使用的,通常你可以不选择这一选项,你也不用对它下面的子项操心了。

Load all symbols for debugging/kksymoops:是否装载所有的调试符号表信息,如果你不需要对内核调试,不需要选择此项。

Enable futex support:不选这个内核不一定能正确的运行使用glibc 的程序,当然要选上。 Enable eventpoll support:不选这个内核将不支持事件轮循的系统调用,最好选上。

Optimize for size:这个选项使gcc 使用-Os 的参数而不是-O2 的参数来优化

3 / 52

编译,以获得更小尺寸的内核,建议选上。

Use full shmem filesystem:除非你在很少的内存且不使用交换内存时,才不要选择这项。后面的这四项都是在编译时内存中的对齐方式,0 表示 编译器的默认方式。使用内存对齐能提高程序的运行速度,但是会增加程序对内存的使用量。内核也是一组程序呀。

可加载模块 代码:

1. Loadable module support --->

2. [*] Enable loadable module support 3. [*] Module unloading

4. [ ] Forced module unloading 5. [*] Module versioning support (EXPERIMENTAL)

6. [ ] Source checksum for all modules 7. [*] Automatic kernel module loading

Enable loadable modulesupport,很多人喜欢将全部功能、硬件支持一股脑的编进内核,而不是使用模块的方式。这样做非常不好(个人觉得)。其实我也做过嵌入式的开发,在针对特定硬件的平台下尽可能将内核编小,将始终是支持 模块加载的。例如我们开发的防火墙就是做为内核的模块被加载的。使用模块支持,你的系统能具有更好的可扩充性。还有一个原因就是自己编写的功能模块、设备驱动模块(假设编写的质量不高)以模块方式工作引起KernelPanic 的机率要远远低于不支持模块全部编进内核的方式。讲了这么多,终于可以理直气壮的选上这一功能了。 Module unloading,不选这个功能,加载的模块就不能卸载。没什么需要多解释的,建议最好选上。

Forced module unloading,这个选项能强行卸载模块,即使内核认为这样并不安全,也就是说你可以把正在使用中的模快卸载掉。如果你不是内核开发人员或者骨灰级的玩家,不要选择这个选项。

Module versioning support(EXPERIMENTAL),这个功能可以让你使用其它版本的内核模块,由于我自己写一些模块,所以我会用到这个选项,因为内核更新太快了,我的头文件更新根本赶不上内核的更新。还有,虽然我在Gentoo 下 开发,但实际真实环境用的却是从kernel.org 下载的内核。虽然我选择了这个选项,不过建议你不要选择这个选项。

Source checksum for all modules,这个功能是为了防止更改了内核模块的代码但忘记更改版本号而造成版本冲突。我估计现在没有哪家公司在开发中还没使用版本控制工具,所以不需要这项了。如果你不是自己写内核模块,那就更不需要这一选项了。

Automatic kernel moduleloading,这个选项能让内核自动的加载部份模块,建议你最好选上。举个例子说明一下,如模块eth1394 依赖于模块ieee1394。如果选择了这个选项,可以直接加载模块eth1394;如果没有选择这个选项,必需先加载模块ieee1394,再加载模块eth1394,否则将出错。

4 / 52

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调度器。

处理器内型及特性 代码:

1. Processor type and features ---> 2. Subarchitecture Type (PC-compatible) 3. ---> Processor family

(Pentium-4/Celeron(P4-based)/Pentium-4 M/Xeon) --->

4. [ ] Generic x86 support 5. [*] HPET Timer Support

6. [*] Symmetric multi-processing support 7. (2) Maximum number of CPUs (2-255) 8. [*] SMT (Hyperthreading) scheduler support

9. [ ] Preemptible Kernel

10. [ ] Machine Check Exception 11. <M> Toshiba Laptop support 12. <M> Dell laptop support

13. < > /dev/cpu/microcode - Intel IA32 CPU microcode support

14. < > /dev/cpu/*/msr - Model-specific register support

15. < > /dev/cpu/*/cpuid - CPU information support

16. Firmware Drivers --->

17. < > BIOS Enhanced Disk Drive calls

5 / 52

determine boot disk (EXPERIMENTAL) High Memory Support (4GB) --->

18. [ ] Allocate 3rd-level pagetables from highmem

19. [ ] Math emulation

20. [*] MTRR (Memory Type Range Register) support

21. [ ] Boot from EFI support (EXPERIMENTAL) 22. [*] Enable kernel irq balancing 23. [ ] Use register arguments (EXPERIMENTAL)

Subarchitecture Type,这没什么好说的,如果用PC 机的话都选这个。 Processor family,这也没什么好说的,选择你机器对应的处理器即可。 Generic x86 support,这一选项针对x86 系列的CPU 使用更多的常规优化。如果你在上面一项选的是i386、i586之类的才选这个。 HPET Timer Support,HPET 是替代8254 芯片的下一代时钟处理器。这里你可以安全的选上这一选项。如果硬件不支持的话,将仍使用8254 时钟处理器。 Symmetric multi-processing support,对称多处理器支持,在单CPU 的机器上,不选这个选项会更快一些。由于超线程技术,看起来是两颗CPU,因些要选上这个选项。

Maximum number of CPUs (2-255),支持的最大CPU 数。SMT (Hyperthreading) scheduler support,超线程支持,如果你的CPU 是P4 超线程的,应该选上这一选项。

Preemptible Kernel,这个选项能使应用程序即使内核在高负载时也很可靠,建议最好选上。

Machine Check Exception,这个选项能让CPU 检测到系统故障时通知内核,一般我用组装的台式机会选这项。本本嘛,我感觉还是非常可靠的,所以就不选它了。

Toshiba Laptop support,Dell laptopsupport,这两项都是对本本的支持,其实编译内核的原则应该是让内核能在特定的环境下运行,由于我编译的内核可能公司的其它人也会使用,所以我尽可能的不针对特定的硬件。将对特定的硬件支持编译成模块。

/dev/cpu/microcode - Intel IA32 CPU microcodesupport,这个选项是让你使用不随Linux 内核发行的IA32 microcode,但是你必需有IA32 microcode 的二进制文件。

/dev/cpu/*/msr - Model-specific register support,这个选项能让特权CPU 访问x86 的MSR 寄存器。由于超线程并不是真正的多处理器环境,所以不要选择这个。

/dev/cpu/*/cpuid - CPU information support,这个选项能从dev/cpu/x/cpuid 获得CPU 的唯一标识符。

BIOS Enhanced Disk Drive calls determine boot disk,台式机的有些BIOS 支持从某块特定的硬盘启动,由于本本只能装一块硬盘,所以就不选择这项了。如果你的BIOS不支持这个功能而你选上的话,有可能无法启动。 High Memory Support (4GB),4GB 的内存支持,已经足够了。

6 / 52

Allocate 3rd-level pagetables from highmem,除非你真的有几G 的内存,选择这个是没有意义的。 Math emulation,估计现在没人有386 或486SX 的处理器了吧,那就不要选这个。 MTRR (Memory Type Range Register) support,这个选项必需要选上。 Boot from EFI support (EXPERIMENTAL),由于我使用的是GRUB,所以选上这个也没什么用。

Enable kernel irq balancing,选上这个选项能让内核进行IRQ 均衡。

Use register arguments (EXPERIMENTAL),使用-mregparm=3 参数编译内核,将前3 个参数以寄存器方式进行参数调用。GCC 的版本必需大于等于3.0。

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:可以抢占大内核锁,应用于实时要求高的场合,不适合服务器环境。 Enable VM86 support:虚拟X86支持,在DOSEMU下运行16-bit程序或XFree86通过BIOS初始化某些显卡的时候才需要。

Enable X86 board specific fixups for reboot:修正某些旧x86主板的重起bug,这种主板基本绝种了。

Firmware Drivers:固件驱动程序。

BIOS update support for DELL systems via sysfs:仅适用于DELL机器。 Dell Systems Management Base Driver:仅适用于DELL机器。

Memory split:如果你不是绝对清楚自己在做什么,不要改动这个选项。 Memory model:一般选\其他选项涉及内存热插拔。 64 bit Memory and IO resources:使用 64位的内存和IO 资源。

Enable seccomp to safely compute untrusted bytecode:只有嵌入式系统可以不选。

Timer frequency:内核时钟频率,桌面推荐\服务器推荐\或\。 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就不选,否则就选上。

电源管理 代码:

1. Power management options (ACPI, APM) --->

7 / 52

2. [*] Power Management support

3. [ ] Power Management Debug Support 4. [ ] Software Suspend (EXPERIMENTAL)

5. ACPI (Advanced Configuration and Power Interface) Support ---> 6. APM (Advanced Power

Management) BIOS Support ---> 7. CPU Frequency scaling ---> Power Management support,电源管理没什么好说的,不想浪费电就选上。如果不选你可以跳过这部份。

Power Management Debug Support,电源管理的调试信息支持,如果不是要调试内核有关电源管理部份,请不要选择这项。

Software Suspend(EXPERIMENTAL),休眠到硬盘。也就是将内存写入交换分区中,下次启动可以通过参数resume=/dev/swappartition(例如:resume=/dev/hda6)来恢复上次机器运行的状态。这项功能对于系统引导时启动许多服务的机器来说很有用,可以节约启动时间。这项功能根据自己的需要选择吧,如果你选择这项功能,记得恢复休眠后重做交换分区。 代码:

1. ACPI (Advanced Configuration and Power Interface) Support ---> 2. [*] ACPI Support

3. [ ] Sleep States (EXPERIMENTAL) 4. <M> AC Adapter 5. <M> Battery 6. <M> Button 7. <M> Video 8. <M> Fan

9. <M> Processor 10. <M> Thermal Zone

11. <M> ASUS/Medion Laptop Extras 12. <M> IBM ThinkPad Laptop Extras 13. <M> Toshiba Laptop Extras

14. (0) Disable ACPI for systems before Jan 1st this year

15. [ ] Debug Statements

16. [ ] Power Management Timer Support

ACPI Support,这是一种电源管理方式,你可以看看你的BIOS 是否支持。如果支持的话建议你选上这项。 Sleep States(EXPERIMENTAL),这项功能可以让系统进入休眠状态(不是休眠到硬盘)。休眠是指系统仍然通着电,只是进入最大幅度的省电状态;而休眠到硬盘是指系统已经断电。不过如果你不是驱动程序的电源管理部份的开发人员,建议你最好不要选择这项。相信未来linux 下的驱动对电源支持的功能会越来 越好,或者也搞个硬件兼容列表,到时就可以放心的使用这项功能了。

8 / 52

AC Adapter,检测是电源供电还是电池供电,通常只对本本有用。 Battery,通过/proc/acpi/battery 得到电池的信息,通常这也是针对笔记本的。 Button,捕获Power、Sleep、Lid(我也不知道这是什么按钮)等按钮是否按下,并做相应的动作。

Video,集成在板上的显卡的ACPI 支持,对有些板卡可能不起作用。

Fan,风扇的支持。这一点很明显,不选这项我的本本的风扇一直在转,选上以后风扇只是间断的转转。

Processor,当机器负荷轻时节省处理器的用电,处理器可是电脑中的第一用电大户(可能老式的CRT显示器和它有的一比)。 Thermal Zone,这个我也不太清楚是什么,只是据说大部份的台式机和笔记本都支持,不选还可能把处理器烧掉。如果你不会让模块正常工作,还是把它编进内核吧,怪吓人的。

ASUS/Medion Laptop Extras、IBM ThinkPad LaptopExtras、Toshiba Laptop Extras,这三种本本的扩展支持。你的内核如果只是自己用,选个该选的就 行了。

Disable ACPI for systems before Jan 1st thisyear,输入四位数的年份,在该年的1 月1 日前不使用ACPI 的功能。0 表示一直使用。 Debug Statements,详细的ACPI 调试信息,不搞开发就别选。 Power Management Timer Support,我的本本支持

HPET(要是忘了是什么,再看看前面),所以不选它。要是你的机器不支持,应该把它选上。 代码:

1. APM (Advanced Power Management) BIOS Support --->

2. <M> APM (Advanced Power Management) BIOS support 3. [ ] Ignore USER SUSPEND 4. [*] Enable PM at boot time

5. [ ] Make CPU Idle calls when idle 6. [ ] Enable console blanking using APM

7. [ ] RTC stores time in GMT

8. [ ] Allow interrupts during APM BIOS calls

9. [*] Use real mode APM BIOS call to power off

APM (Advanced Power Management) BIOS support,高级电源管理的支持,一般来说笔记本应该选上,台式机可以不选。

Ignore USER SUSPEND,只有NEC Versa M 系列的笔记本需要选择这一项。 Enable PM at boot time,启动时支持电源管理,选上这个选项能让系统自动的进行电源管理,除非在启动时死机,才不要选这项。 Make CPU Idle calls when idle,系统空闲时调用空闲指令。只有老式的CPU 才用这项。其实调用空闲指令还是让CPU 执行了一条指令。这个选项在内核循环中调用空闲指令。

9 / 52

Enable console blanking using APM,支持关闭监视器。据说这项功能对所有的笔记本都无效。如果你都按我的建议配置,系统是能自动休眠的(使用 ACPI)。你也不用担心你的显示器一直亮着的。

RTC stores time in GMT,按Unix 的标准,硬件的时钟应该设为格林威治时间。还是那句老话,因为我还要用Windows,所以硬件时钟设成了本地时间,当然就不要选这项了。

Allow interrupts during APM BIOS calls,允许APM 的BIOS 调用时中断。多数的机器不需要这项,Thinkpad 的一些新机器需要这项。如果休眠时挂机(包括睡下去就醒不来),再把这项选上。

Use real mode APM BIOS call to power off,建议最好选上此项,保证软件关机。如果你有兴趣可以试试你的机器不选这项能不能正常的软件关机(多数机器不能)。

补充一点,如果既选择了ACPI 又选择了APM,先加载的将被使用。通过这么多的例子,大家应该可以看出来在menuconfig 中,圆括号内是参数,可以选择某一选项或者输入具体的参数。方括号只能选择“Y”或“N”,尖括号除了选择“Y”和“N”还可以选择“M”。“Y”表示将该选项包括在内核中,menuconfig 中 以“*”表示。“N”表示不使用此选项的功能,“M”表示将此选项的功能编译成模块。ACPI 是为了取代APM 而设计的,因此尽量使用ACPI的功能,实在不行再加载apm 模块。 代码:

1. [*] CPU Frequency scaling 2. [ ] Enable CPUfreq debugging 3. < > /proc/cpufreq interface (deprecated)

4. Default CPUFreq governor (performance) --->

5. --- 'performance' governor 6. <M> 'powersave' governor

7. <M> 'userspace' governor for userspace frequency scaling

8. [ ] /proc/sys/cpu/ interface (2.4. / OLD)

9. <M> 'ondemand' cpufreq policy governor

10. <*> CPU frequency table helpers 11. <M> ACPI Processor P-States driver 12. <M> AMD Mobile K6-2/K6-3 PowerNow! 13. <M> AMD Mobile Athlon/Duron PowerNow!

14. <M> AMD Opteron/Athlon64 PowerNow! 15. <M> Cyrix MediaGX/NatSemi Geode Suspend Modulation

16. <M> Intel Enhanced SpeedStep

17. [ ] Use ACPI tables to decode valid

10 / 52

frequency/voltage pairs---

18. Built-in tables for Banias CPUs

19. <M> Intel Speedstep on ICH-M chipsets (ioport interface)

20. <M> Intel SpeedStep on 440BX/ZX/MX chipsets (SMI interface)

21. <M> Intel Pentium 4 clock modulation 22. < > nVidia nForce2 FSB changing 23. <M> Transmeta LongRun

24. <M> VIA Cyrix III Longhaul--- shared options 25. [ ]

/proc/acpi/processor/../performance interface (deprecated)

26. [ ] Relaxed speedstep capability checks CPU Frequency scaling,这一选项允许改变CPU的主频,使CPU 在低负荷或使用电池时降低主频,达到省电的目的。

Enable CPUfreq debugging,是否允许调试CPU 改变主频的功能,如果要调试,还需要在启动时加上参数。cpufreq.debug= 1:变频技术的内核调试 2:变频技术的驱动调试 4:变频技术的调节器调试

/proc/cpufreq interface (deprecated) ,是否允许/proc/cpufreq 来调节主频,建议使用默认的sysfs 来调节。

Default CPUFreq governor (performance) --->,默认的主频调节,圆括号内的是你选择的结果,这里表示以性能为主。

'powersave' governor,最大限度的节约电能调节器。

'userspace' governor for userspace frequencyscaling,用户自定义调节器。 /proc/sys/cpu/ interface (2.4. / OLD),兼容2.4 内核的用户调节器。 'ondemand' cpufreq policy governor,自动调节主频。

CPU frequency table helpers,多数的CPU 需要这一项来调节主频。 ACPI Processor P-States driver,报告处理器的状态。

AMD Mobile K6-2/K6-3 PowerNow!,AMD 移动版K6处理器的变频驱动。

AMD Mobile Athlon/Duron PowerNow!,AMD 移动版毒龙、雷乌的变频驱动。 AMD Opteron/Athlon64 PowerNow!,AMD64 处理器的变频驱动。 Cyrix MediaGX/NatSemi Geode SuspendModulation,Cyrix 处理器的变频驱动。 Intel Enhanced SpeedStep,Intel 的变频技术支持。

Use ACPI tables to decode validfrequency/voltage pairs,使用BIOS 中的主频电压参数。

--- Built-in tables for Banias CPUs,迅驰一代的主频/电压参数。

Intel Speedstep on ICH-M chipsets (ioportinterface) ,Intel ICH-M 南桥芯片组的支持。

Intel SpeedStep on 440BX/ZX/MX chipsets (SMIinterface),Intel

11 / 52

440BX/ZX/MX 南桥芯片级的支持。

Intel Pentium 4 clock modulation,P4 处理器的时钟模块支持。 nVidia nForce2 FSB changing,nVidia nForce2的支持。 Transmeta LongRun,Transmeta 处理器的支持。

VIA Cyrix III Longhaul,VIA Cyrix 处理器的支持。

/proc/acpi/processor/../performanceinterface (deprecated),从 /proc/acpi/processor/../performance 获得CPU的变频信息。

Relaxed speedstep capability checks,不全面检测Intel Speedstep,有的系统虽然支持Speedstep技术,却无法通过全面的检测。

Legacy Power Management API:传统的电源管理API,比如软关机和系统休眠等接口。

Driver model /sys/devices/.../power/state files:内核帮助文档反对使用该选项,即将被废除。

Generic Hotkey:统一的热键驱动,建议不选。

Dock:支持由ACPI控制的集线器(docking stations)。

ACPI0004,PNP0A05 and PNP0A06 Container Driver:支持内存和CPU 的热插拔。 Smart Battery System:支持依赖于I2C 的\智能电池\这种电池非常老旧且罕见,还与当前的ACPI 标准兼容性差。

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 系统上需要打开。

总线类型

1. [*] PCI support

2. PCI access mode (Any) --->

12 / 52

3. [ ] Message Signaled Interrupts (MSI and MSI-X)

4. [ ] Legacy /proc/pci interface 5. [ ] PCI device name database 6. [*] ISA support 7. [*] EISA support

8. [*] Vesa Local Bus priming 9. [*] Generic PCI/EISA bridge 10. [*] EISA virtual root device 11. [ ] EISA device name database 12. [ ] MCA support

13. < > NatSemi SCx200 support 14. PCCARD (PCMCIA/CardBus) support --->

15. PCI Hotplug Support ---> PCI support,没有人不知道这是什么总线类型吧,实在不知道就去google 查吧,这个当然要选上。

PCI access mode (Any),强列建议选Any,系统将优先使用MMConfig,然后使用BIOS,最后使用Direct 检测PCI 设备。

Message Signaled Interrupts (MSI and MSI-X),建议你不要选择这项,设备将使用默认的IRQ 中断。如果选择这项,充许设备通过PCI 总线写入内存堆 栈产生一个中断。 Legacy /proc/pci interface,是否使用/proc/pci目录下的信息文件来描述PCI 设备的信息。现在的系统多数都使用lspci 工具来得到这样的信息。

PCI device name database,如果你不打算使用lspci 工具,就把这项和上面的一项选上。lspci和hotplug 都不需要内核中的设备信息库了。 ISA support,是否使用工业总线。如果你没有老式的ISA 设备,可以不选这项。现在基本上都没有ISA的设备了。不过需要注意的是如果你做嵌入式系统的开发,一些PC104 的总线可能会桥接到EISA 或者是VESA 总线上。 EISA support,扩展工业总线。 Vesa Local Bus priming,VESA 总线,也是扩展工业总线的一种。我的老486DX66 的机器上的显卡就是这种总线,块板上大概还有2 个EISA 插槽各3个ISA 插槽。 PCI/EISA bridge,PCI、EISA 两种总线的桥。

EISA virtual root device,EISA 总线的虚拟根设备。 EISA device name database,内核中的EISA 设备信息库。

MCA support,微通道总线。IBM 的台式机和笔记本上可能会有这种总线,包括它的p 系列、e 系列、z系列机器上都用到了这种总线。 NatSemi SCx200 support,这个我不知道是什么东西,看帮助是松下的一种半导体处理器的驱动。总之,只要你的主板没有ISA 插槽,而且你也不是搞嵌入式开发,工业自动化控制的。不要选“ISA support”就是了,如今的ISA 设备在x86 体系上基本是是见不到了。不过自己制板的话,还是ISA 的板子最好做。 1. PCCARD (PCMCIA/CardBus) support ---> 2. PCCard (PCMCIA/CardBus) support 3. [ ] Enable PCCARD debugging

13 / 52

4. [ ] Enable obsolete PCCARD code 5. 16-bit PCMCIA support 6. [*] 32-bit CardBus support 7. --- PC-card bridges

8. CardBus yenta-compatible bridge support 9. Cirrus PD6729 compatible bridge support 10. i82092 compatible bridge support 11. i82365 compatible bridge support 12. Databook TCIC host bridge support

PCCard (PCMCIA/CardBus) support,一般只有笔记本电脑上才会有PCMCIA 插槽,如果你是台式机的话,可以不选这一项,然后跳过这一部份。 Enable PCCARD debugging,通常不需要选择调试PCMCIA 设备,除非你是设备驱 动的开发人员。

Enable obsolete PCCARD code,老式的PCMCIA 设备只持。现在很少有这样的设备了,除非你买这样的设备时带了张Linux 的驱动光盘才需要选上。而且估计你也只能在二手市场上买到这样的设备。

16-bit PCMCIA support,16 位的PCMCIA 总线支持。 32-bit CardBus support,32 位的PCMCIA 总线支持,通常也叫PCMCIA II 总线。 下面的是不同产家的PCMCIA 芯片的驱动支持,如果你知道你的本本用的是什么芯片组的话,可以只选它而不选其它的。要是你不知道可以象我一样的全部选上,然后用modprobe 一种一种的试。最后我终于知道我的HP zv5028 的本本用的是yenta-compatible 的芯片组了。 PC-card bridges

2. CardBus yenta-compatible bridge support 3. Cirrus PD6729 compatible bridge support 4. i82092 compatible bridge support 5. i82365 compatible bridge support 6. Databook TCIC host bridge support PCI Hotplug Support --->

2. Support for PCI Hotplug (EXPERIMENTAL) 3. < > Fake PCI Hotplug driver (NEW) 4. < > Compaq PCI Hotplug driver (NEW) 5. < > IBM PCI Hotplug driver (NEW) 6. < > ACPI PCI Hotplug driver (NEW) 7. [ ] CompactPCI Hotplug driver (NEW) 8. < > PCI Express Hotplug driver (NEW) 9. < > SHPC PCI Hotplug driver (NEW)

Support for PCI Hotplug (EXPERIMENTAL),一般来讲只有服务器上会有热插拔的设备,如果你使用的是台式机,你可以不选择此项并跳过这一部份。(其实我也没有选这一项,只是为了讲解的方便而选上的。)

Fake PCI Hotplug driver (NEW),选上这一选项能让你的机器模拟PCI 热插拔。 注意,它并不是真正意义上的热插拔,决对不允许带电插拔设备除非你的主板上 集成了PCI 热插拔芯片并且你的PCI 设备本身支持热插拔。

Compaq PCI Hotplug driver (NEW),Compaq 服务器上的热插拔芯片组的支持。

14 / 52

IBM PCI Hotplug driver (NEW),IBM 服务器上的热插拔芯片组的支持。 ACPI PCI Hotplug driver (NEW),PCI 热插拔设备是否支持ACPI 电源管理(一般来说都是支持的)。

CompactPCI Hotplug driver (NEW),精简PCI 总线的热插拔设备的支持,通常在嵌入式系统中会用到精简PCI 总线。

PCI Express Hotplug driver (NEW),PCI 加速总线的热插拔设备的支持。现在PCI Express 总线的显卡挺火的。但用于服务器上的PCI 加速总线的设备我还没见过。

SHPC PCI Hotplug driver (NEW),SHPC 热插拔控制芯片的支持。

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的错误信息。

PCI Debugging:将PCI调试信息输出到系统日志里。

Interrupts on hypertransport devices:允许本地的hypertransport设备使用中断。

NatSemi SCx200 support:在使用 AMD Geode处理器的机器上才可能有。

CardBus yenta-compatible bridge support:使用 PCMCIA 卡的基本上都需要选择这一项,子项请按照自己实际使用的PCMCIA卡选择{省略的部分请按照自己实际使用的PCMCIA卡选择}。 PCI Hotplug Support:PCI热插拔支持,如果你有这样的设备就到子项中去选吧。

可执行文件格式

1. [*] Kernel support for ELF binaries

2. < > Kernel support for a.out and ECOFF binaries 3. <*> Kernel support for MISC binaries

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 等语言编写的程序时非常有用。

文件系统

1. <*> Second extended fs support 2. [*] Ext2 extended attributes

3. [*] Ext2 POSIX Access Control Lists 4. [*] Ext2 Security Labels

5. <*> Ext3 journalling file system support 6. [*] Ext3 extended attributes

7. [*] Ext3 POSIX Access Control Lists

15 / 52

8. [*] Ext3 Security Labels

9. [ ] JBD (ext3) debugging support 10. <*> Reiserfs support

11. [ ] Enable reiserfs debug mode 12. [ ] Stats in /proc/fs/reiserfs 13. [*] ReiserFS extended attributes

14. [*] ReiserFS POSIX Access Control Lists 15. [*] ReiserFS Security Labels 16. JFS filesystem support

17. [*] JFS POSIX Access Control Lists 18. [ ] JFS debugging 19. [ ] JFS statistics 20. XFS filesystem support

21. [*] Realtime support (EXPERIMENTAL) 22. [*] Quota support

23. [*] Security Label support 24. [*] POSIX ACL support 25. < > Minix fs support

26. < > ROM file system support 27. [*] Quota support

28. < > Old quota format support 29. Quota format v2 support 30. [*] Dnotify support

31. < > Kernel automounter support

32. < > Kernel automounter version 4 support (also supports v3) 33. CD-ROM/DVD Filesystems ---> 34. DOS/FAT/NT Filesystems ---> 35. Pseudo filesystems --->

36. Miscellaneous filesystems ---> 37. Network File Systems ---> 38. Partition Types --->

39. Native Language Support --->

有人说在编译内核时应该将/boot 分区和/分区的文件系统编译进内核,其它的 可以编译成模块。对,但不确切。让我们来一起了解一下linux 系统的启动顺序。在内核被加载后,如果initrd 参数传入了内核,内核会去调用指定的文件。当然,initrd 和System.map 通常都是/boot 下。但是同样可以用

initrd=(hd1,2)/initrd.img 这样的方式指定。内核启动完成后将调用/sbin/init,(如果是链接要保证目标文件能被内核加载)。不同的系统的启动脚本可能不太一样,这里不详细介绍。启动脚本向内核加载模块时可能用/sbin/modprobe 或/sbin/insmod,由此看来/sbin 的文件系统是要内核支持的。编译的内核模块一般在/lib/modules/的版本目录下,所以/lib/modules 的文件系统是要内核支持的。一旦其它文件系统的模块能加载,系统就能向正常的访问内核中的文件系统一样访问模块支持的文件系统了。由于启动脚本、fstab 自动加载等文件一般在/etc 目录下,因此/etc 的文件系统是要内核支持的。这里概

16 / 52

要的介绍了保证系统正常启动的几个关键点,可能我反而把它讲复杂了。如果你能理解上面的这段话,你应该能清楚的知道哪些文件系统是要编译进内核的,哪些是可以编译成模块的。如果你不太理解上面的这段话,我将详细介绍每个选项及几种常用的文件系统。

1. <*> Second extended fs support 2. [*] Ext2 extended attributes

3. [*] Ext2 POSIX Access Control Lists 4. [*] Ext2 Security Labels

5. <*> Ext3 journalling file system support 6. [*] Ext3 extended attributes

7. [*] Ext3 POSIX Access Control Lists 8. [*] Ext3 Security Labels

9. [ ] JBD (ext3) debugging support 10. <*> Reiserfs support

11. [ ] Enable reiserfs debug mode 12. [ ] Stats in /proc/fs/reiserfs 13. [*] ReiserFS extended attributes

14. [*] ReiserFS POSIX Access Control Lists 15. [*] ReiserFS Security Labels 16. JFS filesystem support

17. [*] JFS POSIX Access Control Lists 18. [ ] JFS debugging 19. [ ] JFS statistics 20. XFS filesystem support

21. [*] Realtime support (EXPERIMENTAL) 22. [*] Quota support

23. [*] Security Label support 24. [*] POSIX ACL support 25. < > Minix fs support

26. < > ROM file system support 27. [*] Quota support

28. < > Old quota format support 29. Quota format v2 support 30. [*] Dnotify support

31. < > Kernel automounter support

32. < > Kernel automounter version 4 support (also supports v3) 33. CD-ROM/DVD Filesystems ---> 34. DOS/FAT/NT Filesystems ---> 35. Pseudo filesystems --->

36. Miscellaneous filesystems ---> 37. Network File Systems ---> 38. Partition Types --->

39. Native Language Support --->

Second extended fs support,标准的Linux 文件系统,建议将这种文件系统编

17 / 52

译进内核。

Ext2 extended attributes,Ext2 文件系统的结点名称、属性的扩展支持。 Ext2 POSIX Access Control Lists,POSIX 系统的访问权限列表支持。也就是 Owner/Group/Others 的Read/Write/Execute 权限。请参考Unix 标准文件系统权限。 Ext2 Security Labels,扩展的安全标签,例如SElinux 之类的安全系统会使用 到这样的扩展安全属性。

Ext3 journalling file system support,如果你熟悉Redhat Linux,你一定会习惯Ext3 文件系统。

Ext3 extended attributes,Ext3 文件系统的结点名称、属性的扩展支持。 Ext3 POSIX Access Control Lists,POSIX 系统的访问权限列表支持。 Ext3 Security Labels,扩展的安全标签支持。

JBD (ext3) debugging support,Ext3 的调试。除非你是文件系统的开发者,否则不要选上这一项。

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,文件系统的结点名称、属性的扩展支持。

ReiserFS POSIX Access Control Lists,POSIX 系统的访问权限列表支持。 ReiserFS Security Labels,扩展的安全标签支持。 JFS filesystem support,JFS 是IBM 公司设计用于AIX 系统上的文件系统。后来这一文件系统也能应用于Linux 系统。

JFS POSIX Access Control Lists,POSIX 系统的访问权限列表支持。

JFS debugging,JFS 的调试。除非你是文件系统的开发者,否则不要选上这一项。 JFS statistics,在/proc/fs/jfs 文件中显示Reiserfs 文件系统的状态。一般来说不需要选择这一项。 XFS filesystem support,XFS 是SGI 公司为其图形工作站设计的一种文件系统, 后来这一文件系统也能应用于Linux 系统。

Realtime support (EXPERIMENTAL),实时卷的支持,能大幅提高大文件的读写速度。不过并不太安全,建议暂时不要选择这一选项。 Security Label support,扩展的安全标签支持。

POSIX ACL support,POSIX 系统的访问权限列表支持。 Minix fs support,Minix 可能是最早的Linux 系统所使用的文件系统。后来被 Ext2 文件系统所取代。

ROM file system support,内存文件系统的支持。除非你是嵌入式系统的开发者,明确知道你要干什么,否则不要选这一项。

18 / 52

Quota support,XFS 文件系统的配额支持。也就是说限制某个用户或者某组用户的磁盘占用空间。

Old quota format support,旧版本的配额支持。

Quota format v2 support,新版本(第二版)的配额支持。 Dnotify support,基于目录的文件变化的通知机制。

Kernel automounter support,内核自动加载远程文件系统的支持。

Kernel automounter version 4 support (also supports v3),新的(第四版) 的内核自动加载远程文件系统的支持,也支持第三版。

Ext2 execute in place support:程序在写入存储介质时就已经分配好运行时的地址,因此不需要载入内存即可在芯片内执行,一般仅在嵌入式系统上才有这种设备。

Ext4dev/ext4 extended fs support:尚处于开发状态的Ext4。 JBD2 (ext4dev/ext4) debugging support:仅供开发者使用。 GFS2 file system support:一种用于集群的文件系统。 OCFS2 file system support:一种用于集群的文件系统。

Inotify file change notification support:新式的文件系统的变化通知机制,简洁而强大,用于代替老旧的Dnotify。

Inotify support for userspace:用户空间的Inotify支持。

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:导出内核内部对象及其属性和对象之间的相互关

19 / 52

系的文件系统,它把连接在系统上的设备和总线以及驱动程序等组织成为一个分级的文件,内核启动时依靠它挂载根分区,禁用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:通用的分布式锁管理器,不明白就不选。

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

20 / 52

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 文件系统和\support\然后在系统启动并挂载了/proc 之后执行\>/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 隧道模式,用于提供外网安全(包括虚拟专用网络).整个数据包(数据头和负载)

21 / 52

都已经过加密处理且分配有新的ESP 头/IP 头和验证尾,从而能够隐藏受保护站点 的拓扑结构

IP: IPsec BEET mode IPsec BEET模式

INET: socket monitoring interface

socket监视接口,一些Linux 本地工具(如:包含ss 的iproute2)需要使用它 TCP: advanced congestion control

高级拥塞控制,如果没有特殊需求(比如无线网络)就别选了,内核会自动将默认的拥 塞控制设为\并将\作为候补 IP: Virtual Server Configuration

IP虚拟服务器允许你基于多台物理机器构建一台高性能的虚拟服务器,不玩集群就 别选了

The IPv6 protocol

你要是需要 IPv6就选吧 NetLabel subsystem support

NetLabel子系统为诸如CIPSO与RIPSO之类能够在分组信息上添加标签的协议 提供支持,如果你看不懂就别选了 Security Marking

对网络包进行安全标记,类似于nfmark,但主要是为安全目的而设计,如果你不明白 的话就别选

Network packet filtering (replaces ipchains)

Netfilter 可以对数据包进行过滤和修改,可以作为防火墙(\或

\或网关(NAT)或代理(proxy)或网桥使用.选中此选项后必须将\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

22 / 52

如果你打算使用ip_tables,ip6_tables,arp_tables 之一就必须选上 \

允许为包设臵优先级,一些排队规则(atm,cbq,dsmark,pfifo_fast,htb,prio)需要使用 它

\

类似于\但影响的是连接标记的值 \

允许对ip 包头部的DSCP(Differentiated Services Codepoint)字段进行修改,该字 段常用于Qos

\

允许对包进行标记(通常配合ip 命令使用),这样就可以改变路由策略或者被其它子 系统用来改变其行为

\

用于替代老旧的QUEUE(iptables内建的target之一),因为NFQUEUE能支持最多 65535个队列,而QUEUE只能支持一个 \

允许规则指定哪些包不进入链接跟踪/NAT子系统 \

允许对包进行安全标记,用于安全子系统 \

针对链接进行安全标记,同时还会将连接上的标记还原到包上(如果链接中的包尚 未进行安全标记),通常与SECMARK target联合使用 \

允许你在iptables 规则集中加入注释

\support

允许针对单个连接内部每个方向(进/出)匹配已经传送的字节数/包数 \

允许针对每个会话匹配先前由\设臵的标记值 \

连接跟踪匹配,是\的超集,它允许额外的链接跟踪信息,在需要设臵一些复杂 的规则(比如网关)时很有用

\

DCCP是打算取代UDP的新传输协议,它在UDP的基础上增加了流控和拥塞控制 机制,面向实时业务 \

允许对IP包头的DSCP字段进行匹配 \

允许对IPSec 包中的ESP头进行匹配,使用IPsec 的话就选上吧 \

加载特定协议的连接跟踪辅助模块,由该模块过滤所跟踪的连接类型的包,比如 ip_conntrack_ftp 模块 \允许对包的长度进行匹配

23 / 52

\

允许根据包的进出速率进行规则匹配,常和\配合使用以抵抗某些Dos 攻击

\

允许根据以太网的MAC 进行匹配,常用于无线网络环境 \

允许对先前由\标记的特定标记值进行匹配 IPsec \使用 IPsec 就选上吧

Multiple port match support

允许对TCP或UDP包同时匹配多个端口(通常情况下只能匹配一个端口) \

允许对到达的或将要离开的物理桥端口进行匹配 \

允许对封包目的地址类别(广播/群播/直播)进行匹配 \

允许对总字节数的限额值进行匹配 \

允许对iptables中的路由子系统中的realm 值进行匹配 \

流控制传输协议(SCTP),十年以后也许能够普及的东西 \

这是对包进行分类的有力工具,它允许利用连接跟踪信息对连接中处于特定状态的包进行匹配

\

允许根据一个给定的百分率对包进行周期性的或随机性的匹配 sring\

允许根据包所承载的数据中包含的特定字符串进行匹配 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

24 / 52

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)

25 / 52

的哈希表.它可以创建诸如\为每个特定的目标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地址上

26 / 52

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 支持的驱动程序,除非你有某些 怪异硬件,否则请选上

27 / 52

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 中关闭\这里的选项与PCI 设备无 关

PnP Debug Messages 该选项仅供调试使用

ISA Plug and Play support ISA设备即插即用支持

Plug and Play BIOS support

Linux使用\规范v1.0A(1994年)中定义的PNPBIOS自动检 测主板上的资源和设备,但是其中的某些特性目前尚未实现,比如:事件通知/扩展坞 (Docking Station)信息/ISAPNP 服务.如果你希望由内核检测主板上的设备并为其 分配资源(此时BIOS 中的\必须开启)可以选上,此外,PNPBIOS 还有助于 防止主板上的设备与其他总线设备冲突.不过需要注意的是ACPI 将会逐渐取代 PNPBIOS(虽然目前两者可以共存),所以如果你的系统不使用ISA 设备并且支持 ACPI,建议你不要选中该选项并将BIOS中的\关闭 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

28 / 52

通过并口与计算机连接的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

内存中的虚拟磁盘,大小固定(由下面的选项决定,也可给内核传递\参数\来决定),它的功能和代码都比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

29 / 52

杂项设备

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

30 / 52

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设备才需要选择

31 / 52

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 \

[level]\命令才能打开日志),可用于跟踪和捕获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)

32 / 52

出错代码的掩码,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

33 / 52

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

34 / 52

PCMCIA或CardBus 网卡 Wan interfaces WAN 接口 ATM drivers 异步传输模式

FDDI driver support 光纤分布式数据接口 HIPPI driver support

HIPPI(高性能并行接口)是一个在短距离内高速传送大量数据的点对点协议 PLIP (parallel port) support

将并口映射成网络设备,这样两台机器即使没有网卡也可以使用并口通过并行线传输IP数据包 PPP

(point-to-poi nt 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协议.小猫一族的通讯协议,

35 / 52

与宽带用户无关

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

36 / 52

该选项仅供调试 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

非标准串口支持.这样的设备早就绝种了

37 / 52

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 了.更多信息请参考内核帮助

38 / 52

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

39 / 52

松下的一种通用输入输出(GPIO)芯片,常用于嵌入式系统 NatSemi PC8736x GPIO Support

松下的一种通用输入输出(GPIO)芯片,常用于嵌入式系统 NatSemi Base GPIO Support

松下的一种通用输入输出(GPIO)芯片,常用于嵌入式系统 I2C support

I2C是Philips极力推动的微控制应用中使用的低速串行总线协议,可用于监控电压 /风扇转速/温度等.SMBus(系统管理总线)是I2C 的子集.除硬件传感器外\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

40 / 52

该选项仅供调试

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

在内存中开辟额外的屏幕缓冲区,这将允许你回滚屏幕

41 / 52

Scrollback Buffer Size (in KB)

在内存中开辟的额外屏幕缓冲区大小 Video mode selection support

允许在内核启动时使用\选择文本模式,如果你希望一行能够显示更多字符的 话可以打开它

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 仅供拥有多个声卡的用户选择

42 / 52

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 的\主机)被称为\根\也可以理解为是主板上的USB控制器),外部设备被称为\叶子\而内部的节点则称为\集线器).基本上 只要你想使用任何USB 设备都必须选中此项.另外,你还需要从下面选中至少一个 \比如适用于USB1.1 的\或 \适用于USB2.0的\如果你拿 不准的话把他们全部选中一般也不会出问题.如果你的系统有设备端的USB 接口 (也就是你的系统可以作为\叶子\使用),请到\中进行选择. 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%的设备,关闭该选项

43 / 52

可能会导致某些设备无法正常工作 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 接口的主板上都有一个\根集线器\以允许在无需额外购 买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打印机

44 / 52

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 人机界面设备(鼠标/键盘/游戏杆/手写版等人操作计算机的设备),该驱动不能 和\同时使用 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 远程控制设备

45 / 52

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 一种无线发射机

SB 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的适配器

46 / 52

Apple Cinema Display support 苹果公司的一种Cinema Display

SB 2.0 SVGA dongle support (Net2280/SiS315) 一种软件狗 SB LD driver USB LD 驱动

PlayStation 2 Trance Vibrator driver support

SONY的PS2上面的\入迷振荡器\类似于力反馈手柄) USB testing driver 测试中的驱动,别选

USB DSL modem support USB DSL猫

SB 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

错误检测方法,当前只有一个\错误轮询)可用 Real Time Clock

所有的PC 机主板都包含一个电池动力的实时时钟芯片,以便在断电后仍然能够继 续保持时间,RTC 通常与CMOS集成在一起,因此BIOS可以从中读取当前时间 RTC class

通用RTC类支持,选中此项后你就可以在操作系统中使用一个或多个RTC设备(你 还必须从下面启用一个或多个RTC 接口) Set system time from RTC on startup

系统启动时使用从指定的RTC 设备中读取的时间来设定系统时间,通常这将有助 于避免不必要的文件系统检测程序(fsck)的运行,建议选择

47 / 52

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设备,也就是\设臵的/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的新一代服务器平台都支持它

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

48 / 52

导出无用和废弃的符号,这将使内核不必要的增大 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 启用与\默认\的兼容性 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

49 / 52

搜集存取向量(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)对称加密算法

50 / 52

本文来源:https://www.bwwdw.com/article/1fqa.html

Top