LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1556|回复: 13

Slackware自己编译内核的理由

[复制链接]
发表于 2006-5-15 15:22:39 | 显示全部楼层 |阅读模式
一直用的是Slackware里带的binary 2.6 kernel. 直到最近换了电脑,才发现那个内核:
- 不支持>800M的内存。
- 不支持SMP
- Kernel Preemption优化选项 是服务器而不是桌面系统。如果你的slackware是用来做桌面系统的,这个选项要调整。

符合条件的建议你自己编译内核。
发表于 2006-5-15 16:10:59 | 显示全部楼层
> - Kernel Preemption 是为服务器而不是为桌面系统优化的。

是这样吗, 为什么啊?
http://www-128.ibm.com/developer ... l-inside/index.html
这篇文章中是这样说的:"内核抢占补丁在2.5系列中就已经被打上,接下来在2.6中也会打。这将显著地降低用户交互式应用程序、多媒体应用程序等类似应用程序的延迟。这一特性对实时系统和嵌入式系统来说特别有用。"
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-5-15 17:33:00 | 显示全部楼层
我是说Slackware带的2.6 kernel里Kernel Preemption的选项是关掉的。
回复 支持 反对

使用道具 举报

发表于 2006-5-15 19:08:33 | 显示全部楼层
But I don't know how to rebuild the kernel ....
Can you share your experience of rebuild the kernel ...  =_=!
回复 支持 反对

使用道具 举报

发表于 2006-5-15 19:43:52 | 显示全部楼层
我一直想知道如何将已经编译好的内核打成tgz包。这样的话使用会方便许多。但内核不像其他软件一样可以checkinstall
回复 支持 反对

使用道具 举报

发表于 2006-5-15 21:57:02 | 显示全部楼层
mkdir -p lib/modules
cp -a /lib/modules/2.6.xx lib/modules
mkdir boot
cp /boot/bzImage boot/bzImage-2.6.xx
makepkg kernel-2.6.xx.tgz
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-5-16 08:59:20 | 显示全部楼层
Post by SystemMan
我一直想知道如何将已经编译好的内核打成tgz包。这样的话使用会方便许多。但内核不像其他软件一样可以checkinstall


精华区有。
http://www.linuxsir.cn/bbs/showthread.php?t=212595
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-5-16 09:00:12 | 显示全部楼层
Post by 009lin
But I don't know how to rebuild the kernel ....
Can you share your experience of rebuild the kernel ...  =_=!


http://www.linuxsir.cn/bbs/showthread.php?t=212595
回复 支持 反对

使用道具 举报

发表于 2006-5-19 00:07:32 | 显示全部楼层
I wanted to build the 2.6.16.16 kernel for my machine, how can I do ?
回复 支持 反对

使用道具 举报

发表于 2006-5-19 00:19:00 | 显示全部楼层
  1. cd /usr/src
  2. wget -c http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.16.16.tar.bz2
  3. tar jxvf linux-2.6.16.16.tar.bz2
  4. chown -R root.root linux-2.6.16.16
  5. find . -perm 777 -exec chmod 755 {} \;
  6. find . -perm 666 -exec chmod 644 {} \;
  7. cd linux-2.6.16.16
  8. make menuconfig
  9. make modules
  10. make modules_install
  11. make bzImage
  12. cp arch/i386/boot/bzImage /boot/vmlinuz-2.6.16.16
  13. cp .config /boot/config-2.6.16.16
  14. echo 'image = /boot/vmlinuz-2.6.16.16' >> /etc/lilo.conf
  15. echo '    root = /dev/hda1' >> /etc/lilo.conf
  16. echo '    label = Linux-2.6' >> /etc/lilo.conf
  17. echo '    read-only' >> /etc/lilo.conf
  18. /sbin/lilo
  19. reboot
  20. mkdir /tmp/kernel-2.6.16.16
  21. cd /tmp/kernel-2.6.16.16
  22. mkdir boot
  23. cp /boot/*2.6.16.16* boot
  24. mkdir -p lib/modules
  25. cp -rv /lib/modules/2.6.16.16 lib/modules
  26. chown -R root.root .
  27. makepkg -l y -c n kernel-2.6.16.16-custom.tgz
复制代码
不要照抄,执行之前先检查,我可能有写错的地方。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表