赛迪网 > IT技术 热点推荐 > 文章
  IT资讯搜索
 
IT产品搜索
[程序开发][网管世界][网络安全][数据库技术]
[操作系统][嘉宾聊天·在线访谈][活动集锦]
[精彩专题][Symantec专区][订阅IT技术周刊]
[开发论坛][网管论坛][安全论坛][数据库论坛]
[操作系统论坛][Sybase专区][IBM dW技术专区]
[病毒求助][病毒与漏洞播报][文档·源码下载]

Linux-2.6内核新特性及其升级文档 (3)

发布时间:2006.09.19 14:17     来源:赛迪网技术社区    作者:killua









二、修改内核源代码 (升级2.6就是为了优化,干脆连源代码也改了吧)

1.修改/usr/src/linux/include/linux/posix_types.h

设置fd_set支持的最大数量

#define __FD_SETSIZE 1024 ---> 65536

2.修改/usr/src/linux/include/linux/fs.h

设置最大打开文件数量(TCP连接数量)

#define INR_OPEN 1024 ---> 65536 
  #define NR_FILE 8192 ---> 65536 
  #define NR_RESERVED_FILES 10 ---> 128

3.修改/usr/src/linux/include/net/tcp.h

设置TIMEOUT的时间为1秒

#define TCP_TIMEWAIT_LEN (60*HZ) 60 ---> 1*HZ

设置在backlog队列里的半连接的重试次数,每次都会花相应的时间,本质上也是减少重试时间

#define TCP_SYNACK_RETRIES 5 ---> 3

针对RHEL-AS3本来就是稳定+优化的,不过就算你用 RHEL-AS3 自己的内核,那也要修改一下上面的参数才好呀 :)

三、安装必要的工具

1.下载module-init-tools-3.1.tar.bz2

http://www.kernel.org/pub/linux/utils/kernel/module-init-tools/module-init-tools-3.1.tar.bz2

  代码:

./configure --prefix=/ 
    make moveold 
    make all install 
    ./generate-modprobe.conf /etc/modprobe.conf 
  

2.下载新的mkinitrd。

ftp://195.220.108.108/linux/6/fedora/core/3/i386/os/Fedora/RPMS/mkinitrd-4.1.18-2.i386.rpm

它需要lvm2 device-mapper。

ftp://195.220.108.108/linux/6/fedora/core/3/i386/os/Fedora/RPMS/device-mapper-1.00.19-2.i386.rpm

ftp://195.220.108.108/linux/6/fedora/core/3/i386/os/Fedora/RPMS/lvm2-2.00.25-1.01.i386.rpm

如果不更新这个包在make install时会提示以下错误:

代码:

No module mptbase found for kernel 2.6.10-bk4, aborting. 
    mkinitrd failed 
    make[1]: *** [install] Error 1 
    make: *** [install] Error 2

安装lvm2-2.00.25-1.01.i386.rpm时请用rpm -ivh --nodeps package name

四、make menuconfig

代码:

01.Code maturity level options  ---> 
[*] Prompt for development and/or incomplete code/drivers         
[*] Select only drivers expected to compile cleanly              
02.General setup ---> 
[*] Support for paging of anonymous memory (swap)           
[*] System V IPC                                 
[*] POSIX Message Queues                             
[ ] BSD Process Accounting                           
[*] Sysctl support                                 
[ ] Auditing support                                
[ ] Support for hot-pluggable devices                        
[*] Kernel Userspace Events                            
[ ] Kernel .config support                             
[*] Configure standard kernel features (for small systems) --->  
[*] Load all symbols for debugging/kksymoops                    
[ ]  Do an extra kallsyms pass                           
[*]  Enable futex support                              
[*]  Enable eventpoll support                            
[ ]  Optimize for size                                
[*]  Use full shmem filesystem 
03.Loadable module support --->     
[*] Enable loadable module support                     
[*]  Module unloading                            
[ ]  Forced module unloading                       
[ ]  Module versioning support (EXPERIMENTAL)                
[ ]  Source checksum for all modules                    
[*]  Automatic kernel module loading 
04.Processor type and features ---> 
Subarchitecture Type (PC-compatible) --->  
Processor family (Pentium-4/Celeron(P4-based)/Pentium-4 M/Xeon) --->  
[*] Generic x86 support                  
[ ] HPET Timer Support                   
[*] Symmetric multi-processing support   多CPU        
(8)  Maximum number of CPUs (2-255)            
[*]  SMT (Hyperthreading) scheduler support        
[*] Preemptible Kernel           抢占式内核,请选上它  
[ ] Machine Check Exception                
< > Toshiba Laptop support                 
< > Dell laptop support                  
< > /dev/cpu/microcode - Intel IA32 CPU microcode support 
< > /dev/cpu/*/msr - Model-specific register support    
< > /dev/cpu/*/cpuid - CPU information support       
Firmware Drivers --->                 
High Memory Support (4GB) --->     高内存       
[ ] Allocate 3rd-level pagetables from highmem       
[ ] Math emulation                     
[*] MTRR (Memory Type Range Register) support       
[*] Enable kernel irq balancing              
[ ] Use register arguments (EXPERIMENTAL)    
05.Power management options (ACPI, APM) --->  电源管理 自定 (偶没选) 
06.Bus options (PCI, PCMCIA, EISA, MCA, ISA) ---> 板卡支持 自定 
[*] PCI support                                  
PCI access mode (Any) --->                        
[ ] Message Signaled Interrupts (MSI and MSI-X)                
[*] Legacy /proc/pci interface                          
[*] PCI device name database                           
[ ] ISA support                                  
[ ] MCA support                                  
< > NatSemi SCx200 support 
07.Executable file formats ---> 
[*] Kernel support for ELF binaries                        
<M> Kernel support for a.out and ECOFF binaries                 
<M> Kernel support for MISC binaries    
08.Device Drivers --->  设备驱动及网络支持 
Generic Driver Options ---> 默认 
[*] Select only drivers that don't need 
compile-time external firmware       
[*] Prevent firmware from being built                   
Memory Technology Devices (MTD) ---> 不选 
Parallel port support --->  并行端口  自定(偶没选)    
Plug and Play support --->  支持热插拔 自定(偶没选) 
Block devices ---> 
<*> Normal floppy disk support                   
< > Compaq SMART2 support                     
< > Compaq Smart Array 5xxx support                
< > Mylex DAC960/DAC1100 PCI RAID Controller support        
< > Micro Memory MM5415 Battery Backed RAM support (EXPERIMENTAL) 
<M> Loopback device support                    
< > Cryptoloop Support                      
<M> Network block device support                  
< > Promise SATA SX8 support                    
<M> RAM disk support                        
(16) Default number of RAM disks                 
(4096) Default RAM disk size (kbytes)               
() Source directory of cpio_list                 
[ ] Support for Large Block Devices                
< > Packet writing on CD/DVD media                 
IO Schedulers --->  IO调度器,都选上吧 
可以在grub.conf指定用IO调度哪种方式,后面会讲的       
<*> Anticipatory I/O scheduler               
<*> Deadline I/O scheduler                 
<*> CFQ I/O scheduler      

五、编译安装

步骤:make -jn(n代表同时编译的进程,可以加快编译速度,n由你的配置决定,我的配置用15-25)

make modules_install 
make install

<<上一页 1 2 3 4 下一页>>


[ 发表评论 ] 字体[  ] [ 打印 ] [ 进入博客 ] [ 进入论坛 ]  [ 推荐给朋友 ]
  相关文章
· Linux盟友分道扬镳 直言开源模式软肋 (09-18) · OSDL和Linux桌面思考:前面的道路 (09-18)
· 深入探讨Linux与微软在桌面上的较量 (09-18) · 为你的Linux系统快速编译所需要的模块 (09-18)
· Linux系统在X86上的虚拟内存管理详解 (09-18) · 精华推荐:内核模块编程的详细介绍 (09-18)
· Linux内核编译菜单中相关选项的意义 (09-18) · 2006政府暨公共事业开源应用论坛在京召开 (09-18)
· Linux内核重编译常见故障及其解决方法 (09-18) · 精华分享:使用开源代码写Linux程序 (09-18)
  客户需求反馈表
* 姓  名:
更多资料  了解方案  认识厂商
* 单位名称:
* 联系电话:
* 电子邮件:
  赛迪推荐  
  手机·资费 ·新品·导购·评测·手机资费·宽带
手机搜索  诺基亚 N73 MOTO Z6
  IT产品 ·笔记本·台式机·服务器·打印·投影
IT产品搜索 
  IT技术 ·开发·网管·安全·数据库·操作系统
  信息化 ·热点·专题·访谈·周刊·方案案例
[政务][电信][金融][农业][制造业][中小企业]
[CIO][ERP][协同][IT管理][中间件][电子商务]
[政策][地方][专家][评估][辞典][博客][社区]
· 专题:一路畅通构想曲——让出行不再遭遇堵车
· CIO工作亲历:企业ERP选型不能忽视"选人关"
· 综述:信息化建设给中国监狱带来的各种变化
· 金融业风险管理和法规遵从有五点需考虑的因素
· 保险业CIO关注:该如何建立统一高效的CRM体系
· 调查显示:多数CIO对IT规划仍存在困惑和误解
  博客·论坛 ·曾剑秋·项立刚·Java学习·网管