Linux 内核由5 个主要的子系统组成。
(1)进程调度(SCHED)控制着进程对CPU 的访问。当需要选择下一个进程运行时,由调度程序选择最值得运行的进程。可运行进程实际是仅等待 CPU 资源的进程,如果某个进程在等待其他资源,则该进程是不可运行进程。Linux 使用了比较简单的基于优先级的进程调度算法选择新的进程。
(2)内存管理(MM)允许多个进程安全地共享主内存区域。Linux 的内存管理支持虚拟内存,即在计算机中运行的程序,其代码、数据和堆栈的总量可以超过实际内存的大小,操作系统只当前使用的程序块保留在内存中,其余的程序块则保留在磁盘上。必要时,操作系统负责在磁盘和内存之间交换程序块。
(3)虚拟文件系统(Virtul File System,VFS)隐藏了各种不同硬件的具体细节,为所有设备提供了统一的接口,VFS 还支持多达数十种不同的文件系统,这也是Linux 较有特色的一部分。
(4)网络接口(NET)提供了对各种网络标准协议的存取和各种网络硬件的支持。网络接口可分为网络协议和网络驱动程序两部分。网络协议部分负责实现每一种可能的网络传输协议,网络设备驱动程序负责与硬件设备进行通信,每一种可能的硬件设备都有相应的设备驱动程序。
(5)进程间通信(IPC) 支持进程间各种通信机制。从图所示可以看出,处于中心位置的是进程调度,所有其他的子系统都依赖于它,因为每个子系统都需要挂起或恢复进程。一般情况下,当一个进程等待硬件操作完成时,它被挂起;当操作真正完成时,进程被恢复执行。例如,当一个进程通过网络发送一条消息时,网络接口需要挂起发送进程,直到硬件成功地完成消息的发送,当消息被发送出去以后,网络接口给进程返回一个代码,表示操作的成功或失败。其他子系统(内存管理,虚拟文件系统及进程间通信)以相似的理由依赖于进程调度。
分享到:
相关推荐
在进行PCA架构的嵌入式Linux内核结构分析时,需要深入理解PCA的硬件特性,合理调整内核参数,优化驱动程序,以实现最佳性能。此外,还需关注电源管理、实时性、安全性等方面的优化,以满足PCA设备的特殊需求。 总的...
### 基于 PCA 架构的嵌入式 Linux 内核结构分析 #### PCA 参考模型与嵌入式操作系统 PCA(Personal Internet Client Architecture)是由 Intel 提出的一个下一代个人互联网设备架构的参考模型。该模型包含了硬件...
### Linux内核情景分析 #### 一、引言与背景 本书《Linux内核情景分析》由毛德操和胡希明两位老师共同编写,是一本深入探讨Linux内核工作原理的经典著作。虽然该书主要基于Linux 2.4版本进行讲解,但由于作者采用...
本书作者在整理自己多年研发笔记的基础上,以精心挑选的典型开发实例,向读者详细讲述了Linux内核源代码的各部分结构、原理及组成框架,主要分析了 Linux最新版本(2.6.11)的内核源代码,帮助读者深入理解Linux内核...
《LINUX内核源代码情景分析》一书深入探讨了Linux操作系统的核心——内核的源代码,揭示了其内部机制和工作原理。Linux内核是开源软件的典范,它的设计和实现为研究操作系统提供了宝贵的资源。以下是根据标题、描述...
本文对 Linux 内核的分析及应用进行了详细的描述,涵盖了 Linux 内核的体系结构、进程调度、内存管理、进程间通信、虚拟文件系统及网络等方面。 Linux 内核是一种多用户多任务操作系统,它具有同类操作系统所固有的...
Linux内核分析是研究和分析Linux内核的架构、组件、数据结构和算法,了解内核的工作机制、性能优化和故障排除。 Linux内核架构: Linux内核架构主要包括进程管理、内存管理、文件系统管理、网络管理、设备管理和...
#### 三、Linux内核结构与功能 - **知识点3:Linux内核结构** - **组成部分**:Linux内核由内存管理、进程管理、设备驱动程序、文件系统和网络管理等几个关键部分组成。 - **虚拟内存**:Linux通过虚拟内存技术...
Linux 4.4.0 内核源码分析 TCP 实现 Linux 4.4.0 内核源码分析 TCP 实现是关于 Linux 操作系统内核源码中 TCP 协议的实现机理的分析。TCP(Transmission Control Protocol)是一种面向连接的传输层协议,它提供了...
1.5 Linux内核结构 1.5.1 Linux内核在整个操系统中的位置 1.5.2 Linux内核的作用 1.5.3 Linux内核的抽象结构 1.6 Linux内核源代码 1.6.1 多版本的内核源代码 1.6.2 Linux内核源代码的结构 1.6.3 从...
《Linux内核情景分析(下)》是一本深入解析Linux内核的重要教程,由毛德操和胡希明两位专家撰写,出自浙江大学出版社。这本书旨在帮助读者理解Linux内核的工作原理,通过具体的情景分析,将复杂的内核概念与实际应用...
本篇文章将深入探讨Linux内核模块的开发,以及内核驱动的编写。 首先,我们来理解一下内核模块的基本概念。内核模块是Linux内核的一部分,但它们不被包含在编译好的内核镜像中。当需要使用某个功能或驱动时,可以...
《Linux内核分析 0.11版内核完全注释》是一本深入解析Linux操作系统内核的专业书籍,由赵炯先生编著。该书详细注释了Linux 0.11版本的内核源码,是理解Linux内核工作原理、学习操作系统核心概念的重要参考资料。书中...
### Linux内核源代码情景分析知识点总结 #### 第1章 预备知识 - **1.1 Linux内核简介** - Linux是由Linus Torvalds在1991年开始开发的操作系统内核,其设计思想受到Unix的影响,但并不直接继承Unix的任何代码。 -...