[操作系统笔记]两级页表
内容系听课复习所做笔记,图例多来自课程截图
单级页表存在的问题
某计算机系统按字节寻址,支持32位的逻辑地址,采用分页存储管理、页面大小为4KB,页表项长度为4B。
可推知:
- 页面大小 4 K B = 2 12 B 4KB=2^{12}B 4KB=212B,故页内地址12位
- 页号有32-12=20位,即最多 2 20 2^{20} 220页,对应 2 20 2^{20} 220个页表项
- 2 20 2^{20} 220个页表项需要 2 22 2^{22} 222B存储(页表项长度4B)
- 2 20 2^{20} 220个页表项需要 2 10 2^{10} 210个页框( 2 22 / 2 12 2^{22}/2^{12} 222/212)
需要连续的 2 10 2^{10} 210大小的空间来存储页表,这样的“连续分配”与离散分配的思想相悖
根据局部性原理可知,很多时候,进程在一段时间内只需要访问某几个页面就可以正常运行了。因此没有必要让整个页表都常驻内存。
解决方案
可将长长的页表进行分组,使每个内存块刚好可以放入一个分组(比如上面的例子中,页面大小4KB,每个页表项4B,每个页面可存放1K个页表项,因此每1K个连续的页表项为一组,每组刚好占一个内存块,再讲各组离散地放到各个内存块中)
然后再以离散分配的每组页表为单位,建立一张页表,称为页目录表,或称外层页表,或称顶层页表
查询过程
- 按照地址结构将逻辑地址拆分成三部分
- 从PCB中读出页目录表始址,再根据一级页号查页目录表,找到下一级页表在内存中的存放位置
- 根据二级页号查表,找到最终想访问的内存块号4结合页内偏移量得到物理地址
- 结合页内偏移量得到物理地址
页面未必非得全在内存中(用到再调入也不是不行),给页表加一项,记录是否在页面中就可以了。若想访问的页面不在内存中,则产生缺页中断(内中断),然后将目标页面从外存调入内存
题目
各级页表大小均不得超过一个页面
没有快表的情况下,n级页表访问内存次数为n+1次
[操作系统笔记]两级页表相关推荐
- 操作系统 :两级页表
单级页表存在的问题 某计算机系统按字节寻址,支持32位的逻辑地址,采用分页存储管理,页面大小为4KB,页表项长度为4B. 4KB = B,因此页内地址要用12位标识,剩余12位表示页号. 因此,该系统 ...
- 操作系统-内存管理(快表的地址变换机构,两级页表,虚拟内存的基本概念,基本页式管理下的页表和页面置换算法)
文章目录 1.快表地址变换机构 2. 两级页表 3. 虚拟内存的基本概念 基本分页存储管理 1.快表地址变换机构 快表,又称联想寄存器(TLB,translation lookaside buffer ...
- 【学习笔记】第三章——内存 II(分页存储、快表与局部性原理、两级页表)
文章目录 一. 分页存储概念 二. 地址转换 1)为什么页面大小为2的次幂? 三. 页表 1)页表项长度.页号"隐含" 四. 局部性原理与快表 五. 二级页表 1)单级页表存在的问 ...
- (王道408考研操作系统)第三章内存管理-第一节6-4:非连续分配管理方式之基本分页存储管理之两级页表
文章目录 一:单级页表存在的问题 二:两级页表原理 (1)基本原理 (2)逻辑地址结构 三:多级页表 一:单级页表存在的问题 问题一:页表必须连续存放,当页表很大时,就需要占用很多个连续的页框 在32 ...
- 操作系统(day11)--快表,两级页表
具有快表的地址变换机构 时间局限性:会有大量连续的指令需要访问同一个内存块的数据的情况(程序中的循环) 空间局限性:一旦程序访问了某个存储单元,在不久之后,其附近的存储单元也很有可能被访问.(因为很多 ...
- 两级页表如何实现地址转换
(1) 按照地址结构将逻辑地址拆成三个部分. (2) 从PCB中读取页目录起始地址,再根据一级页号查页目录表,找到下一级页表在内存中存放位置. (3) 根据二级页号查表,找到最终想要访问的内存块号. ...
- 操作系统笔记(II:从进程同步到文件管理)
操作系统笔记(II:从进程同步到文件管理) 4.5.2 读者-写者问题 [问题描述] 若干读者.写者,共享文件/数据: 读者:可以同时读数据,不可修改数据. 写者:修改数据,不能同时修改同一份数据,进 ...
- arm的2级页表在Linux内核创建过程解析
系统DDR的基地址为0x0,内存为1GB,所以TTB的基地址为0x4000.下面要创建虚拟地址0xfe700000到物理地址0xffff0000之间的映射,映射大小为64KB,即16页.由于物理地址不 ...
- 【笔记:模拟CMOS集成电路】两级运算放大器设计与仿真(带版图)
[笔记:模拟CMOS集成电路]两级运算放大器设计与仿真(带版图) 前言 1.电路分析 1.1电路结构 电路描述: 1.2小信号分析 1.3公式 2指标设计 2.1预期设计指标参数 2.2参数分析 (1 ...
最新文章
- 常用前端框架Angular和React的一些认识
- MAC显示隐藏文件和文件夹
- spring aop 必须的包 及里面用到的东西_Spring 原理初探——IoC、AOP
- 生信分析和美图资源推荐!!!
- C语言-查找顺序表中的最大值
- Spring的@bean注解
- ubuntu16.04 安装完显卡驱动后分辨率固定640x480 解决
- MYSQL 查看表定义的 4 种方法
- ACER微型计算机支持MSATA,宏基S7超级本惊现双主控mSATA SSD 速度近900MB/s
- 【算法设计与分析】专栏目录
- Windows脚本 同网段ip检测与持续ping包测试
- 欠债还钱,天经地义(一)
- 判断一个数为奇偶数的三种方法
- 干货!如何在SCI论文中转述和总结别人的论文和成果
- 拼多多Q3GMV同比增长386%,超同行平均增速15倍
- python版openvino使用
- 【惊】Spring源码的秘密|一起看看Spring启动时究竟做了什么惊天动地的事情?
- PostgreSQL中的查询:1.查询执行阶段
- 图片轮播(现在手机app上常见的)
- 读懂select函数