当我搜索有关TLB和CPU缓存的信息时,我发现了这个图表。

根据虚拟内存机制,如果我们在物理内存或磁盘缓存中找不到东西,CPU将在磁盘(交换位置)中查找东西。也就是说,如果我们扩展这张图片,应该在主内存中绘制一个磁盘缓存,在主内存之后绘制一个磁盘。我能正确理解他们吗?
参考资料:cpu缓存和tlb之间有什么不同?
发布于 2019-05-05 11:31:43
有关CPU缓存的所有内容都与交换空间不同/相反。硬件管理与SW管理,芯片上与DRAM“更远”。
如果您考虑使用一种旧的虚拟内存方式(早在建议使用交换空间=2xDRAM的时候),并且您有一个操作系统,它真正地将交换空间分配给所有虚拟内存分配:
我想您可以将主内存看作CPU缓存的后备存储,类似于交换空间是匿名内存页的备份存储。(也就是说,这不是内存-映射到磁盘上的文件。)
但是,手工软件管理和软件可见的页面错误的本质确实意味着有很大的区别。
最重要的是CPU缓存(通常)基于物理 address ,而交换空间纯粹是关于虚拟地址空间的。您永远不能在物理地址空间中拥有交换空间(除非内存映射为非易失性存储,比如NV.)
https://stackoverflow.com/questions/55990736
复制相似问题