分享
 
 
 

Linux 编程之kernel 2.6的测试

王朝system·作者佚名  2006-11-24
窄屏简体版  字體: |||超大  

本文是基于kernel 2.6.0-test5的测试报告,描述了升级过程、软硬件的评测、系统性能等。

一. 编译前准备

下载kernel,建议在www.kernel.org官方网站下载,小网站上的kernel的代码,有可能被别有居心的人改过

因为2.6内核模块装入器有所改变,所以我们需要编译modutils。否则在make modules时,会有许多“unresolved symbol”的错误。我用的是0.9.14的版本。步骤如下:

#tar jxvf module-init-tools-0.9.14-pre1.tar.bz2

#cd module-init-tools-0.9.14-pre1

#./configure

#make

#make moveold

#make install

#./generate-modprobe.conf /etc/modprobe.conf

其他的相关工具最低要求相对于2.4有所提升,一般发行版(如redhat、debian等)都能满足。具体参考Document/Changes,如下:

o Gnu C 2.95.3

o Gnu make 3.78

o binutils 2.12

o util-linux 2.10o

o module-init-tools 0.9.9

o e2fsprogs 1.29

o jfsutils 1.1.3

o reiserfsprogs 3.6.3

o xfsprogs 2.1.0

o pcmcia-cs 3.1.21

o quota-tools 3.09

o PPP 2.4.0

o isdn4k-utils 3.1pre1

o nfs-utils 1.0.5

o procps 2.0.9

o oprofile 0.5.3

二. 编译kernel

新的内核在2.4的基础上有所改进,速度更快。同时它增加了一些make目标选项,如下:

make gconfig、allyesconfig、allnoconfig、allmodconfig配置工具。Make现在是首选命令,如果没有目标,它会编译arch-zimage和modules。

“make –jN”是首选的并行make

“make xx.o”可以指定编译某个文件。Make path/指定编译某个目录及其下面的文件。这对驱动开发或内核人员来说,是一个好消息,在我们更改了kernel中的一个文件后,我们可以直接编译这个文件。

“make dep”已经不需要

“make help”帮助

我是步骤如下:

#make menuconfig

#make bzImage && make modules && make modules_install && make install

需要说明的是,make install会自动将相关文件安装到/boot目录下,如bzImage 、vmlinux、System.map,同时生成initrd文件,并在grub.conf中增加相应启动项,所以不需要手工修改grub(我没用lilo测试,如果你有兴趣,可以试试,然后把结果发给我)。Reboot,新的内核就可以启动了。

我在编译过程中,默认情况下,有几个无关紧要的模块不能编译通过,将他们去掉了。

三. 体验2.6内核

新内核目前在以下几方面有所改变:

改进包括改善对硬件构架的支持。在新版内核中增加对最新AMD 64位Opteron CPU以及PowerPC 64位CPU的支持;

更好地支持多处理器系统,将支持16个或以上的CPU、更好地支持嵌入式设备、对点击鼠标和键盘的反应速度更快和彻底改善了块设备软件插件等。

使用新的new 0(1) 调度程序;

使用真正的异步I/O以改善企业应用;

提高了文件系统的性能;

改进了线程功能,可以支持更多的线程;

改进了对宽带联网的支持等。

就我使用的来看,鼠标和键盘明显好用,鼠标滑动更流畅。打开文件,响应也加快。其他的无法感觉到。

新内核在结构和API上有所改变,详细请参考

http://www.codemonkey.org.uk/post-halloween-2.5.txt

各发行版的最近版本上带的软件基本上都能运行。需要注意的一些问题如下:

1.内核编译成功,重起,解压kernel后,屏幕一片黑

解决办法:确定你的.config文件有CONFIG_INPUT=y,CONFIG_VT=y,,CONFIG_VGA_CONSOLE=y 和 CONFIG_VT_CONSOLE=y。许多人没有将CONFIG_VT=y选中。

2.RPM工具将不能使用,会有如下错误:

rpmdb: unable to join the environment

error: db4 error(11) from dbenv->open: Resource temporarily unavailable

error: cannot open Packages index using db3 - Resource temporarily unavailable (11)

error: cannot open Packages database in /var/lib/rpm

warning: initscripts-7.28-1.i386.rpm: V3 DSA signature: NOKEY, key ID 9d6b4012

rpmdb: unable to join the environment

error: db4 error(11) from dbenv->open: Resource temporarily unavailable

error: cannot open Packages database in /var/lib/rpm

解决办法:

#export LD_ASSUME_KERNEL=2.2.5。我将其加到/etc/bashrc中,这样以后不需要export了。

3.模块不能载入,需要更新modutils,参考上面的“编译前准备”

4.2.6内核对键盘等设备提高了灵活的接口,如果你的键盘或鼠标等输入设备不能工作,试着选中下面的选项:

--- Input I/O drivers

< > Serial i/o support

< > i8042 PC Keyboard controller

[ ] Keyboards

[ ] Mice

(记得选中keyboard/mouse里的列表)

5.2.4及以前的内核,打补丁的方式为:

gzip -cd patchXX.gz | patch -p0

在2.6里,linux在diffs里增加了另外的路径元素,所以推荐的方式为用-p1

6.如果想使用Hotplug需要,作如下改动:将/etc/rc.sysinit中的所有/proc/ksyms改为/proc/kallsyms。

7.同时usb的模块名字有改变,这将影响到/etc/modules.conf、/etc/rc.sysinit。如果用到usb的设备,只要将其改动成相应的就行。因为我没有usb的设备,所以没有做其测试。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有