Linux 是一个多任务、多用户、支持内核级多线程和多CPU 的操作系统,它符合POSIX(可移植操作系统)接口定义,支持EXT2、FAT、VFAT、FAT32、NFS、MINIX、XENIX 等多种文件系统。 Linux 通常包含四个主要部分:内核、shell、文件结构和实用工具。 内核、shell 和文件结构一起形成了基本的操作系统结构。 其中Linux 内核核心子系统是整个操作系统的重要组成部分,是运行程序和管理硬件设备的核心。 Linux 内核采用的单一内核结构,这种内核结构的重要特点是模块化,每个模块都是一个目标文件,它的代码可以在运行时被链接到内核。 目标代码则往往由函数集组成,该集合实现了文件系统、设备驱动器以及其他一些内核的上层特征。 Linux 内核为非抢占式的,它不能通过改变优先权来影响当前的执行流程。
简而言之,Linux 内核包括进程调度、内存管理、文件系统、进程间通信、网络及资源管理。Linux 内核的体系结构如图8.1 所示。
(www.xing528.com)
图8.1 Linux 内核的体系结构
进程管理是包括对进程调度和进程间通信在内的管理。 进程调度控制着进程对CPU 的访问,通过进程调度算法来确定哪一个进程将首先获得CPU;进程间通信支持进程间的各种通信机制;内存管理允许多个进程安全地共享主内存区域,并支持虚拟内存技术。 虚拟文件系统可分为实际文件系统和设备驱动程序两部分。 实际文件系统是指Linux 所支持的如EXT2、FAT、NFS 等文件系统,而设备驱动程序指为每一种硬件控制器所编写的驱动程序模块。 网络管理部分提供了对各种网络设备的存取和对各种网络硬件的支持。 网络接口分为网络协议和网络驱动程序两部分。 网络协议部分,负责实现每一种可能的网络传输协议;网络设备驱动程序,负责与硬件设备进行通信,每一种可能的硬件设备都有相应的设备驱动程序。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。