转自http://www.cnblogs.com/darker/archive/2012/04/02/2430591.html 原作者保留所有权利
Linux内核有三个不同的命名方案。
早期版本:
从0.95版开始有许多的补丁发布于主要版本版本之间。
旧计划(1.0和2.6版之间)的版本格式为A.B.C,分别代表:
- A——大幅度转变的内核。这是很少发生变化,只有当发生重大变化的代码和核心发生才会发生。在历史上曾改变两次的内核:1994年的1.0及1996年的2.0。
- B——是指一些重大修改的内核。
- 其中奇数代表发展中版本(development) ,偶数代表稳定版本(stable)
- C——是指轻微修订的内核。这个数字当有安全补丁,bug修复,新的功能或驱动程序,内核便会有变化。
自2.6.0(2003年12月)发布后,人们认识到,更短的发布周期将是有益的。自那时起,版本的格式为A.B.C.D,其中A,B,C,D代表:
- A和B是无关紧要的(即2.6)
- C是内核的版本,随着每次释出新内核而增长
- D是安全补丁,有需要时发布
Linux Kernel 3.0 正式版于2011.07.22日放出,Linus指出,3.0版只是一个数字的变化,并没有加入重大的新功能。因为目前2.6.x的版本号太长太复杂,命名规则变得模糊不清,且以沿用八年,版本号中的“2.6”已经没有任何意义了。所以趁Linux内核发布的二十周年这个好机会去说,“够了”。
3这个标识如同2.6一样,且3.x版的命名规则类似于2.6系列,版本格式为3.A.B,其中:
- A是释出版本,随着每次释出而增长
- B是补丁,有需要时发布
- 开发版将在后面以rc注明,如3.4-rc1
Linux distribution通常会在这三个版本号后加入后缀,用以描述其他信息,以我的Unbuntu 10.10为例:
kernel-release为 2.6.35-32-generic(有的为2.6.35-32-generic-pae )
- 2.6.35 :当前内核版本,是2.6版内核系列的第35次释出版
- 32 :当前内核版本(2.6.35)的第32次微调patch
- generic :当前内核版本为通用版本,另有表示不同含义的server(针对服务器)、i386(针对老式英特尔处理器)
- pae : 物理地址扩展,表示此32位系统可以支持超过4G的内存
kernel-version为 #67-Ubuntu SMP Mon Mar 5 19:35:26 UTC 2012
- SMP: 对称多处理机,表示内核支持多核、多处理器
- Mon Mar 5 19:35:26 UTC 2012: 内核的编译时间(build date)为 2012/03/05 19:35:26
参考:
中文维基百科:http://zh.wikipedia.org/wiki/Linux_kernel
英文维基百科:http://en.wikipedia.org/wiki/Linux_kernel
Linux之父Linus访谈录:漫谈Linux 3.0内核:http://www.ha97.com/4177.html
鸟哥的Linux私房菜:http://vbird.dic.ksu.edu.tw/
Linux Kernel:http://www.kernel.org/