电子商务网站建设和推广论文,建设通是什么网站,页面设计专业,html编辑器有哪些文章目录一. 分页存储概念二. 地址转换1#xff09;为什么页面大小为2的次幂?三. 页表1#xff09;页表项长度、页号隐含四. 局部性原理与快表五. 二级页表1#xff09;单级页表存在的问题2#xff09;两级页表3#xff09;如何解决单级页表的问题一. 分页存…
文章目录一. 分页存储概念二. 地址转换1为什么页面大小为2的次幂?三. 页表1页表项长度、页号隐含四. 局部性原理与快表五. 二级页表1单级页表存在的问题2两级页表3如何解决单级页表的问题一. 分页存储概念
内存分成等大区域页框页框号从0开始进程也分成和页框等大的区域页页号也从0开始页框不能太大可能产生过大内部碎片进程的最后一个页面不一定撑满页框进程页面 - 内存页框一一对应。
二. 地址转换
找逻辑地址对应页号找页号对应内存的起始地址①计算逻辑地址在页面内的偏移量②物理地址 页面起始① 页内偏移量②
1为什么页面大小为2的次幂?
方便计算 偏移量最大值 - 对应一个页面持有内存单元个数k 位 - 2k2^k2k个页号 - 对应一个进程最多允许持有页面个数m 位 - 2m2^m2m个 三. 页表
记录每个页面在内存中的位置页表项 页号 块号由块号获取内存地址)
1页表项长度、页号隐含
因为页表项按序连续存于内存且页号长度相同因此页号无需明确表示。延申理论上 3B 就够但是为了方便页表的查询常常会让一个页表项占有更多字节使得每个页面恰好装得下整数个页表项也就没有内存碎片比如此处 4KB % 3B 1B 的内存碎片但是 4KB % 4B 0B
四. 局部性原理与快表
时间局部性指令一段时间内可能多次执行由于程序存在循环空间局部性存储单元附近的存储单元可能被访问由于很多数据在内存中连续存放 快表高速缓冲寄存器比内存块。用来存放当前访问的若干页表项达到加速地址变换的效果。慢表内存中的页表 快表使用 快表命中率高、一次访问内存。满则置换慢表两次访存
五. 二级页表
1单级页表存在的问题
单级页表太大又由局部性原理知道一段时间内只需访问几个页面即可没必要让整个页表常驻内存 解决方法对页表分组分组与内存块等大。可以离散存放页表分组了也因此需要再给离散的页表建一个页表——顶层页表。
2两级页表
32位、页 4KB、页表项 4B 的情况下可知页表需要占用 2^10 1024 个页框。那么我们可以使用离散的1024个页框然后用一个顶级页表来记录这些页框的块号 也就可以推出一级页号用 10B二级页号用 10B二级页表的排法
3如何解决单级页表的问题
需要记录某一页表是否在内存中 两级页表不够就用更多级多级页表的访存次数 N级页表用 N 1 次没有快表的情况