当前位置: 首页 > news >正文

虚拟内存之请求分页管理

一、与基本分页存储管理的区别
程序执行过程中,访问信息不在内存时,OS需要从外存调入内存。——>调页功能
内存空间不够时,OS需要将内存中暂时用不到的信息换出到外存。——>页面置换功能
二、页表机制
1.页表:需要知道页面是否已经调入内存及页面的状态(是否有被修改过)
在这里插入图片描述

2.缺页中断机构
缺页中断过程:
根据逻辑地址判断页面的状态——>不在内存中,产生一个缺页中断信号——>OS中的缺页中断处理程序处理中断
缺页进程阻塞——>阻塞队列中——>调页完成唤醒——>就绪队列中。
若内存中有空闲,则为进程直接分配一个空闲块装所缺页面,更新页表项。
在这里插入图片描述

若内存中无空闲,则由页面置换算法选择淘汰一个页面,淘汰页面被修改过,写回外存,否则无需写回。淘汰内存块装所缺页面,更新页表项。
写回再分配
在这里插入图片描述
在这里插入图片描述

缺页中断原理:
由于当前指令想要访问目标页面未调入内存而产生,属于内中断。
一条指令在执行时,可能产生多次缺页中断
在这里插入图片描述

3.地址变换机构
在这里插入图片描述
在这里插入图片描述

在有快表机构的请求分页系统中,访问逻辑地址发生缺页时:
查快表(未命中)——>查慢表(未调入内存)——>调页(调入的页面的表项直接加入快表)——>查快表(命中)——>访问目标内存单元
在这里插入图片描述

http://www.lryc.cn/news/211570.html

相关文章:

  • lazarus开发:提升sqlite数据插入速度
  • 瑞萨RH850-P1X ECM和英飞凌TC3xx SMU对比
  • Ajax学习笔记第三天
  • ESP32-C3 低功耗懒人开关:传统开关轻松上云和本地控制
  • 前端学习路线指南:从入门到精通【①】
  • Flash模拟EEPROM原理浅析
  • Typora 最新激活方法
  • jenkins如何安装?
  • 从零开始的LINUX(三)
  • CleanMyMac2024永久免费版Mac系统磁盘清理工具
  • HashSet 元素不重复
  • 基于SpringBoot的二手车交易系统的设计与实现
  • 最短路径:迪杰斯特拉算法
  • 基于UDP/TCP的网络通信编程实现
  • springboot启动报错
  • Python中的split()函数
  • 大数据-玩转数据-Python Sftp Mysql 数据
  • Selenium3-当元素通过@FindBy获取时,返回元素为null
  • JWT详解解读读
  • 一文详解如何从 Oracle 迁移数据到 DolphinDB
  • 负载均衡--Haproxy
  • 股票价格预测 | 融合CNN和Transformer以提升股票趋势预测准确度
  • QMI8658A_QMC5883L(9轴)-EVB 评估板
  • vue2+antd——实现动态菜单路由功能——基础积累
  • 代码随想录算法训练营第三十八天丨 动态规划part01
  • 关于集合遇到的坑
  • 需要下微信视频号视频的小伙伴们看过来~
  • 测试工具:hurl
  • RateLimiter限流
  • PMP适合哪些人去考?