1. 内存管理的概念
1. 什么是内存?进程的基本原理,深入指令理解其过程
0. 思维导图

1. 什么是内存?有何作用?

(1)存储单元
https://blog.csdn.net/weixin_43914604/article/details/104099953

(2)几个常用数量单位&内存地址

2. 进程运行的基本原理
(1)指令的工作原理---操作码+若干参数(可能包含地址参数)
- 从X=X+1大致看一下指令的执行 过程

(2)逻辑地址(相对地址)vs物理地址(绝对地址)
vs物理地址(绝对地址)-35111f6d5ff656b854ff7e703d79bab0.png)
(3)从写程序到程序运行---编译、链接、装入

(4)装入模块装入内存
不修改装入模块中的指令地址就直接装入内存的话:

(5)装入的三种方式
①绝对装入

②静态重定位

③ 动态重定位

(6)链接的三种方式
① 静态链接

②装入时动态链接

③运行时动态链接

2. 内存管理管些什么?
0. 思维导图

1. 内存空间的分配与回收

2. 内存空间的扩展(实现虚拟性)

3. 地址转换

三种方式

4. 内存保护

两种方式

3. 覆盖技术与交换技术的思想
0. 思维导图

1. 覆盖技术

3. 交换技术

- 回忆复习一下进程调度

4. 内存的分配与回收
0. 思维导图

1. 单一连续分配

2. 固定分区分配

(1)分区说明表

3. 动态分区分配(可变分区分配)

(1)系统要用怎样的数据结构记录内存的使用情况呢?

(2)当多个空闲分区都能满足要求时,应该选择哪个分区进行分配?

(3)如何进行分区的分配和回收操作?
如何分配?

如何回收?

4. 内部碎片与外部碎片

5. 动态分区分配的四种算法(首次适应算法、最佳适应算法、最坏适应算法、临近适应算法)
0. 思维导图
- 本篇文章是对上一篇文章内存的分配与回收提到的动态分区分配算法的补充

1. 首次适应算法

2. 最佳适应算法

3. 最坏(大)适应算法
适应算法3-42990c7d99afe3157a756d9977183876.png)