Linux内核主要由五个子系统组成:进程调度内存管理虚拟文件系统网络接口进程间通信

  1. 进程调度(SCHED):控制进程对CPU的访问。调度程序选择最值得运行的进程。Linux使用基于优先级的进程调度算法。

  2. 内存管理(M):允许多个进程安全共享主内存区域,支持虚拟内存。操作系统负责在磁盘和内存之间交换程序块。内存管理分为硬件无关部分和硬件相关部分。

  3. 虚拟文件系统(FS):隐藏硬件细节,提供统一接口。包括逻辑文件系统和设备驱动程序,支持多种文件系统如ext2和fat。

  4. 网络接口(NET):提供对各种网络标准的访问,分为网络协议和网络驱动程序部分。网络协议实现网络传输协议,驱动程序负责与硬件设备通讯。