第三章 内存管理 十二、请求分页管理方式

news/2025/2/12 8:00:43/

目录

一、页表机制

1、页表结构

二、缺页中断机制

1、有如下例子

2、根据要访问的逻辑地址的页号2,找到该页的状态是没有放入内存,所以会产生缺页中断,将缺页进程堵塞,放入堵塞队列,调页完成后再将其唤醒,放回就绪序列。

3、如果内存中有空闲块,则为进程分配一个空闲块,将所缺页面装入该块,并修改页表中相应的页表项。(此时内存块A空闲)

4、将内存块A分配给页号0

5、如果内存中没有空闲块,则由页面置换算法选择一个页面淘汰,若该页面在内存期间被修改过,则要将其写回外存。未修改过的页面不用写回外存。(这里内存块C的内容被修改过)

6、将C的数据写回外存

7、这样就可以空出C号内存块,然后让页号0的进程去使用,然后它将外存写入内存C

三、中断的分类

四、地址变换机制

1、区别

2、流程

3、考点

五、总结


一、页表机制

1、页表结构

二、缺页中断机制

1、有如下例子

2、根据要访问的逻辑地址的页号2,找到该页的状态是没有放入内存,所以会产生缺页中断,将缺页进程堵塞,放入堵塞队列,调页完成后再将其唤醒,放回就绪序列。

3、如果内存中有空闲块,则为进程分配一个空闲块,将所缺页面装入该块,并修改页表中相应的页表项。(此时内存块A空闲)

4、将内存块A分配给页号0

5、如果内存中没有空闲块,则由页面置换算法选择一个页面淘汰,若该页面在内存期间被修改过,则要将其写回外存。未修改过的页面不用写回外存。(这里内存块C的内容被修改过)

6、将C的数据写回外存

7、这样就可以空出C号内存块,然后让页号0的进程去使用,然后它将外存写入内存C

三、中断的分类

四、地址变换机制

1、区别

2、流程

3、考点

  • ①只有“写指令”才需要修改“修改位”。并且,一般来说只需修改快表中的数据,只有要将快表项删除时才需要写回内存中的慢表。这样可以减少访存次数。
  • ②和普通的中断处理一样,缺页中断处理依然需要保留CPU现场。
  • ③需要用某种“页面置换算法”来决定一个换出页面
  • ④换入/换出页面都需要启动慢速的I/O操作,可见,如果换入/换出太频繁,会有很大的开销。
  • ⑤页面调入内存后,需要修改慢表,同时也需要将表项复制到快表中。
     

五、总结


http://www.ppmy.cn/news/1168089.html

相关文章

01、字符传实现为什么是SDS而不是char*?

问题: 1. sds 是什么 ? 2. sds 相对于char * 有什么好处 ?解决了哪些疑难杂症? 3. sds 有什么不足?可以优化的点? 思考下: 平常工作开发中,我们记录一条用户信息、订单信息&…

C# CodeFormer Colorization 人脸着色

效果 项目 代码 using Microsoft.ML.OnnxRuntime; using Microsoft.ML.OnnxRuntime.Tensors; using OpenCvSharp; using System; using System.Collections.Generic; using System.Drawing; using System.Drawing.Imaging; using System.Windows.Forms;namespace CodeFormer_D…

CCC数字钥匙设计【NFC】--NFC卡相关基础知识

CCC3.0的NFC技术中,除车端,手机端需包含NFC功能外,另外一般还会配置一个NFC卡,用于备份使用。本文主要介绍NFC卡相关的基础知识。 1、NFC卡 & 智能卡 NFC卡是一种智能卡,其与信用卡大小相同,可通过嵌入…

排序算法,冒泡排序算法及优化,选择排序SelectionSort,快速排序(递归-分区)

一、冒泡排序算法: 介绍: 冒泡排序(Bubble Sort)是一种简单直观的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需…

数字图书馆和智慧图书馆区别

数字图书馆和智慧图书馆都是现代图书馆的发展趋势,但它们有以下区别: 1. 数字图书馆:是指将传统图书馆的资源、服务和技术经过数字化处理,以电子化形式进行保存、管理和利用的现代图书馆。数字图书馆主要集中在数字化内容的建设和…

QT 操作Windows系统服务

Windows服务是在Windows操作系统上运行的后台应用程序,它们在系统启动时自动启动,并在后台持续运行,不需要用户交互。Windows服务的作用包括但不限于以下几个方面:1. 提供系统功能:许多Windows服务提供了系统级的功能和…

Vue定时器的使用和设置(图文详解)附上源码

定时器分为两种,接下来介绍他们的使用方式 1.一次性定时器 this.timer setTimeout(() > {//需要定时执行的代码,这个3000代表的是毫秒。console.debug("Hello World");}, 3000)1.1取消一次性定时器 //清除一次性定时器 clearTimeout(th…

LICEcap轻量级的gif录屏工具

一、下载 腾讯软件中心-海量软件高速下载-软件搜索结果 二、安装使用