一研为定,万山无阻
虚拟存储器
- 双口RAM 和多模块存储器 - > 提高存储器的工作速度
- 高速缓冲存储器 - > 提高存储系统的工作速度
- 模拟存储器 -> 提高存储系统的容量
Cache 主存层次
注意: 计算机中的透明与我们生活中常规的透明不一样
概念
- 256 G 38 位 推导:
256 = 2^8 -> 1G=2^10M -> 1M = 2^10KB 1KB = 2 ^10 B
- 1T = 40 位
如何解决编址不统一问题?
-
虚拟存储器是一个逻辑模型
-
功能:用户给出一个地址,叫做虚地址或逻辑地址,虚拟存储器要给出该地址对应的数据。
-
实现:由辅助硬件将虚地址映射到主存当中的某个单元,主存单元地址称为实地址或物理地址。
页氏虚拟存储器
- 中路位 为1 说明这样的页面已经在主存之中 ,
- 中路位为 0 说明页面不在主存中,这是需要启动IO系统,将次页从辅存调用到主存中,然后使CPU使用。
- 页表为保存在主存中
优点 : 长度固定 ,且页表简单
缺点 : 程序不可能为页面的整数倍,此页不是逻辑上独立的群体
段氏虚拟存储器(了解)
-
虚地址到实地址的变换由段表进行
-
段长是可变的
-
根据装入位判断在在主存是否存在(类似于上面的中路位)
-
在段表中读入起始地址 与段内地址(相当于偏移量)相加 得到主存的实地址
优点: 段的分界,与程序段的分界是对应的,具有逻辑独立性,易于管理
缺点 : 段长是可变的,不利于分配空间,存在分配碎片问题,存在空间浪费
段页式虚拟存储器(了解)
优点: 结合上述两种方式的优点
缺点 : 需要两次查表
快表TLB
- 页表、段表存放在主存中,收到虚拟地址后要先访问主存,查询页表、段表,进行虚实地址转换。放在主存中的页表称为慢表(Page)
- 提高变换速度 -> 用高速缓冲存储器存放常用的页表项→快表(TLB)
例题
- 标记代表虚页号
- 页框号代表实页号
256MB 28位地址 ; 4GB 32 位地址 ; 4KB 12 位地址