操作系统知识点第二章操作系统第三章
发布时间:2026-07-25阅读(0)
导读>清华大学陈渝老师操作系统教程三、内存计算机体系结构及内存分层体系计算机体系结构CPU:程序/软件执行的控制内存:放置程序的代码及其处理的数据设备eg.鼠标....
> 清华大学 陈渝老师 操作系统教程

三、内存计算机体系结构及内存分层体系- 计算机体系结构
- CPU:程序/软件执行的控制
- 内存:放置程序的代码及其处理的数据
- 设备
- 内存分层体系
- 主存(物理内存):放置操作系统本身以及需要运行的代码
- 磁盘(虚拟内存):放置永久存放的数据
- 在操作系统的内存管理范例
- 操作系统中管理内存的4个目标
- 操作系统中管理内存的不同方法
- 实现高度依赖于硬件
- 必须知道内存架构
- MMU(内存管理单元):硬件组件负责处理CPU的内存访问请求
地址空间和地址生成- 地址空间定义
- 地址生成
- 逻辑地址生成
- eg.在C程序里,函数的位置、变量的名字就是一种逻辑地址
- .o 文件的地址从0开始
- 物理地址生成
- CPU方面
- 运算器需要在逻辑地址的内存内容
- 内存管理单元寻找在逻辑地址和物理地址之间的映射
- 控制器从总线发送在物理地址的内存内容的请求
- 内存方面
- 操作系统方面
- 地址安全检查
连续内存分配- 内存碎片问题
- 分区的动态分配
- 简单的内存管理方法
- 当一个程序准许运行在内存中,分配一个连续的区间
- 分配一个连续的内存区间给运行的程序以访问数据
- 分配策略
- 首次适配
- 为了分配n字节,使用第一个可用空闲块以致块的尺寸比n大
- 基本原理和实现
- 简单实现
- 需求
- 按地址排序的空间块列表
- 分配需要寻找一个合适的分区
- 重分配需要检查,看是否自由分区能合并于相邻的空闲分区
- 优势
- 劣势
- 最佳适配
- 为了分配n字节,使用最小可用空闲块以致块的尺寸比n大
- 基本原理和实现
- 为了避免分割大空闲块
- 为了最小化外部碎片产生的尺寸
- 需求
- 按尺寸排列的空闲块列表
- 分配需要寻找一个合适的分区
- 重分配需要搜索及合并于相邻的空闲分区
- 优势
- 劣势
- 最差适配
- 为了分配n字节,使用最大可用空闲块以致块的尺寸比n大
- 基本原理和实现
- 为了避免又太多微小的碎片
- 需求
- 按尺寸排列的空闲块列表
- 分配很快(获得最大分区)
- 重分配需要搜索及合并于相邻的空闲分区,若有,然后调整空闲块列表
- 优势
- 劣势
- 外部碎片
- 重分配慢
- 易于破碎大的空闲块以致大分区无法被分配
- 压缩式碎片整理
- 交换式碎片整理
- 运行程序需要更多的内存
- 抢占等待的程序和回收它们的内存
,