linux 2.6内核配置选项注解(1)
linux 2.6内核配置选项注解(1)
inux 2.6.15.6内核配置(unfinished)
注意: 不同的内核版本配置选项(或组织)可能不同, 但原理都是一样的!
另外, 关于compile in, compile as module的选择: 根文件系统, 根文件系统所处的设备, PS/2鼠标驱动不能编译为模块!
Code maturity level options --->
[*] Prompt for development and/or incomplete code/drivers (y)
; 选择尚未完全测试的代码alpha-test态),事实上它是安全的,建议选择.
[*] Select only drivers expected to compile cleanly (y)
; 隐藏可能存在问题的驱动,建议选择,如果没找到对应设备的驱动,将它取消试试.
General setup --->
() Local version - append to kernel release (enter,输入字符窜)
; 从2.6.8的版本起,可以在内核版本号后面添加个性化字符窜.
[ ] Automatically append version information to the version string (NEW) (n)
; 这个没看懂,先不选上.
[*] Support for paging of anonymous memory (swap) (y)
; 如果使用了swap分区提供虚拟内存,一定要选上它.
[*] System V IPC (y)
; System V 的进程间通信, 选上.
[*] POSIX Message Queues (y)
; POSIX消息队列, 选上.
[*] BSD Process Accounting (y)
; 如果选上,user process可以通过系统调用使内核在它退出时将相关信息写入某个文件(如进程创建时间,拥有者,命令,内存使用量...)
选上它,可以在应用程序中利用这些信息.
[*] BSD Process Accounting version 3 file format (y)
; 将前面所述的进程信息记录到v3格式的文件中, 选上它
[*] Sysctl support (y)
; 提供动态更改内核参数与变量的接口, 而不需要重新启动系统. 打开这个选项将会增加内核的体积至少8KB。
如果你的内核仅用制作安装与恢复系统系统盘那么可以不选, 以减少对内存的占用.
[ ] Auditing support (n)
; 允许其他内核子系统的内核审查,不知道什么鸟意思,不选上.
[*] Kernel Userspace Events (y)
; 开启内核-用户空间事件层,它是比socket简单的kernel-user通信机制. 这样应用程序就可以通过监听不用轮询系统设备或文件
[ ] Kernel .config support (n)
; 将.config文件编译到内核中, 以显示运行中的内核使用哪个选项.不要选择.
() Initramfs source file(s) (n)
; 好像是RAM FS初始化的吧,不知道什么鸟东西,不选!
[ ] Optimize for size (Look out for broken compilers!) (n)
; 用gcc编译内核时,优化选项是 -O2,选择它将改为-Os, 生成比较小的内核.(老版本的gcc可能因此产生错误代码)
[ ] Configure standard kernel features (for small systems) ---> (n)
; 针对小系统 (embedded)裁减内核, 桌面系统不用选择.
Loadable module support --->
[*] Enable loadable module support (y)
; 使内核支持模块,当然要选择! (使用modprobe, lsmod, modinfo, insmod, rmmod工具...)
[*] Module unloading (y)
; 卸载模块,选择!(有些模块一旦加载就不能卸载, 不管是否选择了这个选项)
[*] Forced module unloading (y)
; 强制卸载内核, 即便内核认为该行为不安全的时候.( rmmod -f 强制卸载,不等停止使用模块)
[ ] Module versioning support (EXPERIMENTAL) (n)
; 一般地,我们编译的模块是用于当前运行的内核, 选择该选项可以针对其他的内核编译模块. 先不选择.
评论暂时关闭