虚拟存储器资料.
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
5.1.3 虚拟存储器的实现方法 • 1.请求分页系统
➢ 在静态分页系统的基础上,增加了请求调页功能和页 面置换功能所形成的页式虚拟存储系统。它允许一个 程序只装入少数页面的程序及数据,便启动运行。以 后,再通过调页功能及页面置换功能,陆续地把暂不 运行的页面换出到外存上,同时把即将要运行的页面 调入内存。置换是以页为单位进行的。
➢ 为了实现请求分段和段置换功能,所必需的硬件和 软件支持:
– 1) 硬件支持:请求分段的段表机制;缺段中断机构;地 址变换机构。
– 2) 软件支持:实现请求分段和段置换的软件。
11
第四章 存储器管理
• 虚拟存储器的种类
➢动态(请求)页式管理 ➢动态(请求)段式管理 ➢动态(请求)段页式管理
12
第四章 存储器管理
• 5.1 • 5.2 • 5.3 • 5.4 • 5.5
第四章 存储器管理
第五章 虚拟存储器
虚拟存储器概述 请求分页存储管理方式 页面置换算法 抖动与工作集 请求分段存储管理方式
1
第四章 存储器管理
本章前言
• 虚拟存储器作为现代操作系统存储器管理 的一项重要技术,实现了内存扩充功能。 但该功能并非是从物理上实际地扩大内存 的容量,而是从逻辑上实现对内存容量的 扩充,让用户所感觉到的内存容量比实际 内存容量大得多。于是便可以让比内存空 间更大的程序运行,或者让更多的用户程 序并发运行。这样既满足了用户的需要, 又改善了系统的性能。本章将对虚拟存储 的有关概念和技术做较详细的阐述。
• 3.虚拟存储器的基本工作情况
➢ 基于局部性原理可知,应用程序在运行之前没有必要 将其全部装入内存,而仅需将那些当前要运行的少数 页面(段)先装入内存便可运行,其余部分暂留在磁 盘上。程序在运行时,如果它所要访问的页(段)已 调入内存,便可继续执行下去;但如果程序所要访问 的页(段)尚未调入内存(称为缺页或缺段),便发 出缺页(段)中断请求,此时OS将利用请求调页(段) 功能将它们调入内存,以使进程能继续执行下去。如 果此时内存已满,无法再装入新的页(段),OS还须 再利用页(段)的置换功能,将内存中暂时不用的页 (段)调至磁盘,腾出足够的内存空间后,再将要访 问的页(段)调入内存,使程序继续执行下去。这样, 便可使一个大的用户程序在较小的内存空间中运行, 也可在相同的内存空间中同时装入更多的进程,使它 们并发执行。
5.2 请求分页存储管理方式(动态页式管理)
请求分页存储管理(动态分页式管理):部分装入 + 动态置换
5.2.1 请求分页中的硬件支持 • 1.请求页表机制
➢ 在请求分页系统中所需要的主要数据结构是页表。其基 本作用仍然是将用户地址空间中的逻辑地址变换为内存 空间中的物理地址。由于只将应用程序的一部分调入内 存,还有一部分仍在盘上,故须在页表中再增加若干项, 供程序(数据)在换入、换出时参考。在请求分页系统中 的每个页表项如下页所示:
➢由此可见:虚拟存储器技术是一种以牺牲时间 来换取空间的技术。
8
第四章 存储器管理
2.虚拟存储器的特征 在离散分配的基础上,虚存具备的特征:
➢(1)多次性
– 一个程序被分成多次调入内存运行
➢(2)对换性
– 内存和外存之间的换入换出操作
➢(3)虚拟性
– 用户感觉的内存容量远大于物理内存容量
9来自百度文库
第四章 存储器管理
3
第四章 存储器管理
5.1.1 常规存储管理方式的特征和局部性原理
• 1.常规存储器管理方式的特征
➢(1) 一次性:程序必须一次性整体装入内存。 ➢(2) 驻留性:程序必须一次性整体卸出内存(程
序在执行中途不会部分撤出内存)
这两个特征的存在使 得内存、处理机等资 源利用率较低,导致
系统吞吐量较小
想想,对于程序 执行来说,这两 个特征是必需的
2
第四章 存储器管理
5.1 虚拟存储器概述 • 背景:
➢静态分页和静态分段都要求将程序的整体载入 内存后才能开始运行,且需等到程序运行结束 后才整体退出内存。这将导致大程序无法运行 或大量程序无法载入内存的情况。如何解决?
– 从物理上扩充内存:需要¥,不属于OS的讨论范畴。 – 从逻辑上扩充内存:虚拟存储器技术的作用。
吗?
4
第四章 存储器管理
• 2.局部性原理
➢从整体来说,在一小段时间内,程序的执行仅 局限于某段代码,且它所访问的存储空间也局 限于某个区域。
– 时间局部性:刚访问过的马上会再度被访问。(递归 调用、循环结构等)
– 空间局部性:刚访问过某处,马上会访问邻近的区 域。(顺序执行、数组结构等)
5
第四章 存储器管理
6
第四章 存储器管理
• 引入虚存技术的好处
① 可在较小的可用内存中执行较大的用户程序 ② 可在内存中容纳更多的程序并发执行 ③ 不必影响编程时的程序结构 ④ 提供给用户可用的虚拟内存空间大于实际物
理内存容量
7
第四章 存储器管理
5.1.2 虚拟存储器的定义和特征 • 1.虚拟存储器的定义
➢指具有请求调入功能和置换功能,能从逻辑上 对内存容量加以扩充的一种存储器系统,其逻 辑容量由内存容量和外存容量之和决定,其运 行速度慢于内存,而单位成本又接近于外存。
13
第四章 存储器管理
▲
★
▲
★
★
▲
页号 物理块号 状态位 访问字段 修改位 外存地址
与静态页式管 理中的页号和 物理块号的作 用相同
记录该 页是否 已在内 存中
思考:在上面6个字 段中,哪些是所有页 都有的?哪些是内存
页才会有的?
记录该 页已被 访问次 数的计 数器或 未被访 问时间 的计时 器
记录该页 在内存中 是否被修 改过。以 决定该页 被换出时 是否需要 重写回外 存
➢ 为了实现请求调页和页面置换功能,所必需的硬件和 软件支持:
– 1) 硬件支持:请求分页的页表机制;缺页中断机构;地址变换 机构。
– 2) 软件支持:实现请求分页和页面置换的软件。
10
第四章 存储器管理
• 2.请求分段系统
➢ 在静态分段系统的基础上,增加了请求调段及分段 置换功能后所形成的段式虚拟存储系统。它允许一 个程序只装入少数段(而非所有的段)的用户程序和 数据,即可启动运行。以后再通过调段功能和段的 置换功能将暂不运行的段调出,同时调入即将运行 的段。置换是以段为单位进行的。
➢ 在静态分页系统的基础上,增加了请求调页功能和页 面置换功能所形成的页式虚拟存储系统。它允许一个 程序只装入少数页面的程序及数据,便启动运行。以 后,再通过调页功能及页面置换功能,陆续地把暂不 运行的页面换出到外存上,同时把即将要运行的页面 调入内存。置换是以页为单位进行的。
➢ 为了实现请求分段和段置换功能,所必需的硬件和 软件支持:
– 1) 硬件支持:请求分段的段表机制;缺段中断机构;地 址变换机构。
– 2) 软件支持:实现请求分段和段置换的软件。
11
第四章 存储器管理
• 虚拟存储器的种类
➢动态(请求)页式管理 ➢动态(请求)段式管理 ➢动态(请求)段页式管理
12
第四章 存储器管理
• 5.1 • 5.2 • 5.3 • 5.4 • 5.5
第四章 存储器管理
第五章 虚拟存储器
虚拟存储器概述 请求分页存储管理方式 页面置换算法 抖动与工作集 请求分段存储管理方式
1
第四章 存储器管理
本章前言
• 虚拟存储器作为现代操作系统存储器管理 的一项重要技术,实现了内存扩充功能。 但该功能并非是从物理上实际地扩大内存 的容量,而是从逻辑上实现对内存容量的 扩充,让用户所感觉到的内存容量比实际 内存容量大得多。于是便可以让比内存空 间更大的程序运行,或者让更多的用户程 序并发运行。这样既满足了用户的需要, 又改善了系统的性能。本章将对虚拟存储 的有关概念和技术做较详细的阐述。
• 3.虚拟存储器的基本工作情况
➢ 基于局部性原理可知,应用程序在运行之前没有必要 将其全部装入内存,而仅需将那些当前要运行的少数 页面(段)先装入内存便可运行,其余部分暂留在磁 盘上。程序在运行时,如果它所要访问的页(段)已 调入内存,便可继续执行下去;但如果程序所要访问 的页(段)尚未调入内存(称为缺页或缺段),便发 出缺页(段)中断请求,此时OS将利用请求调页(段) 功能将它们调入内存,以使进程能继续执行下去。如 果此时内存已满,无法再装入新的页(段),OS还须 再利用页(段)的置换功能,将内存中暂时不用的页 (段)调至磁盘,腾出足够的内存空间后,再将要访 问的页(段)调入内存,使程序继续执行下去。这样, 便可使一个大的用户程序在较小的内存空间中运行, 也可在相同的内存空间中同时装入更多的进程,使它 们并发执行。
5.2 请求分页存储管理方式(动态页式管理)
请求分页存储管理(动态分页式管理):部分装入 + 动态置换
5.2.1 请求分页中的硬件支持 • 1.请求页表机制
➢ 在请求分页系统中所需要的主要数据结构是页表。其基 本作用仍然是将用户地址空间中的逻辑地址变换为内存 空间中的物理地址。由于只将应用程序的一部分调入内 存,还有一部分仍在盘上,故须在页表中再增加若干项, 供程序(数据)在换入、换出时参考。在请求分页系统中 的每个页表项如下页所示:
➢由此可见:虚拟存储器技术是一种以牺牲时间 来换取空间的技术。
8
第四章 存储器管理
2.虚拟存储器的特征 在离散分配的基础上,虚存具备的特征:
➢(1)多次性
– 一个程序被分成多次调入内存运行
➢(2)对换性
– 内存和外存之间的换入换出操作
➢(3)虚拟性
– 用户感觉的内存容量远大于物理内存容量
9来自百度文库
第四章 存储器管理
3
第四章 存储器管理
5.1.1 常规存储管理方式的特征和局部性原理
• 1.常规存储器管理方式的特征
➢(1) 一次性:程序必须一次性整体装入内存。 ➢(2) 驻留性:程序必须一次性整体卸出内存(程
序在执行中途不会部分撤出内存)
这两个特征的存在使 得内存、处理机等资 源利用率较低,导致
系统吞吐量较小
想想,对于程序 执行来说,这两 个特征是必需的
2
第四章 存储器管理
5.1 虚拟存储器概述 • 背景:
➢静态分页和静态分段都要求将程序的整体载入 内存后才能开始运行,且需等到程序运行结束 后才整体退出内存。这将导致大程序无法运行 或大量程序无法载入内存的情况。如何解决?
– 从物理上扩充内存:需要¥,不属于OS的讨论范畴。 – 从逻辑上扩充内存:虚拟存储器技术的作用。
吗?
4
第四章 存储器管理
• 2.局部性原理
➢从整体来说,在一小段时间内,程序的执行仅 局限于某段代码,且它所访问的存储空间也局 限于某个区域。
– 时间局部性:刚访问过的马上会再度被访问。(递归 调用、循环结构等)
– 空间局部性:刚访问过某处,马上会访问邻近的区 域。(顺序执行、数组结构等)
5
第四章 存储器管理
6
第四章 存储器管理
• 引入虚存技术的好处
① 可在较小的可用内存中执行较大的用户程序 ② 可在内存中容纳更多的程序并发执行 ③ 不必影响编程时的程序结构 ④ 提供给用户可用的虚拟内存空间大于实际物
理内存容量
7
第四章 存储器管理
5.1.2 虚拟存储器的定义和特征 • 1.虚拟存储器的定义
➢指具有请求调入功能和置换功能,能从逻辑上 对内存容量加以扩充的一种存储器系统,其逻 辑容量由内存容量和外存容量之和决定,其运 行速度慢于内存,而单位成本又接近于外存。
13
第四章 存储器管理
▲
★
▲
★
★
▲
页号 物理块号 状态位 访问字段 修改位 外存地址
与静态页式管 理中的页号和 物理块号的作 用相同
记录该 页是否 已在内 存中
思考:在上面6个字 段中,哪些是所有页 都有的?哪些是内存
页才会有的?
记录该 页已被 访问次 数的计 数器或 未被访 问时间 的计时 器
记录该页 在内存中 是否被修 改过。以 决定该页 被换出时 是否需要 重写回外 存
➢ 为了实现请求调页和页面置换功能,所必需的硬件和 软件支持:
– 1) 硬件支持:请求分页的页表机制;缺页中断机构;地址变换 机构。
– 2) 软件支持:实现请求分页和页面置换的软件。
10
第四章 存储器管理
• 2.请求分段系统
➢ 在静态分段系统的基础上,增加了请求调段及分段 置换功能后所形成的段式虚拟存储系统。它允许一 个程序只装入少数段(而非所有的段)的用户程序和 数据,即可启动运行。以后再通过调段功能和段的 置换功能将暂不运行的段调出,同时调入即将运行 的段。置换是以段为单位进行的。