Linux内核主要功能
进程通信方式随着计算机硬件的发展,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)
进程通信提供了进程之间的各种通信机制。所有其它的子系统都依赖于中心位置的进程调度,因为每个子系统都需要挂起或恢复进程。
一般情况下,当一个进程等待硬件操作完成时被挂起。当操作真正完成时,进程被恢复执行。例如,当一个进程通过网络发送一条消息时,网络接口就需要挂起发送进程,直到硬件成功地完成消息的发送。当消息被成功的发送出去以后,网络接口返回给进程一个代码,表示操作成功或失败。
用户可以通过访问网站“/”来下载最新版的Linux内核版本。在该页面中显示用户可通过3种方式下载Linux内核,下面显示了最新的产品化版本号,单击版本号链接,可下载其补丁包,单击版本号右侧的链接可下载完整的软件包,如图1-1所示。
图1-1 Linux内核网站主页
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论