请求分页管理方式(中断 缺页中断)

news/2024/4/28 4:03:12/文章来源:https://blog.csdn.net/weixin_62700590/article/details/130027002

目录

关于中断(不管是内中断还是外中断)(先补充)

页表机制

缺页中断机构(缺页中断)

关于内中断外中断

​编辑

地址变换机构

关于中断(不管是内中断还是外中断)(先补充)

我们把(9步)中断分成三部分。产生中断是一部分,执行中断处理程序是一部分,执行完返回继续运行程序是第三部分。

关于上图:

保存断点:就是为了中断后能返回继续运行(就是程序计数器(pc))。

引出中断处理程序:就是每个中断要执行的程序。(是读取,并不是执行,待会去执行)

保存现场和屏蔽字:保存中断前程序的上下文数据(寄存器里面的数据)

对于关中断和开中断:就是cpu在运行的时候,可能并不止目前这一个中断,并且中断的级别可能不一样,这里的关中断就是指 当前cpu不响应更高级别的中断请求。(硬件实现的,中断引指令 -- 了解)

执行中断服务程序:之前是读取,在这里就是执行。而且目前是开中断,也就是说cpu在执行中断服务程序是可以并发去响应其他的中断的。

页表机制

状态位:表示当前页是否已经调入内存。
访问字段:用于记录一段时间内这个页被访问的次数。(后面页面置换算法,需要换入据时,可以参考访问字段决定换出页)
修改位:此页调入内存是否修改。

缺页中断机构(缺页中断

缺页中断机构:由于程序执行的时候,要访问的page,在内存中不存在,就要从外存中调入,此时会产生一个中断,这个中断是由缺页导致的,所以叫做缺页中断。(产生中断后,cpu先去响应中断,保存当前进程的上下文数据,然后转入到缺页中断处理程序,最后恢复cpu环境)(中断操作9个步骤) 

缺页中断处理程序:

 把外存的数据加载进内存(同时填充页表)(状态位置为1)
当然缺页中断不止可以把却的数据调入进内存,也可以把不要的数据调出内存,比如:

根据页面置换算法选择丢弃2号页,发生缺页中断 

此时把C号块的数据放到Z号块,C号块制空。
修改位:一般情况,页面调入内存中,很快就会被修改(这里不用管)。 

PS:缺页中断属于内中断(程序运行中发生的中断都是内中断)(缺页中断由硬件提供支持)


关于内中断外中断

地址变换机构

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

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

相关文章

【C++】静态类成员

类中静态成员的特点是:无论创建了多少对象,程序都只创建一个静态类变量副本。也就是说,类的所有对象共享同一个静态成员,就像家中的电话可被全体家庭使用一样。 但是注意,不能在类声明中初始化静态成员变量&#xff0c…

牛客网算法八股刷题系列(六)正则化与偏差、方差的联系

牛客网算法八股刷题系列——正则化与偏差、方差的联系题目描述正确答案:C\mathcal CC题目解析场景构建λ⇔Bias\lambda \Leftrightarrow \text{Bias}λ⇔Bias拉格朗日乘数法角度权重衰减角度(包含λ⇔Variance\lambda \Leftrightarrow \text{Variance}λ⇔Variance解…

基于html+css的内容旋转

准备项目 项目开发工具 Visual Studio Code 1.44.2 版本: 1.44.2 提交: ff915844119ce9485abfe8aa9076ec76b5300ddd 日期: 2020-04-16T16:36:23.138Z Electron: 7.1.11 Chrome: 78.0.3904.130 Node.js: 12.8.1 V8: 7.8.279.23-electron.0 OS: Windows_NT x64 10.0.19044 项目…

一起学 WebGL:绘制一个点

大家好,我是前端西瓜哥。 本文讲解如何用 WebGL 绘制一个点。 WebGL WebGL 是浏览器支持的一种绘制图形的 API,是一个标准。我们可以通过 Canvas 元素 在网页的特定区域绘制 2D 和 3D 图形。 相比 Canvas 2D,WebGL 利用了 GPU 的计算能力…

真给科技企业丢脸,在美国亚马逊做普通工人,你会吃不饱肚子

亚马逊公司(Amazon),成立于1995年,是全球最大的一家科技创新型电子商务公司,是全球电子商务的最老资格。自从2015年底,亚马逊在俄亥俄州哥伦布市运营大型仓库,如今的亚马逊已经成为俄亥俄州最大…

基于C#语言专业开发的一套:医院手麻系统源码

手术室麻醉信息管理系统源码,手麻系统源码,C#手术麻醉系统源码 相关技术:C#语言前端框架:Winform后端框架:WCF数据库:sqlserver开发工具:VS2019 文末获取联系! 系统概述: 手术麻醉…

全国青少年信息素养大赛2023年python·必做题模拟一卷

全国青少年电子信息智能创新大赛 python必做题模拟一卷 一、单选题 1. 以下哪种输入结果不可能得到以下反馈: 重要的事情说三遍:安全第一!安全第一!安全第一!( ) A、print("重要事情说…

Redis 如何配置读写分离架构(主从复制)?

文章目录Redis 如何配置读写分离架构(主从复制)?什么是 Redis 主从复制?如何配置主从复制架构?配置环境安装 Redis 步骤通过命令行配置从节点通过配置文件配置从节点redis 主从复制优点redis 主从复制缺点Redis 如何配…

Git仓库集成到VScode

前提是一种安装了Git,这里就不再介绍安装过程,进入Git官网进行下载安装即可。 这里用Gitee作为远程仓库演示,首先在gitee上新建仓库 新建完毕,生成了HTTPS地址,复制该远程仓库地址。 来到vscode,在没有仓库…

五.microchip 代理贝能的sam d51(LQFP100PIN)与LAN9253 电机控制开发板使用总结(3)

五.microchip 代理贝能的sam d51(LQFP100PIN)与LAN9253 电机控制开发板使用总结(3) 3.4 板子相关外设配置 3.4.1 板子MCU硬件 的LAN9253连接接口 pin numpin idcus_namefuncmodedirlatchpush uppush downdir str1PA00GPIO_PA0_D0GPIOINYNORMAL2PA01GP…

leetcode:只出现一次的数字 Ⅲ(详解)

前言:内容包括:题目,代码实现,大致思路,代码解读 题目: 给你一个整数数组 nums,其中恰好有两个元素只出现一次,其余所有元素均出现两次。 找出只出现一次的那两个元素。你可以按 任…

DOS批处理文件---内嵌参数变量扩充功能

1 内嵌参数变量 1.1 介绍 内嵌参数变量指:%i,其中i为大于等于0的整数。如%0, %1, %2,... 1.2 作用 可以客制化功能。 1.3 案例 批处理文件:main_Param.bat echo off && setlocal ENABLEDELA…

Solidworks学习一

目录页面介绍:视图操作:实例圆柱:直线的绘制:草图的保存和不保存:绘制工具:切线弧:转换实体引用:交叉曲线:等距实体:移动复制:约束:约…

MyBatisPlus-DQL编程控制

MyBatisPlus-DQL编程控制3,DQL编程控制3.1 条件查询3.1.1 条件查询的类3.1.2 环境构建3.1.3 构建条件查询3.1.4 多条件构建3.1.5 null判定3.2 查询投影3.2.1 查询指定字段3.2.2 聚合查询3.2.3 分组查询3.3 查询条件3.3.1 等值查询3.3.2 范围查询3.3.3 模糊查询3.3.4…

一起学 WebGL:动态绘制点

大家好,我是前端西瓜哥。上一篇文章讲解了如何绘制一个点。但这个点的信息是写死在渲染器源码中的,也就是硬编码。 这是系列文章,如果你是初学者,你需要看上一篇文章才好理解这节课的内容。 《一起学 WebGL:绘制一个点…

python五角星编程代码绘制

大家好,我是你们的好朋友,今天继续分享 Python的编程知识。 在 Python中,有一个非常强大的数据可视化工具: database. dl (),其中有一个功能就是可以绘制五角星。 什么是五角星? 在数…

jenkins配置插件发版了解

jenkins配置&插件&发版了解 jenkins https://mirrors.jenkins.io/war-stable/2.222.1/ 包下载地址 jenkins镜像源修改 sed -i s/https:\/\/www.google.com/https:\/\/www.baidu.com/g default.json sed -i s/https:\/\/updates.jenkins.io\/download/https:\/\/mi…

怎么使用思维导图?

回答这个问题前,我们先来了解下三个问题: 1.思维导图是什么? 思维导图,又名心智导图,是表达发散性思维的有效图形思维工具 ,它简单却又很有效同时又很高效,是一种实用性的思维工具&#xff08…

Ubuntu22.04中安装PyCharm

目录 1. 在ubuntu中下载linux版本的PyCharm。 2. 将下载好的pycharmxxxx.tar.gz文件解压。 3. 在解压后的pycharm文件夹下的bin文件夹下(此处为:pycharm-edu-2021.1.2/bin),在空白处右键,然后选择”在终端打开“。然…

蓝桥杯第26天(Python)考前挣扎

题型: 1.思维题/杂题:数学公式,分析题意,找规律 2.BFS/DFS:广搜(递归实现),深搜(deque实现) 3.简单数论:模,素数(只需要…