/proc/sys/fs/file-max VS ulimit -n

简单的说, max-file表示系统级别的能够打开的文件句柄的数量, 而ulimit -n控制进程级别能够打开的文件句柄的数量.
man 5 proc, 找到file-max的解释:
file-max中指定了系统范围内所有进程可打开的文件句柄的数量限制(系统级别, kernel-level). (The value in file-max denotes the maximum number of file handles that the Linux kernel will allocate).当收到”Too many open files in system”这样的错误消息时, 就应该曾加这个值了.
# cat /proc/sys/fs/file-max    4096    # echo 100000 > /proc/sys/fs/file-...

Linux 2.6.19.x内核编译配置_Code maturity level options代码成熟度选项

Prompt for development and/or incomplete code/drivers
显示尚在开发中或尚未完成的代码与驱动.除非你是测试人员或者开发者,否则请勿选择

/*字体*/ dt { font:normal normal 15px Verdana,宋体,sans-serif; } dd,span.little_head { font:normal normal 14px Verdana,宋体,sans-serif; } /*缩进*/ dt, dd { margin-left: 0; } dd dt, dd dd { margin-left: 1.3em; } /*间距*/ dt { margin-top: 0.5em; } /*颜色*/ […]

...

Linux 2.6.19.x内核编译配置_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命名空间支持,不确定可以不...

Linux 2.6.19.x内核编译配置_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来自动加载...

Linux 2.6.19.x内核编译配置_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硬盘),将多个随机...

Linux 2.6.19.x内核编译配置_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芯片的新一代定时...

Linux 2.6.19.x内核编译配置_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而设计的,因此应该...

Linux 2.6.19.x内核编译配置_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

Linux 2.6.19.x内核编译配置_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等语言编写的程序时需要它

/*字体*/ dt { font:normal normal 15px Verdana,宋体,sans-serif; } dd,span.little_head { font:normal normal 14px Verdana,宋体,sans-serif; } /*缩进*/ dt, dd...