SCAU操作系统知识点之(八)虚拟内存

news2025/1/12 10:03:56

1、虚拟地址概念,实地址概念

实存储器(实存):内存
虚存储器(虚存):磁盘

虚拟地址:在虚拟内存中分配给某一位置的地址,它使得该位置可被访问,就好像是主内的一部分那样。
实地址:内存中存储位置的地址。

2、虚拟分页,基本原理,虚实地址转换

分页式虚存不把作业信息(程序和数据)全部装入主存,仅装入立即使用的页面,在执行过程中访问到不在主存的页面时,产生缺页中断,再从磁盘动态地装入 。

虚实地址转换:虚拟地址又称逻辑地址,它由页号和偏移量组成,而物理地址由页框号和偏移量组成。

3、缺页中断处理过程

若“存在位”未置位,则表示需要的页不在内存中,这时会产生一次内存访问故障,称为缺页中断。

进程在执行中发生缺页中断,经操作系统处理后,进程应执行____D____指令。
A. 进程第一条 B. 被中断的前一条 C. 被中断的后一条 D. 被中断的那一条

在分页虚拟存储管理系统中,什么情况下发生缺页中断?简述缺页中断的处理过程。
答:当 CPU 发出访问的逻辑地址的所在页还未调入内存时,发生缺页中断。
缺页中断的处理过程大致如下:首先判断内存中是否有空闲帧?如果没有则按照置换算法选择一个内存页淘汰,如果该页被修改过还需先写回磁盘,这样得到一个空闲帧。然后按照页表所指明的该页磁盘地址把此页调入空闲帧,修改页表,重新执行刚才那条指令。

驻留集和工作集有什么区别?
驻留集是指进程执行的任何时候都在内存里的进程的部分页集,而工作集是指进程在过去一段时间被访问到的页集。

4、转换检测缓冲区TLB(快表)。根据内存访问时间、TLB访问时间和TLB命中率,求将逻辑地址转换成物理地址并访问内存数据所需的有效访问时间(见作业)

每次虚存访问都可能会引起两次物理内存访问:一次取相应的页表项,另一次取需要的数据。

例题:假定访问主存时间为100毫微秒,访问快表时间为20毫微秒,相联存储器为32个单元时快表命中率可达90%,按逻辑地址存取的平均时间为:
(100+20)×90%+(100+100+20)×(1-90%)=130

转换检测缓冲区的目的是什么?
TLB是一个缓冲,包含最近一段时间频繁用到的页表项,从而能够减少数据访问需要的时间。

5、虚拟分段和虚拟段页式的基本原理

分段式虚拟存储系统把作业的所有分段的副本都存放在辅助存储器中,当作业被调度投入运行时,首先把当前需要的一段或几段装入主存,在执行过程中访问到不在主存的段时再把它们装入。

虚拟段页式:
内存划分成大小小等的页框。
用户的地址空间被程序员划分成许多段,每个段一次划分成许多固定大小的页,页的长度等于内存中的页框大小。

6、虚拟分页的置换算法:最佳OPT、LRU、先进先出FIFO

替换即缺页。(替换说明页不在内存中,产生一次内存访问故障。)
最佳OPT:选择置换下次访问距当前时间最长的那些页。(该算法能导致最少的缺页中断,但它要求操作系统必须知道将来的事件,所以不可能实现,可作为一种标准来衡量其它算法的性能)
在这里插入图片描述

LRU:置换内存中上次使用距当前最远的页。
在这里插入图片描述

先进先出FIFO:置换驻留在内存中时间最长的页。即先进先出策略。
在这里插入图片描述

7、置换过程及缺页次数的计算(注:计算页框填满之前和之后发生的总缺页次数即可)

8、抖动

解释什么是抖动。
抖动是虚存管理方案中可能出现的一种现象,处理器花费在交换上的时间多于执行指令的时间。

例: 与系统“抖动”现象无关的原因是_____B______。
A. 置换算法 B. 磁盘容量 C.请求页式管理 D. 交换数据量
解:系统抖动,解释为在请求分页存储管理中,从主存中刚刚换出某一页面后,根据请求马上又换入该页,这种反复换出换入的现象。
产生系统抖动的原因主要是调度算法不科学、交换算法不科学。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

机器学习---对数几率回归

1. 逻辑回归 逻辑回归(Logistic Regression)的模型是一个非线性模型, sigmoid函数,又称逻辑回归函数。但是它本质上又是一个线性回归模型,因为除去sigmoid映射函 数关系,其他的步骤,算法都是…

网络中的一些基本概念整理总结

1.IP地址 是用来定位主机的网络地址,主要是用于标识主机和其他的一些网络设备. 比如路由器是用点分十进制来表示的 2.端口号 用于标识网络协议中不同的服务或应用程序。 3.协议 这里主要说网络协议,是网络通信时,所有经过的网络设备都必须遵守的一套规定,包含怎么建立连接…

机器学习笔记:李宏毅diffusion model

1 概念原理 首先sample 一个都是噪声的vector然后经过denoise network 过滤一些杂质接着继续不断denoise,直到最后出来一张清晰图片 【类似于做雕塑,一开始只是一块石头(噪声很杂的雕塑),慢慢雕刻出想要的花纹】 同一个…

简单易懂的 Postman Runner 参数自增教程

目录 什么是 Postman Runner? Postman Runner 如何实现参数自增? 步骤一:设置全局参数 步骤二:将全局参数带入请求参数 步骤三:实现参数自增 资料获取方法 什么是 Postman Runner? Postman Runner 是…

Redis集群 (三十九)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 目录 前言 一、Redis主从复制 1.1 概念 1.2 作用 1.3 缺点 1.4 流程 1.5 搭建 1.6 验证 二、Reids哨兵模式 2.1 概念 2.2 作用 2.3 缺点 2.4 结构 2.5 搭建 2.6 验证 三、Red…

一文揭秘饿了么跨端技术的演进、实践与落地

跨端技术背景与演进历程 跨端,究竟跨的是哪些端? 自 90 年的万维网出现,而后的三十多年,我们依次经历了 PC 时代、移动时代,以及现在的万物互联(的 IoT )时代,繁荣的背后&#xff…

SpringBoot后端服务开启Https协议提供访问(使用阿里云资源)

目录 概述 申请/下载证书 部署证书 本地测试访问 服务器部署访问 最后/扩展 总结 概述 本篇博客说明如何将SpringBoot项目开启Https协议提供访问。 博文以步骤【申请/下载证书】,【部署证书】,【本地测试访问】,【服务器部署访问】 &a…

linux0.95(VFS重点)源码通俗解读(施工中)

文件系统在磁盘中的体现 下面是磁盘的内容,其中i节点就是一个inode数组,逻辑块就是数据块可用于存放数据 操作系统通过将磁盘数据读入到内存中指定的缓冲区块来与磁盘交互,对内存中的缓冲区块修改后写回磁盘。 进程(task_struct * task[N…

Python系统学习1-7-字典

一、字典 1、概念及内存图 列表:由一系列变量组成的可变序列容器字典:由一系列键值对组成的可变散列容器字典优势:利用(内存)空间,换取(CPU查找)时间 键key 必须唯一且为不…

2023-arxiv-LLaMA: Open and Efficient Foundation Language Models

开放和高效的基础语言模型 Paper:https://arxiv.org/abs/2302.13971 Code: https://github.com/facebookresearch/llama 摘要 本文介绍了 LLaMA,这是⼀个包含 7B 到 65B 参数的基础语⾔模型的集合。作者在数万亿个令牌上训练模型,并表明可以…

windows10 安装WSL2, Ubuntu,docker

AI- 通过docker开发调试部署ChatLLM 阅读时长:10分钟 本文内容: window上安装ubuntu虚拟机,并在虚拟机中安装docker,通过docker部署数字人模型,通过vscode链接到虚拟机进行开发调试.调试完成后,直接部署在云…

针对英特尔酷睿 CPU 优化,Canonical 发布 Ubuntu 实时内核

导读Canonical 今天宣布针对支持时序协调运算(TCC)和时间敏感网络(IEEE TSN)的英特尔酷睿处理器,推出优化版实时 Ubuntu 内核。 Canonical 于今年 2 月宣布,为购买 Ubuntu Pro 订阅,使用代号为 …

类加载过程和类加载器

类加载的过程 加载->连接(验证->准备->解析)->初始化 加载 1.获得二进制字节流(可以从本地jar 网络或者动态代理获得) 2.转化成方法区中的运行时数据 3.获得类对应的Class对象 加载的过程由类加载器完成&…

opencv实战项目 手势识别-手部距离测量

手势识别系列文章目录 手势识别是一种人机交互技术,通过识别人的手势动作,从而实现对计算机、智能手机、智能电视等设备的操作和控制。 1. opencv实现手部追踪(定位手部关键点) 2.opencv实战项目 实现手势跟踪并返回位置信息&…

hive高频使用的拼接函数及“避坑”

hive高频使用的拼接函数及“避坑” 说到拼接函数应用场景和使用频次还是非常高,比如一个员工在公司充当多个角色,我们在底层存数的时候往往是多行,但是应用的时候我们通常会只需要一行,角色字段进行拼接,这样join其他…

基于smardaten无代码开发智能巡检系统,让无人机飞得更准

目录 引言需求背景搭建思路开发过程(1)无人机设备数据接入(2)无人机巡检任务管理(3)无人机三维防控监视(4)运防一体化大屏设计(5)异常告警管理(6&…

nvm安装以及使用

注意事项: 安装前需要卸载原有的node,卸载干净后cmd输入node -v查看; 一,下载nvm 下载:https://github.com/coreybutler/nvm-windows/releases 选择第四个 “nvm-setup.zip”; 二,安装 1&…

Fiddler抓包工具不会用?点这里手把手超详细教学!

Fiddler 是一个 HTTP 协议调试代理工具,它能够记录并检查所有你的电脑和互联网之间的 HTTP 通讯。 Fiddler 提供了电脑端、移动端的抓包、包括 http 协议和 https 协议都可以捕获到报文并进行分析;可以设置断点调试、截取报文进行请求替换和数据篡改&am…

css 字体渐变样式(设置字体渐变样式+附加实现源码)

问题描述 先看效果图。 解决方案 在对应的css样式里添加如下代码。 我的商品列表在shangpinliebiaobiaotit-view类里面&#xff0c;那么就在shangpinliebiaobiaotit-view设置css渐变样式。 <view class"shangpinliebiaobiaotit-view">商品列表</view&g…

5. 交换机

在上节中&#xff0c;我们创建了一个工作队列。我们假设的是工作队列背后&#xff0c;每个任务都恰好交付给一个消 费者(工作进程)。在这一部分中&#xff0c;我们将做一些完全不同的事情-我们将消息传达给多个消费者。这种模式 称为 ”发布/订阅”. 为了说明这种模式&#xff…