【原创】ibm x22内核配置文件(更新)
在linuxsir.org上发了一下,现在原文转过来。从网上找的,自己又修改了一下。
针对x22,电源管理用apm,键盘上的快捷键都可以用,安装tpb可在屏幕上显示相应的操作;关闭屏幕及休眠正常。
从网上下载2.6.19的内核包,经过编译,/lib/module/2.6.19只有4.7M,相比原来的42M缩小了90%。
是不是应该加上:仅供参考,出了问题概不负责之类的??
(2006-12-18)
在使用中发现问题,呵呵。
1、加上cpuid支持
2、机器内存只有384M,去掉大内存支持
3、mount u盘时中文乱码,加上cp936支持
4、驱动cf读卡器,加上ide-cs模块
[ 本帖最后由 0o0o0o0o 于 2006-12-18 20:52 编辑 ] 蓝牙、无线网卡偶的x22没有,就没编进去。 楼主这么强?建议把每个型号的内盒都改下 内核配置倒是很简单,不过以后的调试就很麻烦了。
经常发现缺这个少那个的,只好一次次重新编译。
我以前用FC4的时候,编译2.6.13总共用了8次,才得到一个比较精简又不缺少功能(针对特定机器)的内核. 呵呵,我编译了不下十次才调整好。
3楼的,偶没有别的机器,没法调啊。 modules只有4.7M确实很精简了。
我现在用的ubuntu edgy居然有71M,不过我是实在懒得去自己编译一个内核了---编译太耗时间了,就算-j5也很慢. 呵呵,第一次没精简内核选项时编译费了两个多小时,x22是有点跟不上时代了。
后来精简了再编译,用了半个多小时,还行。
今天在nc6000编译精简的内核,只用了7分钟…………唉,太惊讶了。
nc6000的读卡器如何在内核中选啊?试了多次就是没搞定sd读卡器。 我的x24 有8。1m 不过我有无限网卡 pcmcia卡
没有lz猛 pcmcia卡偶编的内核也支持,
我用的是debian,用xfce做桌面,启动到图形界面并打开gkrellm才用了30多兆内存。 一个建议:
# CONFIG_X86_CPUID is not set
这个打开比较好,原因如下:
自从PII300以后,intel加入了sysenter/sysexit以便提高系统调用的性能,原先的linux(2.5以前)使用系统调用是通过int 0x80实现的。
由于int 0x80发生在ring 3时, CPL=3,而中断们DPL=3, 无论如何CPL<=DPL,这个检查毫无必要,同时压栈等操作耗时较多,在P4系统上表现尤为明显。于是2.5开始,linux开始支持sysenter。
这个系统调用方法会依靠一些MSR寄存器,同时在boot阶段调用cpuid来检测当前cpu是否支持新型系统调用。
既然能提高性能,选上这个选项会比较好。
如何判断当前系统是否支持sysenter呢?可以写一个程序,很简单,
int main () { getuid();}
然后gcc -o test *.c -g --static
接着无论是用gdb还是objdump,都可以检查,以objdump为例子:objdump -D test > dump.txt
检查这个dump.txt,如果里面有int 0x80,那么你还是依靠老式的方法来执行系统调用,否则,你应该能够看到反汇编出来的代码里采用了sysenter。
---------------------------
另外,SD卡的问题:
你的config:
# MMC/SD Card support
#
# CONFIG_MMC is not set
打开它试试看呢?
[ 本帖最后由 thinkpad_x40 于 2006-12-12 17:19 编辑 ] sd那个问题,我查了一下,好像说是有license限制什么的。 这个配置文件我怎么使用阿? 呵呵,网上查了一下,偶的x22的cpu(p3-800)还不一定支持sysenter指令,
这个指令需要cpu满足一定的条件,对于偶的cpu来说,stepping 1不能满足,最低是3. 12楼的,查一下如何编译内核就知道了。 lz这个配置文件仅仅适用于X22,并且你的硬件要和lz的一样(最起码是大致一样)。
如果你的配置不符合要求,那么还是重头开始比较好。
下面这些步骤是通用的,如果你感兴趣,就看看,否则就算了。
首先,你的kernel必须是2.6.19,假定是在/usr/src/linux-source-2.6.19-3/
然后,把lz那个文件down下来,放到/usr/src/linux-source-2.6.19-3/
cd到那个目录,执行这个: cp .config config_bk && cpconfig-2.6.19-3-686-ibm-x22.txt .config--- 一般来说,是会覆盖掉默认配置的.config的,所以事先备份好原带的.config
然后:
make menuconfig ---> 你可以根据lz的配置文件微调一把
make && make module_install
然后:
cp arch/i386/boot/bzImage /boot/vmlinuz-2.6.19-3
cp System.map /boot/System.map-2.6.19-3
cd /boot
/sbin/mkinitrd initrd-2.6.19-3.img 2.6.19-3
OK, 接下来修改grub, vi /boot/grub/menu.lst 照葫芦画瓢:
title XXXX (2.6.19-3)
root (hd0,X)
kernel /boot/vmlinuz-2.6.19-3 ro root=LABEL=/ rhgb quiet
initrd /boot/initrd-2.6.19-3.img
然后重新启动,选择新内核试试看吧。
再次提醒,如果你的机器不是X22,不要用lz那个配置文件!!!
[ 本帖最后由 thinkpad_x40 于 2006-12-12 21:43 编辑 ] 不 好用 阿 ,我的x22编译了,就是加载新内核失败阿,启动不起来阿 给点出错信息呢?
另外把你的/etc/grub/menu.lst贴上来看看先? 就是无线搞不定 而且我的老死机
哎 linux都死机 在使用中发现问题并改进,呵呵
顶一下。 老是死机阿,大多数是在浏览网页的时候发生的。 谢谢兄弟,看看,学学 Posted by 0o0o0o0o on 2006-12-12 19:22 http://www.ibmnb.com/images/common/back.gif
sd那个问题,我查了一下,好像说是有license限制什么的。
ubuntu 7.04或者升级过的ubuntu 6.10就开始支持HP内置的读卡器了
页:
[1]