Gentoo Linux内核配置(一)

来源:互联网 发布:李健老婆孟小蓓 知乎 编辑:程序博客网 时间:2024/04/29 04:17

基于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 --->

//默认即可

 

 

 

 

原创粉丝点击