操作系统(day11)--快表,两级页表

news2024/12/26 23:42:06

具有快表的地址变换机构

在这里插入图片描述

时间局限性:会有大量连续的指令需要访问同一个内存块的数据的情况(程序中的循环)
空间局限性:一旦程序访问了某个存储单元,在不久之后,其附近的存储单元也很有可能被访问。(因为很多数据在内存中都是连续存放的;比如数组

引入快表后,地址的变换过程
在这里插入图片描述
快表中存储了访问频率很高的页表项,访问速度极快(容量很小,只能存储部分页表项)

两级页表

在这里插入图片描述

在这里插入图片描述
为什么要引入两级页表呢,单级页表的问题

一个支持32位逻辑地址空间的进程(这个进程的理论最大为4G),页表项大小为4B(连续的时候刚好可以填满一个内存块), 页面大小为4KB。

页面大小4KB(2的12次方),说明32位要拿出12位(就是4KB)来记录页面内的偏移地址,剩余20位用来表示页号/块号(即最大能记录页号为2的20次方的页号),那么单级页表就需要有2的20次方个页表项来记录每个页号对应的块号, 而每个页表项大小又为4B(即2的2次方),那么这个单级页表就需要 2的20次方 × 2的2次方 的内存大小去存放它(4MB),而每个内存块(即页面大小)的大小是2的12次方(即4KB),那么就需要 2的22次方 除以 2的12次方 等于 2的十次方个内存块(页框)去存放它(一个4G的进程的单级页表

注意:上述问题中,如果进程需要4GB的内存,那么就需要4MB的连续内存来存放该进程的单级页表(单级页表需要连续才能比较便捷的计算)。这里引入两级页表不是为了解决4MB很大的问题,而是要解决需要连续4MB内存的问题,引入两级页表后,4GB的内存依然需要4MB的内存空间去存放页表项,只不过是可以分散放在不同的内存块(页框)中了
在这里插入图片描述
在这里插入图片描述

两级页表甚至多级页表的思想,先根据页面大小4KB(2^12)确定逻辑地址40,要拿12位来它在内存块中的地址,剩下的28位,为什么不能超过10位,因为一个内存块4KB,最多装入2^10个 4B的页表项,而各级页表的大小不能超过一个页面

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

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

相关文章

MySQL(一)服务器连接 库的基本操作

目录 一、连接服务器 二、简单使用 三、校验规则 条件筛选 where 进行order排序 三、查看数据库 使用 show databases;(注意分号和最后一个s) 显示创建数据库的详情信息:使用show create database test2; 四、修改数据库 五…

干货 | 有哪些安慰剂按钮的设计?

仔细观察我们的生活,你会发现处处都是安慰剂按钮,ATM的点钞声、开启空调的呼呼声,这些都对用户心里产生了有意的引导作用,当你打开了空调按钮,先播放声音会让你感觉你按下的按钮起到了作用。 我们的大脑不喜欢杂乱无章…

Markdown简单语法总结

前言在好多博客的编写中会遇到Markdown标记语言,所以学习了一下相关语法。之前虽然也了解过,但是并不深刻。在这里进行一个简单的总结。1、标题标题可以使用大标题和中标题、一到六级标题两种不同方式。对于大标题,直接在标题文字下方输入即可…

HTML中嵌入B站视频

HTML中嵌入B站视频 在网页中实现一个HTML播放器需要先从b站获取视频嵌入代码, 以前嵌入代码可以从视频分享那里拿到, 现在好像不行了 必须是自己投稿的视频, 从投稿管理页面才能找到 复制嵌入代码 建一个.html文件, 放入下面代码 <!DOCTYPE html> <html><head…

SpringCloud - 入门

目录 服务架构演变 单体架构 分布式架构 分布式架构要考虑的问题 微服务 初步认识 案例Demo 服务拆分注意事项 服务拆分示例 服务调用 服务架构演变 单体架构 将业务的所有功能集中在一个项目中开发&#xff0c;打成一个包部署优点&#xff1a; 架构简单部署成本低缺…

论文解读 | [CVPR2020] ContourNet:向精确的任意形状场景文本检测迈出进一步

目录 1 研究背景和目的 1.1 主要贡献&#xff1a; 1.2 两个挑战&#xff1a; 2 ContourNet 3 方法论 3.1 Adaptive-RPN 3.2 LOTM 3.3 点重定位算法 4 实验和结果 论文地址&#xff1a;ContourNet: Taking a Further Step toward Accurate Arbitrary-shaped Scene Tex…

第八章 - 数据分组( group by , having , select语句顺序)

第八章 - 数据分组 group by数据分组过滤分组 having分组排序groub by语句的一些规定select语句顺序数据分组 在使用group by进行分组时&#xff0c;一般都会配合聚合函数一起使用&#xff0c;实现统计数据的功能。比如下面例子&#xff0c;需要按性别计算人数。按性别进行分组…

内嵌于球的等边三棱柱

( A, B )---3*30*2---( 1, 0 )( 0, 1 ) 做一个网络让输入只有3个节点&#xff0c;每个训练集里有两张图片&#xff0c;让B的训练集全为0&#xff0c;排列组合A&#xff0c;观察迭代次数平均值的变化。共完成了64组&#xff0c;但只有12组不同的迭代次数。 差值结构 A-B 迭代次…

【银河麒麟V10操作系统】修改屏幕分辨率的方法

文章目录前言系统概述方法1&#xff1a;使用命令行修改方法2&#xff1a;写文件修改方法3&#xff1a;界面端修改的方法前言 本文记录了银河麒麟V10系统修改分辨率的方法。 使用命令行修改写文件修改界面端修改的方法 系统概述 方法1&#xff1a;使用命令行修改 打开终端&am…

零基础学软件测试可行么

当然是可行的&#xff0c;软件测试是一门对于零基础小白非常友好的一门语言~不少小伙伴在选择IT行业的时候都会从软件测试入手。在开始学习之前&#xff0c;首先需要了解软件测试到底是什么&#xff0c;包括哪些知识点&#xff0c;最后的才是找一个靠谱的学习路线去学习。 其实…

用Python实现一个电影订票系统

一、效果展示通过Python实现一个电影订票系统&#xff0c;效果如下所示&#xff1a;二、整体结构图三、代码分解3.1 infos.py一部电影的详细信息适合用 字典 结构来存储&#xff0c;我们可以给字典里添加多个键值对来保存电影的名称、座位表和宣传时用的字符画&#xff0c;比如…

学自动化测试可以用这几个练手项目

练手项目的业务逻辑比较简单&#xff0c;只适合练手&#xff0c;不能代替真实项目。 学习自动化测试最难的是没有合适的项目练习。 测试本身既要讲究科学&#xff0c;又有艺术成分&#xff0c;单单学几个 api 的调用很难应付工作中具体的问题。 你得知道什么场景下需要添加显…

Webpack(应用二:HtmlWebpackPlugin)

上一文章介绍了Webpack的基本使用。 这章介绍webpack的HtmlWebpackPlugin&#xff0c;也就是上一章节遗留每次打包后&#xff0c;html都得重新链接打包地址名称&#xff0c;现在通过HtmlWebpackPlugin来实现一起打包。 提示&#xff1a;没有学习上一章的小伙伴&#xff0c;可以…

ZenBuster:一款功能强大的多线程跨平台URL枚举工具

关于ZenBuster ZenBuster是一款功能强大的多线程跨平台URL枚举工具&#xff0c;该工具基于Python开发&#xff0c;同时还具备暴力破解功能。 该工具适用于安全专业人员&#xff0c;可以在渗透测试或CTF比赛中为广大研究人员提供帮助&#xff0c;并收集和目标相关的各种信息。…

全网多种方法分析解决HTTP Status 404资源未找到的错误,TCP的3次握手,dns域名解析,发起http请求以及cookie和session的区别

文章目录1. 文章引言2. 简述URL3. http完整请求3.1 DNS域名解析3.2 TCP的3次握手3.3 发起http请求3.4 浏览器解析html代码3.5 浏览器对页面进行渲染呈现给用户4. 解决404错误的方法5. 补充知识点5.1 cookie和session的区别5.2 ChatGPT的介绍1. 文章引言 正赶上最近ChatGPT很火…

将springboot项目生成可依赖的jar,并引入到项目中

1、将springboot项目生成可依赖的jar包的方法 SpringBoot项目默认打包的是可运行jar包&#xff0c;也可以打包成不可运行的jar包。 能打成可运行的jar包是因为&#xff0c;Spring Boot 项目引入了 spring-boot-maven-plugin 依赖包。 spring-boot-maven-plugin具有repackage …

【自学Linux】 Linux文件目录结构

Linux文件目录结构 Linux文件目录结构教程 在 Linux 中&#xff0c;有一个很经典的说法&#xff0c;叫做一切皆文件&#xff0c;因此&#xff0c;我们在系统学习 Linux 之前&#xff0c;首先要了解 Linux 的文件目录结构。Linux 主要的目录有三大类&#xff0c;即根目录(/)&a…

火山引擎 DataTester:A/B 测试,让企业摆脱广告投放“乱烧钱”

更多技术交流、求职机会&#xff0c;欢迎关注字节跳动数据平台微信公众号&#xff0c;回复【1】进入官方交流群 在广告投放的场景下&#xff0c;一线广告优化师通常会创建多个计划&#xff0c;去测试不同的广告素材效果。这套方法看似科学&#xff0c;实际上却存在诸多问题&…

NJ/NX将数据写入到SD中,保存为CSV文件格式

NJ/NX将数据写入到SD中&#xff0c;保存为CSV文件格式 实验时间&#xff1a;2022.10.31 实验人员&#xff1a;钱少青 实验器材&#xff1a;NJ501-1300(Ver:1.12)&#xff0c;HMC-SD291(2G)&#xff0c;SysmacStudio(ver:1.52) 实验目的&#xff1a;将Byte、Int、Real、Stri…

3年功能3年自动化,从8k到23k的学习过程

简单的先说一下&#xff0c;坐标杭州&#xff0c;14届本科毕业&#xff0c;算上年前在阿里巴巴的面试&#xff0c;一共有面试了有6家公司&#xff08;因为不想请假&#xff0c;因此只是每个晚上去其他公司面试&#xff0c;所以面试的公司比较少&#xff09;其中成功的有4家&…