第5章讲义虚拟存储器
计算机操作系统第五章-虚拟存储器分解

第五章虚拟存储器第一节虚拟存储器的基本概念一、虚拟存储器的引入在前面介绍的各种存储管理方式中,用户作业一旦被装入内存,就会一直驻留其中,直到进程运行结束(驻留性)。
有些存储管理方式还存在一次性。
因此,用户作业要最终运行完毕,系统必须给它提供不短于作业长度的存储空间。
于是就出现了两种问题:•长作业无法运行•大量作业无法同时运行程序运行的局部性原理:在一段时间内一个程序的执行往往呈现出高度的局部性。
前期讨论:P112-113;局部性还表现在两方面:(1) 一条指令被执行,则不久以后该指令很可能再次执行;某个数据被访问,则不久以后该数据附近的数据很可能被访问。
产生这类局部性的典型原因,是由于在程序中存在着大量的循环操作。
(2) 程序在一段时间内所访问的地址,可能集中在一定的范围之内。
若某一存储单元被使用,则在一定时间内,与该存储单元相邻的单元很可能被使用。
其典型情况便是程序的顺序执行、数组的处理等。
局部性原理是在存储分配时克服驻留性、实现虚拟存储的依据。
二、虚拟存储器的定义定义:具有请求调入功能和置换功能,能从逻辑上对内存容量进行扩充的一种存储器系统。
其访问速度接近于内存,而其容量和每位的成本却又接近于外存。
特性:虚拟存储器连续性离散性一次性多次性驻留性交换性虚拟性对用户而言,它访问特性和内存一样;它以CPU时间和外存空间换取宝贵内存空间,是操作系统中的一种资源转换技术。
容量:•一个虚拟存储器的最大容量是由计算机的地址结构确定的。
如:若CPU的有效地址宽度为32位,则程序可以寻址范围是0~232-1 ,即虚存容量可达4GB。
•虚拟存储器的容量与主存的实际大小没有直接的关系,而是在主存与辅存的容量之和的范围内。
三、虚拟存储技术基本原理:P115把内存与外存有机地结合起来使用,从而得到一个容量很大的“内存”。
当进程开始运行时,先将它的一部分内容装入内存,另一部分暂时留在外存。
在运行过程中,当要访问的指令/数据不在内存时,由OS 自动将内存中的一些内容调到外存,藤出空间,再将马上要访问的内容从外存调入内存。
第5章-虚拟存储器ppt课件

.
5.1.1 常规存储器管理方式的特征和局部性原理 1.常规存储器管理方式的特征 (1)一次性
作业在运行前需一次性地全部装入内存,如果一次 性地装入其全部程序,也是一种对内存空间的浪费。
.
5.1.2 虚拟存储器的特征
虚拟存储器具有以下主要特征:
1.多次性 一个作业被分成多次调入内存运行,在作业
运行时只需将当前要运行的那部分程序和数据装 入内存即可;当要运行时尚未调入的那部分程序 时,再将它调入。
2.对换性 作业的运行过程中进行换进、换出,换进和
换出能有效地提高内存利用率。
3.虚拟性 虚拟性是指能够从逻辑上扩充内存容量,使
(2)驻留性
作业装入内存后,便一直驻留在内存中,直至作业 运行结束。尽管运行中的进程会因I/O而长期等待, 仍将继续占用宝贵的内存资源。
.
2.局部性原理
(1)程序执行时,除了少部分的转移和过程调用 指令外,在大多数情况下仍是顺序执行的。
(2)过程调用将会使程序的执行轨迹由一部分区 域转至另一部分区域,但经研究看出,过程调用 的深度在大多数情况下都不超过5层。这就是说, 程序将会在一段时间内都局限在这些过程的范围 内运行。
.
3.虚拟存储器定义
基于局部性原理,应用程序在运行之前,没有必 要全部装入内存,仅须将那些当前要运行的部分 页面或段先装入内存便可运行,其余部分暂留在 盘上。
所谓虚拟存储器:是指具有请求调入功能和置换 功能,能从逻辑上对内存容量加以扩充的一种存 储器系统,其逻辑容量由内存容量和外存容量之 和所决定,其运行速度接近于内存速度,而每位 的成本却又接近于外存。
计算机操作系统课件:第5章存储器管理03-虚拟存储器

景
雨 换进和换出能有效地提高内存利用率。
虚拟性
指能够从逻辑上扩充内存容量,使用户所看到 的内存容量远大于实际内存容量。这是虚拟存储器 所表现出来的最重要的特征,也是实现虚拟存储器 的最重要的目标。
虚拟存储器的实现方法
虚拟存储器的实现建立在离散分配的存储器管
大 理方式的基础上。
外
软
件
学
院 |
# 分页虚拟存储管理方式
页面调度策略
大
虚拟存储器系统通常定义三种策略
外 软
来规定如何(何时)以及怎样进行页面
件
学
调度。
院
| |
☆ 调页策略
景
雨
☆ 内存分配及置换策略
☆ 页面置换算法
1.页面调入策略
虚拟存储器的调入策略决定采用什
大
外 软
么样的方式将所缺页面由外存调入到内
件
学
存之中。
院
|
|
景
两种常用调页策略:
雨
☆ 请求调页
学
院
时就会出现分配的内存物理块数增多,缺页
|
|
景
率反而提高的异常现象。
雨
Belady 现 象 的 原 因 : FIFO 算 法 的 置 换
特征与进程访问内存的动态特征是矛盾的,
即被置换的页面并不是进程不会访问的。
3.页面置换算法
2).先进先出算法 (FIFO)
大
外 例1:假定系统为某进程分配了三个物理块,一个
软
件 作业要依次访问如下页面:
学
院 |
0,1,2,3,0,1,4,0,
|
景 雨
1,2,3,4。请采用FIFO页面
chapter5_-虚拟存储器

三、请求分页中的页面调入策略
从何处调入页面-2
文件区、对换区:系统没有足够的对换区
空间,对可能会修改的文件第一次调页直 接从文件区,换出时换至对换区,以后从 对换区调页。 UNIX方式:凡未运行过的页面均从文件 区调页,运行过的页面和换出的页面均从 对换区调页。
三、请求分页中的页面调入策略
以人力和租金便宜的仓库来换取租金 昂贵的柜台空间
有臵换算法
以CPU时间和外存空间换取宝贵的内 存空间
二、虚拟存储器的特征
1、多次性 多次性是虚拟存储器最重要的特征,指一个作业被 分成多次调入内存运行。 2、对换性 对换性指允许在作业运行过程中进行换进、换出。 换进、换出可提高内存利用率。 3、虚拟性 虚拟性是指能够从逻辑上扩充内存容量,使用户所 看到的内存容量远大于实际内存容量。虚拟性是虚 拟存储器所表现出来的最重要的特征,也是实现虚 拟存储器最重要的目标。 注:虚拟性以多次性和对换性为基础,而多次性和对 换性又以离散分配为基础。
供调入该页时参考
供臵换页面时参考
一、请求分页中的硬件支持
2、缺页中断机构
在请求分页系统中,当访问的页不在内存,便产生
一缺页中断,请求OS将所缺页调入内存空闲块,
若无空闲块,则需臵换某一页,同时修改相应页表
表目。
缺页中断与一般中断的区别:
(1)在指令执行期间产生和处理中断信号
(2)一条指令在执行期间,可能产生多次缺页
中断
3、地址变换机构
缺页中断处理 保留CPU现场
程序请求访问一页 开始
页号>页表长度? Y 越界中断
从外存中找到缺页
内存满吗? Y 选择一页换出 N 该页被修改否? Y 将该页写回外存
虚拟存储器培训课件(ppt 91页)

设备。典型的有:打印机等。 高速设备:传输速率仅为每秒钟数百千个字节至数十兆字节的
设备。典型的有:磁盘机、磁带机、光盘机等。
块设备 4)按信息交换的单位分类 字符设备 块设备:信息交换的基本单位为字符块,属于有结构设备, 块大小一般为512B---4KB,典型的有:磁盘、磁带等。 字符设备:信息交换的基本单位为字符,典型的有:键盘、 打印机和显示器等。 2、设备与控制器之间的接口 (P145 图5-1) 三种信号线
操作系统
当C>T :C+M即MAX(C,T)+M 当C<T : MAX(C,T) 图5-12
循环缓冲
在设备和处理机之间设置多个大小相等的缓冲区,这些缓 冲区构成环形,每一个缓冲区中含一指针指向下一个缓冲区, 最后一个指向第一个缓冲区,同时还含有2个用于输入/输出的 指针IN和OUT。
特点:缓冲区数有多个;设备与处理机对缓冲区的操作可并 行,进一步提高了设备与处理机并行操作的程度。
3、DMA方式
1)需数据的进程向CPU发出指令,向DMA控制器写入数据存放的内存始址、 传送的字节数,并置中断位和启动位,启动I/O设备输入数据并允许中断。
2)该进程放弃处理机等待输入完成,处理机被其它进程占据。 3)DMA控制器采用挪用CPU周期,将一批数据写入内存中。 4)DMA控制器传送完数据后,向CPU发中断请求,CPU响应后转向中断服
3、缓冲实现方法两种: 1)采用硬件缓冲器实现 2)用软件缓冲区来实现
5.3 缓冲管理
缓冲就是用来对数据传送速度不同的设备的传送速度进
行匹配/缓冲的一种常用手段。其实现方法除在关键
操作系统第5章虚拟存储器

(2) 有大量作业要求运行,但由于内存容量不足以容纳 所有这些作业,只能将少数作业装入内存让它们先运行,而 将其它大量的作业留在外存上等待。
2
第五章 虚 拟 存 储 器
5.1.1 常规存储管理方式的特征和局部性原理 1. 常规存储器管理方式的特征 我们把前一章中所介绍的各种存储器管理方式统称为传
当进程访问某物理块时,要将相应寄存器的Rn-1位置成 1。此时,定时信号将每隔一定时间(例如100 ms)将寄存器右 移一位。如果我们把n位寄存器的数看作是一个整数,那么, 具有最小数值的寄存器所对应的页面,就是最近最久未使用 的页面。
36
第五章 虚 拟 存 储 器
实页
R 实 页R7
R6
R5
R4
R3
算机系统除了要求一定容量的内存和外存外,还需要有请求 页表机制、缺页中断机构以及地址变换机构。
11
第五章 虚 拟 存 储 器
1. 请求页表机制 在请求分页系统中需要的主要数据结构是请求页表,其 基本作用仍然是将用户地址空间中的逻辑地址映射为内存空 间中的物理地址。为了满足页面换进换出的需要,在请求页 表中又增加了四个字段。这样,在请求分页系统中的每个页 表应含以下诸项:
页号
物理块号
状态位 P
访问字段 A
修改位 M
外存地址
12
第五章 虚 拟 存 储 器
2. 缺页中断机构 (1) 在指令执行期间产生和处理中断信号。 (2) 一条指令在执行期间可能产生多次缺页中断。
13
第五章 虚 拟 存 储 器
图5-1 涉及6次缺页中断的指令
第5章 虚拟存储器管理资料

章
存储的位置
虚
选择淘汰出主存的信息——置换算法
拟
存 储
5. 虚拟存储器的实现方法
器
请求分页存储管理
管
理
请求分段存储管理
请求段页式存储管理
6
操
5.2 请求分页存储管理
作 系
一、请求分页技术基本思想
统
当一个用户(或进程)的程序调入系统运行时,只装入这个
用户程序的一部分页就启动运行。在运行的过程中,若发现
拟 存
页机构得p=3,需要访问第3页,查页表中该页的存在位为1,
储 器
该页也不在主存,发生缺页中断。但是, 此时主存中没有空白
管 块,故需要淘汰一个页面信息, 选择淘汰的页面需要确定淘汰
理
的原则。
13
操 五、请求分页中的内存分配
作 系
1. 最小物理块数的确定
统 最小物理块数是指能保证进程正常运行所需的最小物理块数。
第 五 章
状态位 P
=0 页在主存 =1 页不在主存
虚 拟
三、缺页中断处理过程
存 储
当缺页中断发生时,中断用户程序的执行,控制转到操
器 管
作系统的调页程序,由调页程序把所需的页面从辅存调入
理 主存,修改该页表面的存在位,然后继续执行被中断的程
序。
8
操 通常当作业被调入运行时,将相应进程的第一页装入主存,
3 盘区地址
作业2页表
02 04 01 …7
1…
0 盘区地址 1 盘区地址 2 盘区地址
作业3页表
08 03
1…
OS
0 1K
OS
B2K
B3K
mov r1,[2120] B4K add r1,[3410] B5K
计算机操作系统--虚拟存储器 ppt课件

为,该系统所具有的内存容量一定比自己的程序大,或者说, 用户所感觉到的内存容量会比实际内存容量大得多。但用户 所看到的大容量只是一种错觉,是虚的,故人们把这样的存 储器称为虚拟存储器。
统存储器管理方式,它们全都具有如下两个共同的特征: (1) 一次性 (2) 驻留性
pp3t课件
第五章 虚 拟 存 储 器
2. 局部性原理 程序运行时存在的局部性现象,很早就已被人发现,但 直到1968年,P.Denning才真正指出:程序在执行时将呈现出 局部性规律,即在一较短的时间内,程序的执行仅局限于某 个部分,相应地,它所访问的存储空间也局限于某个区域。
算机系统除了要求一定容量的内存和外存外,还需要有请求 页表机制、缺页中断机构以及地址变换机构。
pp1t1课件
第五章 虚 拟 存 储 器
1. 请求页表机制 在请求分页系统中需要的主要数据结构是请求页表,其 基本作用仍然是将用户地址空间中的逻辑地址映射为内存空 间中的物理地址。为了满足页面换进换出的需要,在请求页 表中又增加了四个字段。这样,在请求分页系统中的每个页 表应含以下诸项:
pp1t8课件
第五章 虚 拟 存 储 器
3. 物理块分配算法 在采用固定分配策略时,如何将系统中可供分配的所有 物理块分配给各个进程,可采用下述几种算法: (1) 平均分配算法,即将系统中所有可供分配的物理块 平均分配给各个进程。 (2) 按比例分配算法,即根据进程的大小按比例分配物 理块。如果系统中共有n个进程,每个进程的页面数为Si, 则系统中各进程页面数的总和为:
pp9t课件
第五章 虚 拟 存 储 器
2. 请求分段系统 1) 硬件支持 主要的硬件支持有: (1) 请求分段的段表机制。 (2) 缺页中断机构。 (3) 地址变换机构。 2) 软件支持
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第五章 虚 拟 存 储 器 42
第五章 虚 拟 存 储 器 43
第五章 虚 拟 存 储 器
图5-10 缺页率与物理块数之间的关系
44
第五章 虚 拟 存 储 器 45
第五章 虚 拟 存 储 器
图5-11 窗口为3、4、5时进程的工作集
46
第五章 虚 拟 存 储 器 47
第五章 虚 拟 存 储 器 48
31
第五章 虚 拟 存 储 器 32
第五章 虚 拟 存 储 器 33
第五章 虚 拟 存 储 器
实页
R 实 页R7
R6
R5
R4
R3
R2
R1
R0
1
0
1
0
1
0
0
1
0
2
1
0
1
0
1
1
0
0
3
0
0
0
0
0
1
0
0
4
0
1
1
0
1
0
1
1
5
1
1
0
1
0
1
1
0
6
0
0
1
0
1
0
1
1
7
0
0
0
0
0
1
1
1
8
0
1
1
0
1
1
0
1
图5-6 某进程具有8个页面时的LRU访问情况
34
第五章 虚 拟 存 储 器 35
第五章 虚 拟 存 储 器
图5-7 用栈保存当前使用页面时栈的变化情况
36
第五章 虚 拟 存 储 器 37
第五章 虚 拟 存 储 器 38
第五章 虚 拟 存 储 器 39
第五章 虚 拟 存 储 器 40
第五章 虚 拟 存 储 器
图5-9 处理机的利用率
第五章 虚 拟 存 储 器
图5-13 请求分段系统的地址变换过程
55
第五章 虚 拟 存 储 器 56
第五章 虚 拟 存 储 器
图5-14 共享段表项
57
第五章 虚 拟 存 储 器 58
第五章 虚 拟 存 储 器 59
THANKS
第五章 虚 拟 存 储 器 26
第五章 虚 拟 存 储 器
图5-3 利用最佳页面置换算法时的置换图
27
第五章 虚 拟 存 储 器 28
第五章 虚 拟 存 储 器
图5-4 利用FIFO置换算法时的置换图
29
第五章 虚 拟 存 储 器 30
第五章 虚 拟 存 储 器
图5-5 LRU页面置换算法
第五章 虚 拟 存 储 器 49
第五章 虚 拟 存 储 器 50
第五章 虚 拟 存 储 器
段名 段长 段基址 存取方式 访问字段 A 修改位 M 存在位 P 增补位 外存始址
51
第五章 虚 拟 存 储 器 52
第五章 虚 拟 存 储 器
图5-12 请求分段系统中的中断处理过程
53
第五章 虚 拟 存 储 器 54
第5章虚拟存储器
第五章 虚 拟 存 储 器 2
第五章 虚 拟 存 储 器 3
第五章 虚 拟 存 储 器 4
第五章 虚 拟 存 储 器 5
第五章 虚 拟 存 储 器 6
第五章 虚 拟 存 储 器 7
第五章 虚 拟 存 储 器 8
第五章 虚 拟 存 储 器 9
第五章 虚 拟 存 储 器 10
n
S S i i1 17
第五章 虚 拟 存 储 器
bi
Si S
m
18
第五章 虚 拟 存 储 器 19
第五章 虚 拟 存 储 器 20
第五章 虚 拟 存 储 器 21
第五章 虚 拟 存 储 器 22
பைடு நூலகம்
第五章 虚 拟 存 储 器 23
第五章 虚 拟 存 储 器
f F A
24
第五章 虚 拟 存 储 器 25
第五章 虚 拟 存 储 器
页号
物理块号
状态位 P
访问字段 A
修改位 M
外存地址
11
第五章 虚 拟 存 储 器 12
第五章 虚 拟 存 储 器 13
第五章 虚 拟 存 储 器
图5-2 请求分页中的地址变换过程
14
第五章 虚 拟 存 储 器 15
第五章 虚 拟 存 储 器 16
第五章 虚 拟 存 储 器