2011年(26)
分类: LINUX
2011-02-27 19:14:52
基于Linux Kernel v2.6.36-gentoo-r5
General setup --->
[*] Prompt for development and/or incomplete code/drivers
//默认情况下是选择的,这将会在设置界面中显示还在开发或者还没有完成的代码与驱动.你应该选择它,因为有许多设备可能必需选择这个选项才能进行配置,实际上它是安全的。
() Cross-compiler tool prefix
//交叉编译工具前缀,如果你要使用交叉编译工具的话输入相关前缀。默认不使用。不需要
() Local version - append to kernel release
//自定义版本,也就是uname -r可以看到的版本,可以自行修改,这里我没有使用,没多大意义。
[ ] Automatically append version information to the version string
//自动生成版本信息。这个选项会自动探测你的内核并且生成相应的版本,使之不会和原先的重复。这需要Perl的支持。由于在编译的命令make-kpkg 中我们会加入- – append-to-version 选项来生成自定义版本,所以这里选N。
Kernel compression mode (Gzip) --->
//有四个选项,这个选项是说内核镜像要用的压缩模式,回车一下,可以看到gzip,bzip2,lzma,lxo,一般可以按默认的gzip,如果要用bzip2,lzma,lzo,要先安装相关解压缩工具
[*] Support for paging of anonymous memory (swap)
//使你的内核支持虚拟内存
[*] System V IPC
//为进程提供通信机制,这将使系统中各进程间有交换信息与保持同步的能力。有些程序只有在选Y的情况下才能运行,所以不用考虑,这里一定要选。
[*] POSIX Message Queues
//这是POSIX的消息队列,它同样是一种IPC。建议你最好将它选上。
[*] BSD Process Accounting
//这是允许用户进程访问内核,将账户信息写入文件中。这通常被认为是个好主意,建议你最好将它选上。将进程的统计信息写入文件的用户级系统调用,主要包括进程的创建时间/创建者/内存占用等信息。
[*] BSD Process Accounting version 3 file format
//选用的话统计信息将会以新的格式(V3)写入,这格式包含进程ID和父进程。注意这个格式和以前的 v0/v1/v2 格式不兼容,所以你需要 升级相关工具来使用它。选不选均可。
[*] Export task/process statistics through netlink (EXPERIMENTAL)
//处于实验阶段的功能。通过通用的网络输出工作/进程的相应数据,和BSD不同的是,这些数据在进程运行的时候就可以通过相关命令访问。和BSD类似,数据将在进程结束时送入用户空间。如果不清楚,选N。
[*] Enable per-task delay accounting (EXPERIMENTAL)
//在统计信息中包含进程等候系统资源(cpu,IO同步,内存交换等)所花费的时间
[*] Enable extended accounting over taskstats (EXPERIMENTAL)
//在统计信息中包含扩展进程所花费的时间
[*] Enable per-task storage I/O accounting (EXPERIMENTAL)
//在统计信息中包含I/O存储进程所花费的时间
[]Auditing suppor
//审计支持,某些内核模块(例如SELinux)需要它,只有同时选择其子项才能对系统调用进行审计,不选。
RCU Subsystem --->
//一个高性能的锁机制RCU 子系统,不懂不了解,按默认吧。
<*> Kernel .config support
//将.config配置信息保存在内核中,选上它及它的子项使得其它用户能从/proc中得到内核的配置,选上,重新配置内核时可以利用已有配置
[*] Enable access to .config through /proc/config.gz
(15)Kernel log buffer size:内核日志缓存的大小,使用默认值即可。12 => 4 KB,13 => 8 KB,14 => 16 KB单处理器,15 => 32 KB多处理器,16 => 64 KB for x86 NUMAQ or IA-64,17 => 128 KB for S/390。
[*]Control Group support --->
//信息暂无,使用默认
[ ] enable deprecated sysfs features to support old userspace tools
//在某些文件系统上(比如debugfs)提供从内核空间向用户空间传递大量数据的接口,不选吧。
-*- Kernel->user space relay support (formerly relayfs)
-*- Namespaces support
//命名空间支持,允许服务器为不同的用户信息提供不 同的用户名空间服务,如果不是很清楚的话,按照默认吧
[ ] UTS namespace
//通用终端系统的命名空间。它允许容器,比如Vservers利用UTS命名空间来为不同的服务器提供不同 的UTS。
[ ] IPC namespace
//IPC命名空间,不确定可以不选
[*] User namespace (EXPERIMENTAL)
[*] PID Namespaces (EXPERIMENTAL)
[ ] Network namespace
[ ] Initial RAM filesystem and RAM disk (initramfs/initrd) support
//初始RAM的文件和RAM磁盘( initramfs /initrd)支持(如果要采用initrd启动则要选择,否则可以不选),不需要,不用选。
[ ] Optimize for size
//这个选项将在GCC命令后用 “-Os” 代替 “-O2″参数,这样可以得到更小的内核。没必要选。一个编译好的内核才7-10多M。选上了可能会出一些问题。最好不选。有时会产生错误的二进制代码。当然,如果是做嵌入式开发另当别论。
[ ] Configure standard kernel features (for small systems) --->
//这是为了编译某些特殊的内核使用的,例如引导盘,通常你可以不选择这一选项,你也不用对它下面的子项操心了。
Kernel Performance Events And Counters --->
[ ] Disable heap randomization
//禁用随机heap(heap堆是一个应用层的概念,即堆对CPU是不可见的,它的实现方式有多种,可以由OS 实现,也可以由运行库实现,如果你愿意,你也可以在一个栈中来实现一个堆),选不选均可。
Choose SLAB allocator (SLUB (Unqueued Allocator)) -->
//选择内存分配管 理器(强烈推荐使用SLUB)
( ) SLAB
//各种环境通用的内存分配管理器
(X) SLUB (Unqueued Allocator)
//更加优秀的内存分配管理器
[*] Profiling support
//剖面支持,用一个工具来扫描和提供计算机的剖面图。支持系统评测(对于大多数用户来说并不是必须的)
< > OProfile system profiling
//OProfile评测和性能监控工具,选不选均可,我没选。
[ ] Kprobes
//调试内核,除非内核开发人员,否则不选
GCOV-based kernel profiling --->
//默认即可