LaTeX 渲染有问题。将就着看吧。

虚拟存储器

请求分页:每次访问仅将当前需要的页面调入主存,而其他不活跃的页面放在外存磁盘上

虚拟地址

# 分区方式

将主存分为两大区域

系统区:固定的地址范围内,存放操作系统

用户区:存放所有用户程序

分区方式

简单固定分区:用户区划分成长度不等的固定长的分区

可变长分区:用户区按每个任务所需要的内存大小进行分配

# 分页方式

主存分成固定长且比较小的存储块,称为页框(page frame)

每个任务也被划分成固定长的程序块,称为页(page)

页装入页框中,且无需采用连续的页框来存放一个任务中所有的页

逻辑地址:指令中的地址

物理地址:实际主存地址

# 虚拟存储器

基本思想

请求分页:仅将当前需要的的页调入主存

・通过硬件将逻辑地址转换为物理地址

未命中时在主存和硬盘之间交换信息

类型

分页式虚拟存储器

分段式虚拟存储器

段页式虚拟存储器

映射算法

・全相联映射

写策略

・写回

# 分页式虚拟存储器

主存储器虚拟地址空间都被划分为大小相等的页面

虚拟页(virtual page,VP)/ 逻辑页(logical page):虚拟地址空间中的页面

物理页(physical page,PP)/ 页框(page frame):主存空间中的页面

页表:

页表中包含了所有虚拟页的信息,包括虚拟页的存放位置、装入位(valid)、修改位(dirty)、存取权限位等等。保存在主存中。

** 虚拟地址:** 虚拟页号 + 页内偏移量

快表(TLB):

页表的使用增加了主存的访问次数

为了减少访存次数,把页表中最活跃的几个页表项复制到 ** 高速缓存(Cache)** 中

** 映射:** 关联映射,组关联映射

替换:随机替换

主存中的页表相应地称之为 “慢表”

注:现在的计算机中,TLB 和 Cache 在物理上是两个存储器

根据页表中记录的物理页存放位置,可以将虚拟地址转化为物理地址

ca7e99a21a5250fba0cb9dca14197c50.png

TLB:主存中比较活跃的页,TLB 命中,则主存中一定有这个页

页表:主存中的所有页,页表命中,则主存中一定有这个页。

那么实际上 TLB 和页表是包含关系

cache 和主存是包含关系

TLB 和页表是存虚拟页描述信息的,并没有实际 data

TLB 相对于页表,有点像 cache 相对于主存

638ab0c03ef14a05b59373e47086aa64.png

1e188f2705907faadae40f3c4e1be16e.png

TLB 未命中但页表命中,需要更新 TLB

TLB 和页表都未命中,两个都需要更新

# 分段式虚拟存储器

将程序和数据分成不同长度的段,将所需的段加载到主存中

虚拟地址:段号 + 段内偏移量

# 段页式虚拟存储器

将程序和数据分段,段内再进行分页

每个分段都有一个页表

虚拟地址

段号 + 页号 + 页内偏移量

更新于 阅读次数

请我喝[茶]~( ̄▽ ̄)~*

北沐清 微信支付

微信支付

北沐清 支付宝

支付宝