虚拟存储器

第五章:虚拟存储器

在这里插入图片描述

常规存储管理方式的特征

一次性

驻留性

局部性原理

程序在执行时将呈现出局部性特征,即在一较短的时间内,程序的执行仅局限于某个部分,相应地,它所访问的存储空间也局限于某个区域

时间局限性

  • 如果程序中的某条指令一旦执行, 则不久以后该指令可能再次执行;如果某数据被访问过, 则不久以后该数据可能再次被访问。产生时间局限性的典型原因,是由于在程序中存在着大量的循环操作

空间局限性

  • 一旦程序访问了某个存储单元,在不久之后,其附近的存储单元也将被访问,即程序在一段时间内所访问的地址,可能集中在一定的范围之内,其典型情况便是程序的顺序执行。

定义

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

优点

大程序:可在较小的可用内存中执行较大的用户程序;

大的用户空间:提供给用户可用的虚拟内存空间通常大于物理内存(real memory)

并发:可在内存中容纳更多程序并发执行;

易于开发:不必影响编程时的程序结构

以CPU时间和外存空间换取昂贵内存空间,这是操作系统中的资源转换技术

特征

离散性

  • 指在内存分配时采用离散的分配方式,它是虚拟存储器的实现的基础

多次性

  • 指一个作业被分成多次调入内存运行,即在作业运行时没有必要将其全部装入,只须将当前要运行的那部分程序和数据装入内存即可。多次性是虚拟存储器最重要的特征

对换性

  • 指允许在作业的运行过程中在内存和外存的对换区之间换进、换出。

虚拟性

  • 指能够从逻辑上扩充内存容量,使用户所看到的内存容量远大于实际内存容量。

虚拟存储器的实现方式

请求分页存储管理方式

  • 硬件
    • 请求页表机制
      • 格式:页号+物理块号+状态位P+访问字段A+修改位M+外存地址
    • 缺页中断机构
    • 地址变换机构(过程图很关键)
  • 请求分页中的内存分配
    • 最小物理块数
      • 即能保证进程正常运行所需的最小物理块数
    • 内存分配策略
      • 固定分配局部置换(国王的大儿子)
      • 可变分配全局置换(国王的二儿子)
      • 可变分配局部置换(国王的小儿子)
  • 物理块分配算法
    • 平均分配算法
    • 按比例分配算法
    • 考虑优先权的分配算法
  • 页面调入策略
    • 系统应在何时调入所需页面
      • 预调页策略(不能实现)
      • 请求调页策略(需要才给)
    • 系统应该从何处调入这些页面
      • 对换区
      • 文件区
    • 页面调入过程
    • 缺页率(出计算题)

请求分段系统

  • 硬件
    • 请求分段的段表机构
    • 缺段中断机构
    • 地址变换机构

页面置换算法

抖动的概念

  • 即刚被换出的页很快又要被访问,需要将它重新调入,此时又需要再选一页调出

最佳置换算法(需要预知后面进程,所以不能实现)

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

  • 选择在内存中驻留时间最久的页面予以淘汰

最近最久未使用置换算法(LRU)Recently

  • 寄存器支持
  • 特殊的栈结构

最少使用置换算法(LFU)Frequently

clock置换算法(对访问位A的判断)

  • 改进型——增加对修改位M思维判断

页面缓冲算法(PBA,page buffering algorithm)

  • 空闲页面链表
  • 修改页面链表

XMind: ZEN - Trial Version

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/368746.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

创建一个Vue项目(含npm install卡住不动的解决)

目录 1 安装Node.js 2 使用命令提示符窗口创建Vue 2.1 打开命令提示符窗口 2.2 初始Vue项目 2.2.1 npm init vuelatest 2.2.2 npm install 3 运行Vue项目 3.1 命令提示符窗口 3.2 VSCode运行项目 1 安装Node.js 可以看我的这篇文章《Node.js的安装》 2 使用命令提示…

【定位·HTML】

定位布局可以分为以下四种: 静态定位(inherit) 相对定位(relative) 绝对定位(absolute) 固定定位(fixed) 一般的标签元素不加任何定位属性时,默认都属于静态…

STM32标准库——(9)TIM编码器接口

1.编码器接口简介 Encoder Interface 编码器接口编码器接口可接收增量(正交)编码器的信号,根据编码器旋转产生的正交信号脉冲,自动控制CNT自增或自减,从而指示编码器的位置、旋转方向和旋转速度每个高级定时器和通用定…

linux ln命令-linux软链接、硬链接-linux软、硬链接的区别(二):软链接

0、序 上一篇:linux ln命令-linux软链接、硬链接-linux软、硬链接的区别(一):硬链接 描述了硬链接相关内容,本篇主要描述软链接。 1、软链接 符号链接也称软链接,是将一个路径名链接到一个文件。这些文件是一种特别类型的文件。…

已解决!AttributeError: ‘Sequential‘ object has no attribute ‘session‘ 问题

博主猫头虎的技术世界 🌟 欢迎来到猫头虎的博客 — 探索技术的无限可能! 专栏链接: 🔗 精选专栏: 《面试题大全》 — 面试准备的宝典!《IDEA开发秘籍》 — 提升你的IDEA技能!《100天精通Golang》…

【Android新版本兼容】onBackPressed()方法被弃用的解决方案

提示:此文章仅作为本人记录日常学习使用,若有存在错误或者不严谨得地方欢迎指正。 文章目录 一、使用 AndroidX API 实现预测性返回手势1.1 添加依赖1.2 启用返回手势1.3 注册OnBackPressedCallback()方法来处理返回手势 一、使用 AndroidX API 实现预测…

React | Center 组件

在 Flutter 中有 Center 组件,效果就是让子组件整体居中,挺好用。 React 中虽然没有对应的组件,但是可以简单封装一个: index.less .container {display: flex;justify-content: center;align-items: center;align-content: ce…

京东微前端框架MicroApp简介

一、MicroApp 1.1 MicroApp简介 MicroApp是由京东前端团队推出的一款微前端框架,它从组件化的思维,基于类WebComponent进行微前端的渲染,旨在降低上手难度、提升工作效率。MicroApp无关技术栈,也不和业务绑定,可以用于任何前端框架。 官网链接:https://micro-zoe.gith…

Neo4j安装部署(windows、docker)

文章目录 Neo4j安装部署前言windows系统安装解压压缩包并进入bin目录查看neo4j的相关命令访问7474端口 Docker安装Neo desktop安装 Neo4j安装部署 前言 这篇blog所涉及的资源都可以在[neo4j相关资源]进行下载。 windows系统安装 解压压缩包并进入bin目录 查看neo4j的相关命…

正则表达式与文本处理工具

目录 引言 一、正则表达式基础 (一)字符匹配 1.基本字符 2.特殊字符 3.量词 4.边界匹配 (二)进阶用法 1.组与引用 2.选择 二、命令之-----grep (一)基础用法 (二)高级用…

FL Studio 21.2.2官方中文版重磅发布2024最新FL21下载安装图文使用教程

FL Studio 21.2.2中文版惯称水果编曲, 是一个完整的电音软件音乐制作环境或数字音频工作站。是现在流行的数字音频工作站之一,包括撰写,整理,记录,编辑,电音,混音和掌握专业品质的音乐。 FL Studio 21.2.2编曲软件即“Fruity Loops Studio”,简称FL,也就…

【C++初级篇】C++入门

目录 1. C关键字(C98) 2. 命名空间 2.1 命名空间定义 2.2 命名空间使用 3. C输入&输出 4. 缺省参数 4.1 缺省参数概念 4.2 缺省参数分类 5. 函数重载 5.1函数重载概念 5.2 C支持函数重载的原理--名字修饰(name Mangling) 6. 引用 6.1 引用概念 6.2 引用特性 6.3 常引用 6.4…

时间复杂度为 O(n) 的排序算法

大家好,我是 方圆。本文介绍线性排序,即时间复杂度为 O(n) 的排序算法,包括桶排序,计数排序和基数排序,它们都不是基于比较的排序算法,大家重点关注一下这些算法的适用场景。 桶排序 桶排序是分治策略的一…

内网信息收集-Windows篇

目录 内网信息收集 机器角色分析 本机的信息收集 密码信息 如何查找内网的网段 进程、端口、补丁、共享文件夹 总结 域环境信息收集 MSF信息收集 内网信息收集 机器角色分析 1、判断当前主机是什么服务器? web服务器、开发测试服务器、公共服务器、文件服…

[word] 怎么将word文档中的文字转换成一个4行5列的表格 #职场发展#笔记#经验分享

怎么将word文档中的文字转换成一个4行5列的表格 怎么将word文档中的文字转换成一个4行5列的表格? 将文档中的四行文字转换成一个4行5列的表格的具体步骤如下: 1、首先打开需要编辑的Word文档,进入到编辑页面中。 2、然后选中需要编辑的文字…

​Nacos搭建注册中心与配置中心

目录 一、Nacos的安装和部署 1. 下载Nacos 2. 解压安装包到本地 3. 配置数据库(可选) 4. 启动Nacos服务 5. 登陆控制台 二、springboot整合Nacos 1. 添加依赖 2. 配置注册中心、配置中心 3. 演示 Nacos是一个平台产品,主要提供注册…

《数据安全法》解读篇

《中华人民共和国数据安全法》 颁布时间:2021年6月10日实施时间:2021年9月1日《中华人民共和国数据安全法》整体架构图 数据安全的定义:是指通过采取必要措施,确保数据处于有效保护和合法利用的状态,以及具备保障持续…

使用ESP32-S3对MQ-135空气质量传感器的使用记录(Arduino版)

一、硬件上: 1、使用esp32开发板的04引脚与AO连接,检测AO引脚的电平 二、软件上: 1、使用Arduino快速完成开发 2、源码: // Potentiometer is connected to GPIO 04 (Analog ADC1_CH3) const int adcPin 4;// variable for s…

从零学习Linux操作系统 第二十五部分 文本处理工具

一、grep命令的基本使用方法及常用参数介绍 grep [全称&#xff1a;Globally search a Regular Expression and Print 全局搜索正则表达式并打印 ] grep 命令格式 grep 匹配条件 处理文件 grep root passwd过滤root关键字grep -i root passwd后略大小写grep -E “<root”…

鲜花销售|鲜花销售小程序|基于微信小程序的鲜花销售系统设计与实现(源码+数据库+文档)

鲜花销售小程序目录 目录 基于微信小程序的鲜花销售系统设计与实现 一、前言 二、系统功能设计 三、系统实现 1、前台功能模块 2、后台功能模块 (1) 后台登录 (2) 管理员功能模块 用户管理 商家管理 鲜花信息管理 鲜花分类管理 管理员管理 系统管理 (3) 商家功…