第3章 存储管理

第3章 存储管理


3.1 内存管理基础

3.1.1 内存管理概念

1. 内存管理的功能

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

2. 地址重定位

  1. 逻辑地址空间
  2. 物理地址空间
  3. 地址重地位
  4. 重定位类型
重定位寄存器
将逻辑地址与重定位寄存器中的内容相加后得到的地址作为访问内存的地址

3. 链接


3.1.2 交换与覆盖

交换
让出处理机,释放占用的内存
覆盖
轮流使用某段存储空间

3.1.3 存储分配方式

3.1.4 连续分配管理方式

  • 首次适应算法Frist Fit
  • 下次适应算法Next Fit
  • 最佳适应算法Best Fit
  • 最坏适应算法Worst Fit

3.1.5 非连续分配管理方式

1. 简单分页存储管理

  1. 等分内存:存储块 = 页框
  2. 【逻辑地址】分页:页面 = 页
  3. 逻辑地址的表示:(p, d) p是页号,d是相对地址
  4. 内存分配原则:
  5. 页表与页表地址寄存器

第3章 存储管理_第1张图片

第3章 存储管理_第2张图片
页表和页表地址寄存器

页面和物理块
分页存储管理是将一个进程的逻辑地址空间分成若干个大小相等的片称为 页面或页,并为各页加以编号,从0开始。同时把内存空间分成与页面相同大小的若干个 存储块,称为 或页框。在为进程分配内存时,以块为单位将进程的若干个页分别装入到多个可以不相邻的物理块中。
页表
一组重定位寄存器,页表实现了从页号到物理块号的地址映射,它的起始地址和大小保存在该作业的 PCB中。在系统中只设置一个页表寄存器 PTR,在其中存放页表在内存中的始址和页表的长度。
快表
寄存器,页号块号
地址结构
地址长度32位:
0~11位为位移量(页内地址),即每页的大小为4KB
12~31位为页号,地址空间最多允许有1M页

两级页表
32位逻辑地址空间,页面大小为4KB(即12位),每个页表项占4个字节,若采用一级页表机构,应有20位页号,即页表项应有1M个;在采用两级页表机构时,再对页表进行分页,使每页包含210(即1024)个页表项,最多允许有210个页表分页。即

第3章 存储管理_第3张图片

2. 分段存储管理

自然段
代码段,数据段,堆栈段
二维地址结构
段号 s和段内相对地址 w

分段系统的地址结构如图:
第3章 存储管理_第4张图片

该地址结构允许一个作业最长有64K个段,每段的最大长度为64KB。因此,用户在程序设计时,每个段的最大长度受到地址结构的限制。进一步,每一个程序中允许的最多段数也受到限制。

3. 段页式管理

三次访问内存
段号,页号,指令或数据

3.2 虚拟存储管理

3.2.1 虚拟存储器基本概念

虚拟存储器定义
是指具有请求调入功能和置换功能,能从逻辑上对内存容量加以扩充的一种存储器

1.请求分页系统
2.请求分段系统

1. 局部性原理

2. 虚拟存储

3. 实现虚拟存储的基础

硬件基础 软件基础
一定的存储容量 页表段表
大容量的外存 中断服务程序
缺页中断机构 操作系统支持

硬件支持:①请求分页的页表机制 ②缺页中断机构 ③地址变换机构
软件支持:实现请求调页的软件和实现页面置换的软件

4. 虚拟存储的主要特征

  • 离散性
  • 多次性
  • 对换性
  • 虚拟性

3.2.2 请求分页管理方式

  1. 请求分页的基本原理
  2. 页表的扩充
  3. 地址变换
  4. 缺页中断处理
  5. 调页策略

第3章 存储管理_第5张图片

3.2.3 页面置换算法

  • 随机淘汰算法
  • 先进先出算法
  • 最佳置换算法
  • 最近最久未使用页面置换算法

3.2.4 页面分配策略

3.2.5 工作集

工作集
频率非常高的页面置换现象

你可能感兴趣的:(操作系统笔记)