第五章 虚拟存储器

5.1 虚拟存储器概述

5.1.1 常规存储管理方式的特征和局部性原理

  • 常规存储器管理方式的特征
  • 局部性原理
  • 虚拟存储器的基本工作情况

特征:
	(1)一次性,是指作业必须一次性地全部装入内存后方能开始运行。
	(2)驻留性:是指作业被装入内存后,整个作业都一直驻留在内存中,其中任何部分都不会被换出,直至作业运行结束。
局部性原理:
	(1)程序执行时,除了少部分的转移和过程调用指令外,在大多数情况下是顺序执行的。
	(2)过程调用将会使程序的执行轨迹由一部份区域转至另一部份区域。
	(3)程序中存在许多循环结构,这些结构虽然只由少数指令组成,但是它们将被多次执行。
	(4)程序中还包括许多对数据结构的处理。
局限性:
	(1)时间局限性
	(2)空间局限性

5.1.2 虚拟存储器的定义和特征

  • 虚拟存储器的定义
  • 虚拟存储器的特征

   特征:
    	(1)多次性:
    		即只需将当前要运行的那部分程序和数据装入内存即可开始运行。
    		以后每当要运行到尚未调入的那部分程序时,再将它调入。
    	(2)对换性:
    		即在进程运行期间,允许那些暂不使用的代码和数据从内存调至外存
    		的对换区(换出),待以后需要时再将它们从外存调至内存(换进)。
    		甚至还允许将暂时不运行的进程调至外存,待它们重又具备运行
    		条件时在调入内存。
    	(3)虚拟性:
    		指能够从逻辑上扩充内存容量,使用户看到的内存容量远大于实际内存容量。

5.1.3 虚拟存储器的实现方法

  • 分页请求系统
  • 请求分段系统

1. 分页请求系统:
	✦分页请求系统是在分页系统的基础上增加了‘调页功能’和‘页面置换功能’所形成的页式页式虚拟存储系统。
	✦为了能实现请求调页和页面置换功能,系统必须提供必要的硬件支持和实现请求分页的软件。
		(1)硬件支持:
			①请求分页的页表机制
			②缺页中断机构
			③地址变换机构
		(2)实现请求分页的软件:	
请求分段功能:
	✦请求分段系统是在分段系统的基础上,增加了请求调段及分段置换功能后
	所形成的段式虚拟存储系统。
	✦ (1)硬件支持:
			①请求分段的段表机制
			②缺页中断机构
			③地址变换机构
	   (2)软件支持:

5.2 请求分页存储管理方式

5.2.1 请求分页中的硬件支持

  • 请求页表机制
  • 缺页中断机构
  • 地址变换机构

✦在请求分页系统中的每个页表应含以下诸项:
  	页号	物理块号		状态为P	  访问字段A	  修改位M	外存地址
  	
____♤理解各个字段的意义!!!!

5.2.2 请求分页中的内存分配

  • 最小物理块数的确定
  • 内存分配策略
  • 物理块分配算法

内存分配策略:
	(1)固定分配局部置换
	(2)可变分配全局置换
	(3)可变分配局部置换
物理块分配算法:
	(1)平均分配算法
	(2)按比例分配算法
	(3)考虑优先权的分配算法

5.2.3 页面调入策略

  • 何时调入页面
  • 从何处调入页面
  • 页面调入过程
  • 缺页率

5.3 页面置换算法

5.3.1 最佳置换算法和先进先出置换算法

  • 最佳置换算法
  • 先进先出(FIFO)页面置换算法

5.3.2 最近最久未使用和最少使用置换算法

  • LRU置换算法的描述
  • LRU置换算法的硬件支持
  • 最少使用(LFU)置换算法

5.3.3 Clock置换算法

  • 简单的Clock置换算法
  • 改进型Clock置换算法

5.3.4 页面缓冲算法

  • 影响页面换进换出效率的若干因素
  • 页面缓冲算法

影响因素:
	(1)页面置换算法
	(2)写回磁盘的频率
	(3)读入内存的频率

5.3.5 访问内存的有效时间

 存在三种方式的内存访问操作:
    	(1)被访问页在内存中,且其对应的页表项在块表中。
    		●内存有效访问时间(EAT)分为查找快表的时间(λ)和
    		 访问实际物理地址所需的时间(t)。
    			 EAT = λ + t
    	(2)被访问页在内存中,且其对应的页表项不再快表中。
    			EAT = λ + t + λ + t = 2 ×(λ + t)
    	(3)被访问页不在内存中。
    			EAT = λ + a × t + (1 - a) × [t + f × (ε + λ + t) + (1 - f) × (λ + t )]
			式中,a表示命中率,f表示缺页率。
			如果不考命中率,仅考虑虑缺页率即λ = 0和a = 0,
			设缺页中断处理时间为Φ,则:
				EAT = t + f × (Φ + t) + (1 -f) × t

5.4 “抖动”与工作集

5.4.1 多道程序度与“抖动”

  • 多道程序度与处理机的利用率
  • 产生“抖动”的原因

5.4.2 工作集

  • 工作集的概念
  • 工作集的定义

5.4.3 “抖动”的预防方法

  • 采取局部置换策略
  • 把工作集算法融入到处理机调度中
  • 利用“L = S”准则调节缺页率
  • 选择暂停的进程

5.5 请求分段存储管理方式

5.5.1 请求分段中的硬件支持

  • 请求段表机制
  • 缺段中断机构
  • 地址变换机构

下面为请求分段的段表项:
	段名	段长	段基址	存取方式	访问字段A	修改位M	存在为P	增补位	外存始址

5.5.2 分段的共享与保护

  • 共享段表
  • 共享段的分配与回收
  • 分段保护

共享段表:
	(1)共享进程技术count
	(2)存取控制字段
	(3)段号
共享段的分配与回收:
	(1)共享段的分配
	(2)共享段的回收
分段保护:
	(1)越界检查
	(2)存取控制检查
		①只读
		②只执行
		③读/写
	(3)环保护机构
		①一个程序可以访问驻留在相同环或较低特权环(外环)中的服务。
		②一个程序可以调用驻留在相同环或较高级特权环(内环)中的服务。
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值