虚拟存储器管理(深入理解计算机系统期末周突击笔记)

实现虚拟存储器管理,需要考虑:

1,快大小(也就是页,page)

2,主存和辅存的空间如何分区管理

3,程序块/存储块之间如何映像

4,逻辑地址和物理地址之间如何转换,转换速度如何提高

5,主存和辅存之间如何替换

6,页表如何实现,页表项中要记录那些信息

7,如何加快访问页表的速度

8,如果要找的内容不在主存怎么办

9,如何保护进程各自的存储区不被其他进程访问

有三种虚拟存储器的实现方式: 分页式,分段式,段页式

主存--磁盘VSCache--主存层次

1,页大小(2KB~64KB)比cache中的block大得多,因为访问一次磁盘太慢了,所以大点,一次性访问的多点

2,采用全相联映射 ,因为缺页的开销比cache缺失的开销大得多,缺页时需要访问磁盘大约几百万个时钟周期,而cache缺失,访问主存仅需几十到几百个时钟周期,因此,页命中率比cache命中率更重要,"大页面"和"全相联"可以提高页命中率

3,通过软件来处理缺页,因为缺页时需要访问磁盘,慢!不能用硬件实现

4,采用写回策略,(只写入主存不写入磁盘),避免频繁的慢速磁盘访问操作

5,地址转换要用硬件实现

相关推荐
YJlio2 分钟前
VolumeID 学习笔记(13.10):卷序列号修改与资产标识管理实战
windows·笔记·学习
weixin_440730503 分钟前
java数组整理笔记
java·开发语言·笔记
小龙4 分钟前
【学习笔记】多标签交叉熵损失的原理
笔记·学习·多标签交叉熵损失
强子感冒了3 小时前
Java学习笔记:String、StringBuilder与StringBuffer
java·开发语言·笔记·学习
不会学习?3 小时前
大二元旦,2025最后一天
经验分享·笔记
NULL指向我5 小时前
STM32F407VET6学习笔记14:Bootloader程序笔记
笔记·stm32·学习
伶星375 小时前
obsidian 日记按年月存放
笔记
日更嵌入式的打工仔5 小时前
Ehercat代码解析中文摘录<1>
网络·笔记·ethercat
别了,李亚普诺夫5 小时前
定时器与输出比较-学习笔记
笔记·stm32·学习
于越海5 小时前
学习小项目:用 Python 自动统计编程课绩点(5.0 制|百分制直算|重修取最高)
开发语言·笔记·python·学习·学习方法