+ -
当前位置:首页 → 问答吧 → 请问,slk重编后的内核为何这么大呢?

请问,slk重编后的内核为何这么大呢?

时间:2006-02-08

来源:互联网

查看了一下,竟然有1.1M左右。
相同的配置在redhat下同样用make bzImage编出只有六/七百K,为什么会差这么多?
刚刚学习SLK。。。

作者: taurusivy   发布时间: 2006-02-08

编译的是slk自带带2.4.31带内核。
后来看了一下系统安装时安装到/boot下到内核,也都很大。
难道时slk自己作了什么处理。需要改用其他到命令么?

作者: taurusivy   发布时间: 2006-02-08

自带的内核可能会不一样,如果从kernel网站下载的内核,同样的配置应该是一样的大小。

作者: zhy2111314   发布时间: 2006-02-08

slackware 2.4.32 没有使用到 initrd 支持,因此系统基本的驱动都已经编译进入 vmlinuz 了
而 redhat 使用了 initrd 支持,部分驱动编译成模块了,在 initrd.img 文件中,系统启动时,由vmlinuz加载。

PS:你可以自己重新编译 kernel ,我的 kernel 现在大小只有 900K 了

作者: sxzzsf   发布时间: 2006-02-08

slackware传统上是不会动内核源码的,redhat就难说。
btw,内核大小重要吗?

作者: windrose   发布时间: 2006-02-08

引用:
作者: sxzzsf
slackware 2.4.32 没有使用到 initrd 支持,因此系统基本的驱动都已经编译进入 vmlinuz 了
而 redhat 使用了 initrd 支持,部分驱动编译成模块了,在 initrd.img 文件中,系统启动时,由vmlinuz加载。

PS:你可以自己重新编译 kernel ,我的 kernel 现在大小只有 900K 了

我就是自己重新编译的内核啊,编的是系统自带的2.4.31.已经很精简了。
相同的配置程度在rh9.0下只有800k左右。
[root@localhost:~](0)# ls /boot/vmlinu*new*ppro -l
-rw-r--r-- 1 root root 793023 1月 31 21:38 /boot/vmlinuz-2.4.20-8.new.beta.ppro
而在slk下:
[root@localhost:~](0)# ls -l /mnt/tmp/boot/vmlinuz-2.4.31-me.alpha
-rw-r--r-- 1 root root 1090970 2月 3 23:34 /mnt/tmp/boot/vmlinuz-2.4.31-me.alpha

ps: 我在rh9.0下重编后并没有指定initrd.img支持啊,不懂了。。。

作者: taurusivy   发布时间: 2006-02-08

引用:
作者: windrose
slackware传统上是不会动内核源码的,redhat就难说。
btw,内核大小重要吗?

windrose兄说得对,小弟就是好奇。

作者: taurusivy   发布时间: 2006-02-08

我也很好奇,RH总有它自己的一套,弄得人会用别的发行版不会用RH,会用RH进其他发行版又问题连连。不过Slack的内核是完全干净的。

作者: shannleon   发布时间: 2006-02-08

引用:
作者: shannleon
我也很好奇,RH总有它自己的一套,弄得人会用别的发行版不会用RH,会用RH进其他发行版又问题连连。不过Slack的内核是完全干净的。
看来初学来一直用RedHat,中毒不浅啊^_^

作者: taurusivy   发布时间: 2006-02-11

引用:
作者: taurusivy
我就是自己重新编译的内核啊,编的是系统自带的2.4.31.已经很精简了。
相同的配置程度在rh9.0下只有800k左右。
[root@localhost:~](0)# ls /boot/vmlinu*new*ppro -l
-rw-r--r-- 1 root root 793023 1月 31 21:38 /boot/vmlinuz-2.4.20-8.new.beta.ppro
而在slk下:
[root@localhost:~](0)# ls -l /mnt/tmp/boot/vmlinuz-2.4.31-me.alpha
-rw-r--r-- 1 root root 1090970 2月 3 23:34 /mnt/tmp/boot/vmlinuz-2.4.31-me.alpha

ps: 我在rh9.0下重编后并没有指定initrd.img支持啊,不懂了。。。
使用的是同一个 .config 文件么?相同的 kernel 版本么?

作者: sxzzsf   发布时间: 2006-02-13

1.1M不算大啊。很正常。

作者: fei   发布时间: 2006-02-13

引用:
作者: sxzzsf
使用的是同一个 .config 文件么?相同的 kernel 版本么?
嗯,对。是同一个版本。

作者: taurusivy   发布时间: 2006-02-14

引用:
作者: fei
1.1M不算大啊。很正常。
对2.4.x内核来说也不算大么?

作者: taurusivy   发布时间: 2006-02-14

还是相同的 .config 文件么? 还有就是 gcc 的版本了

作者: sxzzsf   发布时间: 2006-02-14

2.4也不算大。很正常。

作者: fei   发布时间: 2006-02-14

我的2.6.15的内核1.8MB

作者: kite   发布时间: 2006-02-16

呵呵!看来我的最大了.
2.6.8的是在2.5M! 不过全部静态的,不喜欢modules. :(

作者: 独行侠   发布时间: 2006-02-28

可能redhat都编译成module了
如果把所有选项变成module的话,估计6-700k都不到

作者: zonzi   发布时间: 2006-03-01

引用:
作者: 独行侠
呵呵!看来我的最大了.
2.6.8的是在2.5M! 不过全部静态的,不喜欢modules. :(
全部编成静态的?
内核会不会很慢?没有试过,我的2.6.15也没有编多少模块,也才800k啊。

作者: taurusivy   发布时间: 2006-03-02

引用:
作者: zonzi
可能redhat都编译成module了
如果把所有选项变成module的话,估计6-700k都不到

没错,我尽可能编成模块了以后,内核内核500k左右。

作者: taurusivy   发布时间: 2006-03-02

引用:
作者: taurusivy
全部编成静态的?
内核会不会很慢?没有试过,我的2.6.15也没有编多少模块,也才800k啊。
我觉得静态的总应该比模块快才对吧?:ask :ask :ask

作者: 独行侠   发布时间: 2006-03-02

量身定做,去掉用不到的,然后尽量编译成静态,相信更快好。

作者: kite   发布时间: 2006-03-03

我编译的 内核2.3mb

没什么大惊小怪的

用到的多 ipv6 nfs scsi lvm raid等等............ 又不喜欢initrd 统统全编译进内核了

实际上对于现在内存容量 内核那点根本微不足道....... 实用才是硬道理.......

作者: athlon_r   发布时间: 2006-03-04

引用:
作者: kite
量身定做,去掉用不到的,然后尽量编译成静态,相信更快好。
嗯,回来试试。我写了很多自己定制的脚本,习惯了按照像blade一样insert /remove的方式来操作模块。模块的运行效率肯定不如内核了,但是灵活性很高,适于功能的增减/使能。
但过大的内核使得其整体效率下降。

作者: taurusivy   发布时间: 2006-03-04

引用:
作者: athlon_r
我编译的 内核2.3mb

没什么大惊小怪的

用到的多 ipv6 nfs scsi vlm raid等等............ 又不喜欢initrd 统统全编译进内核了

实际上对于现在内存容量 内核那点根本微不足道....... 实用才是硬道理.......

有理,受教了。

作者: taurusivy   发布时间: 2006-03-04

热门下载

更多