[扫盲]大家认为编译内核说通俗点做了些什么

系统安装、升级讨论
版面规则
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
回复
头像
jarryson
帖子: 4002
注册时间: 2005-08-14 19:53

[扫盲]大家认为编译内核说通俗点做了些什么

#1

帖子 jarryson » 2006-07-30 3:57

想编译内核 看了很多东西

我的理解有几种1根据电脑的配置生成了镜像文件或者打包的镜像Bzimage文件供启动 模块是另外设置
2不是仅一个文件 还有相关很多东西

如果是第二种理解 那怎么可以有几种内核共存

知道原理做些事情会简单很多

ps我没有看过linux系统启动过程之类的 看不大懂
头像
jarryson
帖子: 4002
注册时间: 2005-08-14 19:53

#2

帖子 jarryson » 2006-07-30 13:30

没有人说一下么
头像
林文清
帖子: 50
注册时间: 2006-07-17 8:38

#3

帖子 林文清 » 2006-07-30 16:18

我的理解是:内核包含了对硬件、网络等基础信息的支持。

一般直接安装发行版的内核,是为满足大部分人需要而定制的,因此可能存在一些自己不需要的东西,也可能缺少自己需要的东西。

重新编译内核就可以根据自己的需要和机器状况进行配置,这样可以做到效率最高。

我想一般重新编译对系统性能的提升可能效果不大,但编译内核对LFS或者自己开发准系统来说,是非常重要的了。
Linux恒久远,Fedora(?)永流传?
头像
jarryson
帖子: 4002
注册时间: 2005-08-14 19:53

#4

帖子 jarryson » 2006-07-30 23:45

谢谢
可是这些我知道

我问的是 编译内核比较抽象 具体说来 编完会生成什么 一个文件或是很多相关文件

我不能理解的是多个内核怎么能共存
头像
林文清
帖子: 50
注册时间: 2006-07-17 8:38

#5

帖子 林文清 » 2006-07-31 8:22

我想如果是编译成模块的,就是一个内核文件加一些模块文件;如果直接编译进内核,就是一个内核文件。

至于你说的共存问题,我觉得只是平行而已。


安装好新的内核之后,一般是增加GRUB菜单条目,通过菜单来选择采用哪个版本的内核启动。

研究一下GRUB启动项就可以明白吧,不同版本的内核文件名称是不同的,因此可以共同存在,可以按名称引导:


title Fedora Core (2.6.12.3)
root (hd0,7)
kernel /boot/vmlinuz-2.6.12.3 ro root=LABEL=/ rhgb quiet
initrd /boot/initrd-2.6.12.3.img


title Fedora Core (2.6.11-1.1369_FC4)
root (hd0,7)
kernel /boot/vmlinuz-2.6.11-1.1369_FC4 ro root=LABEL=/ rhgb quiet
initrd /boot/initrd-2.6.11-1.1369_FC4.img
Linux恒久远,Fedora(?)永流传?
回复