操作系统(六)-内存1

3.1.1 什么是内存?进程的基本原理,深入指令理解其过程

在这里插入图片描述
1.什么是内存?有何作用?
在这里插入图片描述
(1)存储单元
关于存储单元有关内容在我写的组成原理笔记中有提到:存储单元
在这里插入图片描述
(2)几个常用数量单位&内存地址在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

总结一下在这里插入图片描述

在这里插入图片描述
(2)逻辑地址(相对地址)vs物理地址(绝对地址)

在这里插入图片描述

(3)从写程序到程序运行—编译、链接、装入在这里插入图片描述
(4)装入模块装入内存
不修改装入模块中的指令地址就直接装入内存的话:在这里插入图片描述
在这里插入图片描述
(5)装入的三种方式
①绝对装入
在这里插入图片描述
②静态重定位
在这里插入图片描述
③ 动态重定位
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
(6)链接的三种方式
① 静态链接
在这里插入图片描述
②装入时动态链接
在这里插入图片描述
③运行时动态链接
在这里插入图片描述
在这里插入图片描述
3.1.2 操作系统内存管理管些什么?
在这里插入图片描述
1.内存空间的分配与回收
在这里插入图片描述
2.内存空间的扩展(实现虚拟性)
在这里插入图片描述
3.地址转换
在这里插入图片描述
三种方式
在这里插入图片描述
4.内存保护
在这里插入图片描述
两种方式
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.1.3 操作系统覆盖技术与交换技术的思想 这章略过,新的大纲已经删除,有时间再看,把别人的文章链接复制过来

3.1.4连续分配管理方式
在这里插入图片描述
在这里插入图片描述
1.单一连续分配
在这里插入图片描述
2.固定分区分配
在这里插入图片描述
(1)分区说明表
在这里插入图片描述
3.动态分区分配(可变分区分配)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
(1)系统要用怎样的数据结构记录内存的使用情况呢?
在这里插入图片描述
(2)当多个空闲分区都能满足要求时,应该选择哪个分区进行分配?
在这里插入图片描述
(3)如何进行分区的分配和回收操作?
如何分配?
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
如何回收?
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
4.内部碎片与外部碎片
在这里插入图片描述

这里面注意,当进行紧凑的技术来解决外部碎片的时候,需要改变进程的起始地址,而起始地址在进程的PCB当中,所以会把起始地址放到重定位寄存器里面,通过加减指令改变并重新放回到PCB中

在这里插入图片描述
在这里插入图片描述

3.1.5 操作系统之动态分区分配的四种算法(首次适应算法、最佳适应算法、最坏适应算法、临近适应算法)
在这里插入图片描述
1.首次适应算法
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2.最佳适应算法在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

每次分配的时候顺序查找,分配后再从小到大分配,这样就能保证空闲的大小和进程所需求的大小最接近,这也是最适的名字的原因

3.最坏(大)适应算法在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

跟最佳适应算法相反,他是从大到小

4.临近适应算法
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
5.四种算法归纳比较
在这里插入图片描述
附上一个对四种算法总结成代码的文章
分配算法代码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值