本文主要是介绍操作系统5_虚拟存储器,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
操作系统5_虚拟存储器
文章目录
- 操作系统5_虚拟存储器
- 1. 虚拟存储器
- 1.1 虚拟存储器的引入
- 1.2 虚拟存储器的概念
- 1.3 虚拟存储器的特征
- 1.4 虚拟存储器的实现方法
- 2. 请求分页存储管理
- 2.1 请求分页中的硬件支持
- 2.2 内存分配策略和分配算法
- 2.3 调页策略
- 2.4 页面置换算法
- 2.4.1 最佳置换算法
- 2.4.2 CLOCK置换算法
- 2.4.3 先进先出置换算法
- 2.4.4 其他置换算法
- 2.4.5 最近最久未使用置换算法
- 3. 请求分段存储管理
- 4. 信息的共享与保护
1. 虚拟存储器
1.1 虚拟存储器的引入
- 常规存储管理
- 特征
- 一次性:作业在运行前必须一次性地全部装入内存后方能运行
- 驻留性:作业装入内存后,便一直驻留在内存中,直到作业运行结束。
- 存在的问题
- 内存空间利用率不高:使许多在程序运行中不用或暂时不用的程序或数据占据大量的内存空间,使得一些需要运行的作业无法装入运行
- 大程序无法装入:若一个程序所要求的内存空间超过了内存实际容量,则该程序必定无法装入内存运行
- 特征
- 解决办法
- 从物理上增加内存容量:这种方法会增加系统成本,会受到一定限制
- 从逻辑上扩充内存容量:这正是虚拟存储技术所要解决的主要问题
- 局部性
- 原理:早在1968年,Denning.P就曾指出:
- 程序执行时,除了少部分的转移和过程调用指令外,在大多数情况下仍是顺序执行的
- 过程调用将会使程序的执行轨迹由一部分区域转至另一部分区域,但经研究看出,过程调用的深度在大多数情况下都不超过5
- 程序中存在许多循环结构,这些虽然只由少数指令构成,但是它们将多次执行
- 程序中还包括许多对数据结构的处理,如对数组进行操作,它们往往都局限于很小的范围内
- 表现
- 时间局限性:如果程序中的某条指令一旦执行,则不久以后该指令可能再次执行;如果某数据被访问过,则不久以后该数据可能再次被访问。产生时间局限性的典型原因,是由于在程序中存在着大量的循环操作
- 空间局限性:一旦程序访问了某个存储单元,在不久之后,其附近的存储单元也将被访问,即程序在一段时间内所访问的地址,可能集中在一定的范围之内,其典型情况便是程序的顺序执行
- 原理:早在1968年,Denning.P就曾指出:
1.2 虚拟存储器的概念
虚拟存储器,是指具有请求调入功能和置换功能、能从逻辑上对内存容量加以扩充的一种存储器系统
其逻辑容量由内存容量和外存容量之和所决定,其运行速度接近于内存速度,而每位的成本却又接近于外存
虚拟存储技术是一种性能非常优越
这篇关于操作系统5_虚拟存储器的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!