读书频道 > 网站 > 网页设计 > Linux内核精髓:精通Linux内核必会的75个绝技
Linus树
13-02-19    奋斗的小年轻
收藏    我要投稿   
经过近20年的发展,Linux操作系统已经成为当今最成功的开源软件之一,使用广泛,影响深远。随着Linux操作系统功能的不断丰富和完善,Linux内核的源代码也从最初的几万行增加到如今的数百万行,庞大无比,对于Lin...立即去当当网订购

最具有代表性的源码树,应属Linux内核的最初创始人——Linus Torvalds所管理的Linus树。新版本Linux内核的发布,就意味着Linus树的源代码被贴上了新发布版本的标签。到2011年为止,Linux内核的版本号一直是用2.6.x这样的三个数字来表示的注1。Linus树一直被认为是Linux内核源代码的“根源”,因此一旦其发布了新版本,其他的开发树就会将自己独特的开发成果移植到这个版本上,在此基础上再次进行开发。Linus树由于其“根源”的地位而称为主线(mainline)。

一旦发布新版本Linus树,就会立刻打开一个“合并窗口”(merge window),接受下一版本需要作出的改变。合并窗口将开启约两周时间。合并窗口关闭后,就会发布下一版本的候选版,即所谓的“rc内核”注2。从rc内核发布后到下一版本发布的期间为测试期,这一期间基本只接受关于bugfix的修改。rc版内核每隔约一周时间会依次推出rc1、rc2……当Linus判断其质量已经达到可以发布的水平时,就会作为新版本发布。按照最近的实际情况来看,基本上在rc6~rc9左右就会发布新版本,也就是说Linux内核每隔2~3个月就会发布新版本。新版本发布后,又会打开下一版本的合并窗口,然后对rc版进行测试。Linux内核就是按照这样的周期来开发的。

小贴士:Linus树的内核由于完全没有任何华而不实的东西,因此称为“香草”(vanilla)内核或“库存”(stock)内核。

linux-next树

这是一个为发布将来的版本而积累新代码并进行测试的源码树,主要由Stephen Rothwell等人进行管理和运营。原则上要添加新功能或者进行安装配置时,首先要在linux-next树中进行测试,在确认各自之间可以兼容之后再添加到Linus树内。

stable树

这是一个主要只针对过去发布的内核版本进行bug修改,使其更加稳定的树,由Greg Kroah-Hartman、Chris Wright进行维护管理。这个树的版本号是在Linus树的版本号后面加一位数字,以2.6.x.y这样的4个数字来表示。针对某个Linus树版本的稳定(stable)版维护一般持续6个月左右,但也有持续更久的。

开发树

Linux内核可以说是各种功能的集合体。例如内存管理、文件系统、网络、各种设备驱动程序、CPU架构固有部分等。这些功能部分称为“子系统”,各子系统分别在不同的源码树中进行开发。在开发、修改过程中也有一些不属于特定子系统的内容,这些内容首先会被发送到Andrew Morton管理的mm树(准确地说是mmotm:mm on the moment ,补丁包的缩写)。这样的源码树统称为“开发树”。

在各开发树中开发出的源代码在经过linux-next中的测试后再植入Linus树。

开发树的数量多如繁星。如果哪天你因为想要开发某个功能而在手边的源代码上进行了修改,这也可以说是一个“开发树”。

Linus树、开发树等作为所有树的根源,也称为“upstream”,即“上游”。但这是广义上的叫法,有时也仅指最上游的Linus树。

发布版内核

最后要介绍的是发布版内核(distribution kernel)。应该有很多人使用的都是作为Linux发布版的一部分发布的内核。这些来源于发布版的内核几乎都是在Linus树或stable树内核的基础上进行发布版特有的扩展和bug修改而得到的。像这样添加了发布版特有的修改,并作为发布版的一部分发布的内核,就称为“发布版内核”。

点击复制链接 与好友分享!回本站首页
分享到: 更多
您对本文章有什么意见或着疑问吗?请到论坛讨论您的关注和建议是我们前行的参考和动力  
上一篇:1.3 功能
下一篇:1.5 小结
相关文章
图文推荐
JavaScript网页动画设
1.9 响应式
1.8 登陆页式
1.7 主题式
排行
热门
文章
下载
读书

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训
版权所有: 红黑联盟--致力于做最好的IT技术学习网站