北大操作系统陈向群第七章知识点
7.1
地址重定位:将逻辑地址转化为物理地址的过程
静态重定位:
当用户程序加载到内存的时候一次性实现转化
一般可由软件完成
动态重定位:
在逐条指令执行时实现转化
需要硬件部件支持
7.2
内存分配算法:
best fit最佳适配算法:找满足要求的最小的空闲区
worst fit最差适配算法:找满足要求的最大的空闲区
next fit下次适配算法:从上次找到的地方找第一个满足要求的空闲区
first fit首次适配算法:从头找到第一个满足要求的空闲区
回收算法:
寻找上相邻和下相邻或者上下都相邻区进行合并
7.3
伙伴系统
一图说明
7.4
基本内存管理方案
单一连续区:
一段时间内只能有一个进程在内存中
固定分区:
分区大小固定,每个分区装且只能装一个进程
可变分区:
根据进程需要把空闲区分割分配给进程,但是会产生外碎片导致内存利用率下降
碎片:
内碎片:是指已经分配出去的内存空间大于请求的内存空间产生的未利用的内存空间
外碎片:是指还未分配出去的内存空间因为空间太小而无法分配给申请空间的新进程
固定分区,页式虚拟存储存在内碎片
可变分区,段式虚拟存储存在外部碎片
紧缩技术:合并小空闲区解决碎片问题,但是会有系统开销
7.5
页式内存管理方案
原理略
注意点:
存在内部碎片
当进程上cpu时页表会进入寄存器,否则进程的页表会存于进程的PCB中
7.6
覆盖技术:
用于早期的操作系统
注意覆盖技术要求程序各模块之间有明确的调用结构
覆盖结构需要程序员自己声明
交换技术:
不应该换出处于等待io的进程