· [Java论坛][安全论坛][数据库论坛][操作系统论坛]
· [专题] IBM Rational高峰论坛 Windows 7十大功能
· [专题] 史上就危险7月 微软 BizSpark 计划介绍
· [IT技术周刊][IT资源下载专区][病毒求助专区]
· [热点] 我也能做CTO_赛迪连载 赛迪七夕特别行动
· [热点] Chrome 4.0采用V8引擎 Java开发编程规范

精华:升级Linux操作系统内核奋斗记 (1)

发布时间:2006.11.24 04:43     来源:赛迪网技术社区    作者:yuanlaini

升级Linux内核奋斗记

我的PIII Dell机运行着内核2.4.的RedHat,自从Linux内核2.6发布以来一直想把该系统升级到内核2.6。经过一番艰辛万苦,终于成功了。为了体验一下在Linux下编写多线程程序的步骤,又更新GCC和C语言库。在此愿和各位朋友共享这段经历,共享这段成果。(可能有记录错误,仅供参考)。

具体步骤包括以下内容:

1,升级内核的具体步骤

2,更新GCC

3,使用glibc2.3.5

4,使用NPTL线程进行编程

在此之前,先简要地介绍一下Linux内核2.6所做的改进及新增功能。Linux2.6主要在以下的10个方面作了很大的改进,简单概括如下,有关详细情况,请参阅相关资料。

1)通过改善并行处理能力和采用POSIX线程等,提高了系统的处理能力,从而Linux真正具备大型信息系统所要求性能。

2)通过改善文件系统的输出/输入能力和提高对大容量内存的利用效率,使得Linux能够更胜任大型信息系统中的数据处理。

3)加强了对数据库应用程序的支持。

4)提高了抗系统高负荷时能力。

5)提高了系统的可用性,包括对不停机时备份和不停机时更换硬件功能的支持。

6)强化了对网络的支持,增加了对Ipv6, SCTP, IPSec,等的支持。

7)通过增加访问控制和内核暗号化技术,提高了系统的安全性。

8)强化了对电源的管理。

9)强化了对嵌入式CPU和系统的支持。

10)添加了更多的硬件驱动程序。

一.升级内核

1, 下载linux-2.6.3.tar.bz2(可以是更新的版本)到/usr/src

bzcat linux-2.6.3.tar.bz2 | tar xvf – 
cd linux-2.6.3

阅读README及Changes 文件,确认必须的工具软件。因为不是笔记本电脑和笔记本电脑有关的软件可以忽略。发现module-init-tools需要更新。

2,下载module-init-tools-0.9.13.tar.bz2

bzcat module-init-tools-0.9.13.tar.bz2 | tar xvf – 
cd module-init-tools-0.9.13 
./configure --prefix=/usr/local/module-init 
make 
make moveold 
make install 
/usr/local/module-init/sbin/generate-modpobe.conf > /etc/modprobe.conf

成功。

3, 编译Linux内核

cd /usr/src/linux-2.6.3 
make menuconfig

一看太麻烦了,而且许多选项不知所云。退出该程序。 执行make oldconfig,对kernel2.6新增的不熟悉的选项作不选或为缺省。

make bzImage 
make modules modules_install 
pwd 
/usr/src/linux-2.6.3 
mv arch/i386/boot/bzImage /boot/bzImage2.6.3 
mv System.map /boot/System.map-2.6.3 
cd /boot 
mv System.map oldSystem.map 
ln –s System.map-2.6.3 System.map

4,建立sys目录

mkdir /sys

5, 修改相关文件,增加对sys的支持

在/etc/rc.d/rc.sysinit文件增加对sys的支持。

1) 找到mount –f /proc的行,在其下面,增加 mount –f /sys

2) 找到 action $ “Mounting proc filesystem:” mount –n –t proc /proc /proc 在其下面,增加action $ “Mounting sysfs filesystem:” mount –n –t sysfs /sys /sys.

3) 把文件中的 ksyms 改成 kallsyms

在/etc/fstab文件中,增加一行:

none /sys sysfs defaults 0 0

在/etc/rc.d/init.d/halt中,增加对sys的支持,把 awk ‘$2 ~/^/$ | ^/proc | ^/dev / {next} 变为:

awk ‘$2 ~/^/$ | ^/proc | ^/sys | ^/dev / {next}

6,启动

修改/etc/lilo.conf, 增加下面的设置

… 
image=/boot/bzImange2.6.3 
label=Linux2.6.3 
read-only 
root=/dev/hda3(由自己的PC设置决定)

成功。

1 2 下一页>>


[ 发表评论 ] 字体[  ] [ 打印 ] [ 进入博客 ] [ 进入论坛 ]  [ 推荐给朋友 ]
  相关文章
· Linux阵营多对Novell与微软合作存疑 (11-22) · 学习指导:关于Linux内核学习的误区 (11-22)
· Linux操作系统内核ARP的设计实现概述 (11-22) · 嵌入式Linux操作系统的广泛应用分析 (11-22)
· 使用Ioctl向Linux内核传递参数的方法 (11-22) · Linux操作系统下的软中断问题分析 (11-22)
· Linux操作系统下Shell病毒详细介绍 (11-22) · Linux操作系统下的汇编程序设计简介 (11-22)
· Linux下程序开发:用QT创建新风格 (11-22) · Novell执行长公开谴责鲍尔默Linux侵权言论 (11-22)
  客户需求反馈表
* 姓  名:
更多资料  了解方案  认识厂商
* 单位名称:
* 联系电话:
* 电子邮件:
资讯 通信 IT产品 IT技术 信息化
专题:谷歌发布PC操作系统Chrome OS
·芯能量 新动力 兴经济:..
·专题:英特尔与AMD和解 ..
·专题:惠普27亿收购3Com..
专题:
·专题:诺基亚危局已现 ..
·六股势力角逐4G标准 中..
·专题:联通iPhone并不贵..
 
·惠普123459黑白激打家族..
·云计算格局初现 三大阵..
·分析:虚拟化在高性能计..
2009 IBM动态架构新动力论坛
·直播:第八届中国系统与..
·专题:置身智慧海洋——..
·专题:让物品开口说话 ..