admin管理员组

文章数量:1531495

2024年7月24日发(作者:)

Linux 内核版本

Linux继承了UNIX版本定制的规则,将Linux的版本分为内核版本和发行版

本2种类型。其中,内核版本是指Linux系统内核自身的版本号;发行版本是指由

不同的公司或组织将Linux内核与应用程序、文档组织在一起,构成的一个发行套

装。通常,各个公司或组织会使用CD-ROM发布它们的Linux发行套装。

内核是系统的心脏,是运行程序和管理像磁盘和打印机等硬件设备的核心程

序。一个内核不是一套完整的操作系统,还需要配置Shell和相关实用工具,才能

构成一套完整的操作系统。一套基于Linux内核的完整操作系统才被称为Linux操

作系统。

Linux内核的开发和规范一直是由Linus Torvalds领导下的开发小组所控制。开

发小组每隔一段时间就会公布新的内核版本或者修订版本,如表1-1列出了Linux

内核从1991年开始到现在所经历过的各主要版本。内核具有实验版本和产品化版

本中不同的版本号。

表1-1 Linux内核发展

发布日期

1991年4月

1991年10月

1993年

1994年3月

1995年3月

1996年6月

1999年1月

Linux V2.4.0

2001年1月

Linux V2.6.0

2003年12月

Linux V2.6.30

2009年6月

Linux V2.6.34

2010年3月

版本号

Linux V0.01

Linux V0.02

Linux V0.99

Linux V1.0.0

Linux V1.2.0

Linux V2.0.0

Linux V2.2.0

说明

由Linus Torvalds通过Internet发布,包括10000行代码,该

版本需要在Minix上编译运行。

由Linus Torvalds发布,该版本成为了一个独立的操作系统。

由上百名程序员参与,改写了内核。

共有17万行代码。

约30万行代码,支持多平台。

约40万行代码,支持多处理器。

约180万行代码。

约330万行代码。

约600万行代码。

约1160万行代码。

增加了40多万行代码及删除了17.5万行代码。

Linux的内核版本号由3个数字组成。其中,第1个数字代表目前发布的内核

主版本号;第2个数字可以是偶数或奇数(偶数表示稳定版本,奇数表示开发中版

本),属于次版本号;第3个数字表示错误修补的次数,即修订版本号。

随着计算机硬件的发展,Linux内核的功能也在不断发展,以支持这些新硬件

特性。同时,内核的代码量也在不断增加。内核是Linux操作系统的基础,在操作

系统中完成最基本的任务。当前的Linux内核主要功能包括以下几个方面:

1.进程调度(SCHED)

进程调度负责控制进程对CPU的访问,如当需要选择下一个进程运行时,由进

程调度子系统根据某种算法选择最值得运行的进程。可运行进程实际上是仅等待

CPU资源的进程。

如果某个进程还在等待其它资源,则该进程将不会被选择。Linux操作系统使

用了比较简单的基于优先级的进程调度算法选择新的进程。

2.内存管理(Memory Management,MM)

内存管理子系统用来管理多个进程对内存的使用。Linux支持虚拟内存,即在

计算机中运行的程序,其程序代码、数据、堆栈的总量可以超过实际内存的大小,

操作系统只是把当前使用的程序块保留在内存中,其余的程序块则保留在磁盘中。

必要时,操作系统负责在磁盘和内存间交换程序块。

内存管理从逻辑上可以分为硬件无关部分和硬件有关部分。其中,硬件无关部

分提供了进程的映射和逻辑内存的对换;硬件有关部分为内存管理硬件部分提供了

虚拟接口。

3.虚拟文件系统(Virtual File System,VFS)

虚拟文件系统隐藏了各种硬件的具体细节,为所有的设备提供了统一的接口。

虚拟文件系统提供了数10种不同的文件系统,并且又分为逻辑文件系统和设备驱

动程序。其中,逻辑文件系统是指Linux所支持的文件系统,如ext3、FAT等;设

备驱动程序是指为每一种硬件控制器所编写的设备驱动程序模块。

4.网络接口(Network Interface)

网络接口提供了对各种网络标准的存取和各种网络硬件的支持。网络接口可分

为网络协议和网络驱动程序2部分组成。其中,网络协议部分负责实现每一种可能

的网络传输协议;网络设备驱动程序负责与硬件设备的通信,每一种可能的硬件设

备都有相应的设备驱动程序。

5.进程通信(InterProcess Communication,IPC)

进程通信提供了进程之间的各种通信机制。所有其它的子系统都依赖于中心位

置的进程调度,因为每个子系统都需要挂起或恢复进程。

一般情况下,当一个进程等待硬件操作完成时被挂起。当操作真正完成时,进

程被恢复执行。例如,当一个进程通过网络发送一条消息时,网络接口就需要挂起

发送进程,直到硬件成功地完成消息的发送。当消息被成功的发送出去以后,网络

接口返回给进程一个代码,表示操作成功或失败。

本文标签: 进程内核版本硬件内存