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

分页存储小总结

知识点:

什么是分页存储?

将内存空间分为一个个大小相等的分区(比如:每个分区4KB),每个分区就是一个“页框”(页框=页帧=内存块=物理块=物理页面)。每个页框有一个编号,即“页框号”(页框号=页帧号=内存块号=物理块号=物理页号),页框号从0开始。

 

进程的页面和内存的页框一一对应,且各个页面不必连续存放,可以放的不相邻的各个页框中.(也是为什么页表会有不同的页号和表号,因为他们全部加起来才是一个进程)如下图所示:

这里是块号指的是内存的块号

页表记录了页面和实际存放的内存块之间的映射关系

例如:

页号 = 逻辑地址 / 页面长度(取整,不四舍五入) 从0开始

页面偏移量 = 逻辑地址 % 页面长度 (取余)

第x号内存块的起始地址 = x * 内存块大小

如果有x位表示"页内偏移量",则说明该系统中一个页面的大小是2的x次方个内存单元

如果有y位表示"页号",则说明在该系统中,一个进程最多允许有2的y次方个页面

该图,31-12+1 = 20 ,2的20次方个页面,也就是1M

11-0 +1 = 12,每页的大小为4K

例题:

某计算机系统,页面大小为50B.某进程逻辑地址空间大小为200B,则逻辑地址110对应的页号,页内偏移量是多少?

代入公式

页号 = 110 / 50 =2

偏移量 = 110 % 50 = 10,为什么要求余呢,因为比如这道题100到150都是页号2里面的内容

总结:

逻辑地址 可以拆分为(页号,页内偏移量)

通过页号查询页表,可知页面在内存中的起始地址

页面在内存中的起始地址  + 页内偏移量 = 实际的物理地址


http://www.mrgr.cn/news/69581.html

相关文章:

  • 后端-实现excel的导出功能(超详细讲解)
  • WPF-控件的属性值的类型转化
  • PyQt5 详细安装与配置教程及使用
  • 学法减分交管12123模拟练习小程序源码前端和后端和搭建教程
  • 显示微服务间feign调用的日志
  • 批量将当前目录里的所有pdf 转化为png 格式
  • JavaScript day02 笔记
  • 基于Spring Boot的养老保险管理系统的设计与实现,LW+源码+讲解
  • 高速光耦——推动工业生产自动化飞跃的关键力量
  • 【网络原理】万字详解 UDP 和 TCP
  • 现场工程师日记-MSYS2迅速部署PostgreSQL主从备份数据库
  • 今日早报 每日精选15条新闻简报 每天一分钟 知晓天下事 11月10日,星期日
  • 云计算在教育领域的应用
  • 数据库基础(11) . SQL脚本
  • 用ArkTS写一个登录页面(实现简单的逻辑)
  • 1.4 算法设计策略与分析方法
  • 测试实项中的偶必现难测bug--苹果支付丢单问题
  • Linux2 指令(二)
  • 计算机网络(3)
  • 基于Springboot+Vue的心理咨询系统 (含源码数据库)
  • 如何选情绪龙头
  • 单页面应用和多页面应用区别及优缺点
  • 【Docker容器化技术】docker安装与配置、常用命令、容器数据卷、应用部署实战、Dockerfile、服务编排docker-compose、私有仓库
  • 从认识 VNode VDOM 到实现 mini-vue
  • 【含文档】基于ssm+jsp的流浪动物收养系统(含源码+数据库+lw)
  • 关于我的编程语言——C/C++——第八篇