通过阅读任桥伟编著的《linux内核修炼之道》,收获颇多,在此感谢这个牛人。
1、Linux内核版本说明
在https://www.kernel.org/pub/linux/kernel/v2.6/ 获取
linux-2.6.31.12.tar.bz2 18-Jan-2010 18:32 59M linux-2.6.31.12.tar.gz 18-Jan-2010 18:32 75M linux-2.6.31.12.tar.sign 08-Aug-2013 19:33 665 linux-2.6.31.12.tar.xz 18-Jan-2010 18:32 48M linux-2.6.31.13.tar.bz2 01-Apr-2010 23:04 59M linux-2.6.31.13.tar.gz 01-Apr-2010 23:04 75M linux-2.6.31.13.tar.sign 08-Aug-2013 19:34 665 linux-2.6.31.13.tar.xz 01-Apr-2010 23:04 48M linux-2.6.31.14.tar.bz2 05-Jul-2010 17:13 59M linux-2.6.31.14.tar.gz 05-Jul-2010 17:13 75M linux-2.6.31.14.tar.sign 08-Aug-2013 19:34 665 linux-2.6.31.14.tar.xz 05-Jul-2010 17:13 48M linux-2.6.31.tar.bz2 09-Sep-2009 22:34 59M linux-2.6.31.tar.gz 09-Sep-2009 22:34 75M linux-2.6.31.tar.sign 08-Aug-2013 19:34 665 linux-2.6.31.tar.xz 09-Sep-2009 22:34 48M
其中:tar.gz和tar.bz2分别是两种不同的压缩格式,sign用来验证内核压缩文档的openPGP签名。至于2.6.21.x,x代表的是2.6.21版本的第21次修正。一般用户使用tar.gz和tar.bz2的kernel源码即可。而tar.xz是什么格式??
Linux内核版本都是以X.Y.Z这3个数字形式设定,偶数Y表示稳定版,奇数Y表示不稳定的开发版。所谓稳定版是内核特性已经固定,代码运行稳定可靠,不再增加新特性,要改进只是修改代码中的错误。不稳定版本指相对于上个稳定版本增加新的特性,处于发展中,代码运行不可靠。例如2.6.31表示稳定版,而2.5.31表示开发版。
Z的递增表示个别的修正版发布。
2.6.x内核:这些版本都是linus发布的基础稳定版(basic stable),如果发现了冲突或严重的瑕疵,以基础稳定版为基础,新的稳定的修正版本2.6.x.y就会被发布出来。
2.6.x.y内核:这些版本也是稳定,它们包含对2.6.x内核的一些问题的修复。如果2.6.31.14版本与基本版2.6.31有冲突,以基本版为准。
-rc内核:由于测试而发布的版本,该版本是不稳定,但是会变成下一个稳定的内核版本。
-git内核:这些内核时linus的内核树快照。
-mm内核:最具有实验性的内核分支,在运行中要比其他任何分支可能承担更大的风险,它的目的在新的改变被加入主流内核之前,消除各种bug。
2、获取内核源码
内核源码可以通过HTTP和FTP两种方式从 www.kernel.org获得。
https://www.kernel.org/pub/linux/kernel/v2.6/
-rc 内核位于https://www.kernel.org/pub/linux/kernel/v2.6/testing/
-git补丁位于https://www.kernel.org/pub/linux/kernel/v2.6/snapshots/
-mm内核位于https://www.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/https://www.kernel.org/pub/linux/kernel/v2.6/testing/
如果需要查看3.x源码,则打开https://www.kernel.org/pub/linux/kernel/v3.x/