【操作系统】王道考研 p32-34 内存的基本知识、内存管理的概念、覆盖与交换

内存的基本知识
内存管理的概念
覆盖与交换

知识总览

在这里插入图片描述

内存管理:

  • 内存空间的分配与回收
  • 内存空间的扩充
  • 地址转换
  • 存储保护

在这里插入图片描述

以下是内存的基础知识

什么是内存?有何作用?

内存是用于存放数据的硬件。程序执行前需要存放到内存中才能被CPU处理。

给内存单元编制:内存地址从0开始,每个地址对应一个存储单元。

按字节编址VS按字编址:
在这里插入图片描述
一些数量单位:
在这里插入图片描述

进程的运行原理 ——指令

在这里插入图片描述

逻辑地址VS物理地址

逻辑地址又称相对地址,物理地址又称绝对地址。
在这里插入图片描述

从写程序到程序运行

在这里插入图片描述

三种装入方式

用三种不同的方法完成逻辑地址到物理地址的转换。

  1. 绝对装入
  2. 静态重定位
  3. 动态重定位

绝对装入

只适用于单道程序环境。
编译产生绝对地址的目标代码。
在这里插入图片描述

静态重定位

装入的时候修改地址。
特点:在一个作业装入时,必须分配其要求的全部内存空间。(之后就可以把所有的绝对地址改完)
在运行期间不能移动,也不能再申请内存空间。(不然又要修改地址了)
在这里插入图片描述

动态重定位

运行时再地址转换。
需要重定位寄存器
允许程序在内存内发生移动。
在这里插入图片描述

链接的三种方式

在这里插入图片描述

以下是内存管理的概念

在这里插入图片描述

地址转换

在这里插入图片描述

内存保护

有两种方法。
方法1:在CPU中设置一对上、下限寄存器,存放进程的上下限地址。

在这里插入图片描述
方法2:用重定位寄存器(基址寄存器)和界地址寄存器(限长寄存器)进行越界检查。
前者存基址(进程的起始物理地址),后者存进程的最大逻辑地址。
在这里插入图片描述

以下是内存空间的扩充的方法:覆盖与交换

虚拟存储技术不在这里详细讲。

覆盖技术

覆盖技术,用来解决“程序大小超过物理内存总和”的问题。(简而言之,物理内存不够用的问题)
覆盖技术的思想:将程序分为多个段(多个模块),常用的段常驻内存,不常用的需要时调入内存。
内存分为一个“固定区”和若干个“覆盖区”。
常驻内存的段放在固定区,调入后不再调出(除非运行结束)。
不常用的放在覆盖区,需要时调入,不需要时调出。

一个例子:
让不可能同时被访问的程序段共享同一个覆盖区。
由程序员声明覆盖结构。
缺点:对用户不透明,增加用户编程负担。

在这里插入图片描述

交换技术

思想:内存空间紧张时,系统将内存中某些进程暂时换出外存,把外存中某些已具备运行条件的进程换入内存。(进程在内存与磁盘间动态调度)
暂时换出外存等待的进程状态为挂起态。

磁盘空间分为:文件区,对换区。
文件区放文件。对换区放被换出的进程数据。
对换区的I/O速度比文件区的快。

在这里插入图片描述
覆盖是在同一个进程或程序中的,交换是在不同进程(或作业)之间的。

总结

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

karshey

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值