《Linux内核修炼之道》——1.2 内核的版本

简介:

本节书摘来自异步社区《Linux内核修炼之道》一书中的第1章,第1.2节,作者:华清远见嵌入式培训中心 任桥伟著,更多章节内容可以访问云栖社区“异步社区”公众号查看

1.2 内核的版本

Linux内核修炼之道
很多年来,Linux内核的版本都是以X.Y.Z这3个数字的形式设定的,偶数Y代表稳定版,奇数Y代表不稳定的开发版。所谓的稳定版本是指内核的特性已经固定,代码运行稳定可靠,不再增加新的特性,要改进也只是修改代码中的错误。而不稳定版本是指相对于上一个稳定版本增加了新的特性,还处于发展之中,代码运行不大可靠。

Z的递增表示个别的修正版发布。“稳定”的1.0.0内核在1994年3月发布,随后发布了“不稳定”的1.1.z分支,直到1995年3月发布了新的稳定版1.2.0。X数字从1跳跃到2是在1996年6月,正式推出稳定版2.0,之后又有不稳定版2.1 分支,然后是“稳定”的2.2、2.4和2.6。

1.2.6.x内核
这些版本都是Linus发布的基础稳定版(Basic Stable),如果发现了冲突或严重的瑕疵,以基础稳定版为基础,新的稳定的修正版本2.6.x.y就会被发布出来。

2.2.6.x.y内核
这些版本也是稳定的,它们包含了对2.6.x内核的一些问题的修复。对于那些想要最近的稳定内核,且对于测试开发中的实验性版本没有兴趣的用户来说,可以使用这些版本。

3.-rc内核
这些是候选的发布内核,是当Linus认为目前的git(Linus为了帮助管理Linux内核而开发的一个开放源码的版本控制软件)内核树处于一个健全的稳定状态,足以用于测试的时候,而发布的内核。

这些内核是不稳定的,如果试着运行它们可能会不时出现问题,但是它们最终会变成下一个稳定的内核,因此,有更多的人来测试它就显得非常重要。

4.-git内核
这些内核是Linus的内核树快照(在一个git仓库中管理着,因此而得名)。-git内核通常每天都发布,且代表了Linus的内核树的当前状态。

5.-mm内核
这些内核是Andrew Morton发布的实验性版本,作为一个新特性和实验性补丁的试验场而存在,一旦一个补丁在-mm内核中经过一段时间被证明有价值,为了使其包含在主流内核中,Andrew就会把它推荐给Linus。

虽然鼓励通过-mm内核把补丁推荐给Linus,但有时子系统的维护者或者个人会直接把补丁推给Linus,尽管它们有些时候并没有在-mm中得到测试。通常情况下,你应该尽力使自己的补丁通过-mm内核中最大程度的测试后,再合并到主流内核中。

-mm内核是最具实验性的内核分支,在运行中要比其他任何分支都可能承担更大的风险,它的目的就是为了在新的改变被加到主流内核之前,消除各种bug。

6.未来的版本号
目前2.6内核的发布已经持续了很长时间,那么什么时候推出2.7呢?Linus的回答是,不会有2.7,他不会再遵循旧的模式,新的模式更好,不值得重复过去。他表示正在考虑新的编号方式,一种基于时间的版本号。比如用2008.7取代2.6.26,中间第二个数字代表年,2008年就是2.8,2009年的第一个版本就是2.9.1,之后2010年是3.0,等等。但他又表示“大而无意义的数字是令人不快的,26已经够大了”。

相关文章
|
2月前
|
监控 Linux 开发者
理解Linux操作系统内核中物理设备驱动(phy driver)的功能。
综合来看,物理设备驱动在Linux系统中的作用是至关重要的,它通过与硬件设备的紧密配合,为上层应用提供稳定可靠的通信基础设施。开发一款优秀的物理设备驱动需要开发者具备深厚的硬件知识、熟练的编程技能以及对Linux内核架构的深入理解,以确保驱动程序能在不同的硬件平台和网络条件下都能提供最优的性能。
119 0
|
5月前
|
并行计算 Linux
Linux内核中的线程和进程实现详解
了解进程和线程如何工作,可以帮助我们更好地编写程序,充分利用多核CPU,实现并行计算,提高系统的响应速度和计算效能。记住,适当平衡进程和线程的使用,既要拥有独立空间的'兄弟',也需要在'家庭'中分享和并行的成员。对于这个世界,现在,你应该有一个全新的认识。
236 67
|
4月前
|
消息中间件 NoSQL Linux
Redis的基本介绍和安装方式(包括Linux和Windows版本),以及常用命令的演示
Redis(Remote Dictionary Server)是一个高性能的开源键值存储数据库。它支持字符串、列表、散列、集合等多种数据类型,具有持久化、发布/订阅等高级功能。由于其出色的性能和广泛的使用场景,Redis在应用程序中常作为高速缓存、消息队列等用途。
809 16
|
3月前
|
存储 负载均衡 算法
Linux2.6内核进程调度队列
本篇文章是Linux进程系列中的最后一篇文章,本来是想放在上一篇文章的结尾的,但是想了想还是单独写一篇文章吧,虽然说这部分内容是比较难的,所有一般来说是简单的提及带过的,但是为了让大家对进程有更深的理解与认识,还是看了一些别人的文章,然后学习了学习,然后对此做了总结,尽可能详细的介绍明白。最后推荐一篇文章Linux的进程优先级 NI 和 PR - 简书。
101 0
|
7月前
|
应用服务中间件 Linux nginx
【Azure App Service】基于Linux创建的App Service是否可以主动升级内置的Nginx版本呢?
基于Linux创建的App Service是否可以主动升级内置的Nginx版本呢?Web App Linux 默认使用的 Nginx 版本是由平台预定义的,无法更改这个版本。
210 77
|
5月前
|
存储 Linux
Linux内核中的current机制解析
总的来说,current机制是Linux内核中进程管理的基础,它通过获取当前进程的task_struct结构的地址,可以方便地获取和修改进程的信息。这个机制在内核中的使用非常广泛,对于理解Linux内核的工作原理有着重要的意义。
211 11
|
6月前
|
自然语言处理 监控 Linux
Linux 内核源码分析---proc 文件系统
`proc`文件系统是Linux内核中一个灵活而强大的工具,提供了一个与内核数据结构交互的接口。通过本文的分析,我们深入探讨了 `proc`文件系统的实现原理,包括其初始化、文件的创建与操作、动态内容生成等方面。通过对这些内容的理解,开发者可以更好地利用 `proc`文件系统来监控和调试内核,同时也为系统管理提供了便利的工具。
250 16
|
8月前
|
Ubuntu Linux 开发者
Ubuntu20.04搭建嵌入式linux网络加载内核、设备树和根文件系统
使用上述U-Boot命令配置并启动嵌入式设备。如果配置正确,设备将通过TFTP加载内核和设备树,并通过NFS挂载根文件系统。
441 15
|
8月前
|
安全 Linux 测试技术
Intel Linux 内核测试套件-LKVS介绍 | 龙蜥大讲堂104期
《Intel Linux内核测试套件-LKVS介绍》(龙蜥大讲堂104期)主要介绍了LKVS的定义、使用方法、测试范围、典型案例及其优势。LKVS是轻量级、低耦合且高代码覆盖率的测试工具,涵盖20多个硬件和内核属性,已开源并集成到多个社区CICD系统中。课程详细讲解了如何使用LKVS进行CPU、电源管理和安全特性(如TDX、CET)的测试,并展示了其在实际应用中的价值。
194 4
|
9月前
|
算法 Linux
深入探索Linux内核的内存管理机制
本文旨在为读者提供对Linux操作系统内核中内存管理机制的深入理解。通过探讨Linux内核如何高效地分配、回收和优化内存资源,我们揭示了这一复杂系统背后的原理及其对系统性能的影响。不同于常规的摘要,本文将直接进入主题,不包含背景信息或研究目的等标准部分,而是专注于技术细节和实际操作。