本章主要介绍Linux内核中的编址模式和体系结构。
5.1 Linux内核模式
Linux采用的是单内核模式。也叫宏内核模式。
5.2 Linux内核系统体系结构
Linux由5个模块组成:
- 进程调度模块
- 内存管理模块
- 文件系统模块
- 进程间通信模块
- 网络接口模块
模块之间的相互关系为:
内核的结构:
5.3 Linux内核对内存的管理和使用
5.3.1 物理内存
在系统初始化阶段内存的划分情况:
在x86结构处理器中提供了两种内存管理方式:
- 分段模式
- 分页模式
在Linux内核中同时采用了两种模式。
5.3.2 内存地址空间概念
首先要理解三个概念:
- 进程使用的虚拟地址或逻辑地址
- 处理器使用的线性地址
- 物理内存使用的物理地址
5.3.3 内存分段机制
略
5.3.4 内存分页管理
略
5.3.5 CPU多任务和保护方式
x86架构中提供了4个保护级,0~3。Linux只使用了其中的0和3级,分别对应内核态和用户态。