Virtual Memory(虚拟内存)

本文主要介绍了虚拟内存(Virtual Memory)的概念及其重要性。虚拟内存通过虚拟地址到物理地址的转换,使得DRAM可以作为虚拟地址空间的一部分,提高DRAM命中率。分页机制和页表用于管理和映射地址,同时提供了存储器管理、简化链接和数据共享的便利。此外,虚拟内存还用于存储器保护,并允许大规模存储器协同工作。地址翻译过程中,TLB作为页表的高速缓存,加速了地址转换。文章最后讨论了虚拟地址到物理地址的具体转换流程,并提及了CMU的相关课程作为进一步学习的资源。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

转载请注明出处:http://blog.youkuaiyun.com/c602273091/article/details/53529384

18-600快要考试了,在博客中把学过的东西整理一下思路,写到博客里也好以后自己有空看看,希望对以后的人也有所帮助。至于这门课的Lab的代码,等我考完试就把它放上来。

本次复习的重点如下:

这里写图片描述

我感觉考试的重点就是都是重点,23333~ 话不多说,今天就开始讲我最不熟悉的部分:虚拟内存(Virtual Memory)。

在鄙人的印象中,CPU和存储器之前是通过总线连接,根据某些协议进行通信,I2C,或者别的什么协议的。在进行数据传递的时候,就需要传递地址。我觉得传递的就是直接的物理地址,如下图:

这里写图片描述
想起那个时候写HDL的Cache都是这么来的。

但是我在上课的时候,我发现我理解错了。其实CPU发给Memory的是虚拟地址、Memory接到的是物理地址、它们之间有一个叫做MMU的东西。就是把虚拟地址转换成物理地址,再进行数据的传递。如下图所示:

这里写图片描述

从这里我们可以看出,从VA到PA之间其实是有一个映射函数在这里面,把VA映射到PA。那么这里我们就要提问题了,为什么要加VA呢?怎么映射的呢?

首先回答第一个问题:Why VM?

Why VM?

看解释。
这里写图片描述
第一个是说可以通过VM,使得DRAM成为VAP的一部分。一般来说呢,VA的地址空间比PA大很多,这里的物理地址是Cache或者是DRAM。

在最早的存储金字塔我们可以知道DRAM不命中的后果是比SRAM严重得多,差不多是

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值